:root{--paper:#ffffff;--ink:#0f172a;--mist:#f8fafc;--slate:#64748b;--purple:#0099fe;--purple-deep:#0f172a;--utl-green:#7fbb01;--utl-cyan:#00b7c7;--border:#e5f2ff;}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Inter","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:"Poppins","Inter",sans-serif;letter-spacing:-0.025em;line-height:1.12;font-weight:600;margin:0;}
h4,h5,h6,p,ul,ol,figure,blockquote{margin:0;} ul,ol{padding:0;list-style:none;}
a{color:inherit;text-decoration:none;} img,svg{display:block;}
button{font-family:inherit;cursor:pointer;background:none;border:0;padding:0;color:inherit;}
input,textarea,select{font-family:inherit;font-size:inherit;border:0;border-radius:0;}
html{scroll-behavior:smooth;}
.sp1{padding-bottom:1rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:1rem}
@media(min-width:1024px){.sp1{padding-left:2.5rem;padding-right:2.5rem}}
.sp2{padding-bottom:2.5rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:3rem}
@media(min-width:1024px){.sp2{padding-bottom:3rem;padding-left:2.5rem;padding-right:2.5rem;padding-top:4rem}}
.sp3{padding-bottom:5rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:5rem}
@media(min-width:1024px){.sp3{padding-bottom:7rem;padding-left:2.5rem;padding-right:2.5rem;padding-top:7rem}}
.sp4{}
@media(min-width:1024px){.sp4{padding-top:0.5rem}}
.sp5{padding-bottom:6rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:6rem}
@media(min-width:1024px){.sp5{padding-bottom:8rem;padding-left:2.5rem;padding-right:2.5rem;padding-top:8rem}}
.sp6{padding:2rem}
@media(min-width:1024px){.sp6{padding:2.5rem}}
.sp7{padding-bottom:5rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:5rem}
@media(min-width:1024px){.sp7{padding-bottom:6rem;padding-left:2.5rem;padding-right:2.5rem;padding-top:6rem}}
.sp8{padding-bottom:4rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:4rem}
@media(min-width:1024px){.sp8{padding-left:2.5rem;padding-right:2.5rem}}
.sp9{padding-bottom:5rem;padding-top:5rem}
@media(min-width:1024px){.sp9{padding-bottom:7rem;padding-top:7rem}}
.sp10{padding-left:1.25rem;padding-right:1.25rem}
@media(min-width:1024px){.sp10{padding-left:2.5rem;padding-right:2.5rem}}
.sp11{padding-bottom:6rem;padding-left:1.25rem;padding-right:1.25rem;padding-top:6rem}
@media(min-width:1024px){.sp11{padding-bottom:8rem;padding-top:8rem}}
@media(min-width:1024px){.gp-lg-4{gap:4rem!important}}
@media(min-width:1024px){.gc-lg-53fd23{grid-template-columns:1.55fr 1fr!important}}
@media(min-width:640px){.gc-sm-d98344{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(min-width:640px){.rz-sm-width-9df22f{width:auto!important}}
@media(min-width:1024px){.gc-lg-0846df{grid-template-columns:1.2fr 1fr!important}}
@media(min-width:640px){.gc-sm-c6fd10{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:768px){.gc-md-d98344{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(min-width:1280px){.gc-xl-c6fd10{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:1024px){.gc-lg-d7b26a{grid-template-columns:1.1fr 1fr!important}}
.spy-0_75rem > * + *{margin-top:0.75rem}
@media(min-width:1024px){.gc-lg-305099{grid-template-columns:1.2fr 2fr!important}}
.spy-0_625rem > * + *{margin-top:0.625rem}
@media(min-width:768px){.gc-md-c6fd10{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:1280px){.gc-xl-1782e9{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
.spy-0 > * + *{margin-top:0}
@media(min-width:1024px){.gc-lg-e3e5e6{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
.hv-purple:hover{color:var(--purple);}.hv-paper:hover{color:var(--paper);}.hv-ink:hover{color:var(--ink);}.hv-green:hover{color:var(--utl-green);}
.hv-bg-mist:hover{background-color:var(--mist)!important;}.hv-bg-paper:hover{background-color:var(--paper)!important;}.hv-bg-purple:hover{background-color:var(--purple)!important;color:var(--paper)!important;}
.hv-bg-green:hover{background-color:var(--utl-green)!important;color:var(--ink)!important;}.hv-bg-purpledeep:hover{background-color:var(--purple-deep)!important;color:var(--paper)!important;}.hv-bd-purple:hover{border-color:var(--purple)!important;}
.hv-underline:hover{text-decoration:underline;}.hv-underline-static{text-decoration:underline;}.hv-bright:hover{filter:brightness(1.1);}.last-nobb:last-child{border-bottom:0!important;}
.navi-underline{display:none;}.navi:hover .navi-underline{display:block;}.navi:hover>button{color:var(--purple);}
.navi-panel{transition:opacity .2s ease;}.navi:hover .navi-panel{visibility:visible!important;opacity:1!important;}
[data-scroll-rail]{position:fixed;inset-inline:0;top:0;z-index:60;height:3px;background:transparent;}
[data-scroll-rail] > div{height:100%;transform-origin:left;background:var(--utl-green);transition:transform .1s linear;}
[data-word-cycle]{position:relative;display:inline-grid;overflow:hidden;vertical-align:bottom;}
[data-word-cycle] span{grid-column-start:1;grid-row-start:1;white-space:nowrap;color:var(--utl-green);transition:opacity .5s ease,transform .5s cubic-bezier(.22,.7,.25,1);}
[data-download-form].is-submitted [data-form-idle]{display:none!important;}
[data-download-form] [data-form-thanks]{display:none;}
[data-download-form].is-submitted [data-form-thanks]{display:block!important;}

/* counter css */
/* ============ CardGrid / bordered stat & agent grids ============ */
.problem-stats{margin-top:4rem;}
.border-grid { display: grid; gap: 1px; border:1px solid rgba(255,255,255,.15); background: var(--utl-border); grid-template-columns: 1fr; }
.border-grid.cols-2 { } .border-grid.cols-3 { } .border-grid.cols-4 { }
@media (min-width: 768px) {
  .border-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
  .border-grid.cols-3 { grid-template-columns: repeat(2, 1fr); }
  .border-grid.cols-4 { grid-template-columns: repeat(2, 1fr); }
  .problem-stats{margin-top:2.5rem;}
}
@media (min-width: 1200px) {
  .border-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
  .border-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
}
.border-grid-dark { background: rgba(255,255,255,.15); }

/* ============ StatCell ============ */
.stat-cell { height: 100%; padding: 2rem; background: var(--utl-paper); }
.stat-cell.tone-navy { background: var(--utl-purple-deep); }
.stat-cell-num { font-size: clamp(2.75rem, 5vw, 4rem); font-weight: 600; line-height: 1; color: var(--utl-green); }
.stat-cell-label { margin-top: 1rem; font-size: .875rem; line-height: 1.625; color: var(--utl-slate); }
.stat-cell.tone-navy .stat-cell-label { color: rgba(255,255,255,.75); }    
/* counter css */

/* custom effects from source styles.css */
.chevron-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 500;
  color: var(--ink);
  border-bottom: 1px solid var(--ink);
  padding-bottom: 2px;
  transition: color 0.2s ease;
}
.animate-chev {
  animation: chev 1.6s ease-in-out infinite;
}
.flow-line {
  stroke-dasharray: 6 8;
  animation: utl-flow 4s linear infinite;
}
.node-pulse {
  animation: utl-pulse 2.8s ease-in-out infinite;
}
.float-slow {
  animation: utl-float 14s ease-in-out infinite;
}
.focus-ring {
  &:focus-visible {
    outline: 2px solid var(--brand);
    outline-offset: 3px;
  }
}
.glow-violet {
  background: radial-gradient(closest-side, color-mix(in oklab, var(--brand) 65%, transparent), transparent);
  filter: blur(20px);
}
.glow-aqua {
  background: radial-gradient(closest-side, color-mix(in oklab, var(--sky) 55%, transparent), transparent);
  filter: blur(20px);
}
.dot-field {
  background-image: radial-gradient(color-mix(in oklab, var(--brand) 16%, transparent) 1px, transparent 1px);
  background-size: 26px 26px;
}
.ticker-track {
  animation: utl-marquee 60s linear infinite;
}
.reveal {
  animation: utl-reveal 0.8s cubic-bezier(0.22, 0.7, 0.25, 1) both;
}
@keyframes chev {
  0%,
  100% { transform: translateX(0); }
  50% { transform: translateX(4px); }
}
@keyframes utl-flow {
  0% { stroke-dashoffset: 220; }
  100% { stroke-dashoffset: 0; }
}
@keyframes utl-pulse {
  0%, 100% { opacity: 0.4; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.35); }
}
@keyframes utl-reveal {
  from { opacity: 0; transform: translateY(22px); }
  to { opacity: 1; transform: none; }
}
@keyframes utl-float {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
  50% { transform: translate3d(0, -22px, 0) scale(1.06); }
}
@keyframes utl-sheen {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
@keyframes v3-rise {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: none; }
}
@keyframes fde-enter {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes utl-travel {
  0% { transform: translateX(0); opacity: 0; }
  8% { opacity: 1; }
  92% { opacity: 1; }
  100% { transform: translateX(196px); opacity: 0; }
}
@keyframes utl-travel-wide {
  0% { transform: translateX(20px); opacity: 0; }
  6% { opacity: 1; }
  94% { opacity: 1; }
  100% { transform: translateX(520px); opacity: 0; }
}
@keyframes utl-scan {
  0%, 100% { opacity: 0.25; }
  50% { opacity: 1; }
}
@keyframes utl-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@keyframes utl-fill {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@keyframes utl-panel {
  from { opacity: 0; transform: translateY(14px); filter: blur(5px); }
  to { opacity: 1; transform: none; filter: none; }
}
.fde-enter {
  animation: fde-enter 280ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
/* "moves"/"where fast movers" card group-hover effects */
.movecard-bar{transform:scaleX(0);transform-origin:left;transition:transform .5s ease;}
.movecard-icon{transition:color .3s ease;}
.movecard-h{transition:color .3s ease;}
.movecard-lead{transition:color .3s ease;}
.movecard-body{transition:color .3s ease;}
.ecard:hover .movecard-bar{transform:scaleX(1)!important;}
.ecard:hover .movecard-icon{color:var(--utl-green)!important;}
.ecard:hover .movecard-h{color:var(--paper)!important;}
.ecard:hover .movecard-lead{color:var(--utl-green)!important;}
.ecard:hover .movecard-body{color:rgba(255,255,255,0.75)!important;}

.grp { position: relative; overflow: hidden; }
.grp > span:first-child {
  display: block !important;
  width: 200px !important;
  height: 3px !important;
  background-color: #0099fe !important;
  transform-origin: left;
  transition: width .5s ease, background-color .5s ease;
}
.grp:hover > span:first-child {
  width: 100% !important;
  background-color: #7fbb01 !important;
}


/* scroll progress rail */
.scroll-rail { position: fixed; inset: 0 0 auto 0; z-index: 1060; height: 3px; background: transparent; }
.scroll-rail-fill { height: 100%; background: var(--utl-green); transform-origin: left; transform: scaleX(0); transition: transform .1s linear; }   