:root{
  --shared-navy:#01070d;
  --shared-navy-2:#031020;
  --shared-ink:#020b16;
  --shared-orange:#f97316;
  --shared-line:rgba(255,255,255,.14);
  --shared-shadow:0 18px 42px rgba(0,0,0,.18);
  --shared-ease:cubic-bezier(.22,1,.36,1);
}

/* Reference footer */
.site-footer.footer,
footer.site-footer.footer{
  position:relative!important;
  overflow:hidden!important;
  padding:56px 0 0!important;
  border-top:0!important;
  background:
    radial-gradient(ellipse at 18% 100%,rgba(248,162,42,.18) 0,rgba(248,162,42,.08) 22%,transparent 48%),
    linear-gradient(135deg,#07101c 0%,#020914 48%,#01050b 100%)!important;
  color:#fff!important;
}
.site-footer.footer::before{
  content:""!important;
  position:absolute!important;
  left:-8%!important;
  bottom:42px!important;
  width:46%!important;
  height:160px!important;
  pointer-events:none!important;
  opacity:.78!important;
  background:
    repeating-radial-gradient(ellipse at left bottom,transparent 0 10px,rgba(249,177,73,.28) 11px 12px,transparent 13px 22px)!important;
  transform:skewY(-8deg)!important;
}
.site-footer.footer .footer-main{
  position:relative!important;
  z-index:1!important;
  width:min(1340px,calc(100% - 72px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:1.55fr 1fr .86fr .82fr .82fr 1.28fr!important;
  gap:0!important;
  align-items:start!important;
  padding:0 0 54px!important;
}
.site-footer.footer .footer-main > *{
  min-height:214px!important;
  padding:0 28px!important;
  border-left:1px solid rgba(255,255,255,.08)!important;
}
.site-footer.footer .footer-main > *:first-child{
  padding-left:0!important;
  border-left:0!important;
}
.site-footer.footer .footer-logo-link{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-width:0!important;
  margin:0 0 34px!important;
}
.site-footer.footer .footer-logo{
  width:198px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  display:block!important;
}
.site-footer.footer .footer-brand p{
  width:min(235px,100%)!important;
  margin:0!important;
  color:#c3cfdb!important;
  font-size:11.5px!important;
  line-height:1.86!important;
  font-weight:600!important;
}
.site-footer.footer h4{
  position:relative!important;
  margin:0 0 28px!important;
  color:#f97316!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.site-footer.footer h4::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  bottom:-12px!important;
  width:28px!important;
  height:2px!important;
  background:#f97316!important;
}
.site-footer.footer a,
.site-footer.footer p{
  display:block!important;
  color:#c3cfdb!important;
  font-size:11px!important;
  line-height:1.58!important;
  font-weight:600!important;
  margin:0 0 13px!important;
  text-decoration:none!important;
  transition:color .22s var(--shared-ease),transform .22s var(--shared-ease),border-color .22s var(--shared-ease)!important;
}
.site-footer.footer a:hover{
  color:#fff!important;
  transform:translateX(3px)!important;
}
.site-footer.footer .footer-connect h4{
  color:#fff!important;
  font-size:14px!important;
  letter-spacing:.02em!important;
}
.site-footer.footer .footer-connect p{
  max-width:220px!important;
  margin-bottom:24px!important;
  line-height:1.7!important;
}
.site-footer.footer .footer-discussion{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  width:auto!important;
  min-width:188px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 18px!important;
  border:1px solid #f97316!important;
  border-radius:4px!important;
  color:#f97316!important;
  background:transparent!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
.site-footer.footer .footer-discussion:hover{
  color:#07101c!important;
  background:#f97316!important;
  border-color:#f97316!important;
  transform:translateY(-1px)!important;
}
.site-footer.footer .footer-bottom{
  position:relative!important;
  z-index:1!important;
  width:min(1340px,calc(100% - 72px))!important;
  max-width:none!important;
  min-height:76px!important;
  margin-inline:auto!important;
  padding:0!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.site-footer.footer .footer-bottom p{
  margin:0!important;
  color:#bac6d3!important;
  font-size:11px!important;
}
.site-footer.footer .footer-legal{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
}
.site-footer.footer .footer-legal a{
  position:relative!important;
  margin:0!important;
  padding:0 28px!important;
  color:#bac6d3!important;
  font-size:11px!important;
  line-height:1!important;
}
.site-footer.footer .footer-legal a:last-child{
  padding-right:0!important;
}
.site-footer.footer .footer-legal a + a::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:1px!important;
  height:14px!important;
  background:#f97316!important;
  transform:translateY(-50%)!important;
}
.site-footer.footer .footer-legal a:hover{
  color:#fff!important;
  transform:none!important;
}

@media(max-width:1180px){
  .site-footer.footer .footer-main{
    grid-template-columns:repeat(3,1fr)!important;
    row-gap:34px!important;
  }
  .site-footer.footer .footer-main > *{
    min-height:0!important;
    border-left:0!important;
    padding:0 18px!important;
  }
  .site-footer.footer .footer-main > *:first-child{
    padding-left:18px!important;
  }
}

/* Final footer override */
.site-footer.footer,
footer.site-footer.footer{
  position:relative!important;
  overflow:hidden!important;
  padding:56px 0 0!important;
  border-top:0!important;
  background:radial-gradient(ellipse at 18% 100%,rgba(248,162,42,.18) 0,rgba(248,162,42,.08) 22%,transparent 48%),linear-gradient(135deg,#07101c 0%,#020914 48%,#01050b 100%)!important;
  color:#fff!important;
}
.site-footer.footer::before{
  content:""!important;
  position:absolute!important;
  left:-8%!important;
  bottom:42px!important;
  width:46%!important;
  height:160px!important;
  pointer-events:none!important;
  opacity:.78!important;
  background:repeating-radial-gradient(ellipse at left bottom,transparent 0 10px,rgba(249,177,73,.28) 11px 12px,transparent 13px 22px)!important;
  transform:skewY(-8deg)!important;
}
.site-footer.footer .footer-main{
  position:relative!important;
  z-index:1!important;
  width:min(1340px,calc(100% - 72px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:1.55fr 1fr .86fr .82fr .82fr 1.28fr!important;
  gap:0!important;
  align-items:start!important;
  padding:0 0 54px!important;
}
.site-footer.footer .footer-main > *{
  min-height:214px!important;
  padding:0 28px!important;
  border-left:1px solid rgba(255,255,255,.08)!important;
}
.site-footer.footer .footer-main > *:first-child{
  padding-left:0!important;
  border-left:0!important;
}
.site-footer.footer .footer-logo-link{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-width:0!important;
  margin:0 0 34px!important;
}
.site-footer.footer .footer-logo{
  width:198px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  display:block!important;
}
.site-footer.footer .footer-brand p{
  width:min(235px,100%)!important;
  margin:0!important;
  color:#c3cfdb!important;
  font-size:11.5px!important;
  line-height:1.86!important;
  font-weight:600!important;
}
.site-footer.footer h4{
  position:relative!important;
  margin:0 0 28px!important;
  color:#f97316!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.site-footer.footer h4::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  bottom:-12px!important;
  width:28px!important;
  height:2px!important;
  background:#f97316!important;
}
.site-footer.footer a,
.site-footer.footer p{
  display:block!important;
  color:#c3cfdb!important;
  font-size:11px!important;
  line-height:1.58!important;
  font-weight:600!important;
  margin:0 0 13px!important;
  text-decoration:none!important;
  transition:color .22s var(--shared-ease),transform .22s var(--shared-ease),border-color .22s var(--shared-ease)!important;
}
.site-footer.footer a:hover{
  color:#fff!important;
  transform:translateX(3px)!important;
}
.site-footer.footer .footer-connect h4{
  color:#fff!important;
  font-size:14px!important;
  letter-spacing:.02em!important;
}
.site-footer.footer .footer-connect p{
  max-width:220px!important;
  margin-bottom:24px!important;
  line-height:1.7!important;
}
.site-footer.footer .footer-discussion{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  min-width:188px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 18px!important;
  border:1px solid #f97316!important;
  border-radius:4px!important;
  color:#f97316!important;
  background:transparent!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
.site-footer.footer .footer-discussion:hover{
  color:#07101c!important;
  background:#f97316!important;
  border-color:#f97316!important;
  transform:translateY(-1px)!important;
}
.site-footer.footer .footer-bottom{
  position:relative!important;
  z-index:1!important;
  width:min(1340px,calc(100% - 72px))!important;
  max-width:none!important;
  min-height:76px!important;
  margin-inline:auto!important;
  padding:0!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.site-footer.footer .footer-bottom p{
  margin:0!important;
  color:#bac6d3!important;
  font-size:11px!important;
}
.site-footer.footer .footer-legal{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
}
.site-footer.footer .footer-legal a{
  position:relative!important;
  margin:0!important;
  padding:0 28px!important;
  color:#bac6d3!important;
  font-size:11px!important;
  line-height:1!important;
}
.site-footer.footer .footer-legal a:last-child{
  padding-right:0!important;
}
.site-footer.footer .footer-legal a + a::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:1px!important;
  height:14px!important;
  background:#f97316!important;
  transform:translateY(-50%)!important;
}
.site-footer.footer .footer-legal a:hover{
  color:#fff!important;
  transform:none!important;
}
@media(max-width:1180px){
  .site-footer.footer .footer-main{
    grid-template-columns:repeat(3,1fr)!important;
    row-gap:34px!important;
  }
  .site-footer.footer .footer-main > *,
  .site-footer.footer .footer-main > *:first-child{
    min-height:0!important;
    border-left:0!important;
    padding:0 18px!important;
  }
}
@media(max-width:760px){
  .site-footer.footer{padding-top:38px!important}
  .site-footer.footer .footer-main,
  .site-footer.footer .footer-bottom{
    width:calc(100% - 30px)!important;
  }
  .site-footer.footer .footer-main{
    grid-template-columns:1fr!important;
    padding-bottom:34px!important;
  }
  .site-footer.footer .footer-main > *,
  .site-footer.footer .footer-main > *:first-child{
    padding:0!important;
  }
  .site-footer.footer .footer-logo{
    width:170px!important;
  }
  .site-footer.footer .footer-bottom{
    min-height:0!important;
    padding:22px 0 26px!important;
    display:grid!important;
  }
  .site-footer.footer .footer-legal{
    flex-wrap:wrap!important;
    gap:12px 0!important;
  }
  .site-footer.footer .footer-legal a{
    padding:0 16px!important;
  }
  .site-footer.footer .footer-legal a:first-child{
    padding-left:0!important;
  }
}
@media(max-width:760px){
  .site-footer.footer{
    padding-top:38px!important;
  }
  .site-footer.footer .footer-main,
  .site-footer.footer .footer-bottom{
    width:calc(100% - 30px)!important;
  }
  .site-footer.footer .footer-main{
    grid-template-columns:1fr!important;
    padding-bottom:34px!important;
  }
  .site-footer.footer .footer-main > *,
  .site-footer.footer .footer-main > *:first-child{
    padding:0!important;
  }
  .site-footer.footer .footer-logo{
    width:170px!important;
  }
  .site-footer.footer .footer-bottom{
    min-height:0!important;
    padding:22px 0 26px!important;
    display:grid!important;
  }
  .site-footer.footer .footer-legal{
    flex-wrap:wrap!important;
    gap:12px 0!important;
  }
  .site-footer.footer .footer-legal a{
    padding:0 16px!important;
  }
  .site-footer.footer .footer-legal a:first-child{
    padding-left:0!important;
  }
}

body svg path,
body svg circle,
body svg rect,
body svg line,
body svg polyline,
body svg polygon{
  vector-effect:non-scaling-stroke;
  stroke-width:.7px;
}
body,
body *:not(svg):not(svg *){
  font-family:"Poppins",Arial,sans-serif!important;
}
html{scroll-behavior:smooth}
.site-header.header,
header.site-header.header{
  position:sticky!important;
  top:0!important;
  z-index:5000!important;
  width:100%!important;
  background:rgba(6,23,47,.98)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
  color:#fff!important;
  transition:background .28s var(--shared-ease),box-shadow .28s var(--shared-ease)!important;
}
.site-header.header.scrolled,
header.site-header.header.scrolled{background:rgba(6,23,47,.995)!important;box-shadow:0 12px 34px rgba(0,0,0,.22)!important}
.site-header.header .shell.header-inner.header-shell,
.site-header.header .header-inner,
.site-header.header .header-shell{
  width:min(1320px,calc(100% - 72px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  min-height:78px!important;
  height:auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
}
.site-header.header .brand{display:inline-flex!important;align-items:center!important;gap:12px!important;min-width:226px!important;margin:0!important;color:#fff!important;text-decoration:none!important;transition:transform .28s var(--shared-ease)!important}
.site-header.header .brand-mark,
.site-header.header .mark{width:42px!important;height:50px!important;display:grid!important;place-items:center!important;color:#fff!important;font-size:45px!important;font-weight:900!important;line-height:1!important;letter-spacing:-.12em!important;transform:skewY(-9deg)!important}
.site-header.header .brand-copy strong,
.site-header.header .brand-text strong{display:block!important;color:#fff!important;font-size:20px!important;font-weight:900!important;line-height:1!important;letter-spacing:.035em!important}
.site-header.header .brand-copy small,
.site-header.header .brand-text small{display:block!important;margin-top:6px!important;color:rgba(255,255,255,.68)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important;white-space:nowrap!important}
.site-header.header .main-nav,
.site-header.header .nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:34px!important;margin-left:auto!important;color:#fff!important}
.site-header.header .main-nav a,
.site-header.header .nav a{position:relative!important;display:inline-flex!important;align-items:center!important;color:#fff!important;text-decoration:none!important;font-size:11px!important;font-weight:900!important;letter-spacing:.03em!important;text-transform:uppercase!important;padding:32px 0!important;line-height:1.2!important;transition:color .24s var(--shared-ease)!important}
.site-header.header .main-nav a::after,
.site-header.header .nav a::after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:22px!important;height:2px!important;background:var(--shared-orange)!important;transform:scaleX(0)!important;transform-origin:right!important;transition:transform .3s var(--shared-ease)!important;display:block!important}
.site-header.header .main-nav a:hover::after,
.site-header.header .nav a:hover::after{transform:scaleX(1)!important;transform-origin:left!important}
.site-header.header .nav-caret{display:inline-block!important;position:static!important;color:var(--shared-orange)!important;font-size:10px!important;line-height:1!important;margin-left:7px!important;transform:none!important}
.site-header.header .nav-caret::before,
.site-header.header .nav-caret::after{content:none!important;display:none!important}
.site-header.header .nav-item{position:relative!important}
.site-header.header .services-menu{position:absolute!important;top:calc(100% - 12px)!important;left:-18px!important;min-width:268px!important;padding:10px!important;background:#fff!important;border:1px solid #e3e9f0!important;border-radius:14px!important;box-shadow:var(--shared-shadow)!important;opacity:0!important;visibility:hidden!important;transform:translateY(8px)!important;transition:opacity .24s var(--shared-ease),transform .24s var(--shared-ease),visibility .24s var(--shared-ease)!important;z-index:5002!important}
.site-header.header .nav-item:hover .services-menu,
.site-header.header .nav-item:focus-within .services-menu{opacity:1!important;visibility:visible!important;transform:none!important}
.site-header.header .services-menu a{display:block!important;padding:13px 14px!important;border-radius:10px!important;color:#17283f!important;font-size:11px!important;line-height:1.25!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap!important}
.site-header.header .services-menu a::after{display:none!important}
.site-header.header .services-menu a:hover{background:#f4f7fb!important;color:#08375d!important}
.site-header.header .button,
.site-header.header .btn,
.site-header.header .header-cta{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:48px!important;height:auto!important;padding:0 23px!important;border:1px solid var(--shared-orange)!important;border-radius:4px!important;background:var(--shared-orange)!important;color:#071523!important;text-decoration:none!important;font-size:11px!important;font-weight:900!important;letter-spacing:.02em!important;line-height:1!important;overflow:hidden!important;transition:transform .28s var(--shared-ease),box-shadow .28s var(--shared-ease)!important;white-space:nowrap!important}
.site-header.header .button:hover,
.site-header.header .btn:hover,
.site-header.header .header-cta:hover{transform:translateY(-2px)!important;box-shadow:0 12px 30px rgba(0,0,0,.2)!important}
.site-header.header .nav-toggle{display:none!important;border:0!important;background:transparent!important;color:#fff!important;font-size:30px!important;line-height:1!important;cursor:pointer!important;padding:8px!important;margin-left:auto!important}
.site-footer.footer,
footer.site-footer.footer{background:linear-gradient(180deg,#020b16,#01070d)!important;color:#fff!important;padding:42px 0!important;border-top:1px solid rgba(255,255,255,.1)!important}
.site-footer.footer .footer-grid{width:min(1320px,calc(100% - 72px))!important;max-width:none!important;margin-inline:auto!important;display:grid!important;grid-template-columns:1.55fr repeat(5,1fr) 1.35fr!important;gap:28px!important;align-items:start!important}
.site-footer.footer .brand{display:inline-flex!important;align-items:center!important;gap:12px!important;text-decoration:none!important;color:#fff!important}
.site-footer.footer .brand-mark,
.site-footer.footer .mark{width:39px!important;height:45px!important;display:grid!important;place-items:center!important;color:#fff!important;font-size:42px!important;font-weight:900!important;line-height:1!important;letter-spacing:-.12em!important;transform:skewY(-9deg)!important}
.site-footer.footer .brand-copy strong,
.site-footer.footer .brand-text strong{display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;line-height:1!important;letter-spacing:.035em!important}
.site-footer.footer .brand-copy small,
.site-footer.footer .brand-text small{display:block!important;margin-top:5px!important;color:#cdd7e5!important;font-size:8px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.13em!important;white-space:nowrap!important}
.site-footer.footer h4{margin:0 0 14px!important;color:#fff!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.11em!important}
.site-footer.footer a,
.site-footer.footer p{display:block!important;color:#cdd7e5!important;font-size:11px!important;font-weight:600!important;line-height:1.62!important;margin:0 0 7px!important;text-decoration:none!important;transition:color .22s var(--shared-ease),transform .22s var(--shared-ease)!important}
.site-footer.footer a:hover{color:#fff!important;transform:translateX(3px)!important}
.site-footer.footer .footer-brand p{margin-top:16px!important}
.shared-page{background:#f5f7fb;color:#020b16;overflow-x:hidden}
.shared-service-page{background:#f5f7fb;min-height:100vh}
.shared-page-hero{background:radial-gradient(circle at 78% 20%,rgba(249,115,22,.16),transparent 28%),linear-gradient(135deg,#01070d,#031020);color:#fff;padding:42px 0 38px;border-bottom:1px solid rgba(255,255,255,.12)}
.shared-page-hero .shell{width:min(1320px,calc(100% - 72px));margin-inline:auto}
.shared-page-hero .eyebrow{margin:0 0 12px;color:var(--shared-orange);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.shared-page-hero h1{margin:0;font-family:'Poppins',Arial,sans-serif;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.02;letter-spacing:-.04em;font-weight:600;color:#fff}
.shared-page-hero p{max-width:760px;margin:18px 0 0;color:#dce5ef;font-size:16px;line-height:1.65;font-weight:600}
.mockup-wrap{width:min(1440px,100%);margin:0 auto;padding:34px 28px 46px;background:#fff}
.mockup-image-card{border-radius:20px;overflow:hidden;box-shadow:0 28px 80px rgba(7,26,52,.18);border:1px solid rgba(7,26,52,.08);background:#fff;transform:translateZ(0)}
.mockup-image-card img{display:block;width:100%;height:auto;object-fit:contain;background:#fff}
.page-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:min(1180px,calc(100% - 56px));margin:36px auto 0}
.page-link-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;border-radius:16px;background:#fff;border:1px solid rgba(7,26,52,.1);box-shadow:0 14px 38px rgba(7,26,52,.08);color:#020b16;text-decoration:none;transition:transform .28s var(--shared-ease),box-shadow .28s var(--shared-ease)}
.page-link-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(7,26,52,.12)}
.page-link-card strong{display:block;font-size:15px;text-transform:uppercase;letter-spacing:.04em}.page-link-card span{color:var(--shared-orange);font-weight:900}
[data-animate].reveal,.reveal[data-animate]{opacity:0;transform:translateY(24px);filter:blur(4px);transition:opacity .75s var(--shared-ease),transform .75s var(--shared-ease),filter .75s var(--shared-ease);transition-delay:var(--delay,0ms);will-change:opacity,transform,filter}
[data-animate].reveal-left{transform:translateX(-32px)}[data-animate].reveal-right{transform:translateX(32px)}[data-animate].reveal-scale{transform:scale(.96)}
[data-animate].is-visible,.is-visible[data-animate],.reveal.visible{opacity:1!important;transform:none!important;filter:none!important}
@media (max-width:1100px){
  .site-header.header .shell.header-inner.header-shell,.site-header.header .header-inner,.site-header.header .header-shell{width:calc(100% - 36px)!important}
  .site-header.header .main-nav,.site-header.header .nav,.site-header.header .header-cta{display:none!important}
  .site-header.header .nav-toggle{display:block!important}
  .site-header.header.nav-open .main-nav,.site-header.header.nav-open .nav{display:grid!important;position:absolute!important;top:100%!important;left:18px!important;right:18px!important;gap:0!important;background:#fff!important;border:1px solid #e3e9f0!important;border-radius:14px!important;box-shadow:var(--shared-shadow)!important;padding:12px!important;color:#020b16!important}
  .site-header.header.nav-open .main-nav a,.site-header.header.nav-open .nav a{display:flex!important;color:#020b16!important;padding:15px 12px!important;border-bottom:1px solid #edf1f5!important}
  .site-header.header.nav-open .main-nav a:last-child,.site-header.header.nav-open .nav a:last-child{border-bottom:0!important}
  .site-header.header.nav-open .services-menu{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important;border:0!important;padding:0 0 8px 12px!important;min-width:0!important;background:transparent!important}
  .site-header.header.nav-open .services-menu a{color:#020b16!important;border-bottom:0!important;padding:10px 12px!important}
  .site-footer.footer .footer-grid{width:calc(100% - 36px)!important;grid-template-columns:repeat(2,1fr)!important}.site-footer.footer .footer-brand{grid-column:1/-1}.page-links{grid-template-columns:1fr}.mockup-wrap{padding:22px 16px 34px}.shared-page-hero .shell{width:calc(100% - 36px)}
}
@media (max-width:640px){
  .site-header.header .brand{min-width:auto!important}.site-header.header .brand-copy small{display:none!important}.site-header.header .brand-copy strong{font-size:17px!important}.site-footer.footer .footer-grid{grid-template-columns:1fr!important}.shared-page-hero{padding:34px 0 30px}.mockup-image-card{border-radius:12px}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-animate].reveal,.reveal[data-animate]{opacity:1!important;transform:none!important;filter:none!important}}
.shared-hero-actions{display:flex;align-items:center;gap:18px;margin-top:26px;flex-wrap:wrap}
.shared-btn,.shared-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:900;letter-spacing:.02em;transition:transform .28s var(--shared-ease),box-shadow .28s var(--shared-ease),color .28s var(--shared-ease),border-color .28s var(--shared-ease)}
.shared-btn{min-height:50px;padding:0 24px;border-radius:5px;background:var(--shared-orange);color:#071523;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.shared-link{min-height:50px;padding:0 18px;border-radius:5px;color:#fff;border:1px solid rgba(255,255,255,.24)}
.shared-btn:hover,.shared-link:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.18)}
.mockup-stage{position:relative}
.mockup-hotspot{position:absolute;display:block;z-index:5;border-radius:10px;background:rgba(255,255,255,0);outline:0;transition:background .2s var(--shared-ease),box-shadow .2s var(--shared-ease)}
.mockup-hotspot:hover,.mockup-hotspot:focus-visible{background:rgba(249,115,22,.13);box-shadow:0 0 0 2px rgba(249,115,22,.72) inset}
.mockup-cta{left:65%;top:88.7%;width:28%;height:4.1%}
.page-link-card.active{border-color:rgba(249,115,22,.55);box-shadow:0 18px 46px rgba(249,115,22,.15)}
@media (max-width:760px){.mockup-hotspot{display:none}.shared-hero-actions{align-items:stretch}.shared-btn,.shared-link{width:100%}.page-links{width:100%;gap:12px}.page-link-card{padding:18px 18px}}

/* Darker blackish navy brand tone update */
:root{
  --navy:#01070d!important;
  --navy-2:#020b16!important;
  --navy-3:#03111f!important;
  --blue:#08375d!important;
  --shared-navy:#01070d!important;
  --shared-navy-2:#020b16!important;
  --shared-ink:#030b18!important;
}
.site-header.header .button,
.site-header.header .btn.header-cta{background:#01070d!important;border-color:#01070d!important;color:#fff!important}
.site-footer.footer{background:linear-gradient(180deg,#01070d,#000306)!important}
.shared-page-hero{background:radial-gradient(circle at 78% 20%,rgba(249,115,22,.13),transparent 28%),linear-gradient(135deg,#01070d,#020b16)!important}
.shared-btn{color:#050b12!important}

/* FINAL DESIGN MATCH OVERRIDES */
:root{
  --shared-navy:#000306!important;
  --shared-navy-2:#01070d!important;
  --shared-ink:#020812!important;
  --shared-orange:#f97316!important;
  --shared-line:rgba(255,255,255,.13)!important;
  --shared-shadow:0 26px 80px rgba(0,3,8,.36)!important;
}
html,body{background:#fff!important}
.site-header.header,
header.site-header.header{
  background:linear-gradient(180deg,rgba(0,4,8,.985),rgba(0,7,14,.97))!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.18)!important;
}
.site-header.header.scrolled,
header.site-header.header.scrolled{background:rgba(0,3,7,.995)!important;box-shadow:0 18px 45px rgba(0,0,0,.34)!important}
.site-header.header .shell.header-inner.header-shell,
.site-header.header .header-inner,
.site-header.header .header-shell{min-height:84px!important;width:min(1420px,calc(100% - 72px))!important}
.site-header.header .main-nav,
.site-header.header .nav{gap:30px!important}
.site-header.header .main-nav a,
.site-header.header .nav a{font-size:11px!important;letter-spacing:.045em!important;padding:34px 0!important}
.site-header.header .button,
.site-header.header .btn,
.site-header.header .header-cta{background:linear-gradient(180deg,#f97316,#f97316)!important;border-color:#f97316!important;color:#071018!important;border-radius:3px!important;min-height:46px!important}
.site-header.header .services-menu{background:#fff!important;border-radius:6px!important;border:1px solid rgba(9,25,45,.11)!important;box-shadow:0 24px 70px rgba(0,0,0,.22)!important}
.site-footer.footer,
footer.site-footer.footer{background:linear-gradient(180deg,#010912 0%,#000306 100%)!important;border-top:1px solid rgba(255,255,255,.12)!important;padding:40px 0 38px!important}
.site-footer.footer .footer-grid{width:min(1420px,calc(100% - 72px))!important;gap:30px!important}
.site-footer.footer a,.site-footer.footer p{color:#d7e0eb!important}
.site-footer.footer h4{color:#fff!important}
/* Force all old page-specific dark areas into the requested near-black blue tone. */
.returns,.cta,.bottom-cta,.dark-section,.section-dark,.impact-strip,.navy-band,.hero-dark,.approach-dark,
.cta-band,.bottom-service-nav,.ei-impact,.get-list,.dark-panel,.why-card,
[class*="dark-panel"],[class*="dark-section"]{
  background:linear-gradient(135deg,#000306 0%,#010b15 58%,#000204 100%)!important;
  color:#fff!important;
}
.dark-panel,.cta-band,.bottom-service-nav,.ei-impact,.get-list{box-shadow:0 24px 70px rgba(0,4,10,.28)!important}
/* Consistent section linework from the supplied pages. */
.section-heading,.section-title.center,.section-title{text-wrap:balance}
.reveal{will-change:opacity,transform}
@media (max-width:980px){.site-header.header .shell.header-inner.header-shell{width:calc(100% - 34px)!important}.site-header.header .header-cta{display:none!important}.site-header.header .main-nav,.site-header.header .nav{position:absolute!important;top:100%!important;left:0!important;right:0!important;display:none!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;background:#00060c!important;padding:16px 28px 24px!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.site-header.header.is-open .main-nav,.site-header.header.is-open .nav{display:flex!important}.site-header.header .main-nav a,.site-header.header .nav a{padding:12px 0!important}.site-header.header .nav-toggle{display:block!important}.site-header.header .services-menu{position:static!important;visibility:visible!important;opacity:1!important;transform:none!important;box-shadow:none!important;width:100%!important;margin:6px 0 8px!important}}

/* User requested: white header only on Home, Strategic Advisory and Strategic Advisory Approach pages. */
body.white-header-page .site-header.header,
body.white-header-page header.site-header.header{
  background:#fff!important;
  border-bottom:1px solid #edf1f5!important;
  box-shadow:0 4px 18px rgba(7,26,52,.05)!important;
  color:#020b16!important;
}
body.white-header-page .site-header.header.scrolled,
body.white-header-page header.site-header.header.scrolled{
  background:#fff!important;
  box-shadow:0 12px 30px rgba(7,26,52,.08)!important;
}
body.white-header-page .site-header.header .brand,
body.white-header-page .site-header.header .brand-mark,
body.white-header-page .site-header.header .mark,
body.white-header-page .site-header.header .brand-copy strong,
body.white-header-page .site-header.header .brand-text strong,
body.white-header-page .site-header.header .main-nav,
body.white-header-page .site-header.header .nav,
body.white-header-page .site-header.header .main-nav a,
body.white-header-page .site-header.header .nav a,
body.white-header-page .site-header.header .nav-toggle{
  color:#020b16!important;
}
body.white-header-page .site-header.header .brand-copy small,
body.white-header-page .site-header.header .brand-text small{
  color:#233653!important;
}
body.white-header-page .site-header.header .nav-caret{
  color:#f97316!important;
}

/* Compact the Services/Practice Areas hover dropdown across all pages. */
.site-header.header .services-menu{
  top:calc(100% - 6px)!important;
  left:-12px!important;
  min-width:242px!important;
  padding:6px!important;
  border-radius:8px!important;
  transform:translateY(4px)!important;
}
.site-header.header .nav-item:hover .services-menu,
.site-header.header .nav-item:focus-within .services-menu{
  transform:none!important;
}
.site-header.header .services-menu a{
  padding:9px 11px!important;
  border-radius:6px!important;
  line-height:1.18!important;
}
@media (max-width:1100px){
  .site-header.header.nav-open .services-menu{
    padding:0 0 4px 8px!important;
    margin:0!important;
  }
  .site-header.header.nav-open .services-menu a{
    padding:8px 10px!important;
  }
}

/* Mobile menu fix: JS toggles .nav-open, so keep the shared header open state
   aligned with the tablet/mobile breakpoint overrides. */
@media (max-width:980px){
  .site-header.header.nav-open .main-nav,
  .site-header.header.nav-open .nav{
    display:flex!important;
    color:#fff!important;
  }
  .site-header.header.nav-open .main-nav a,
  .site-header.header.nav-open .nav a{
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
  }
  .site-header.header.nav-open .services-menu{
    background:transparent!important;
  }
  .site-header.header.nav-open .services-menu a{
    color:#fff!important;
    border-bottom:0!important;
  }
  body.white-header-page .site-header.header.nav-open .main-nav,
  body.white-header-page .site-header.header.nav-open .nav{
    background:#fff!important;
    border:1px solid #e3e9f0!important;
    color:#020b16!important;
  }
  body.white-header-page .site-header.header.nav-open .main-nav a,
  body.white-header-page .site-header.header.nav-open .nav a,
  body.white-header-page .site-header.header.nav-open .services-menu a{
    color:#020b16!important;
    border-bottom-color:#edf1f5!important;
  }
}



.btn-strategy-orange { 
  background: #f97316 !important; 
  color: #fff !important; 
  border-color: #f97316 !important; 
  display: inline-flex !important; 
  align-items: center !important; 
  justify-content: center !important; 
  text-align: center !important;
  padding: 16px 24px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
  margin-top: 10px !important;
}
.btn-strategy-orange:hover { 
  background: #ea580c !important; 
  color: #fff !important; 
  transform: translateY(-2px) !important;
}

/* Site-wide typography normalization. */
:root{
  --site-font-family:'Poppins',Arial,sans-serif;
  --site-heading-family:"Poppins",Arial,sans-serif;
}
html,
body,
body *,
button,
input,
select,
textarea,
option,
optgroup,
svg text,
svg tspan{
  font-family:var(--site-font-family)!important;
}
h1,h2,h3,h4,h5,h6,
.serif,
.hero h1,
.service-hero h1,
.approach-hero h1,
.shared-page-hero h1,
.bottom-copy h2,
.cta h2,
.cta-copy h2{
  font-family:var(--site-heading-family)!important;
  font-weight:600!important;
}

/* Unified brand orange for CTA buttons and orange accents. */
:root{
  --brand-orange:#f97316!important;
  --brand-orange-hover:#ea580c!important;
  --shared-orange:var(--brand-orange)!important;
  --orange:var(--brand-orange)!important;
  --orange:var(--brand-orange)!important;
  --sp-orange:var(--brand-orange)!important;
  --sp-orange-soft:var(--brand-orange)!important;
  --tb-orange:var(--brand-orange)!important;
  --tb-orange-2:var(--brand-orange)!important;
}
.btn-strategy-orange,
.button-orange,
.site-header.header .header-cta,
.site-header.header .btn.header-cta,
.shared-btn,
.tb-btn.orange,
.service-full .cta-action .btn,
.service-full .btn-strategy-orange{
  background:var(--brand-orange)!important;
  border-color:var(--brand-orange)!important;
  color:#fff!important;
}
.btn-strategy-orange:hover,
.button-orange:hover,
.site-header.header .header-cta:hover,
.site-header.header .btn.header-cta:hover,
.shared-btn:hover,
.tb-btn.orange:hover,
.service-full .cta-action .btn:hover,
.service-full .btn-strategy-orange:hover{
  background:var(--brand-orange-hover)!important;
  border-color:var(--brand-orange-hover)!important;
  color:#fff!important;
}

/* Shared hero sizing: keep hero cards consistent and prevent CTA buttons from
   dropping out of view when page-local styles are too large. */
body:not(.home-page) .hero,
body:not(.home-page) .service-hero,
body:not(.home-page) .approach-hero{
  min-height:420px!important;
}
body:not(.home-page) .hero h1,
body:not(.home-page) .service-hero h1,
body:not(.home-page) .approach-hero h1,
.shared-page-hero h1{
  font-size:clamp(2.45rem,3.45vw,3.85rem)!important;
  line-height:1.02!important;
  letter-spacing:-.03em!important;
}
body:not(.home-page) .hero p,
body:not(.home-page) .service-hero .lead,
body:not(.home-page) .approach-hero p,
.shared-page-hero p{
  font-size:15px!important;
  line-height:1.6!important;
}
body:not(.home-page) .hero .button-row,
body:not(.home-page) .hero-actions,
.shared-hero-actions{
  gap:14px!important;
  align-items:center!important;
}
body:not(.home-page) .hero .btn,
body:not(.home-page) .hero .button,
body:not(.home-page) .hero-actions .btn,
body:not(.home-page) .hero-actions .button,
.shared-hero-actions .shared-btn,
.shared-hero-actions .shared-link{
  min-height:44px!important;
  height:44px!important;
  padding:0 18px!important;
  font-size:10.5px!important;
  white-space:nowrap!important;
  margin-top:0!important;
}
body:not(.home-page) .hero .btn-outline,
body:not(.home-page) .hero .button-outline,
body:not(.home-page) .hero-actions .btn-outline,
body:not(.home-page) .hero-actions .button-outline,
.shared-hero-actions .shared-link{
  display:inline-flex!important;
  background:rgba(1,7,13,.34)!important;
  color:#fff!important;
  border-color:var(--brand-orange)!important;
}
@media (max-width:680px){
  body:not(.home-page) .hero,
  body:not(.home-page) .service-hero,
  body:not(.home-page) .approach-hero{
    min-height:auto!important;
  }
  body:not(.home-page) .hero h1,
  body:not(.home-page) .service-hero h1,
  body:not(.home-page) .approach-hero h1,
  .shared-page-hero h1{
    font-size:clamp(2.2rem,10vw,2.9rem)!important;
  }
  body:not(.home-page) .hero .button-row,
  body:not(.home-page) .hero-actions,
  .shared-hero-actions{
    flex-wrap:wrap!important;
  }
  body:not(.home-page) .hero .btn,
  body:not(.home-page) .hero .button,
  body:not(.home-page) .hero-actions .btn,
  body:not(.home-page) .hero-actions .button,
  .shared-hero-actions .shared-btn,
  .shared-hero-actions .shared-link{
    width:100%!important;
  }
}

@supports (content-visibility:auto){
  main > section:not(:first-child),
  .section,
  .tb-section,
  .article-main,
  .insights-main,
  .service-full .section{
    content-visibility:auto;
    contain-intrinsic-size:1px 720px;
  }
}

/* Icon fallbacks: avoid visible question marks if a source glyph is missing. */
.arrow{
  display:inline-grid!important;
  place-items:center!important;
  width:16px!important;
  min-width:16px!important;
  font-size:0!important;
  line-height:1!important;
}
.arrow::before{
  content:"\2192";
  font-size:14px!important;
  line-height:1!important;
}
.nav-caret{
  display:inline-block!important;
  position:static!important;
  min-width:10px!important;
  font-size:10px!important;
  line-height:1!important;
}
.nav-caret::before{
  content:none!important;
  display:none!important;
}
.bottom-note{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
.bottom-note span{
  font-size:0!important;
}
.bottom-note span::before{
  content:"\2713";
  font-size:12px!important;
  line-height:1!important;
}
.step-icon svg,
.insight-icon svg{
  width:34px!important;
  height:34px!important;
}
.insight-icon svg{
  width:30px!important;
  height:30px!important;
}
.engage-list li::before,
body.white-header-page .panel li::before{
  content:"\2713"!important;
}

/* User requested: header should scroll with the page, not stay frozen. */
.site-header.header,
header.site-header.header{
  position:relative!important;
  top:auto!important;
}

form.is-sending button[type="submit"],
form.is-sending input[type="submit"]{
  cursor:wait!important;
  opacity:.86!important;
  pointer-events:none!important;
}
.field-error-state{
  border-color:#ef4444!important;
  box-shadow:0 0 0 3px rgba(239,68,68,.16)!important;
}
.email-field-error{
  display:block;
  grid-column:1/-1;
  margin:-8px 0 2px;
  color:#dc2626;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
}
.submit-spinner{
  width:16px;
  height:16px;
  border:2px solid rgba(255,255,255,.55);
  border-top-color:#fff;
  border-radius:50%;
  animation:submit-spin .75s linear infinite;
}
@keyframes submit-spin{
  to{transform:rotate(360deg)}
}

.site-header.header .header-logo-light{
  display:none!important;
}
.site-header.header .header-logo-dark{
  display:block!important;
}
body.white-header-page .site-header.header .header-logo-dark{
  display:none!important;
}
body.white-header-page .site-header.header .header-logo-light{
  display:block!important;
}

.site-header.header .header-logo-link,
header.site-header.header .header-logo-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:190px!important;
  min-width:190px!important;
  height:58px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
.site-header.header .header-logo,
header.site-header.header .header-logo{
  width:178px!important;
  max-width:178px!important;
  height:auto!important;
  max-height:48px!important;
  object-fit:contain!important;
  object-position:left center!important;
  display:block!important;
}
.site-header.header .header-logo-light{
  display:none!important;
}
.site-header.header .header-logo-dark{
  display:block!important;
}
body.white-header-page .site-header.header .header-logo-dark{
  display:none!important;
}
body.white-header-page .site-header.header .header-logo-light{
  display:block!important;
}
@media(max-width:760px){
  .site-header.header .header-logo-link,
  header.site-header.header .header-logo-link{
    width:158px!important;
    min-width:158px!important;
    height:52px!important;
  }
  .site-header.header .header-logo,
  header.site-header.header .header-logo{
    width:150px!important;
    max-width:150px!important;
    max-height:42px!important;
  }
}

.line-icon,
.icon-circle,
.stage-icon,
.dm-icon,
.des-mini em,
.exact-mini-icon,
.exact-icon-round,
.recommend-card em,
.outcome em,
.journey-icon,
.badge,
.outcome-icon,
.method-icon,
.pillar-icon,
.mini-icon{
  display:grid!important;
  place-items:center!important;
}
.line-icon svg,
.icon-circle svg,
.stage-icon svg,
.dm-icon svg,
.des-mini em svg,
.exact-mini-icon svg,
.exact-icon-round svg,
.recommend-card em svg,
.outcome em svg,
.journey-icon svg,
.badge svg,
.outcome-icon svg,
.method-icon svg,
.pillar-icon svg,
.mini-icon svg{
  width:1em;
  height:1em;
}
.stars{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  color:#f97316!important;
}
.stars svg{
  width:14px!important;
  height:14px!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  stroke-width:1.5!important;
}
.stars .star-muted{
  opacity:.28!important;
  display:inline-grid!important;
}
.inline-svg-icon,
.dot{
  display:inline-grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  vertical-align:middle!important;
}
.inline-svg-icon svg,
.dot svg{
  width:16px!important;
  height:16px!important;
}
.data-list li:before,
.check-list li:before,
.why-card li:before,
.get-list li:before,
.ei-get li::before{
  content:""!important;
  width:14px!important;
  height:8px!important;
  border-left:2px solid currentColor!important;
  border-bottom:2px solid currentColor!important;
  border-radius:0!important;
  transform:rotate(-45deg)!important;
  background:transparent!important;
}
.cta-action small:before,
.ei-cta-action small::before{
  content:""!important;
  display:inline-block!important;
  width:15px!important;
  height:15px!important;
  margin-right:10px!important;
  border:2px solid var(--brand-orange, #f97316)!important;
  border-radius:50%!important;
  vertical-align:-2px!important;
}
.metric:before{
  content:""!important;
  display:inline-block!important;
  width:10px!important;
  height:10px!important;
  margin-right:7px!important;
  border-top:2px solid currentColor!important;
  border-right:2px solid currentColor!important;
  transform:rotate(-45deg)!important;
  vertical-align:3px!important;
}
.strategy-step-icon svg{
  width:42px!important;
  height:42px!important;
}
.audience-step-icon svg{
  width:44px!important;
  height:44px!important;
}

body.strategy-modal-open{overflow:hidden}
.strategy-modal{position:fixed;inset:0;z-index:9000;display:none;color:#fff}
.strategy-modal.is-open{display:block}
.strategy-modal__backdrop{position:absolute;inset:0;background:rgba(0,4,10,.72);backdrop-filter:blur(12px)}
.strategy-modal__dialog{position:relative;width:min(1500px,calc(100% - 48px));max-height:calc(100vh - 48px);margin:24px auto;padding:0;border:1px solid rgba(148,178,215,.38);border-radius:12px;background:linear-gradient(135deg,#00070f 0%,#021d3b 48%,#00070f 100%);box-shadow:0 28px 90px rgba(0,0,0,.52);overflow:auto;outline:0}
.strategy-modal__close{position:sticky;top:12px;float:right;z-index:4;width:40px;height:40px;margin:12px 12px -52px auto;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(1,15,30,.82);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.strategy-booking{position:relative;display:grid;grid-template-columns:minmax(340px,.68fr) minmax(560px,1fr);gap:56px;padding:46px 58px 28px;overflow:hidden}
.strategy-booking:before{content:"";position:absolute;left:-7%;right:47%;bottom:120px;height:210px;background:repeating-radial-gradient(ellipse at 40% 100%,rgba(249,115,22,.6) 0 1px,transparent 1px 11px);opacity:.32;transform:rotate(-4deg);pointer-events:none}
.strategy-booking__intro,.strategy-booking__form,.strategy-booking__meta{position:relative;z-index:1}
.strategy-booking__eyebrow{margin:4px 0 14px;color:#f97316;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.strategy-booking h2{margin:0;color:#fff;font-family:'Poppins',Arial,sans-serif;font-size:clamp(3rem,4.2vw,4.9rem);font-weight:600;line-height:1.03;letter-spacing:0}
.strategy-booking__rule,.strategy-booking__form-rule{display:block;width:64px;height:2px;margin:22px 0;background:#f97316}
.strategy-booking__copy{max-width:460px;margin:0 0 30px;color:#f1f5f9;font-size:17px;line-height:1.62}
.strategy-booking__group{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:start;margin-top:26px}
.strategy-booking__group--bordered{padding-top:22px;border-top:1px solid rgba(255,255,255,.18)}
.strategy-booking__icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.62);border-radius:50%;color:#fff}
.strategy-booking svg{width:28px;height:28px;color:#fff}
.strategy-booking__group h3{margin:4px 0 10px;color:#f97316;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.strategy-booking__group ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:#fff;font-size:14px;line-height:1.35}
.strategy-booking__group li{position:relative;padding-left:26px}
.strategy-booking__group li:before{content:"✓";position:absolute;left:0;top:0;color:#f97316;font-weight:900}
.strategy-booking__form{align-self:start;padding:28px 32px 20px;border:1px solid rgba(132,166,205,.34);border-radius:10px;background:linear-gradient(150deg,rgba(8,33,64,.8),rgba(4,21,40,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.strategy-booking__form h3{margin:0;color:#fff;font-size:20px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.strategy-booking__form-rule{width:58px;margin:12px 0 22px}
.strategy-booking__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}
.strategy-booking__fields label{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 4px;color:#fff;font-size:14px;font-weight:700;line-height:1.3}
.strategy-booking__fields label span{color:#f97316}
.strategy-booking__wide{grid-column:1/-1}
.strategy-booking input,.strategy-booking select,.strategy-booking textarea{width:100%;border:1px solid rgba(148,178,215,.34);border-radius:5px;background:rgba(5,21,39,.82);color:#fff;font:inherit;font-size:14px;outline:0;transition:border-color .2s var(--shared-ease),box-shadow .2s var(--shared-ease),background .2s var(--shared-ease)}
.strategy-booking input,.strategy-booking select{height:44px;padding:0 18px}
.strategy-booking__fields input,.strategy-booking__fields select,.strategy-booking__fields textarea{flex:0 0 100%;margin-top:10px}
.strategy-booking textarea{min-height:104px;resize:vertical;padding:14px 18px;line-height:1.55}
.strategy-booking input::placeholder,.strategy-booking textarea::placeholder{color:#b9c5d5}
.strategy-booking input:focus,.strategy-booking select:focus,.strategy-booking textarea:focus{border-color:#f97316;box-shadow:0 0 0 3px rgba(249,115,22,.18);background:rgba(8,28,51,.95)}
.strategy-booking__areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0 0;padding:0;border:0}
.strategy-booking__areas legend{grid-column:1/-1;margin:0 0 10px;color:#fff;font-size:14px;font-weight:800}
.strategy-booking__areas legend span{font-weight:500}
.strategy-booking__areas label{display:grid;grid-template-columns:22px 36px 1fr;align-items:center;gap:12px;min-height:62px;padding:10px 12px;border:1px solid rgba(148,178,215,.32);border-radius:5px;background:rgba(7,24,44,.66);color:#fff;font-size:13px;font-weight:700;line-height:1.35;cursor:pointer}
.strategy-booking__areas input{width:19px;height:19px;margin:0;accent-color:#f97316}
.strategy-booking__areas span{display:grid;place-items:center;color:#fff}
.strategy-booking__areas strong{display:block;min-width:0;color:#fff;font:inherit;line-height:1.25;overflow-wrap:normal}
.strategy-booking__submit{display:flex;align-items:center;justify-content:center;gap:22px;width:100%;min-height:52px;margin-top:16px;border:0;border-radius:5px;background:linear-gradient(180deg,#fb923c,#f97316);color:#06101b;font-size:15px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-shadow:0 12px 30px rgba(249,115,22,.16);transition:transform .25s var(--shared-ease),box-shadow .25s var(--shared-ease)}
.strategy-booking__submit:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(249,115,22,.23)}
.strategy-booking__submit:disabled{opacity:.65;cursor:progress;transform:none}
.strategy-booking__submit span{font-size:28px;line-height:1}
.strategy-booking__submit span[aria-hidden="true"]{color:#fff}
.strategy-booking__status{min-height:20px;margin:10px 0 0;color:#fed7aa;font-size:13px;font-weight:700}
.strategy-booking__status.is-error{color:#fecaca}
.strategy-booking__meta{grid-column:1/-1;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:6px;color:#d8e0eb;font-size:14px}
.strategy-booking__meta span+span{padding-left:24px;border-left:1px solid rgba(255,255,255,.24)}

@media (max-width:1200px){
  .strategy-booking{grid-template-columns:1fr;gap:28px;padding:38px 30px 26px}
}
@media (max-width:760px){
  .strategy-modal__dialog{width:calc(100% - 18px);max-height:calc(100vh - 18px);margin:9px auto;border-radius:8px}
  .strategy-booking{padding:30px 14px 20px}
  .strategy-booking h2{font-size:2.55rem}
  .strategy-booking__form{padding:22px 14px 16px}
  .strategy-booking__fields,.strategy-booking__areas{grid-template-columns:1fr}
  .strategy-booking__group{grid-template-columns:58px 1fr}
  .strategy-booking__meta{display:grid;justify-items:center;gap:8px}
.strategy-booking__meta span+span{padding-left:0;border-left:0}
}

/* Global typography normalization */
html body,
html body :where(p, a, span, small, strong, b, em, li, label, input, select, textarea, button, h1, h2, h3, h4, h5, h6, div){
  font-family:'Poppins',Arial,sans-serif!important;
}
html body :where(h2, h3, h4, h5, h6, .section-heading, .tb-section-heading, .section-title, .tb-title, .eyebrow, .tb-eyebrow, .legal-eyebrow, .legal-text .terms-heading, .legal-text .terms-subheading){
  font-weight:500!important;
}
html body :where(p, li, label, input, select, textarea, .lead, .tb-copy, .tb-hero-lead){
  font-weight:400!important;
}
html body h2,
html body h2[class],
html body h3,
html body h3[class],
html body h4,
html body h4[class],
html body h5,
html body h5[class],
html body h6,
html body h6[class],
html body .section-heading,
html body .tb-section-heading,
html body .section-title,
html body .tb-title,
html body .eyebrow,
html body .tb-eyebrow{
  font-weight:500!important;
}

/* Responsive safety layer: mobile/tablet only, desktop design remains untouched. */
@media (max-width:1200px){
  html,
  body{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body *,
  body *::before,
  body *::after{
    min-width:0;
  }
  img,
  picture,
  video,
  canvas,
  iframe{
    max-width:100%!important;
  }
  img,
  video{
    height:auto;
  }
  .shell,
  .tb-shell,
  .article-shell,
  .service-full .shell,
  .site-header.header .shell.header-inner.header-shell,
  .site-header.header .header-inner,
  .site-header.header .header-shell,
  .site-footer.footer .footer-grid,
  .shared-page-hero .shell{
    max-width:100%!important;
  }
  h1,h2,h3,h4,h5,h6,p,a,li,span,strong,small,button,label,input,select,textarea{
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
}

@media (max-width:900px){
  .shell,
  .tb-shell,
  .article-shell,
  .service-full .shell,
  .shared-page-hero .shell,
  .site-footer.footer .footer-grid{
    width:calc(100% - 32px)!important;
  }
  .hero-grid,
  .shared-page-hero .shell,
  .cta-grid,
  .cta-inner,
  .bottom-grid,
  .bottom-cta-card,
  .stats-grid,
  .latest-grid,
  .impact-grid,
  .pillars-grid,
  .why-wrap,
  .challenge,
  .cards,
  .panels,
  .people,
  .footer-grid,
  .site-footer.footer .footer-grid,
  .service-full .core-grid,
  .service-full .impact-grid,
  .service-full .approach-row,
  .service-full .hero-grid,
  .service-full .cta-inner,
  .service-full .bottom-service-nav .shell,
  .article-hero-grid,
  .article-content-grid,
  .article-topbar-inner{
    grid-template-columns:1fr!important;
  }
  .hero,
  .shared-page-hero,
  .service-hero,
  .bottom-cta,
  .cta-band{
    overflow:hidden;
  }
  .hero-media,
  .hero-img,
  .hero-panel,
  .hero-visual,
  .service-hero .hero-visual,
  .cta-image,
  .cta-img,
  .bottom-img{
    max-width:100%!important;
  }
  .hero-media img,
  .hero-img img,
  .hero-panel img,
  .hero-visual img,
  .service-hero img,
  .cta-image img,
  .cta-img img,
  .bottom-img img{
    width:100%!important;
    max-width:100%!important;
    object-position:center!important;
  }
}

@media (max-width:680px){
  .shell,
  .tb-shell,
  .article-shell,
  .service-full .shell,
  .shared-page-hero .shell,
  .site-footer.footer .footer-grid{
    width:calc(100% - 24px)!important;
  }
  h1,
  .h1,
  .hero h1,
  .hero-copy h1,
  .shared-page-hero h1{
    font-size:clamp(2.15rem,11vw,3.2rem)!important;
    line-height:1.05!important;
    letter-spacing:0!important;
  }
  h2,
  .section-title,
  .section-heading,
  .cta h2,
  .bottom-copy h2{
    font-size:clamp(1.75rem,8vw,2.45rem)!important;
    line-height:1.12!important;
    letter-spacing:0!important;
  }
  .button,
  .btn,
  .shared-btn,
  .shared-link,
  .header-cta{
    max-width:100%!important;
    white-space:normal!important;
    text-align:center!important;
  }
  .hero-actions,
  .shared-hero-actions,
  .button-row,
  .cta-actions,
  .bottom-actions{
    align-items:stretch!important;
  }
  .hero-actions > *,
  .shared-hero-actions > *,
  .button-row > *,
  .cta-actions > *,
  .bottom-actions > *{
    width:100%;
  }
  .journey-table,
  .diff-table,
  .engagement-strip,
  .demand-milestone-wrap{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
}

/* Last-pass footer override */
footer.site-footer.footer{position:relative!important;overflow:hidden!important;padding:44px 0 0!important;border-top:0!important;background:radial-gradient(ellipse at 18% 100%,rgba(248,162,42,.18) 0,rgba(248,162,42,.08) 22%,transparent 48%),linear-gradient(135deg,#07101c 0%,#020914 48%,#01050b 100%)!important;color:#fff!important}
footer.site-footer.footer::before{content:""!important;position:absolute!important;left:-8%!important;bottom:34px!important;width:42%!important;height:132px!important;pointer-events:none!important;opacity:.62!important;background:repeating-radial-gradient(ellipse at left bottom,transparent 0 10px,rgba(249,115,22,.25) 11px 12px,transparent 13px 22px)!important;transform:skewY(-8deg)!important}
footer.site-footer.footer .footer-main{position:relative!important;z-index:1!important;width:min(1340px,calc(100% - 72px))!important;max-width:none!important;margin-inline:auto!important;display:grid!important;grid-template-columns:1.55fr 1fr .86fr .82fr .82fr 1.28fr!important;gap:0!important;align-items:start!important;padding:0 0 30px!important}
footer.site-footer.footer .footer-main > *{min-height:178px!important;padding:0 28px!important;border-left:1px solid rgba(255,255,255,.08)!important}
footer.site-footer.footer .footer-main > *:first-child{padding-left:0!important;border-left:0!important}
footer.site-footer.footer .footer-logo-link{display:inline-flex!important;align-items:center!important;width:auto!important;min-width:0!important;margin:0 0 34px!important}
footer.site-footer.footer .footer-logo{width:198px!important;max-width:100%!important;height:auto!important;object-fit:contain!important;display:block!important}
footer.site-footer.footer .footer-brand p{width:min(235px,100%)!important;margin:0!important;color:#c3cfdb!important;font-size:11.5px!important;line-height:1.86!important;font-weight:600!important}
footer.site-footer.footer h4{position:relative!important;margin:0 0 28px!important;color:#f97316!important;font-size:10px!important;line-height:1!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
footer.site-footer.footer h4::after{content:""!important;position:absolute!important;left:0!important;bottom:-12px!important;width:28px!important;height:2px!important;background:#f97316!important}
footer.site-footer.footer a,footer.site-footer.footer p{display:block!important;color:#c3cfdb!important;font-size:11px!important;line-height:1.58!important;font-weight:600!important;margin:0 0 13px!important;text-decoration:none!important;transition:color .22s var(--shared-ease),transform .22s var(--shared-ease),border-color .22s var(--shared-ease)!important}
footer.site-footer.footer a:hover{color:#fff!important;transform:translateX(3px)!important}
footer.site-footer.footer .footer-connect h4{color:#fff!important;font-size:14px!important;letter-spacing:.02em!important}
footer.site-footer.footer .footer-connect p{max-width:220px!important;margin-bottom:24px!important;line-height:1.7!important}
footer.site-footer.footer .footer-discussion{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;min-width:250px!important;min-height:48px!important;margin:0!important;padding:0 18px!important;border:1px solid #f97316!important;border-radius:4px!important;color:#f97316!important;background:transparent!important;font-size:10px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.04em!important;white-space:nowrap!important}
footer.site-footer.footer .footer-discussion:hover{color:#07101c!important;background:#f97316!important;border-color:#f97316!important;transform:translateY(-1px)!important}
footer.site-footer.footer .footer-bottom{position:relative!important;z-index:1!important;width:min(1340px,calc(100% - 72px))!important;max-width:none!important;min-height:64px!important;margin-inline:auto!important;padding:0!important;border-top:1px solid rgba(255,255,255,.12)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important}
footer.site-footer.footer .footer-bottom p{margin:0!important;color:#bac6d3!important;font-size:11px!important}
footer.site-footer.footer .footer-legal{display:flex!important;align-items:center!important;gap:0!important}
footer.site-footer.footer .footer-legal a{position:relative!important;margin:0!important;padding:0 28px!important;color:#bac6d3!important;font-size:11px!important;line-height:1!important}
footer.site-footer.footer .footer-legal a:last-child{padding-right:0!important}
footer.site-footer.footer .footer-legal a + a::before{content:""!important;position:absolute!important;left:0!important;top:50%!important;width:1px!important;height:14px!important;background:#f97316!important;transform:translateY(-50%)!important}
footer.site-footer.footer .footer-legal a:hover{color:#fff!important;transform:none!important}
@media(max-width:1180px){footer.site-footer.footer .footer-main{grid-template-columns:repeat(3,1fr)!important;row-gap:34px!important}footer.site-footer.footer .footer-main > *,footer.site-footer.footer .footer-main > *:first-child{min-height:0!important;border-left:0!important;padding:0 18px!important}}
@media(max-width:760px){footer.site-footer.footer{padding-top:38px!important}footer.site-footer.footer .footer-main,footer.site-footer.footer .footer-bottom{width:calc(100% - 30px)!important}footer.site-footer.footer .footer-main{grid-template-columns:1fr!important;padding-bottom:34px!important}footer.site-footer.footer .footer-main > *,footer.site-footer.footer .footer-main > *:first-child{padding:0!important}footer.site-footer.footer .footer-logo{width:170px!important}footer.site-footer.footer .footer-bottom{min-height:0!important;padding:22px 0 26px!important;display:grid!important}footer.site-footer.footer .footer-legal{flex-wrap:wrap!important;gap:12px 0!important}footer.site-footer.footer .footer-legal a{padding:0 16px!important}footer.site-footer.footer .footer-legal a:first-child{padding-left:0!important}}

/* Last-pass header logo correction */
header.site-header.header .header-logo-link{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;width:230px!important;min-width:230px!important;height:64px!important;margin:0!important;padding:0!important;overflow:visible!important}
header.site-header.header .header-logo{width:218px!important;max-width:218px!important;height:auto!important;max-height:56px!important;object-fit:contain!important;object-position:left center!important}
header.site-header.header .header-logo-light{display:none!important}
header.site-header.header .header-logo-dark{display:block!important}
body.white-header-page header.site-header.header .header-logo-dark{display:none!important}
body.white-header-page header.site-header.header .header-logo-light{display:block!important}
@media(max-width:760px){header.site-header.header .header-logo-link{width:184px!important;min-width:184px!important;height:56px!important}header.site-header.header .header-logo{width:176px!important;max-width:176px!important;max-height:48px!important}}

body.white-header-page header.site-header.header .header-logo-link,
body.white-header-page header.site-header.header .footer-logo-link{
  width:140px!important;
  min-width:140px!important;
  height:64px!important;
  overflow:hidden!important;
}
body.white-header-page header.site-header.header .header-logo-light{
  width:126px!important;
  max-width:126px!important;
  height:60px!important;
  max-height:60px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
@media(max-width:760px){
  body.white-header-page header.site-header.header .header-logo-link,
  body.white-header-page header.site-header.header .footer-logo-link{
    width:108px!important;
    min-width:108px!important;
    height:56px!important;
  }
  body.white-header-page header.site-header.header .header-logo-light{
    width:98px!important;
    max-width:98px!important;
    height:52px!important;
    max-height:52px!important;
  }
}

/* Full-screen opening logo transition. */
.site-logo-intro{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 42%,rgba(249,115,22,.10),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f7f9fc 52%,#eef3f8 100%);
  pointer-events:none;
  animation:site-logo-intro-hide 2.7s var(--shared-ease,ease) both;
}
.site-logo-intro::before{
  content:"";
  position:absolute;
  inset:26px;
  border:1px solid rgba(8,25,54,.08);
  border-radius:28px;
}
.site-logo-intro__stage{
  width:min(670px,88vw);
  display:grid;
  grid-template-columns:minmax(0,1fr) 66px minmax(0,1fr);
  align-items:center;
  gap:22px;
  text-align:center;
  position:relative;
  z-index:1;
}
.site-logo-intro__item{
  display:grid;
  justify-items:center;
  align-content:center;
  min-height:190px;
  padding:28px 26px;
  border:1px solid rgba(15,32,60,.09);
  border-radius:20px;
  background:rgba(255,255,255,.82);
  box-shadow:0 24px 70px rgba(7,26,52,.10);
  backdrop-filter:blur(12px);
}
.site-logo-intro__logo{
  width:100%;
  max-width:230px;
  max-height:128px;
  object-fit:contain;
}
.site-logo-intro__item-new .site-logo-intro__logo{
  max-width:246px;
  max-height:132px;
}
.site-logo-intro__item small{
  display:block;
  max-width:240px;
  margin-top:12px;
  color:#536174;
  font-size:11px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:.01em;
}
.site-logo-intro__item-old{
  opacity:0;
  transform:translateX(-18px) scale(.96);
  animation:site-logo-old-full 2.35s var(--shared-ease,ease) both;
}
.site-logo-intro__item-new{
  opacity:0;
  transform:translateX(18px) scale(.96);
  animation:site-logo-new-full 2.35s var(--shared-ease,ease) both;
}
.site-logo-intro__arrow{
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(135deg,#07172d,#f97316);
  font-size:28px;
  font-weight:900;
  opacity:0;
  transform:scale(.82);
  box-shadow:0 16px 36px rgba(249,115,22,.22);
  animation:site-logo-arrow-full 2.35s var(--shared-ease,ease) both;
}
@keyframes site-logo-old-full{
  0%{opacity:0;transform:translateX(-18px) scale(.96)}
  14%,86%{opacity:1;transform:translateX(0) scale(1)}
  100%{opacity:0;transform:translateX(-8px) scale(.98)}
}
@keyframes site-logo-new-full{
  0%,28%{opacity:0;transform:translateX(18px) scale(.96)}
  46%,88%{opacity:1;transform:translateX(0) scale(1)}
  100%{opacity:0;transform:translateX(8px) scale(.98)}
}
@keyframes site-logo-arrow-full{
  0%,22%{opacity:0;transform:scale(.82)}
  38%,88%{opacity:1;transform:scale(1)}
  100%{opacity:0;transform:scale(.94)}
}
@keyframes site-logo-intro-hide{
  0%,86%{opacity:1;visibility:visible}
  100%{opacity:0;visibility:hidden}
}

/* Text-only opening welcome for Home and About. */
.site-logo-intro .site-logo-intro__stage{
  width:min(1040px,calc(100vw - 44px))!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  place-items:center!important;
  gap:0!important;
}
.site-logo-intro__item,
.site-logo-intro__arrow{
  display:none!important;
}
.site-logo-intro__message{
  display:grid!important;
  justify-items:center!important;
  gap:10px!important;
  margin:0!important;
  max-width:760px!important;
  padding:36px 48px 38px!important;
  border:1px solid rgba(8,25,54,.09)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 30px 90px rgba(7,26,52,.12)!important;
  backdrop-filter:blur(14px)!important;
  color:#06182d!important;
  font-family:'Poppins',Arial,sans-serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-wrap:balance!important;
  opacity:0;
  transform:translateY(18px) scale(.98);
  animation:site-logo-message-full 2.35s var(--shared-ease,ease) both;
}
.site-logo-intro__message span{
  color:#f97316!important;
  font-size:clamp(12px,1.05vw,15px)!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.site-logo-intro__brand{
  display:block!important;
  width:clamp(180px,23vw,300px)!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  margin:2px auto 0!important;
}
.site-logo-intro__message small{
  max-width:520px!important;
  color:#334155!important;
  font-size:clamp(16px,1.55vw,22px)!important;
  font-weight:500!important;
  line-height:1.38!important;
}
@keyframes site-logo-message-full{
  0%{opacity:0;transform:translateY(18px) scale(.98)}
  18%,86%{opacity:1;transform:translateY(0) scale(1)}
  100%{opacity:0;transform:translateY(-8px) scale(.99)}
}
@media(max-width:640px){
  .site-logo-intro__stage{grid-template-columns:1fr;gap:12px;width:min(340px,86vw)}
  .site-logo-intro__item{min-height:112px;padding:22px 20px;border-radius:16px}
  .site-logo-intro__logo{max-width:190px;max-height:90px}
  .site-logo-intro__item-new .site-logo-intro__logo{max-width:205px;max-height:96px}
  .site-logo-intro__item small{font-size:10px;max-width:220px}
  .site-logo-intro__arrow{font-size:30px;transform:rotate(90deg)}
  .site-logo-intro__message{width:min(100%,340px)!important;padding:28px 22px!important}
  .site-logo-intro__brand{width:clamp(160px,56vw,220px)!important}
  .site-logo-intro__message small{font-size:clamp(15px,4.6vw,19px)!important}
}
@media (prefers-reduced-motion:reduce){
  .site-logo-intro{display:none!important;animation:none!important}
}

/* Final text wrapping pass: avoid awkward mid-word breaks and improve line fill. */
html body :where(h1,h2,h3,h4,h5,h6,p,li,a,span,strong,small,button,label){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
html body :where(h1,h2,h3,h4,h5,h6,.section-heading,.section-title,.tb-title,.shared-page-hero h1){
  text-wrap:balance;
}
html body :where(p,li,.lead,.tb-copy,.tb-hero-lead,.shared-page-hero p){
  text-wrap:pretty;
}
html body :where(input,select,textarea,code,pre,.legal-text a,[class*="url"],[class*="email"]){
  overflow-wrap:anywhere!important;
}

/* Banner subheadings should read as body-weight supporting copy, not bold text. */
html body :where(
  .tb-hero-lead,
  .shared-page-hero p,
  .service-hero .lead,
  .hero .lead,
  .hero-copy > p:not(.eyebrow):not(.tb-eyebrow),
  .contact-hero .tb-hero-lead,
  .tb-dark-hero .tb-hero-lead,
  .insights-hero .lead
){
  font-weight:400!important;
}
