.integ{
  --side:clamp(1.25rem,4vw,3.5rem);
  position:relative;background:var(--secondary);color:var(--foreground);
  padding:clamp(3.5rem,8vh,6rem) var(--side);
}
.integ .kicker{color:color-mix(in oklch,var(--foreground) 50%,transparent);}
.integ-top{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  align-items:end;gap:clamp(2rem,5vw,4.5rem);
  padding-bottom:clamp(2rem,4vh,3rem);
}
.integ h2{
  margin:0;
  font-size:clamp(1.5rem,3.4vw,2.5rem);
  font-weight:600;line-height:1.05;
  letter-spacing:-.03em;text-transform:uppercase;
}
.integ h2 .dim{color:var(--muted-foreground);}
.integ-note{
  margin:0;max-width:42ch;color:var(--muted-foreground);
  font-size:clamp(.875rem,1.2vw,1rem);line-height:1.6;
}

.marq{
  position:relative;
  margin:0 calc(-1 * var(--side));
  padding:1rem 0 1.25rem;
  display:flex;flex-direction:column;gap:clamp(.75rem,1.2vw,1rem);
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.marq-row{overflow:visible;}
.marq-track{
  display:flex;gap:clamp(.75rem,1.2vw,1rem);
  width:max-content;
  will-change:transform;
}
.int{
  position:relative;flex:0 0 auto;
  display:flex;flex-direction:column;justify-content:center;
  align-items:center;gap:.875rem;
  min-width:clamp(11rem,15vw,14rem);
  padding:clamp(1.125rem,1.8vw,1.5rem) clamp(1.25rem,2vw,1.75rem);
  border-radius:var(--r-4xl);
  background:var(--card);
  box-shadow:0 4px 6px -1px color-mix(in oklch,var(--foreground) 6%,transparent);
  outline:1px solid color-mix(in oklch,var(--foreground) 5%,transparent);
  outline-offset:-1px;
}
.int-mark{
  display:flex;align-items:center;justify-content:center;
  height:2.25rem;width:100%;
}
.int-mark img{
  max-height:100%;max-width:8.5rem;width:auto;height:auto;
  object-fit:contain;
}
.int-kind{
  font-size:.625rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.1em;
  color:var(--muted-foreground);text-align:center;
}

.integ-foot{
  display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;
  padding-top:clamp(1.75rem,3.5vh,2.5rem);
}
.integ-foot .foot-line{margin:0;}

@media (max-width:880px){
  .integ-top{grid-template-columns:1fr;align-items:start;gap:1.25rem;}
  .int{min-width:9.5rem;}
  .integ-foot .textlink{margin-left:0;}
}
