.features-section {
  padding-block: 104px 112px;
  scroll-margin-top: 24px;
  background:
    radial-gradient(ellipse 32% 54% at 76% 46%, rgb(255 81 12 / .065), transparent 78%),
    var(--us-canvas);
}
.features-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  align-items: center;
  gap: clamp(48px, 5.6vw, 80px);
}
.features-layout + .features-layout { margin-top: var(--feature-row-gap); }
.features-layout--reverse { grid-template-columns: 360px minmax(0, 1fr); }
.features-layout--reverse .features-copy { grid-column: 2; grid-row: 1; }
.features-layout--reverse .features-media { grid-column: 1; grid-row: 1; justify-self: start; }
.features-copy { min-width: 0; }
.features-eyebrow {
  margin: 0 0 16px;
  color: var(--us-orange);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .13em;
}
.features-copy h2 {
  margin: 0;
  font-family: "Inter Tight", "Inter", Arial, sans-serif;
  font-size: clamp(54px, 5.7vw, 82px);
  font-weight: 900;
  line-height: .99;
  letter-spacing: -.055em;
}
.features-copy h2 span { color: var(--us-orange); }
.features-intro {
  max-width: 690px;
  margin: 22px 0 0;
  color: #c5c7cf;
  font-size: clamp(19px, 1.6vw, 22px);
  line-height: 1.48;
  letter-spacing: -.02em;
}
.features-points {
  display: grid;
  gap: 19px;
  margin: 36px 0 0;
  padding: 0;
  list-style: none;
}
.features-points li {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  min-width: 0;
}
.features-point-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid var(--us-orange);
  border-radius: 13px;
  background: rgb(255 81 12 / .035);
  color: var(--us-orange);
}
.features-point-icon svg {
  width: 27px;
  height: 27px;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.features-points li > span:last-child { display: grid; gap: 3px; min-width: 0; }
.features-points strong { color: var(--us-text); font-size: 19px; font-weight: 750; line-height: 1.25; }
.features-points small { color: var(--us-muted); font-size: 16px; line-height: 1.35; }
.features-media {
  justify-self: end;
  width: 100%;
  max-width: 360px;
  aspect-ratio: 9 / 16;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgb(255 99 29 / .66);
  border-radius: 18px;
  background: #080808;
  box-shadow: 0 0 42px rgb(255 81 12 / .13);
}
.features-video { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; object-fit: contain; }
/* Desktop showcase density: both feature rows share one heading, media, and spacing scale. */
@media (min-width: 1041px) {
  .features-section { padding-block: 82px 88px; }
  .features-layout,
  .features-layout--reverse { gap: clamp(48px, 5vw, 68px); }
  .features-layout { grid-template-columns: minmax(0, 1fr) 300px; }
  .features-layout--reverse { grid-template-columns: 300px minmax(0, 1fr); }
  .features-copy h2 { font-size: clamp(50px, 4.75vw, 68px); }
  .features-intro { margin-top: 20px; font-size: clamp(18px, 1.45vw, 20px); }
  .features-points { gap: 17px; margin-top: 32px; }
  .features-points li { grid-template-columns: 48px minmax(0, 1fr); gap: 16px; }
  .features-point-icon { width: 48px; height: 48px; border-radius: 12px; }
  .features-point-icon svg { width: 25px; height: 25px; }
  .features-points strong { font-size: 18px; }
  .features-points small { font-size: 15px; }
  .features-media { max-width: 300px; }
}
@media (max-width: 1040px) and (min-width: 901px) {
  .features-layout { grid-template-columns: minmax(0, 1fr) 320px; gap: 42px; }
  .features-layout--reverse { grid-template-columns: 320px minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .features-section { padding-block: 68px 76px; }
  .features-layout { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .features-layout--reverse .features-copy,
  .features-layout--reverse .features-media { grid-column: auto; grid-row: auto; }
  .features-copy { max-width: 650px; }
  .features-media { justify-self: center; width: min(100%, 340px); }
  .features-layout--reverse .features-media { justify-self: center; }
}
@media (max-width: 640px) {
  .features-section { padding-block: 52px 62px; }
  .features-layout { gap: 31px; }
  .features-eyebrow { margin-bottom: 13px; font-size: 12px; }
  .features-copy h2 { font-size: clamp(42px, 9.5vw, 50px); line-height: 1.02; letter-spacing: -.047em; }
  .features-intro { margin-top: 19px; font-size: 17px; line-height: 1.45; }
  .features-points { gap: 16px; margin-top: 28px; }
  .features-points li { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; }
  .features-point-icon { width: 44px; height: 44px; border-radius: 11px; }
  .features-point-icon svg { width: 24px; height: 24px; }
  .features-points strong { font-size: 16px; }
  .features-points small { font-size: 14px; line-height: 1.35; }
  .features-media { width: min(100%, 340px); border-radius: 15px; }
}
