.application-list li { padding-left: 24px; }
.perimeter-tech-section { background: #f7f9f9; padding-top: 88px; padding-bottom: 82px; }
.perimeter-tech-intro { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .7fr); gap: 8%; align-items: end; margin-bottom: 38px; }
.perimeter-tech-intro h2 { max-width: 780px; margin: 0; color: #142a36; }
.perimeter-tech-intro h2 em { color: #70909a; }
.perimeter-tech-intro > p { max-width: 520px; margin: 0; color: #536a75; font-size: 17px; line-height: 1.7; }
.perimeter-tech-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.perimeter-tech-grid article { min-width: 0; overflow: hidden; border: 1px solid #d3dfe2; background: #fff; }
.perimeter-tech-image { aspect-ratio: 16 / 10; overflow: hidden; background: #dbe4e7; }
.perimeter-tech-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.perimeter-tech-body { padding: 25px 29px 30px; }
.perimeter-tech-grid article:nth-child(1), .perimeter-tech-grid article:nth-child(2) { grid-column: span 1; }
.perimeter-tech-grid h3 { margin: 24px 0 10px; color: #172b36; font-size: clamp(20px, 2vw, 26px); line-height: 1.16; }
.perimeter-tech-grid p { max-width: 390px; margin: 0; color: #566d78; font-size: 14px; line-height: 1.65; }
.perimeter-tech-rule { display: block; width: 42px; height: 3px; background: #df1e27; }
.perimeter-tech-section + .pale-section.section { padding-top: 64px; }
.application-list li::before {
  content: '';
  top: 29px;
  width: 7px;
  height: 7px;
  border: 1px solid #8fb1bb;
  border-radius: 50%;
  background: #8fb1bb;
}

.video-ai-section { padding-top: 90px; padding-bottom: 36px; }
.video-ai-section + .pale-section.section { padding-top: 40px; }
.video-ai-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .7fr);
  align-items: end;
  gap: 10%;
  margin-bottom: 50px;
}
.video-ai-intro h2 { max-width: 800px; margin: 0; }
.video-ai-intro > div:last-child p { color: #526874; font-size: 17px; }
.video-ai-intro .line-link { margin-top: 12px; }
.video-ai-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid #cfdbdf;
  background: #cfdbdf;
}
.video-ai-card {
  min-width: 0;
  background: #f8fafa;
  overflow: hidden;
}
.video-ai-image { position: relative; overflow: hidden; background: #dbe4e7; aspect-ratio: 16 / 10; }
.video-ai-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.video-ai-marker {
  position: absolute;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 58%;
  padding: 5px 7px;
  border: 1px solid rgba(116, 213, 224, .72);
  border-radius: 2px;
  background: rgba(10, 30, 40, .88);
  color: #ecfbfd;
  box-shadow: 0 2px 9px rgba(4, 16, 24, .2);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.video-ai-marker::before { content: ''; flex: none; width: 5px; height: 5px; border-radius: 50%; background: #7bced9; }
.video-ai-marker::after { content: ''; position: absolute; top: 100%; left: 11px; width: 1px; height: 12px; background: rgba(116, 213, 224, .85); }
.video-ai-marker-smoke,.video-ai-marker-process { border-color: rgba(232, 178, 102, .85); color: #fff5e8; }
.video-ai-marker-smoke::before,.video-ai-marker-process::before { background: #eab266; }
.video-ai-marker-smoke::after,.video-ai-marker-process::after { background: rgba(232, 178, 102, .85); }
.video-ai-marker-epi,
.video-ai-marker-smoke,
.video-ai-marker-people,
.video-ai-marker-dock-occupied,
.video-ai-marker-boxes,
.video-ai-marker-process { left: 20px; top: auto; bottom: 48px; }
.video-ai-marker-dock-free { left: 20px; top: auto; bottom: 16px; border-color: rgba(225, 237, 240, .8); }
.video-ai-marker-dock-free::before { background: #e1edf0; }
.video-ai-marker-dock-free::after { background: rgba(225, 237, 240, .85); }
.video-ai-marker:not(.video-ai-marker-dock-occupied):not(.video-ai-marker-dock-free) { bottom: 20px; }
.video-ai-content {
  position: relative;
  z-index: 2;
  margin: -12px 12px 12px;
  padding: 24px 22px 26px;
  border-top: 3px solid #80b5c0;
  background: #f8fafa;
  box-shadow: 0 7px 18px rgba(17, 42, 52, .09);
}
.video-ai-card h3 { margin: 0 0 12px; font-size: 22px; }
.video-ai-card p { max-width: 390px; margin: 0; color: #536a75; font-size: 14px; line-height: 1.65; }
.video-ai-integration {
  display: grid;
  grid-template-columns: minmax(220px, .7fr) 1.3fr;
  align-items: center;
  gap: 6%;
  margin-top: 24px;
  padding: 27px 32px;
  border-left: 3px solid #8fb2bb;
  background: #e6eef0;
}
.video-ai-integration .eyebrow { margin-bottom: 8px; }
.video-ai-integration h3 { margin: 0; font-size: clamp(21px, 2vw, 28px); line-height: 1.2; }
.video-ai-integration > p { max-width: 720px; margin: 0; color: #4b626e; font-size: 15px; line-height: 1.6; }

.feature-grid.feature-grid-visual article,
.feature-grid.feature-grid-access article { min-width: 0; min-height: 0; padding: 0; background: #f8fafa; }
.feature-card-image { overflow: hidden; aspect-ratio: 16 / 10; background: #dbe4e7; }
.feature-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.feature-card-body { padding: 27px 30px 32px; }
.feature-grid.feature-grid-visual h3,
.feature-grid.feature-grid-access h3 { margin: 0 0 12px; color: #1b303d; }
.feature-grid.feature-grid-visual p,
.feature-grid.feature-grid-access p { margin: 0; }
.feature-grid.feature-grid-access { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.feature-grid.feature-grid-access article { grid-column: span 2; overflow: hidden; }
.feature-grid.feature-grid-access article:nth-child(n+4) { grid-column: span 3; }
.feature-grid.feature-grid-access .feature-card-body {
  position: relative;
  z-index: 2;
  margin: -12px 12px 12px;
  padding: 24px 22px 26px;
  border-top: 3px solid #80b5c0;
  background: #f8fafa;
  box-shadow: 0 7px 18px rgba(17, 42, 52, .09);
}
.feature-grid.feature-grid-access h3 { font-size: 22px; }
.feature-grid.feature-grid-access p { max-width: 390px; color: #536a75; font-size: 14px; line-height: 1.65; }

@media (max-width: 900px) {
  .perimeter-tech-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .video-ai-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .video-ai-intro { gap: 6%; }
  .feature-grid.feature-grid-access { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-grid.feature-grid-access article,
  .feature-grid.feature-grid-access article:nth-child(n+4) { grid-column: auto; }
}
@media (max-width: 760px) {
  .perimeter-tech-section { padding-top: 68px; padding-bottom: 62px; }
  .perimeter-tech-intro { grid-template-columns: 1fr; gap: 20px; }
  .perimeter-tech-intro > p { font-size: 15px; }
  .video-ai-section { padding-top: 70px; padding-bottom: 28px; }
  .video-ai-section + .pale-section.section { padding-top: 32px; }
  .video-ai-intro { grid-template-columns: 1fr; gap: 22px; margin-bottom: 36px; }
  .video-ai-intro > div:last-child p { font-size: 15px; }
  .video-ai-integration { grid-template-columns: 1fr; gap: 12px; padding: 23px 24px; }
}
@media (max-width: 560px) {
  .perimeter-tech-grid { grid-template-columns: 1fr; }
  .perimeter-tech-body { padding: 23px 24px 27px; }
  .video-ai-grid { grid-template-columns: 1fr; }
  .video-ai-content { padding: 22px 20px 25px; }
  .video-ai-marker { font-size: 10px; padding: 4px 6px; }
  .feature-card-body { padding: 23px 24px 27px; }
  .feature-grid.feature-grid-access { grid-template-columns: 1fr; }
}
