.rev-solutions {
  --solutions-navy: #071844;
  --solutions-orange: #ff8100;
  --solutions-border: #d7e4f2;
  color: var(--solutions-navy);
  background: #f5f9fd;
  font-family: Arial, "Microsoft YaHei", sans-serif;
}

.rev-solutions *,
.rev-solutions *::before,
.rev-solutions *::after {
  box-sizing: border-box;
}

.rev-solutions :where(h1, h2, h3, p, figure, ul) { margin: 0; }
.rev-solutions a { color: inherit; text-decoration: none; }
.rev-solutions button { font: inherit; cursor: pointer; }
.rev-solutions img { display: block; max-width: 100%; }
.rev-solutions svg { flex: none; width: 24px; height: 24px; }
.rev-solutions [hidden] { display: none !important; }
.rev-solutions :where(a, button, video):focus-visible {
  outline: 3px solid #168de2;
  outline-offset: 4px;
}

.rev-solutions-inner {
  width: min(1320px, calc(100% - 56px));
  margin-inline: auto;
}

.rev-solutions-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #052e53;
  border-bottom: 4px solid #1caae9;
}

.rev-solutions-scene {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 60%;
}

.rev-solutions-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, #002b54 0%, rgba(0, 43, 84, .92) 36%, rgba(0, 43, 84, .15) 80%);
}

.rev-solutions-hero .rev-solutions-inner {
  position: relative;
  min-height: 366px;
  padding: 13px 0 38px;
}

.rev-solutions-breadcrumbs {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 9px;
  align-items: center;
  font-size: 13px;
  line-height: 1.5;
  color: #d7e8f7;
}

.rev-solutions-hero-content {
  position: relative;
  z-index: 2;
  width: 49%;
  padding-top: 28px;
}

.rev-solutions-hero h1 {
  color: #fff;
  font-size: clamp(34px, 3.55vw, 51px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -1.6px;
}

.rev-solutions-hero h1 span { display: block; color: var(--solutions-orange); }
.rev-solutions-hero-content > p {
  max-width: 560px;
  margin-top: 15px;
  font-size: 17px;
  line-height: 1.5;
}

.rev-solutions-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 22px;
}

.rev-solutions-button {
  display: inline-flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  padding: 10px 18px;
  color: #fff !important;
  border: 1px solid var(--solutions-orange);
  border-radius: 5px;
  background: var(--solutions-orange);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.rev-solutions-button svg { width: 22px; height: 22px; }
.rev-solutions-button-outline { border-color: #c3e0f8; background: rgba(0, 31, 67, .48); }
.rev-solutions-machine {
  position: absolute;
  z-index: 1;
  right: -2%;
  bottom: 5%;
  width: 60%;
  height: 90%;
  object-fit: contain;
  object-position: right bottom;
  filter: drop-shadow(0 15px 17px rgba(0, 0, 0, .2));
}

.rev-solutions-benefits {
  border-bottom: 1px solid var(--solutions-border);
  background: linear-gradient(180deg, #fafdff, #eaf3fc);
}

.rev-solutions-benefits ul {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 22px 0;
  list-style: none;
}

.rev-solutions-benefits li {
  display: flex;
  gap: 14px;
  align-items: center;
  min-width: 0;
  padding: 0 18px;
  border-right: 1px solid #d6e2f1;
}

.rev-solutions-benefits li:first-child { padding-left: 0; }
.rev-solutions-benefits li:last-child { padding-right: 0; border-right: 0; }
.rev-solutions-benefits svg { width: 39px; height: 39px; }
.rev-solutions-benefits h2 { font-size: 14px; font-weight: 800; line-height: 1.3; }
.rev-solutions-benefits p { margin-top: 4px; font-size: 12px; line-height: 1.35; }

.rev-solutions-catalog { padding: 26px 0 28px; }
.rev-solutions-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 23px;
}

.rev-solutions :where(.rev-solutions-heading, .rev-solutions-video-copy) > h2 {
  position: relative;
  padding-bottom: 15px;
  color: var(--solutions-navy);
  font-size: clamp(25px, 2.3vw, 32px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.9px;
}

.rev-solutions :where(.rev-solutions-heading, .rev-solutions-video-copy) > h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 47px;
  height: 4px;
  border-radius: 3px;
  background: var(--solutions-orange);
}

.rev-solutions-filters { display: flex; flex-wrap: wrap; gap: 9px; }
.rev-solutions-filters button {
  min-height: 42px;
  padding: 9px 17px;
  color: var(--solutions-navy);
  border: 1px solid #cbdff3;
  border-radius: 5px;
  background: #f8fbff;
  box-shadow: 0 3px 8px rgba(37, 92, 146, .07);
  font-size: 13px;
  font-weight: 700;
}

.rev-solutions-filters button[aria-pressed="true"] { color: #fff; border-color: var(--solutions-orange); background: var(--solutions-orange); }
.rev-solutions-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.rev-solutions-card {
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--solutions-border);
  border-radius: 9px;
  background: linear-gradient(180deg, #fff, #f5f9ff);
  box-shadow: 0 4px 12px rgba(38, 79, 125, .1);
}

.rev-solutions-card > a { display: block; height: 100%; }
.rev-solutions-card-image { position: relative; overflow: hidden; height: 165px; background: #edf3f8; }
.rev-solutions-card-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.rev-solutions-card-image .rev-solutions-material { right: auto; width: 61%; object-position: center 48%; }
.rev-solutions-card-image .rev-solutions-card-machine {
  left: auto;
  width: 60%;
  padding: 7px 0 6px 17px;
  object-fit: contain;
  background: #eef4fa;
  clip-path: polygon(21% 0, 100% 0, 100% 100%, 0 100%);
}

.rev-solutions-card-copy { position: relative; min-height: 108px; padding: 13px 45px 15px 15px; }
.rev-solutions-card h3 { font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -.4px; }
.rev-solutions-card-copy p { margin-top: 6px; font-size: 13px; line-height: 1.4; }
.rev-solutions-card-arrow {
  position: absolute;
  top: 15px;
  right: 12px;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  color: #fff;
  border-radius: 5px;
  background: var(--solutions-orange);
}

.rev-solutions-card-arrow svg { width: 23px; height: 23px; }
.rev-solutions-video { padding: 0 0 32px; scroll-margin-top: 110px; }
.rev-solutions-video-grid {
  display: grid;
  grid-template-columns: .94fr 1.06fr;
  gap: 32px;
  align-items: center;
  padding: 21px;
  border: 1px solid #d9e5f1;
  border-radius: 9px;
  background: linear-gradient(120deg, #fff, #edf5ff);
}

.rev-solutions-player { position: relative; overflow: hidden; align-self: stretch; min-height: 268px; border-radius: 7px; background: #051832; }
.rev-solutions-player video { display: block; width: 100%; height: 100%; min-height: 268px; aspect-ratio: 16 / 9; object-fit: contain; background: #051832; }
.rev-solutions-player video:not([data-has-played]) { object-fit: cover; }
.rev-solutions-play { position: absolute; inset: 0; display: grid; place-content: center; width: 100%; color: #fff; border: 0; background: transparent; }
.rev-solutions-play svg { width: 76px; height: 76px; padding: 18px; border: 2px solid #fff; border-radius: 50%; background: rgba(0, 31, 63, .5); }
.rev-solutions-video-copy > p { max-width: 560px; margin: 11px 0 21px; font-size: 15px; line-height: 1.45; }
.rev-solutions-video-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.rev-solutions-video-card { overflow: hidden; min-width: 0; padding-bottom: 9px; border: 1px solid #dce7f4; border-radius: 7px; background: #eaf3fd; }
.rev-solutions-video-card[aria-current="true"] { border-color: #79a9ce; box-shadow: 0 0 0 1px #79a9ce; }
.rev-solutions-video-card > div { position: relative; }
.rev-solutions-video-card img { width: 100%; aspect-ratio: 1.8; object-fit: cover; }
.rev-solutions-video-card span { position: absolute; inset: 0; display: grid; place-content: center; color: #fff; }
.rev-solutions-video-card span svg { width: 37px; height: 37px; padding: 7px; border-radius: 50%; background: rgba(0, 40, 76, .78); border: 2px solid #fff; }
.rev-solutions-video-card h3 { padding: 9px 8px 0; font-size: 14px; font-weight: 800; line-height: 1.25; }
.rev-solutions-video-card p { padding: 4px 8px 0; font-size: 12px; line-height: 1.3; }

@media (max-width: 1100px) {
  .rev-solutions-inner { width: calc(100% - 40px); }
  .rev-solutions-hero h1 { font-size: 40px; }
  .rev-solutions-hero-content { width: 53%; }
  .rev-solutions-hero-content > p { font-size: 15px; }
  .rev-solutions-actions { gap: 9px; }
  .rev-solutions-button { padding-inline: 12px; font-size: 12px; }
  .rev-solutions-machine { right: -5%; width: 57%; }
  .rev-solutions-benefits li { padding-inline: 10px; gap: 8px; }
  .rev-solutions-benefits svg { width: 31px; height: 31px; }
  .rev-solutions-benefits h2 { font-size: 12px; }
  .rev-solutions-benefits p { font-size: 11px; }
  .rev-solutions-heading { display: block; }
  .rev-solutions-filters { margin-top: 18px; }
  .rev-solutions-card-image { height: 145px; }
  .rev-solutions-card h3 { font-size: 16px; }
  .rev-solutions-video-grid { gap: 21px; padding: 17px; }
  .rev-solutions-video-card h3 { font-size: 12px; }
}

@media (max-width: 760px) {
  .rev-solutions-inner { width: calc(100% - 32px); }
  .rev-solutions-hero .rev-solutions-inner { min-height: 590px; padding-bottom: 245px; }
  .rev-solutions-hero-content { width: 100%; padding-top: 24px; }
  .rev-solutions-hero h1 { max-width: 550px; font-size: clamp(34px, 6.2vw, 46px); }
  .rev-solutions-hero-content > p { max-width: 520px; }
  .rev-solutions-machine { right: 0; bottom: -2%; width: 100%; height: 52%; }
  .rev-solutions-hero::before { background: linear-gradient(180deg, rgba(0, 35, 69, .9), rgba(0, 35, 69, .7) 60%, transparent); }
  .rev-solutions-benefits ul { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 19px; padding-block: 21px; }
  .rev-solutions-benefits li { padding: 0 10px !important; border-right: 0; }
  .rev-solutions-benefits li:last-child { grid-column: 1 / -1; }
  .rev-solutions-benefits h2 { font-size: 13px; }
  .rev-solutions-benefits p { font-size: 11px; }
  .rev-solutions-catalog { padding-top: 24px; }
  .rev-solutions-filters { gap: 7px; }
  .rev-solutions-filters button { flex: 1 1 calc(50% - 7px); padding-inline: 9px; font-size: 12px; }
  .rev-solutions-cards { grid-template-columns: 1fr; gap: 17px; }
  .rev-solutions-card-image { height: clamp(165px, 43vw, 275px); }
  .rev-solutions-card h3 { font-size: 20px; }
  .rev-solutions-card-copy p { font-size: 14px; }
  .rev-solutions-card-copy { min-height: 105px; padding: 15px 49px 18px 16px; }
  .rev-solutions-video-grid { grid-template-columns: 1fr; gap: 23px; padding: 14px; }
  .rev-solutions-player, .rev-solutions-player video { min-height: 0; }
  .rev-solutions-video-copy > p { font-size: 14px; }
  .rev-solutions-video-card h3 { font-size: 12px; }
  .rev-solutions-video-card p { font-size: 11px; }
}
