.hero-carousel, .hero-carousel *, .hero-carousel *::before, .hero-carousel *::after { box-sizing: border-box; }

.hero-carousel {
  width: 520px;
  height: 380px;
  background: var(--white);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: 32px;
  transform: rotate(-6deg);
  box-shadow: 0 8px 24px color-mix(in srgb,var(--navy) 10%,transparent);
  flex-shrink: 0;
  opacity: 0.9;
}

.hero-carousel-visual {
  flex: 1;
  opacity: 1;
  transform: scale(1);
  transition: all 0.2s ease-out;
}

.hero-carousel-visual.transitioning {
  opacity: 0;
  transform: scale(0.98);
}

.hero-carousel-caption {
  padding: 0 20px 40px 24px;
  opacity: 1;
  transform: translateY(0);
  transition: all 0.2s ease-out;
}

.hero-carousel-caption.transitioning {
  opacity: 0;
  transform: translateY(8px);
}

.hero-carousel-insight {
  font-size: 16px;
  font-weight: 600;
  color: var(--navy);
  margin: 0 0 4px;
  line-height: 1.5;
}

.hero-carousel-detail {
  font-size: 14px;
  font-weight: 400;
  color: var(--gray-dark);
  margin: 0;
  line-height: 1.5;
}

.carousel-slide-inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 32px;
  gap: 20px;
}

.carousel-stat-block {
  text-align: center;
  min-width: 110px;
}

.carousel-stat-big {
  font-size: 64px;
  font-weight: 800;
  color: var(--navy);
  line-height: 1;
  letter-spacing: -3px;
}

.carousel-stat-label {
  font-size: 12px;
  color: var(--navy);
  font-weight: 600;
  margin-top: 4px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.carousel-chart-area {
  flex: 1;
  position: relative;
  height: 100%;
}

.carousel-svg-full {
  width: 100%;
  height: 100%;
}

.carousel-bars-area {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: 0 20px;
}

.carousel-hbar-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.carousel-hbar-label {
  font-size: 10px;
  color: var(--gray-mid);
  width: 50px;
  text-align: right;
}

.carousel-hbar-track {
  flex: 1;
  height: 12px;
  background: color-mix(in srgb,var(--navy) 8%,transparent);
  border-radius: 12px;
}

.carousel-hbar-fill {
  height: 100%;
  border-radius: 12px;
}

.carousel-quadrant-area {
  flex: 1;
  position: relative;
  height: 100%;
}

.carousel-quadrant-h {
  position: absolute;
  left: 5%;
  right: 5%;
  top: 50%;
  height: 1px;
  background: color-mix(in srgb,var(--navy) 10%,transparent);
}

.carousel-quadrant-v {
  position: absolute;
  top: 8%;
  bottom: 12%;
  left: 50%;
  width: 1px;
  background: color-mix(in srgb,var(--navy) 10%,transparent);
}

.carousel-you-dot {
  position: absolute;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white);
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 4px 12px color-mix(in srgb,var(--navy) 10%,transparent);
}

.carousel-dot-grid {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 4px;
  padding: 12px 20px;
}

.carousel-grid-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--navy) 8%,transparent);
}

.carousel-grid-dot.filled {
  background: var(--kicker02);
}

@keyframes carousel-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes carousel-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes carousel-run-down {
  0% { offset-distance: 0%; }
  100% { offset-distance: 100%; }
}

.carousel-float {
  animation: carousel-float 3s ease-in-out infinite;
}

.carousel-pulse {
  animation: carousel-pulse 2s ease-in-out infinite;
}

.carousel-run-dot {
  offset-path: path('M15,45 C30,42 40,30 55,25 C70,20 80,35 95,40 C110,45 120,28 135,55 C150,82 170,110 195,125');
  animation: carousel-run-down 3s ease-in-out infinite;
}

@media (max-width: 680px) {
.hero-carousel {
    width: 320px;
    height: 230px;
    border-radius: 20px;
    transform: rotate(-6deg);
  }

.hero-carousel-caption {
    padding: 0 12px 12px 14px;
  }

.hero-carousel-insight {
    font-size: 12px;
  }

.hero-carousel-detail {
    font-size: 10px;
  }

.carousel-slide-inner {
    padding: 12px;
    gap: 10px;
  }

.carousel-stat-big {
    font-size: 36px;
    letter-spacing: -2px;
  }

.carousel-stat-label {
    font-size: 8px;
  }
}

/* Dark-glass variant — hero carousel over the navy hero */
.hero-dark .hero-carousel {
  /* Navy-tinted glass, not plain white at 6% — the purple corner was reading
     straight through under the caption line. */
  background: linear-gradient(color-mix(in srgb,var(--white) 5%,transparent),color-mix(in srgb,var(--white) 5%,transparent)), color-mix(in srgb,var(--navy) 42%,transparent);
  border: 1px solid color-mix(in srgb,var(--white) 16%,transparent);
  box-shadow: 0 12px 40px color-mix(in srgb,var(--navy) 24%,transparent);
  opacity: 1;
  transform: none;
  backdrop-filter: blur(14px);
}
.hero-dark .hero-carousel-insight { color: var(--white); }
.hero-dark .hero-carousel-detail { color: color-mix(in srgb,var(--white) 74%,transparent); }
.hero-dark .carousel-stat-big,
.hero-dark .carousel-stat-block > div:not(.carousel-stat-label),
.hero-dark .carousel-stat-block span { color: var(--white) !important; }
.hero-dark .carousel-stat-block .carousel-stat-label,
.hero-dark .carousel-stat-label { color: color-mix(in srgb,var(--white) 68%,transparent) !important; }
.hero-dark .carousel-hbar-track { background: color-mix(in srgb,var(--white) 14%,transparent) !important; }
.hero-dark .carousel-hbar-label { color: color-mix(in srgb,var(--white) 72%,transparent) !important; }
.hero-dark .carousel-grid-dot { background: color-mix(in srgb,var(--white) 16%,transparent) !important; }
.hero-dark .carousel-grid-dot.filled { background: var(--cyan) !important; }
.hero-dark .carousel-quadrant-h,
.hero-dark .carousel-quadrant-v { background: color-mix(in srgb,var(--white) 20%,transparent) !important; }
.hero-dark .carousel-quadrant-area { background: color-mix(in srgb,var(--white) 3%,transparent) !important; }
.hero-dark .hero-carousel svg text { fill: color-mix(in srgb,var(--white) 68%,transparent) !important; }
.hero-dark .hero-carousel svg line { stroke: color-mix(in srgb,var(--white) 16%,transparent) !important; }


.research-landing,.research-landing *,.research-landing *::before,.research-landing *::after{box-sizing:border-box}.research-landing{margin:0;background:var(--white);font-family:var(--font-family);font-size:var(--section-body);line-height:var(--section-body-lh);font-weight:var(--font-weight-normal);color:var(--navy)}.research-landing a{color:var(--pink)}.research-landing a:hover{color:var(--navy)}.srcrow>span{display:none}.srcrow>span:nth-child(-n+3){display:inline}@container srcstrip (min-width:700px){.srcrow>span:nth-child(-n+6){display:inline}}@container srcstrip (min-width:950px){.srcrow>span:nth-child(-n+7){display:inline}}@container srcstrip (min-width:1150px){.srcrow>span:nth-child(-n+8){display:inline}}@container srcstrip (min-width:1900px){.srcrow>span:nth-child(-n+12){display:inline}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.pg-nav,.pg-nav-r{white-space:nowrap}
.pg-nav{grid-column:2}
.pg-burger{display:none;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:var(--white);cursor:pointer}
.pg-drawer{position:fixed;top:0;left:0;z-index:60;width:300px;max-width:84vw;height:100%;background:var(--white);box-shadow:0 0 60px color-mix(in srgb,var(--navy) 28%,transparent);padding:22px 24px;display:flex;flex-direction:column;transform:translateX(-100%);visibility:hidden;transition:transform .22s ease,visibility .22s ease}
.pg-drawer-open{transform:none;visibility:visible}
.pg-ov{position:fixed;inset:0;z-index:55;background:color-mix(in srgb,var(--navy) 50%,transparent);opacity:0;pointer-events:none;transition:opacity .22s ease}
.pg-ov-open{opacity:1;pointer-events:auto}
.pg-dlink{display:block;padding:13px 4px;font:500 16px Inter,sans-serif;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gray-light)}
.pg-dlink:hover{color:var(--pink)}
.pg-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--gray-dark);cursor:pointer}
.pg-nav-r{grid-column:3}
.pg-3col{grid-template-columns:1fr 1fr 1fr}
.pg-steps{grid-template-columns:repeat(3,1fr)}
.pg-preview{grid-template-columns:1fr 1.15fr}
.pg-cat{grid-template-columns:repeat(4,1fr)}
.pg-price{grid-template-columns:repeat(3,1fr)}
.pg-faq{grid-template-columns:1fr 1fr}
.pg-spec-row{grid-template-columns:260px 1fr}
.pg-meth{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

.pg-fwrap{display:grid;grid-template-columns:1fr;gap:30px}
@media (min-width:1000px){.pg-fwrap{grid-template-columns:minmax(520px,720px) minmax(0,1fr);gap:56px;align-items:center}.pg-fwcard{grid-column:1;grid-row:1;justify-self:start;margin-inline:0}.pg-fwcopy{grid-column:2;grid-row:1;max-width:520px;justify-self:end}}
.pg-fwcopy{max-width:760px}
.pg-fwpill{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;background:var(--navy);color:var(--white);font:500 14px Inter,sans-serif;text-decoration:none;transition:background .18s ease}
.pg-fwpill:hover{background:color-mix(in srgb,var(--navy) 90%,var(--white));color:var(--white)}
.pg-fwcard{display:block;width:100%;max-width:720px;margin-inline:auto;background:var(--white);border:1px solid color-mix(in srgb,var(--navy) 10%,transparent);border-radius:12px;padding:22px 26px 20px;text-decoration:none;box-shadow:0 4px 18px color-mix(in srgb,var(--navy) 12%,transparent);transition:box-shadow .18s ease}
.pg-fwcard:hover{box-shadow:0 8px 26px color-mix(in srgb,var(--navy) 18%,transparent)}
.pg-cap{display:block;margin-bottom:14px;font:400 10.5px 'IBM Plex Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-mid);white-space:nowrap}
.pg-mapwrap{position:relative;display:grid;grid-template-columns:max-content minmax(110px,1fr) max-content;align-items:stretch}
.pg-mapl{grid-column:1}
.pg-mapr{grid-column:3}
.pg-mapl,.pg-mapr{display:flex;flex-direction:column}
.pg-maprows{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.pg-mapl .pg-mrow{justify-content:flex-end}
.pg-mrow{display:flex;align-items:center;gap:11px;min-height:44px}
.pg-tlabel{font:500 14px Inter,sans-serif;color:var(--gray-dark);text-align:right;white-space:nowrap;transition:color .4s ease}
.pg-dot{width:8px;height:8px;border-radius:50%;background:var(--gray-light);flex:none;transition:background .4s ease,transform .4s ease}
.pg-flabel{display:flex;flex-direction:column;gap:1px;min-width:0}
.pg-fname{font:400 14px Inter,sans-serif;color:var(--gray-mid);line-height:1.3;white-space:nowrap;transition:color .4s ease}
.pg-short{display:none}
.pg-fcite{font:400 11px 'IBM Plex Mono',monospace;color:var(--gray-mid);line-height:1.3;white-space:nowrap;transition:color .4s ease}
.pg-mapsvg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.pg-mapsvg path{fill:none;stroke:var(--gray-light);stroke-width:1.4;transition:stroke .4s ease,stroke-width .4s ease}
.pg-map.a0 .t0{color:var(--navy);font-weight:var(--font-weight-semibold)}
.pg-map.a0 .n0{background:var(--cyan);transform:scale(1.35)}
.pg-map.a0 .pg-fname.of0{color:var(--navy)}
.pg-map.a0 .pg-fcite.of0{color:var(--gray-dark)}
.pg-map.a0 .pg-dot.of0{background:var(--cyan)}
.pg-map.a0 .pg-mapsvg .c0{stroke:var(--cyan);stroke-width:2}
.pg-map.a1 .t1{color:var(--navy);font-weight:var(--font-weight-semibold)}
.pg-map.a1 .n1{background:var(--kicker08);transform:scale(1.35)}
.pg-map.a1 .pg-fname.of1{color:var(--navy)}
.pg-map.a1 .pg-fcite.of1{color:var(--gray-dark)}
.pg-map.a1 .pg-dot.of1{background:var(--kicker08)}
.pg-map.a1 .pg-mapsvg .c1{stroke:var(--kicker08);stroke-width:2}
.pg-map.a2 .t2{color:var(--navy);font-weight:var(--font-weight-semibold)}
.pg-map.a2 .n2{background:var(--kicker15);transform:scale(1.35)}
.pg-map.a2 .pg-fname.of2{color:var(--navy)}
.pg-map.a2 .pg-fcite.of2{color:var(--gray-dark)}
.pg-map.a2 .pg-dot.of2{background:var(--kicker15)}
.pg-map.a2 .pg-mapsvg .c2{stroke:var(--kicker15);stroke-width:2}
.pg-map.a3 .t3{color:var(--navy);font-weight:var(--font-weight-semibold)}
.pg-map.a3 .n3{background:var(--kicker10);transform:scale(1.35)}
.pg-map.a3 .pg-fname.of3{color:var(--navy)}
.pg-map.a3 .pg-fcite.of3{color:var(--gray-dark)}
.pg-map.a3 .pg-dot.of3{background:var(--kicker10)}
.pg-map.a3 .pg-mapsvg .c3{stroke:var(--kicker10);stroke-width:2}
@media (max-width:760px){.pg-mapwrap{grid-template-columns:max-content minmax(28px,1fr) max-content}.pg-long{display:none}.pg-short{display:inline}.pg-fcite{display:none}.pg-mrow{min-height:38px}.pg-tlabel,.pg-fname{font-size:13px}.pg-fwcard{padding:20px 16px 18px}}

@media (max-width:1024px){.pg-meth{grid-template-columns:1fr;gap:16px}}
.pg-s2{grid-template-columns:1fr 320px}
.pg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.pg-tab{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font:400 14px Inter,sans-serif;color:var(--navy);background:var(--white);border:1px solid var(--gray-light);border-radius:999px;padding:8px 15px}
.pg-dot{width:8px;height:8px;border-radius:50%;flex:none}
.pg-num{font:500 12px 'IBM Plex Mono',monospace;color:var(--gray-mid)}
.pg-samp{position:relative;display:block;border:1px solid var(--gray-light);border-radius:8px;overflow:hidden;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}
.pg-samp:hover{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 5%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--navy) 13%,transparent)}
.pg-start{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-top:14px;font:500 13px Inter,sans-serif;color:var(--cyan);text-decoration:none}
.pg-start:hover{color:var(--navy)}
.pg-start svg{transition:transform .18s ease}
.pg-start:hover svg{transform:translateX(3px)}
.pg-samp-b{position:absolute;top:8px;right:8px;font:500 11px Inter,sans-serif;color:var(--white);background:var(--cyan);border-radius:999px;padding:3px 10px;opacity:0;transition:opacity .18s ease}
.pg-samp:hover .pg-samp-b{opacity:1}
.pg-tab-on .pg-num{color:color-mix(in srgb,var(--white) 65%,transparent)}
.pg-tab:hover{border-color:var(--gray-mid)}
.pg-tab-on{background:var(--navy);border-color:var(--navy);color:var(--white)}
@media (max-width:1000px){.pg-s2{grid-template-columns:1fr}}
.pg-est-row{grid-template-columns:minmax(96px,150px) minmax(140px,1fr) 44px}
.pg-read{max-width:760px}
.pg-stages{display:grid;grid-template-columns:repeat(4,1fr);position:relative;align-items:start;gap:0}
.pg-stagerail{position:absolute;top:16px;left:17px;right:calc(25% - 17px);height:2px;background:linear-gradient(90deg,var(--cyan),var(--kicker08) 34%,var(--purple) 67%,var(--kicker11))}
@media (max-width:1024px){.pg-stages{grid-template-columns:1fr;gap:28px}.pg-stagerail{display:none}}
@media (max-width:560px){.pg-citepop{left:20px;right:20px;width:auto}}
.pg-pipes{margin-top:52px;padding:34px 32px 30px;border-radius:18px;background:color-mix(in srgb,var(--navy) 40%,transparent);box-shadow:0 18px 48px color-mix(in srgb,var(--navy) 32%,transparent)}
@media (max-width:1000px){.pg-pipes{padding:26px 22px}}
.pg-pipelab{margin-bottom:14px;font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--white)}
.pg-piperow{display:grid;grid-template-columns:repeat(4,1fr);column-gap:22px;align-items:center;position:relative}
.pg-piperail{position:absolute;left:8%;right:8%;top:50%;height:1px;z-index:0}
.pg-ghostarrow{position:absolute;left:75%;top:50%;transform:translate(-50%,-50%);z-index:2;display:flex;align-items:center;justify-content:center;width:22px;height:22px}
@media (max-width:1000px){.pg-ghostarrow{display:none}}
.pg-memo{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(100% - 4px);text-align:center;z-index:1}
.pg-piperow--ghost{margin-top:8px}
.pg-wallcol{grid-column:2;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}
.pg-walltxt{position:absolute;bottom:calc(50% + 52px);white-space:nowrap;text-align:center;font-size:11.5px;line-height:1.4;font-weight:var(--font-weight-semibold);color:var(--navy);background:color-mix(in srgb,var(--white) 82%,transparent);border-radius:999px;padding:6px 14px}
.pg-wall{width:8px;flex:none;height:78px;border-radius:3px;background:var(--pink)}
.pg-noterow{display:grid;grid-template-columns:repeat(4,1fr);column-gap:22px;margin-top:26px}
.pg-note{padding-right:24px}
@media (max-width:1000px){.pg-piperow,.pg-noterow{grid-template-columns:1fr;row-gap:14px}.pg-piperail,.pg-memo{display:none}.pg-piperow>div{grid-column:1!important}.pg-walltxt{position:static;white-space:normal;bottom:auto;margin-bottom:10px}.pg-wall{width:100%;max-width:280px;height:8px}.pg-note{padding-right:0}}
.pg-rlabel{margin:30px 0 16px;font-size:var(--text-base);font-weight:var(--font-weight-semibold);color:var(--navy)}
.pg-rlist{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;text-align:left}
@media (max-width:640px){.pg-rlist{grid-template-columns:1fr}}
.pg-rrow{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;padding-left:14px;border-left:2px solid var(--q)}
.pg-rnum{font:600 12px 'IBM Plex Mono',monospace;color:var(--q);line-height:1.4}
.pg-rname{font-size:var(--text-base);line-height:1.3;font-weight:var(--font-weight-semibold);color:var(--navy)}
.pg-rbody{grid-column:1/-1;font-size:13.5px;line-height:1.55;font-weight:var(--font-weight-light);color:var(--navy)}
.pg-deckwrap{width:min(100%,860px);justify-self:center;margin-top:56px}
.pg-deck{min-width:0;background:var(--white);border:1px solid var(--gray-light);border-radius:12px;box-shadow:0 14px 48px color-mix(in srgb,var(--navy) 10%,transparent);overflow:hidden}
.pg-decktop{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 22px;border-bottom:1px solid var(--gray-light);background:var(--off-white)}
.pg-dfile{font:400 11.5px Inter,sans-serif;color:var(--gray-dark)}
.pg-dots{display:inline-flex;gap:6px}
.pg-dots i{width:6px;height:6px;border-radius:50%;background:var(--gray-light);transition:background .3s ease}
.pg-dots i.on{background:var(--cyan)}
.pg-deckstage{display:grid;grid-template-areas:"sl"}
.pg-sl{grid-area:sl;padding:22px 24px;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease;pointer-events:none;display:flex;flex-direction:column}
.pg-sl.on{opacity:1;transform:none}
.pg-dhead{display:flex;flex-direction:column;gap:7px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--gray-light)}
.pg-dkick{font:500 9.5px 'IBM Plex Mono',monospace;letter-spacing:.16em}
.pg-dtitle{font-size:16px;line-height:1.3;font-weight:var(--font-weight-semibold);color:var(--navy);letter-spacing:-.01em}
.pg-dcap{font-size:12.5px;line-height:1.5;font-weight:var(--font-weight-normal);color:var(--gray-dark)}
.pg-dbody{flex:1;min-height:0;position:relative}
.pg-dlabel{font:400 12.5px Inter,sans-serif;line-height:1.4;color:var(--navy)}
.pg-dnum{font:600 12.5px Inter,sans-serif;line-height:1.4;color:var(--navy);text-align:right}
.pg-drow{display:grid;grid-template-columns:minmax(88px,138px) minmax(70px,1fr) 34px;gap:12px;align-items:center;padding:5px 8px;margin:0 -8px;border-radius:5px}
.pg-drow-on .pg-dlabel{font-weight:var(--font-weight-medium);color:var(--navy)}
.pg-drow-on .pg-dlabel{font-weight:var(--font-weight-semibold)}
.pg-dtrack{display:block;height:15px;border-radius:3px;background:var(--gray-white);overflow:hidden}
.pg-dfill{display:block;height:15px;border-radius:3px}
.pg-sl.on .pg-dbar{animation:pgBar .9s cubic-bezier(.22,1,.36,1) both}
@keyframes pgBar{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
.pg-dfoot{display:flex;align-items:center;gap:8px;margin-top:14px;font:400 11.5px Inter,sans-serif;color:var(--gray-dark)}
.pg-dswatch{width:9px;height:9px;border-radius:2px;background:var(--pink);flex:none}
.pg-srow{display:grid;grid-template-columns:26px 1fr auto;gap:11px;align-items:center;padding:7px 0;border-bottom:1px solid var(--gray-white)}
.pg-schip{font:500 9.5px 'IBM Plex Mono',monospace;color:var(--gray-mid)}
.pg-spill{display:inline-block;padding:2px 9px;border-radius:999px;border:1px solid var(--green);background:color-mix(in srgb,var(--green) 8%,var(--white));font:300 10.5px Inter,sans-serif;color:var(--navy)}
.pg-gpill{display:inline-block;margin-bottom:6px;padding:2px 9px;border-radius:999px;border:1px solid var(--yellow);background:color-mix(in srgb,var(--yellow) 8%,var(--white));font:300 10.5px Inter,sans-serif;color:var(--navy)}
.pg-dnote{margin-top:16px;padding:2px 0 2px 14px;border-left:2px solid var(--gray-light);display:flex;flex-direction:column;gap:5px}
.pg-dnotetitle{font:600 12px Inter,sans-serif;line-height:1.4;color:var(--navy)}
.pg-dnotebody{font:400 12px Inter,sans-serif;line-height:1.6;color:var(--gray-dark)}
.pg-dgap{margin-bottom:14px;display:flex;flex-direction:column;align-items:flex-start}
.pg-dgaptitle{font:600 12.5px Inter,sans-serif;line-height:1.4;color:var(--navy);margin-bottom:4px}
.pg-dgapbody{font:400 12px Inter,sans-serif;line-height:1.6;color:var(--gray-dark)}
.pg-dpara{margin:0;font-size:14px;line-height:1.75;font-weight:var(--font-weight-light);color:var(--navy)}
.pg-dpara b{font-weight:var(--font-weight-semibold)}
.pg-citemark{position:relative;display:inline-block;padding:1px 5px;border-radius:4px;font:500 11px 'IBM Plex Mono',monospace;color:var(--cyan);vertical-align:super;background:color-mix(in srgb,var(--cyan) 22%,var(--white))}
.pg-citepop{position:absolute;left:0;right:0;top:118px;background:var(--white);border:1px solid var(--gray-light);border-radius:10px;box-shadow:0 14px 40px color-mix(in srgb,var(--navy) 14%,transparent);padding:15px 17px;opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top left;display:flex;flex-direction:column;gap:8px}
.pg-poptop{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pg-popname{font:600 13px Inter,sans-serif;line-height:1.4;color:var(--navy)}
.pg-popquote{margin:0;font:400 12px Inter,sans-serif;line-height:1.6;color:var(--gray-dark);border-left:2px solid var(--cyan);padding-left:11px}
.pg-poplink{display:inline-flex;align-items:center;gap:5px;font:500 11.5px Inter,sans-serif;color:var(--cyan)}
.pg-sl.on .pg-citepop{animation:pgPop .45s .8s ease-out both}
.pg-citecur{position:absolute;width:18px;height:18px;left:0;top:0;opacity:0}
.pg-sl.on .pg-citecur{animation:pgCur 1.5s ease-in-out both}
@keyframes pgPop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
@keyframes pgCur{0%{opacity:0;transform:translate(14px,64px)}22%{opacity:1;transform:translate(14px,64px)}70%,100%{opacity:1;transform:translate(var(--pg-cx,286px),var(--pg-cy,20px))}}
@media (prefers-reduced-motion:reduce){.pg-sl.on .pg-citepop,.pg-sl.on .pg-citecur,.pg-sl.on .pg-dbar{animation:none}.pg-citepop{opacity:1;transform:none}.pg-citecur{opacity:1}}

.pg-proof{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
@media (max-width:1000px){.pg-proof{grid-template-columns:1fr;gap:36px!important}}

@media (max-width:1240px){.pg-cat{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1100px){.pg-preview{grid-template-columns:1fr}}
@media (max-width:1024px){.pg-cat{grid-template-columns:repeat(2,1fr)}.pg-3col>div{padding:0!important;border:0!important}.pg-3col{grid-template-columns:1fr;gap:28px}.pg-steps{grid-template-columns:1fr;gap:28px}.pg-rail{display:none}.pg-steps>div{padding-right:0!important}}

.rp-sec{background:var(--white);padding:70px 0 0}
.rp-wrap{max-width:1425px;margin:0 auto;background:var(--navy);border-radius:20px;padding:56px 48px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.rp-copy{margin-right:150px}
.pg-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:15px;font-size:var(--text-sm);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-normal);text-transform:uppercase;color:var(--navy)}
.pg-eyebrow .rp-stars{filter:none}
.pg-tabs-c{justify-content:center}
.rp-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 22px 8px 0;margin-bottom:15px;font-size:var(--text-sm);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-normal);text-transform:uppercase;color:var(--white)}
.rp-stars{width:1.6em;height:1.6em;display:block}
.rp-lead{margin:0 0 30px;font-size:var(--section-body);line-height:var(--section-body-lh);font-weight:var(--font-weight-light);color:color-mix(in srgb,var(--white) 82%,transparent)}
.rp-cta{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:100px;background:var(--white);color:var(--navy);font-size:15px;font-weight:var(--font-weight-bold);text-decoration:none;transition:background 200ms ease,color 200ms ease}
.rp-cta:hover{background:color-mix(in srgb,var(--white) 88%,var(--navy));color:var(--navy)}
.rp-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.rp-card{display:flex;flex-direction:column;background:var(--white);border-radius:10px;padding:36px 32px;min-height:260px;text-decoration:none;color:var(--navy);height:100%;transition:box-shadow .2s ease,transform .2s ease}
.rp-card:hover{box-shadow:0 10px 28px color-mix(in srgb,var(--navy) 12%,transparent);transform:translateY(-3px);color:var(--navy)}
.rp-card-eyebrow{font-size:15px;font-weight:var(--font-weight-semibold);color:var(--navy);margin-bottom:12px}
.rp-card-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;color:var(--navy);line-height:1.1;margin-bottom:16px}
.rp-card-from{font-size:13px;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--gray-mid)}
.rp-card-amount{font-size:52px;font-weight:var(--font-weight-extrabold);color:var(--navy);line-height:1}
.rp-card-suffix{font-size:16px;font-weight:var(--font-weight-medium);color:var(--gray-dark)}
.rp-card-body{font-size:15px;line-height:1.55;color:var(--gray-dark);margin:0}
@media (max-width:1399px){.rp-copy{margin-right:80px}}
@media (max-width:1199px){.rp-copy{margin-right:0}.rp-wrap{grid-template-columns:1fr}}
@media (max-width:820px){.rp-sec{padding:40px 0 0}.rp-wrap{padding:36px 24px;border-radius:16px}.rp-cards{grid-template-columns:1fr}.rp-card{min-height:0;padding:28px 24px}.rp-card-amount{font-size:44px}}
@media (max-width:820px){.pg-price{grid-template-columns:1fr}.pg-faq{grid-template-columns:1fr}.pg-spec-row{grid-template-columns:1fr;gap:6px}}
@media (max-width:640px){.pg-cat{grid-template-columns:1fr}}
.pg-hero{display:grid;grid-template-columns:minmax(380px,0.78fr) minmax(380px,1fr);gap:56px;align-items:center;padding:86px 60px 84px;margin-inline:auto}
@media (max-width:1366px){.pg-nav{gap:30px!important}.pg-nav-r{gap:12px!important}}
@media (max-width:1199px){.pg-nav{display:none!important}.pg-burger{display:flex}.pg-hero{grid-template-columns:1fr;gap:40px;padding:44px 32px 64px}}
.pg-sec{display:grid;grid-template-columns:minmax(0,1425px);justify-content:center}
.pg-secw{max-width:1425px;margin-inline:auto}
.pg-sec{padding-left:60px!important;padding-right:60px!important}
.pg-hero{max-width:1545px;padding-left:60px!important;padding-right:60px!important}
@media (max-width:768px){.pg-sec,.pg-hero{padding-left:24px!important;padding-right:24px!important}.rp-wrap{margin-inline:24px}}
.pg-h2{font-family:var(--font-family-heading);font-size:var(--section-heading);line-height:var(--section-heading-lh);font-weight:var(--font-weight-semibold)}
.pg-h2-sm{font-size:var(--section-heading)}
.pg-h3{font-family:var(--font-family-heading);font-size:var(--text-5xl);line-height:var(--line-height-snug);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);color:var(--navy)}
.pg-fw{font-weight:var(--font-weight-medium)}
.pg-body{font-size:var(--section-body);font-weight:var(--font-weight-normal);line-height:var(--section-body-lh)}
@media (max-width:1180px){.pg-h2,.pg-h2-sm{font-size:var(--text-5xl)}}
@media (max-width:700px){.pg-h2,.pg-h2-sm{font-size:var(--section-heading-mobile)}}

@media (max-width:900px){.pg-footer{padding:48px 32px!important}.pg-footmain{flex-direction:column}.pg-footcols{gap:32px!important}}
@media (max-width:767px){.pg-footcols{gap:28px!important;flex-wrap:wrap}.pg-footbot{flex-wrap:wrap;gap:12px!important}}

/* Home v2 typography contract: shared heading, eyebrow and body tokens. */
.research-landing .hero-dark .hero-carousel {
  background: rgb(15 30 65 / 8%);
  box-shadow: 0 8px 28px rgb(15 30 65 / 5%);
  backdrop-filter: blur(4px);
}
.research-landing .pg-deck {
  background: var(--white);
  border-color: var(--gray-light);
  box-shadow: none;
}
.research-landing .pg-decktop {
  background: var(--white);
  border-bottom-color: var(--gray-light);
}
.research-landing .pg-citepop {
  position: relative;
  inset: auto;
  margin-top: 20px;
}
.research-landing .research-pricing-questions {
  background: linear-gradient(to bottom, var(--gray-white), var(--gray-light));
}
.research-landing .research-pricing-questions .rp-sec,
.research-landing .research-pricing-questions > .pg-sec {
  background: transparent !important;
}
.research-landing .research-pricing-questions .rp-wrap {
  background: var(--white);
  border: 1px solid var(--gray-light);
}
.research-landing .research-pricing-questions .rp-eyebrow,
.research-landing .research-pricing-questions .rp-wrap .pg-h2 {
  color: var(--navy) !important;
}
.research-landing .research-pricing-questions .rp-eyebrow .rp-stars {
  filter: none !important;
}
.research-landing .research-pricing-questions .rp-lead {
  color: var(--gray-dark);
}
.research-landing .research-pricing-questions .rp-cta {
  background: var(--navy);
  color: var(--white);
}
.research-landing .research-pricing-questions .rp-cta:hover {
  background: var(--pink);
  color: var(--white);
}
.research-landing .research-pricing-questions .rp-card {
  background: var(--navy);
  border: 1px solid var(--navy);
  color: var(--white);
}
.research-landing .research-pricing-questions .rp-card:hover {
  color: var(--white);
  box-shadow: 0 10px 28px rgb(15 30 65 / 14%);
}
.research-landing .research-pricing-questions .rp-card-eyebrow,
.research-landing .research-pricing-questions .rp-card-price,
.research-landing .research-pricing-questions .rp-card-amount {
  color: var(--white);
}
.research-landing .research-pricing-questions .rp-card-from,
.research-landing .research-pricing-questions .rp-card-suffix,
.research-landing .research-pricing-questions .rp-card-body {
  color: rgb(255 255 255 / 74%);
}
.research-landing .pg-h1 {
  font-family: var(--font-family-heading);
  font-size: var(--text-7xl) !important;
  line-height: var(--lh-heading) !important;
  font-weight: var(--font-weight-bold) !important;
  letter-spacing: var(--letter-spacing-snug);
}
.research-landing .pg-h2 {
  font-family: var(--font-family-heading);
  font-size: var(--section-heading);
  line-height: var(--section-heading-lh);
  font-weight: var(--font-weight-semibold);
}
.research-landing .pg-h2-sm { font-size: var(--section-heading); }
.research-landing .pg-h3 {
  font-family: var(--font-family-heading);
  font-size: var(--text-5xl);
  line-height: var(--line-height-snug);
  font-weight: var(--font-weight-semibold);
}
.research-landing .pg-eyebrow,
.research-landing .rp-eyebrow {
  font-family: var(--font-family-heading);
  font-size: var(--text-sm);
  line-height: var(--line-height-normal);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-normal);
}
.research-landing a.pg-samp-b,
.research-landing a.pg-samp-b:hover {
  color: var(--white);
}
.research-landing .pg-card > h3 {
  margin-bottom: 2px !important;
}
.research-landing .pg-samp > div {
  height: 134px !important;
  padding-top: 16px !important;
}
.research-landing .pg-samp-b {
  top: 50%;
  right: auto;
  left: 50%;
  transform: translate(-50%, -50%);
}
.research-trial-modal[hidden] { display: none; }
.research-trial-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgb(15 30 65 / 48%);
}
.research-trial-modal__card {
  position: relative;
  width: 100%;
  max-width: var(--ta-modal-max-width, 440px);
  overflow: hidden;
  border-radius: 0 0 var(--ta-modal-radius-bottom, 16px) var(--ta-modal-radius-bottom, 16px);
  background: var(--white);
  box-shadow: var(--tb-card-shadow, 0 24px 64px rgb(15 30 65 / 22%));
}
.research-trial-modal__stripe {
  height: var(--tb-stripe-height, 3px);
  background: var(--tb-stripe-bg, var(--gradient));
}
.research-trial-modal__title {
  margin: 0;
  padding: var(--ta-head-pad-y, 22px) 68px 0 var(--ta-modal-pad-x, 28px);
  color: var(--tb-heading-color, var(--navy));
  font-size: var(--ta-heading-size, 20px);
  font-weight: var(--ta-heading-weight, 600);
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.research-trial-modal__close {
  position: absolute;
  top: 12px;
  right: 14px;
  z-index: 1;
  display: grid;
  width: 36px;
  height: 36px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--gray-mid);
  font: 300 28px/1 var(--font-family);
  cursor: pointer;
}
.research-trial-modal__close:hover {
  background: var(--gray-white);
  color: var(--navy);
}
.research-trial-modal__close:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--pink) 24%, transparent);
  outline-offset: 1px;
}
.research-trial-modal__body {
  margin: 0;
  padding: var(--tb-gap-head-to-body, 24px) var(--ta-modal-pad-x, 28px) 0;
  color: var(--ta-paragraph-color, var(--gray-dark));
  font-size: var(--ta-paragraph-size, 14.5px);
  line-height: var(--ta-paragraph-line-height, 1.6);
}
.research-trial-modal__callout {
  margin: 16px var(--ta-modal-pad-x, 28px) 0;
  padding: 12px 14px;
  border-radius: var(--tb-input-radius, 10px);
  background: var(--gray-white);
  color: var(--navy);
  font-size: 13px;
  line-height: 1.5;
}
.research-trial-modal__callout[hidden] { display: none; }
.research-trial-modal__actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--ta-foot-gap, 10px);
  padding: var(--ta-foot-pad-top, 18px) var(--ta-modal-pad-x, 28px) var(--ta-foot-pad-bottom, 24px);
}
.research-trial-modal__button {
  min-height: var(--ta-cta-min-height, 40px);
  padding: var(--ta-cta-pad-y, 11px) var(--ta-cta-pad-x, 22px);
  border: 1px solid var(--ta-cta-secondary-border, var(--gray-light));
  border-radius: var(--ta-cta-radius, 999px);
  background: var(--ta-cta-secondary-bg, var(--white));
  color: var(--ta-cta-secondary-color, var(--navy));
  font: var(--ta-cta-secondary-weight, 400) var(--ta-cta-secondary-size, 14px) var(--font-family);
  cursor: pointer;
}
.research-trial-modal__button--primary {
  border-color: var(--ta-cta-feature-bg, var(--navy));
  background: var(--ta-cta-feature-bg, var(--navy));
  color: var(--ta-cta-feature-color, var(--white));
  font-weight: var(--ta-cta-feature-weight, 600);
}
.research-trial-modal__button:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--pink) 24%, transparent);
  outline-offset: 2px;
}
@media (max-width: 575px) {
  .research-trial-modal__actions { flex-direction: column-reverse; }
  .research-trial-modal__button { width: 100%; }
}
.research-landing .pg-fwcard.pg-map {
  --pg-map-c0: var(--cyan);
  --pg-map-c1: var(--yellow);
  --pg-map-c2: var(--pink);
  --pg-map-c3: var(--green);
  position: relative;
  isolation: isolate;
  background: transparent;
  border: none;
  box-shadow: 0 14px 42px color-mix(in srgb, var(--navy) 10%, transparent);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.research-landing .pg-fwcard.pg-map::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: var(--navy);
  opacity: .25;
}
.research-landing .pg-fwcard.pg-map:hover {
  box-shadow: 0 18px 50px color-mix(in srgb, var(--navy) 16%, transparent);
}
.research-landing .pg-fwcard .pg-cap,
.research-landing .pg-fwcard .pg-fcite,
.research-landing .pg-fwcard .pg-tlabel,
.research-landing .pg-fwcard .pg-fname {
  color: color-mix(in srgb, var(--white) 40%, transparent);
}
.research-landing .pg-fwcard .pg-dot {
  background: color-mix(in srgb, var(--white) 70%, transparent);
}
.research-landing .pg-fwcard .pg-mapsvg path {
  stroke: color-mix(in srgb, var(--white) 40%, transparent);
  stroke-dasharray: 4 5;
}
.research-landing .pg-fwcard .pg-cap {
  color: var(--white);
  padding-bottom: 9px;
  border-bottom: 1px solid color-mix(in srgb, var(--white) 22%, transparent);
}
.research-landing .pg-map.a0 .pg-tlabel.t0,
.research-landing .pg-map.a0 .pg-fname.of0,
.research-landing .pg-map.a0 .pg-fcite.of0 {
  color: var(--white);
}
.research-landing .pg-map.a0 .pg-dot.n0,
.research-landing .pg-map.a0 .pg-dot.of0 {
  background: var(--pg-map-c0);
}
.research-landing .pg-map.a0 .pg-mapsvg .c0 {
  stroke: var(--pg-map-c0);
  stroke-width: 3;
  stroke-dasharray: none;
}
.research-landing .pg-map.a1 .pg-tlabel.t1,
.research-landing .pg-map.a1 .pg-fname.of1,
.research-landing .pg-map.a1 .pg-fcite.of1 {
  color: var(--white);
}
.research-landing .pg-map.a1 .pg-dot.n1,
.research-landing .pg-map.a1 .pg-dot.of1 {
  background: var(--pg-map-c1);
}
.research-landing .pg-map.a1 .pg-mapsvg .c1 {
  stroke: var(--pg-map-c1);
  stroke-width: 3;
  stroke-dasharray: none;
}
.research-landing .pg-map.a2 .pg-tlabel.t2,
.research-landing .pg-map.a2 .pg-fname.of2,
.research-landing .pg-map.a2 .pg-fcite.of2 {
  color: var(--white);
}
.research-landing .pg-map.a2 .pg-dot.n2,
.research-landing .pg-map.a2 .pg-dot.of2 {
  background: var(--pg-map-c2);
}
.research-landing .pg-map.a2 .pg-mapsvg .c2 {
  stroke: var(--pg-map-c2);
  stroke-width: 3;
  stroke-dasharray: none;
}
.research-landing .pg-map.a3 .pg-tlabel.t3,
.research-landing .pg-map.a3 .pg-fname.of3,
.research-landing .pg-map.a3 .pg-fcite.of3 {
  color: var(--white);
}
.research-landing .pg-map.a3 .pg-dot.n3,
.research-landing .pg-map.a3 .pg-dot.of3 {
  background: var(--pg-map-c3);
}
.research-landing .pg-map.a3 .pg-mapsvg .c3 {
  stroke: var(--pg-map-c3);
  stroke-width: 3;
  stroke-dasharray: none;
}
.research-landing .pg-body,
.research-landing .rp-lead {
  font-family: var(--font-family);
  font-size: var(--section-body);
  line-height: var(--section-body-lh);
}
.research-landing .pg-fwpill {
  background: var(--white);
  color: var(--navy);
}
.research-landing .pg-fwpill:hover {
  background: var(--black);
  color: var(--white);
}
.research-landing .pg-start {
  color: var(--cyan);
}
.research-landing .pg-start:hover {
  color: var(--navy);
}
.research-landing .pg-accuracy-icon--disclosure {
  display: block;
  width: 30px;
  height: 30px;
  margin-bottom: 18px;
  background: var(--pink);
  -webkit-mask: url("/static/images/icons/icons_tough-c.svg") center / contain no-repeat;
  mask: url("/static/images/icons/icons_tough-c.svg") center / contain no-repeat;
}
.research-landing .pg-meth > div {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 12px;
  align-items: center;
}
.research-landing .pg-meth > div > img,
.research-landing .pg-meth > div > .pg-accuracy-icon--disclosure {
  grid-column: 1;
  grid-row: 1;
  margin: 0 !important;
}
.research-landing .pg-meth > div > h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0 !important;
}
.research-landing .pg-meth > div > p {
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: 10px !important;
}
.research-landing .pg-research-link {
  display: inline;
  margin-left: var(--space-1);
  color: var(--white);
  font-weight: var(--font-weight-semibold);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.research-landing .pg-research-link:hover {
  color: var(--white);
}
.research-landing .pg-sl.on {
  animation: pgSlideIn .24s ease-out both;
}
.research-landing .pg-sl.on .pg-dfill {
  animation: pgBar .52s cubic-bezier(.22,1,.36,1) both;
  transform-origin: left;
}
.research-landing .pg-sl.on .pg-drow:nth-child(2) .pg-dfill { animation-delay: .06s; }
.research-landing .pg-sl.on .pg-drow:nth-child(3) .pg-dfill { animation-delay: .12s; }
.research-landing .pg-sl.on .pg-drow:nth-child(4) .pg-dfill { animation-delay: .18s; }
.research-landing .pg-sl.on .pg-drow:nth-child(5) .pg-dfill { animation-delay: .24s; }
.research-landing .pg-sl.on .pg-drow:nth-child(6) .pg-dfill { animation-delay: .30s; }
.research-landing .pg-sl.on .pg-srow,
.research-landing .pg-sl.on .pg-dgap,
.research-landing .pg-sl.on .pg-dnote {
  animation: pgItemIn .3s ease-out both;
}
.research-landing .pg-sl.on .pg-srow:nth-child(2),
.research-landing .pg-sl.on .pg-dgap:nth-child(2) { animation-delay: .08s; }
.research-landing .pg-sl.on .pg-srow:nth-child(3),
.research-landing .pg-sl.on .pg-dnote:nth-child(3) { animation-delay: .16s; }
.research-landing .pg-sl.on .pg-srow:nth-child(4) { animation-delay: .24s; }
.research-landing .pg-sl.on .pg-srow:nth-child(5) { animation-delay: .32s; }
.research-landing .pg-spill {
  position: relative;
  min-width: 76px;
  text-align: center;
}
.research-landing .pg-sl.on .pg-spill {
  --check-delay: .18s;
  color: transparent;
}
.research-landing .pg-sl.on .pg-srow:nth-child(2) .pg-spill { --check-delay: .38s; }
.research-landing .pg-sl.on .pg-srow:nth-child(3) .pg-spill { --check-delay: .58s; }
.research-landing .pg-sl.on .pg-srow:nth-child(4) .pg-spill { --check-delay: .78s; }
.research-landing .pg-sl.on .pg-srow:nth-child(5) .pg-spill { --check-delay: .98s; }
.research-landing .pg-sl.on .pg-spill::before,
.research-landing .pg-sl.on .pg-spill::after {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--navy);
  white-space: nowrap;
}
.research-landing .pg-sl.on .pg-spill::before {
  content: "Checking…";
  animation: pgCheckingOut .16s calc(var(--check-delay) + .58s) ease-in both;
}
.research-landing .pg-sl.on .pg-spill::after {
  content: "✓ Checked";
  opacity: 0;
  transform: scale(.88);
  animation: pgCheckedIn .22s calc(var(--check-delay) + .66s) cubic-bezier(.22,1,.36,1) both;
}
@keyframes pgSlideIn {
  from { opacity: 0; transform: translateY(6px) scale(.995); }
  to { opacity: 1; transform: none; }
}
@keyframes pgItemIn {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: none; }
}
@keyframes pgCheckingOut {
  from { opacity: 1; }
  to { opacity: 0; }
}
@keyframes pgCheckedIn {
  from { opacity: 0; transform: scale(.88); }
  to { opacity: 1; transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .research-landing .pg-sl.on,
  .research-landing .pg-sl.on .pg-dfill,
  .research-landing .pg-sl.on .pg-srow,
  .research-landing .pg-sl.on .pg-dgap,
  .research-landing .pg-sl.on .pg-dnote {
    animation: none;
  }
  .research-landing .pg-sl.on .pg-spill {
    color: var(--navy);
  }
  .research-landing .pg-sl.on .pg-spill::before,
  .research-landing .pg-sl.on .pg-spill::after {
    display: none;
  }
}
@media (max-width: 1180px) {
  .research-landing .pg-h2,
  .research-landing .pg-h2-sm { font-size: var(--text-5xl); }
}
.research-landing .pg-steps-mobile {
  display: none;
}
.research-landing .pg-mobile-cat-title {
  display: none;
}
.research-landing .pg-how-title-mobile {
  display: none;
}
@media (max-width: 700px) {
  .research-landing .research-pricing-questions {
    background: linear-gradient(
      to bottom,
      var(--gray-light) 0%,
      var(--white) 70%
    );
  }
  .research-landing-page .pg-hero {
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-bottom: 40px;
    row-gap: 0;
  }
  .research-landing .pg-hero-copy {
    display: contents;
  }
  .research-landing .pg-hero-eyebrow {
    order: 1;
    margin-bottom: 36px !important;
  }
  .research-landing .pg-hero-eyebrow .pg-eyebrow {
    font-size: 13px;
    font-weight: var(--font-weight-semibold);
  }
  .research-landing .pg-h1 {
    order: 2;
    font-size: clamp(44px, calc(11vw + 8px), 52px) !important;
    font-weight: var(--font-weight-semibold) !important;
    text-wrap: balance !important;
    margin-bottom: 16px !important;
  }
  .research-landing .pg-h1 br {
    display: none;
  }
  .research-landing .pg-hero-body { display: none; }
  .research-landing .pg-hero-visual {
    order: 3;
    width: 100%;
    min-width: 0;
    margin-bottom: 32px;
  }
  .research-landing .pg-hero-visual .hero-carousel {
    width: 100%;
    max-width: 100%;
  }
  .research-landing .hero-carousel .carousel-slide-inner > * {
    min-width: 0 !important;
  }
  .research-landing .hero-carousel .carousel-disruption-chart {
    height: 84% !important;
  }
  .research-landing .hero-carousel .carousel-bars-area {
    padding-left: 0;
    padding-right: 0;
  }
  .research-landing .hero-carousel .carousel-sources-count {
    font-size: 52px !important;
  }
  .research-landing .hero-carousel .carousel-sources-rows > div:nth-child(3),
  .research-landing .hero-carousel .carousel-sources-rows > div:nth-child(4) {
    display: none !important;
  }
  .research-landing .hero-carousel .carousel-trends-count {
    font-size: 52px !important;
  }
  .research-landing .hero-carousel .carousel-matrix-value {
    font-size: 40px !important;
  }
  .research-landing .hero-carousel .carousel-matrix-label {
    right: auto !important;
    left: 8% !important;
    top: 8% !important;
  }
  .research-landing .hero-carousel .carousel-position-value {
    font-size: 40px !important;
  }
  .research-landing .hero-carousel .carousel-competitors-value,
  .research-landing .hero-carousel .carousel-industry-value {
    font-size: 52px !important;
  }
  .research-landing .hero-carousel .carousel-industry-percent {
    font-size: 24px !important;
  }
  .research-landing .hero-carousel .carousel-fuse-value {
    font-size: 44px !important;
  }
  .research-landing .hero-carousel .carousel-porter-value {
    font-size: 52px !important;
  }
  .research-landing .hero-carousel .carousel-porter-chart {
    width: 150px !important;
    height: 150px !important;
    overflow: visible;
  }
  .research-landing .hero-carousel .carousel-speed-old {
    font-size: 40px !important;
  }
  .research-landing .hero-carousel .carousel-speed-new {
    font-size: 52px !important;
  }
  .research-landing .hero-carousel .carousel-fuse-alert {
    width: 36px !important;
    height: 36px !important;
  }
  .research-landing .hero-carousel .carousel-fuse-alert > div {
    font-size: 14px !important;
  }
  .research-landing .hero-carousel .carousel-fuse-label {
    left: 6% !important;
    top: 6% !important;
  }
  .research-landing .hero-carousel .carousel-trends-rows > div:nth-child(4) {
    display: none !important;
  }
  .research-landing .hero-carousel .carousel-revenue-value {
    align-items: baseline !important;
  }
  .research-landing .hero-carousel .carousel-revenue-value > span {
    margin-top: 0 !important;
  }
  .research-landing .hero-carousel .carousel-you-dot {
    width: 36px !important;
    height: 36px !important;
    font-size: 9px;
  }
  .research-landing .pg-hero-cta {
    order: 4;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .research-landing .pg-hero-price { display: none; }
  .research-landing .pg-source-strip {
    padding: 16px 20px 0 !important;
  }
  .research-landing .pg-source-strip > div {
    gap: 12px !important;
    padding-bottom: 12px !important;
  }
  .research-landing .pg-sec:has(.pg-eyebrow) {
    padding-top: 36px !important;
  }
  .research-landing .pg-sec .pg-eyebrow {
    font-size: 13px;
    font-weight: var(--font-weight-semibold);
    margin-bottom: 20px !important;
  }
  .research-landing .pg-template-heading {
    text-align: left !important;
  }
  .research-landing .pg-tabs-c {
    display: none;
  }
  .research-landing .pg-catgroup,
  .research-landing .pg-catgroup[hidden] {
    display: block;
    position: relative;
  }
  .research-landing .pg-catgroup + .pg-catgroup {
    margin-top: 28px;
  }
  .research-landing .pg-mobile-cat-title {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    z-index: 2;
    top: 0;
    left: -24px;
    width: 20px;
    margin: 0;
    padding: 10px 0;
    border-radius: 6px 0 0 6px;
    background: var(--cyan);
    color: var(--white);
    font-family: var(--font-family-heading);
    font-size: 12px;
    line-height: 1;
    font-weight: var(--font-weight-semibold);
    letter-spacing: .03em;
    white-space: nowrap;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
  }
  .research-landing .pg-cat {
    display: flex !important;
    width: calc(100% + 48px);
    margin-left: -24px;
    margin-right: -24px;
    padding-left: 15px;
    padding-right: 15px;
    gap: 14px !important;
    align-items: stretch;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 15px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .research-landing .pg-cat::-webkit-scrollbar {
    display: none;
  }
  .research-landing .pg-cat .pg-card {
    width: 86%;
    min-width: 86%;
    flex: 0 0 86%;
    scroll-snap-align: start;
  }
  .research-landing .pg-how-intro {
    display: none;
  }
  .research-landing .pg-how-title-desktop {
    display: none;
  }
  .research-landing .pg-how-title-mobile {
    display: inline;
  }
  .research-landing .pg-steps-desktop {
    display: none !important;
  }
  .research-landing .pg-steps-mobile {
    display: block;
  }
  .research-landing .pg-process-rail {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    margin-bottom: 28px;
  }
  .research-landing .pg-process-stage {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    color: var(--navy);
    font-size: 15px;
    line-height: 1;
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
  }
  .research-landing .pg-process-num {
    color: var(--navy);
    font-size: 15px;
    font-weight: var(--font-weight-semibold);
  }
  .research-landing .pg-process-arrow {
    margin-left: 5px;
    margin-right: 13px;
    color: var(--navy);
    font-size: 16px;
    line-height: 1;
  }
  .research-landing .pg-process-copy {
    display: grid;
    gap: 20px;
  }
  .research-landing .pg-process-copy p {
    margin: 0;
    color: var(--navy);
    font-size: var(--section-body);
    line-height: var(--section-body-lh);
    font-weight: var(--font-weight-light);
  }
  .research-landing .pg-methodology-mobile-cut {
    display: none !important;
  }
  .research-landing .pg-meth + div {
    margin-top: 16px !important;
  }
  .research-landing .pg-meth + div .pg-deckwrap {
    margin-top: 0;
  }
  .research-landing .pg-sec:has(.pg-meth) {
    padding-bottom: 36px !important;
  }
  .research-landing .pg-sec:has(.pg-pipes) > div:first-child {
    text-align: left !important;
  }
  .research-landing .pg-sec:has(.pg-pipes) {
    padding-bottom: 36px !important;
  }
  .research-landing .pg-piperow--ghost + .pg-pipelab {
    margin-top: 28px !important;
  }
  .research-landing .pg-walltxt {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 10px;
    margin-bottom: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--white);
    white-space: nowrap;
  }
  .research-landing .pg-walltxt::before,
  .research-landing .pg-walltxt::after {
    content: "";
    height: 4px;
    flex: 1;
    border-radius: 999px;
    background: var(--pink);
  }
  .research-landing .pg-wall {
    display: none;
  }
  .research-landing .research-pricing-questions .rp-lead {
    display: none;
  }
  .research-landing .pg-closing-cta {
    display: none;
  }
  .research-landing .pg-citepop {
    margin-left: 20px;
    margin-right: 20px;
  }
  .research-landing .pg-fwrap {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .research-landing .pg-sec:has(.pg-fwrap) {
    padding-bottom: 36px !important;
  }
  .research-landing .pg-fwcopy {
    display: contents;
  }
  .research-landing .pg-fwcopy > .pg-eyebrow {
    order: 1;
  }
  .research-landing .pg-fwcopy > .pg-h2 {
    order: 2;
  }
  .research-landing .pg-fwcopy > p {
    order: 3;
    margin-bottom: 24px !important;
  }
  .research-landing .pg-fwrap > .pg-fwcard {
    order: 4;
  }
  .research-landing .pg-fwcopy > .pg-fwpill {
    order: 5;
    align-self: flex-start;
  }
  .research-landing .pg-h2,
  .research-landing .pg-h2-sm {
    font-size: 26px;
    line-height: var(--section-heading-mobile-lh);
  }
}

/* Shared-navbar wiring over the supplied dark hero. */
.research-landing-page .v2-nav .nav-logo-color { display: none !important; }
.research-landing-page .v2-nav.sticky .nav-logo-inverse { display: none !important; }
.research-landing-page .v2-nav.sticky .nav-logo-color { display: block !important; }
.research-landing-page .top-bar.v2-nav:not(.sticky) .top-bar-center-link,
.research-landing-page .top-bar.v2-nav:not(.sticky) .header-btn .top-bar-link,
.research-landing-page .top-bar.v2-nav:not(.sticky) .nav-mob-pricing,
.research-landing-page .top-bar.v2-nav:not(.sticky) .nav-mob-login,
.research-landing-page .top-bar.v2-nav:not(.sticky) .nav-lang-trigger {
  color: var(--white) !important;
}
.research-landing-page .top-bar.v2-nav:not(.sticky) .top-bar-center-link.active {
  color: var(--white) !important;
  text-decoration-color: var(--white);
}
.research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-credits-pill,
.research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-credits-pill--empty {
  color: var(--white) !important;
  border-color: var(--white) !important;
}
.research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-help-btn,
.research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-help-text {
  color: var(--white) !important;
}
.research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-help-btn .ren-star {
  fill: var(--white) !important;
}
.research-landing-page .top-bar.v2-nav:not(.sticky) .top-bar-user-avatar {
  background: var(--white) !important;
  color: var(--navy) !important;
  box-shadow: none !important;
}
@media (max-width: 767px) {
  .research-landing-page .top-bar.v2-nav:not(.sticky) {
    background: transparent !important;
    box-shadow: none !important;
  }
  .research-landing-page .v2-nav .header-logo-2 .nav-logo-inverse {
    display: block !important;
  }
  .research-landing-page .v2-nav .header-logo-2 .nav-logo-color {
    display: none !important;
  }
  .research-landing-page .top-bar.v2-nav:not(.sticky) .nav-lang-trigger,
  .research-landing-page .top-bar.v2-nav:not(.sticky) .nav-mob-pricing,
  .research-landing-page .top-bar.v2-nav:not(.sticky) .nav-mob-login {
    color: var(--white) !important;
  }
  .research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-credits-pill,
  .research-landing-page .top-bar.v2-nav:not(.sticky) .navbar-credits-pill--empty {
    color: var(--white) !important;
    border-color: var(--white) !important;
  }
  .research-landing-page .top-bar.v2-nav:not(.sticky) .sidebar__toggle {
    color: var(--white) !important;
  }
  .research-landing-page .top-bar.v2-nav:not(.sticky) .top-bar-user-avatar {
    background: transparent !important;
    color: var(--white) !important;
  }
  .research-landing-page .v2-nav .navbar-credits-pill {
    display: inline-flex;
    position: relative;
    top: 3px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    font-size: 14px;
  }
  .research-landing-page .v2-nav .navbar-credits-pill:hover,
  .research-landing-page .v2-nav .navbar-credits-pill.active,
  .research-landing-page .v2-nav .navbar-credits-pill--empty:hover {
    background: transparent !important;
    color: inherit !important;
  }
  .research-landing-page .v2-nav .navbar-help-btn {
    display: none !important;
  }
  .research-landing-page .v2-nav.header-1 .container-fluid {
    padding-right: 20px;
  }
}

/* Match Home v2's breathing room below the overlaid shared navbar. */
.research-landing-page .pg-hero {
  padding-top: calc(var(--topbar-height) + var(--space-12));
}
@media (max-width: 1199px) {
  .research-landing-page .pg-hero {
    padding-top: calc(var(--topbar-height) + var(--space-8));
  }
}
@media (max-width: 700px) {
  .research-landing-page .pg-hero {
    padding-top: calc(var(--topbar-height) + 8px);
  }
}
