.every-grid { display: block; position: relative; }
.every-grid .sc-track {
  gap: 12px; padding: 4px 0 2px; scroll-padding-inline: 13%;
  max-width: 360px; margin: 0 auto;
}
.every-grid .sc-controls {
  position: absolute; top: 0; bottom: 0; left: 50%; transform: translateX(-50%);
  width: calc(var(--cube-w, 100%) + 120px);
  margin: 0; justify-content: space-between; pointer-events: none;
}
.every-grid .sc-arrow {
  pointer-events: auto; width: 32px; height: 32px;
  box-shadow: var(--shadow-md); border-color: var(--line-3);
}
@media (hover: none), (pointer: coarse) {
  .every-grid .sc-controls { display: none; }
}
.every-grid.is-tight .sc-controls { display: none; }
@media (hover: hover) and (pointer: fine) {
  .every-grid .sc-arrow { opacity: 0; transition: opacity .18s ease; }
  .every-grid:hover .sc-arrow, .every-grid:focus-within .sc-arrow { opacity: 1; }
}
.every-col {
  min-width: 0; flex: 0 0 74%; scroll-snap-align: center;
  background: var(--surface-3); border: 0;
  border-radius: 8px; padding: 18px 20px 22px;
}
@media (max-width: 420px) {
  .every-col { padding: 16px 14px 18px; }
}

.every-grid.is-cube, .every-grid.is-sizing { --cube-w: min(78%, 440px); }
.every-grid.is-cube { perspective: 1400px; }
.every-grid.is-cube .sc-track {
  position: relative; display: block; width: var(--cube-w); margin: 0 auto; padding: 0;
  overflow: visible; scroll-snap-type: none;
  transform-style: preserve-3d;
  transition: transform .75s cubic-bezier(.4, .04, .2, 1);
  touch-action: pan-y;
}
.every-grid.is-cube .feature-list li,
.every-grid.is-sizing .feature-list li { font-size: calc(14px * var(--cube-fs, 1)); }
.every-grid.is-cube .every-cat,
.every-grid.is-sizing .every-cat { font-size: calc(11.5px * var(--cube-fs, 1)); }
.every-grid.is-sizing .sc-track {
  display: block; width: var(--cube-w); margin: 0 auto; padding: 0; overflow: visible;
}
.every-grid.is-sizing .sc-track::before,
.every-grid.is-sizing .sc-track::after { content: none; }
.every-grid.is-sizing .sc-slide { flex: none; width: auto; }
.every-grid.is-sizing .feature-list li,
.every-grid.is-sizing .every-cat { white-space: nowrap; }
.every-grid.is-cube .sc-track::before,
.every-grid.is-cube .sc-track::after { content: none; }
.every-grid.is-cube .sc-slide {
  position: absolute; inset: 0; flex: none;
  transform: rotateY(calc(var(--i) * 90deg)) translateZ(var(--cube-r, 0px));
  backface-visibility: hidden;
}
.every-grid.is-cube .sc-slide::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  background: linear-gradient(90deg,
              rgba(15, 27, 45, .30), rgba(15, 27, 45, .54));
  opacity: 0; pointer-events: none;
  transition: opacity .75s cubic-bezier(.4, .04, .2, 1);
}
.every-grid.is-cube .sc-slide[data-pos="1"]::after,
.every-grid.is-cube .sc-slide[data-pos="3"]::after { opacity: 1; }
.every-grid.is-cube::after {
  content: ""; position: absolute; z-index: -1;
  left: 50%; bottom: -30px; transform: translateX(-50%);
  width: calc(var(--cube-w) + 24px); height: 36px;
  background: radial-gradient(50% 50% at 50% 50%,
              rgba(15, 27, 45, .32), rgba(15, 27, 45, 0) 72%);
  pointer-events: none;
}
.every-grid.is-cube .sc-track.is-showoff {
  transition-duration: 1.6s; transition-timing-function: cubic-bezier(.5, .02, .2, 1);
}
.every-grid.is-cube .sc-track.is-showoff .sc-slide::after { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
  .every-grid.is-cube .sc-track { transition: none; }
  .every-grid.is-cube .sc-slide::after { transition: none; }
}
.every-grid .sc-track::before, .every-grid .sc-track::after {
  content: ""; flex: 0 0 13%;
}

.every-cat {
  font: 500 11.5px/1.5 var(--mono); letter-spacing: .13em; text-transform: uppercase;
  color: var(--accent-ink); margin: 12px 0 7px;
}
.every-col > .every-cat:first-child { margin-top: 0; }
.feature-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 9px; }
.feature-list li { display: flex; gap: 10px; align-items: flex-start; color: var(--ink-2); font-size: 14px; line-height: 1.4; }
.feat-check { flex: none; margin-top: 2px; color: var(--accent-ink); }
