.m-show {
  display: none !important;
}
@media (max-width: 640px) {
  .m-hide {
    display: none !important;
  }
  .m-show {
    display: block !important;
  }
}

.vigi-color-vision .hero-new {
  position: relative;
  font-size: 0.8333vw;
  margin: 0 auto;
  background: #000 url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/img/01-banner.png) center/cover no-repeat;
  aspect-ratio: 3840 / 1517;
  display: flex;
  align-items: center;
}
.vigi-color-vision .hero-new .w-container {
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  color: #fff;
}
.vigi-color-vision .hero-new .text > div {
  display: grid;
  gap: 0.5em;
  max-width: 42em;
}
.vigi-color-vision .hero-new .text .eyebrow {
  font-size: 1.875vw;
  font-weight: 500;
  line-height: 1.2;
}
.vigi-color-vision .hero-new .text h2 {
  display: flex;
  align-items: center;
  gap: 0.25em;
  font-size: 2.5vw;
  font-weight: 500;
  line-height: 1.2;
}
.vigi-color-vision .hero-new .text h2 .logo-text {
  height: 1em;
  width: auto;
  display: block;
}
.vigi-color-vision .hero-new .text .sub {
  font-size: 1vw;
  line-height: 1.5;
  color: #e6e6e6;
}
@media (max-width: 640px) {
  .vigi-color-vision .hero-new {
    background: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/01-banner.png) center/cover no-repeat;
    aspect-ratio: auto;
    height: 109vw;
    align-items: flex-end;
    font-size: min(2.5vw, 10.35px);
  }
  .vigi-color-vision .hero-new .w-container {
    width: auto;
    max-width: 100%;
    padding-bottom: 5%;
  }
  .vigi-color-vision .hero-new .text {
    text-align: center;
  }
  .vigi-color-vision .hero-new .text > div {
    max-width: 100%;
    padding: 0 4.6vw;
    justify-items: center;
  }
  .vigi-color-vision .hero-new .text h2 {
    justify-content: center;
  }
  .vigi-color-vision .hero-new .text .eyebrow {
    font-size: 5.5vw;
  }
  .vigi-color-vision .hero-new .text h2 {
    font-size: 7.25vw;
  }
  .vigi-color-vision .hero-new .text .sub {
    font-size: 2.75vw;
  }
  .vigi-color-vision .hero-new .text h2 .logo-text {
    height: 5vw;
  }
}

.vigi-color-vision .revolution {
  font-size: 0.8333vw;
  margin: 0 auto;
  background: #000;
  position: relative;
}
.vigi-color-vision .revolution .w-container {
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  color: #fff;
  display: grid;
  gap: 3vw;
  padding: 8vw 0;
}
.vigi-color-vision .revolution .text {
  text-align: center;
  display: grid;
  gap: 1.5vw;
  justify-items: center;
}
.vigi-color-vision .revolution .text h2 {
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
}
.vigi-color-vision .revolution .text h2 .logo-text {
  height: 0.9em;
  width: auto;
  vertical-align: baseline;
  margin: 0 0.1em;
}
.vigi-color-vision .revolution .text p {
  font-size: 1vw;
  line-height: 1.5;
  max-width: 64em;
  margin: 0 auto;
  font-weight: 300;
}
.vigi-color-vision .revolution .features {
  display: flex;
  justify-content: center;
  gap: 6.7vw;
  margin: 0;
}
.vigi-color-vision .revolution .features li {
  display: flex;
  align-items: center;
  gap: 1em;
  text-align: left;
}
.vigi-color-vision .revolution .features .icon {
  width: 3em;
  height: 3em;
  flex-shrink: 0;
  object-fit: contain;
}
.vigi-color-vision .revolution .features p {
  font-size: 1vw;
  line-height: 1.5;
  font-weight: 400;
  padding: 0;
  max-width: none;
  margin: 0;
}
.vigi-color-vision .revolution .video {
  width: 100%;
  margin: 0;
  text-align: center;
}
.vigi-color-vision .revolution .video iframe {
  width: 100%;
  display: block;
  height: 40em;
}

@media (max-width: 640px) {
  .vigi-color-vision .revolution {
    font-size: min(2.5vw, 10.35px);
    padding: 0;
    background: #000;
  }
  .vigi-color-vision .revolution .w-container {
    width: auto;
    max-width: 100%;
    gap: 5vw;
    padding: 17vw 4.6vw;
  }
  .vigi-color-vision .revolution .text {
    text-align: center;
    justify-items: start;
    gap: 5vw;
  }
  .vigi-color-vision .revolution .text h2 {
    font-size: 6.15vw;
    line-height: 1.35;
  }
  .vigi-color-vision .revolution .text h2 .logo-text {
    height: 5vw;
  }
  .vigi-color-vision .revolution .text p {
    font-size: 4.35vw;
    line-height: 1.35;
    max-width: none;
  }
  .vigi-color-vision .revolution .features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 7vw;
    column-gap: 12vw;
    margin: 0;
  }
  .vigi-color-vision .revolution .features li {
    gap: 3vw;
  }
  .vigi-color-vision .revolution .features .icon {
    width: 7.5vw;
    height: 7.5vw;
  }
  .vigi-color-vision .revolution .features p {
    font-size: 2.75vw;
  }
  .vigi-color-vision .revolution .video {
    width: 100%;
    margin: 0;
  }
  .vigi-color-vision .revolution .video iframe {
    height: 48vw;
  }
}

.vigi-color-vision .comparison-new {
  font-size: 0.8333vw;
  margin: 0 auto;
  background: #000;
}
.vigi-color-vision .comparison-new .w-container {
  position: relative;
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  color: #fff;
  display: grid;
  gap: 6.5vw;
  padding: 0 0 8vw;
}
.vigi-color-vision .comparison-new .compare {
  display: grid;
  gap: 2vw;
  justify-items: center;
}
.vigi-color-vision .comparison-new .compare h2 {
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
.vigi-color-vision .comparison-new .pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2vw;
  width: 100%;
}
.vigi-color-vision .comparison-new .pair li {
  display: grid;
  gap: 1vw;
}
.vigi-color-vision .comparison-new .pair li img,
.vigi-color-vision .comparison-new .pair li video {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.vigi-color-vision .comparison-new .pair li .desc {
  font-size: 1vw;
  font-weight: 300;
  line-height: 1.2;
}

@media (max-width: 640px) {
  .vigi-color-vision .comparison-new {
    font-size: min(2.5vw, 10.35px);
    background: #000;
  }
  .vigi-color-vision .comparison-new .w-container {
    width: auto;
    max-width: 100%;
    gap: 5vw;
    padding: 0 4.6vw 17vw;
  }
  .vigi-color-vision .comparison-new .compare {
    gap: 5vw;
    justify-items: center;
  }
  .vigi-color-vision .comparison-new .compare h2 {
    font-size: 6.15vw;
    text-align: center;
  }
  .vigi-color-vision .comparison-new .pair {
    grid-template-columns: 1fr;
    gap: 8vw;
  }
  .vigi-color-vision .comparison-new .pair li {
    gap: 5vw;
  }
  .vigi-color-vision .comparison-new .pair li .desc {
    font-size: 4.35vw;
    color: #cccccc;
    text-align: center;
  }
}

.vigi-color-vision .night {
  background: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/img/night-bg.png?v1) top center / 100% 100% no-repeat;
}
@media (max-width: 640px) {
  .vigi-color-vision .night {
    min-height: 425vw;
    background: #191919 url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/night-bg.png?v1) bottom center / 100% 100% no-repeat;
  }
}

.vigi-color-vision .superior {
  font-size: 0.8333vw;
  margin: 0 auto;
  color: #fff;
}
.vigi-color-vision .superior .stage {
  position: relative;
  background: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/img/06-superior.png) center/cover no-repeat;
  aspect-ratio: 3840 / 1905;
}
.vigi-color-vision .superior .overlay {
  position: absolute;
  inset: 0;
}
.vigi-color-vision .superior .overlay .title {
  position: absolute;
  top: 9%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.3;
}
.vigi-color-vision .superior .overlay .isp {
  position: absolute;
  top: 38%;
  left: 60%;
}
.vigi-color-vision .superior .overlay .isp-title {
  font-size: 1.75vw;
  font-weight: 500;
  line-height: 1.2;
}
.vigi-color-vision .superior .overlay .isp-title .grad {
  background: linear-gradient(
    90deg,
    #ff6a3d 0%,
    #ff3d9a 35%,
    #7b5cff 70%,
    #2bc6ff 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.vigi-color-vision .superior .overlay .isp-sub {
  font-size: 1vw;
  font-weight: 300;
  line-height: 1.4;
  margin-top: 0.3em;
}
.vigi-color-vision .superior .overlay .label {
  position: absolute;
  font-size: 1.5vw;
  font-weight: 400;
  line-height: 1.3;
}
.vigi-color-vision .superior .overlay .label-aperture {
  top: 77%;
  left: 16%;
}
.vigi-color-vision .superior .overlay .label-sensor {
  top: 77%;
  left: 37%;
}
.vigi-color-vision .superior .overlay .line {
  position: absolute;
  background: rgba(255, 255, 255, 0.55);
  transform-origin: top center;
}
.vigi-color-vision .superior .overlay .line-aperture {
  left: 22%;
  top: 34%;
  width: 1px;
  height: 41%;
}
.vigi-color-vision .superior .overlay .line-sensor {
  left: 44.75%;
  top: 57%;
  width: 1px;
  height: 19%;
}
.vigi-color-vision .superior .overlay .line-isp {
  left: 49%;
  top: 40%;
  width: 10%;
  height: 1px;
}
.vigi-color-vision .superior .overlay .line-isp2 {
  left: 49%;
  top: 40%;
  width: 1px;
  height: 30%;
}
.vigi-color-vision .superior .w-container {
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  display: grid;
  gap: 2vw;
  padding: 8vw 0;
}
.vigi-color-vision .vivid {
  font-size: 0.8333vw;
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  color: #fff;
  display: grid;
  gap: 1.5vw;
  justify-items: center;
  padding: 8vw 0;
}
.vigi-color-vision .vivid h3 {
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
.vigi-color-vision .vivid .bullets {
  display: flex;
  justify-content: center;
  gap: 3vw;
}
.vigi-color-vision .vivid .bullets li {
  font-size: 1vw;
  font-weight: 300;
  line-height: 1.3;
}
.vigi-color-vision .vivid .pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2vw;
  width: 100%;
  margin-top: 1vw;
}
.vigi-color-vision .vivid .pair li {
  display: grid;
  gap: 1vw;
}
.vigi-color-vision .vivid .pair li img {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.vigi-color-vision .vivid .pair li .desc {
  font-size: 1vw;
  font-weight: 300;
  line-height: 1.2;
}

@media (max-width: 640px) {
  .vigi-color-vision .superior {
    font-size: min(2.5vw, 10.35px);
  }
  .vigi-color-vision .superior .stage {
    background-image: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/06-superior.png);
    aspect-ratio: 1280 / 1859;
  }
  .vigi-color-vision .superior .overlay .line {
    display: block;
  }
  .vigi-color-vision .superior .overlay .line-aperture {
    left: 22.5%;
    top: 53%;
    width: 1px;
    height: 24%;
  }
  .vigi-color-vision .superior .overlay .line-sensor {
    left: 67%;
    top: 69%;
    width: 1px;
    height: 20%;
  }
  .vigi-color-vision .superior .overlay .line-isp {
    left: 74.5%;
    top: 40%;
    width: 1px;
    height: 37%;
  }
  .vigi-color-vision .superior .overlay .line-isp2 {
    left: 47.35%;
    top: 88.9%;
    width: 20%;
    height: 1px;
  }
  .vigi-color-vision .superior .overlay .title {
    top: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    text-align: center;
    font-size: 6.15vw;
    line-height: 1.35;
  }
  .vigi-color-vision .superior .overlay .isp {
    top: 27%;
    left: 8%;
  }
  .vigi-color-vision .superior .overlay .isp-title {
    font-size: 3em;
  }
  .vigi-color-vision .superior .overlay .isp-sub {
    font-size: 1.75em;
  }
  .vigi-color-vision .superior .overlay .label {
    font-size: 1.75em;
  }
  .vigi-color-vision .superior .overlay .label-aperture {
    top: 78%;
    left: 11%;
  }
  .vigi-color-vision .superior .overlay .label-sensor {
    top: 85%;
    left: 11%;
  }
  .vigi-color-vision .superior .w-container {
    width: auto;
    max-width: 100%;
    gap: 8vw;
    padding: 17vw 4.6vw;
  }
  .vigi-color-vision .vivid {
    font-size: min(2.5vw, 10.35px);
    width: auto;
    max-width: 100%;
    gap: 1.5em;
    justify-items: start;
    padding: 0 4.6vw 17vw;
  }
  .vigi-color-vision .vivid h3 {
    font-size: 6.15vw;
    line-height: 1.35;
    text-align: left;
  }
  .vigi-color-vision .vivid .bullets {
    flex-direction: column;
    gap: 0.5em;
  }
  .vigi-color-vision .vivid .bullets li {
    font-size: 4.35vw;
    line-height: 1.35;
  }
  .vigi-color-vision .vivid .pair {
    grid-template-columns: 1fr;
    gap: 2em;
  }
  .vigi-color-vision .vivid .pair li .desc {
    font-size: 4.35vw;
    line-height: 1.35;
    color: #cccccc;
  }
}

/* ===== People or Vehicle-Triggered Colorful Images ===== */
.vigi-color-vision .colorful {
  font-size: 0.8333vw;
  color: #fff;
}
.vigi-color-vision .colorful .w-container {
  max-width: 90%;
  margin: 0 auto;
  width: 50vw;
  display: grid;
  gap: 2.5vw;
  padding: 0 0 8vw;
}
.vigi-color-vision .colorful .text {
  display: grid;
  gap: 1.2vw;
  justify-items: center;
  text-align: center;
}
.vigi-color-vision .colorful .text h2 {
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
}
.vigi-color-vision .colorful .text p {
  font-size: 1vw;
  font-weight: 300;
  line-height: 1.5;
}
.vigi-color-vision .colorful .text .more {
  font-size: 1vw;
  font-weight: 300;
  color: #4ea6ff;
  text-decoration: none;
}
.vigi-color-vision .colorful .stage video {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
/* ===== Ideal for Low-Light Conditions scenario grid ===== */
.vigi-color-vision .scenarios {
  font-size: 0.8333vw;
  color: #fff;
}
.vigi-color-vision .scenarios .w-container {
  max-width: 90%;
  margin: 0 auto;
  width: 62.5vw;
  padding: 0 0 8vw;
}
.vigi-color-vision .scenarios .text {
  display: grid;
  gap: 2.5vw;
}
.vigi-color-vision .scenarios .text h2 {
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
.vigi-color-vision .scenarios .grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.75vw;
}
.vigi-color-vision .scenarios .grid li {
  display: grid;
  gap: 0.8vw;
  align-content: start;
}
.vigi-color-vision .scenarios .grid li .media {
  position: relative;
}
.vigi-color-vision .scenarios .grid li img {
  width: 100%;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.vigi-color-vision .scenarios .grid li h3 {
  position: absolute;
  left: 0.8vw;
  bottom: 0.8vw;
  right: 0.8vw;
  font-size: 0.95vw;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  text-align: center;
}
.vigi-color-vision .scenarios .grid li p {
  font-size: 0.95vw;
  font-weight: 300;
  line-height: 1.4;
  color: #cccccc;
  margin: 0;
}

@media (max-width: 640px) {
  .vigi-color-vision .colorful {
    font-size: min(2.5vw, 10.35px);
  }
  .vigi-color-vision .colorful .w-container {
    width: auto;
    max-width: 100%;
    gap: 8vw;
    padding: 0 4.6vw 17vw;
  }
  .vigi-color-vision .colorful .text {
    gap: 1em;
  }
  .vigi-color-vision .colorful .text h2 {
    font-size: 6.15vw;
    line-height: 1.35;
  }
  .vigi-color-vision .colorful .text p {
    font-size: 4.35vw;
    line-height: 1.35;
  }
  .vigi-color-vision .colorful .text .more {
    font-size: 4.35vw;
  }

  .vigi-color-vision .scenarios {
    font-size: min(2.5vw, 10.35px);
  }
  .vigi-color-vision .scenarios .w-container {
    width: auto;
    max-width: 100%;
    padding: 17vw 4.6vw;
  }
  .vigi-color-vision .scenarios .text {
    gap: 2em;
  }
  .vigi-color-vision .scenarios .text h2 {
    font-size: 7vw;
    line-height: 1.35;
    text-align: center;
  }
  .vigi-color-vision .scenarios .grid {
    grid-template-columns: 1fr;
    gap: 2.5em;
  }
  .vigi-color-vision .scenarios .grid li {
    position: relative;
    display: block;
  }
  .vigi-color-vision .scenarios .grid li .media {
    display: block;
  }
  .vigi-color-vision .scenarios .grid li img {
    width: 100%;
    height: auto;
    aspect-ratio: 1139 / 587;
    object-fit: cover;
    display: block;
  }
  .vigi-color-vision .scenarios .grid li:nth-child(1) img {
    content: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/09a-dim-bar.png);
  }
  .vigi-color-vision .scenarios .grid li:nth-child(2) img {
    content: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/09b-warehouse.png);
  }
  .vigi-color-vision .scenarios .grid li:nth-child(3) img {
    content: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/09c-parking-lot.png);
  }
  .vigi-color-vision .scenarios .grid li:nth-child(4) img {
    content: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/09d-farms-orchards.png);
  }
  .vigi-color-vision .scenarios .grid li:nth-child(5) img {
    content: url(https://static-page.tp-link.com/technology/vigi-colorpro-night-vision_v2/m/09e-wildlife-habitat.png);
  }
  .vigi-color-vision .scenarios .grid li h3 {
    position: absolute;
    left: 55%;
    top: 18%;
    right: 5%;
    margin: 0 0 2vw;
    font-size: 4.35vw;
    line-height: 1.35;
    text-align: left;
  }
  .vigi-color-vision .scenarios .grid li p {
    position: absolute;
    left: 55%;
    top: 35%;
    right: 5%;
    margin: 0;
    font-size: 3.5vw;
    line-height: 1.35;
  }
}

.vigi-color-vision .models-new {
  font-size: 0.8333vw;
  color: #fff;
  padding: 0 0 8vw;
}
.vigi-color-vision .models-new .w-container {
  width: 62.5vw;
  max-width: 90%;
  margin: 0 auto;
}
.vigi-color-vision .models-new h2 {
  margin: 0 0 2.5vw;
  padding: 0;
  font-size: 1.875vw;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
.vigi-color-vision .models-new .models-list {
  display: grid;
  grid-template-columns: repeat(2, 14vw);
  justify-content: center;
  gap: 1vw;
  margin: 0;
  padding: 0;
  list-style: none;
}
.vigi-color-vision .models-new .model {
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.12);
}
.vigi-color-vision .models-new .model-link {
  box-sizing: border-box;
  display: grid;
  align-content: start;
  width: 100%;
  min-height: 12.2vw;
  padding: 1.65vw 1.25vw 1.4vw;
  color: inherit;
  text-decoration: none;
}
.vigi-color-vision .models-new .model-img {
  position: relative;
  display: block;
  height: 5.9vw;
  margin: 0 0 1.25vw;
}
.vigi-color-vision .models-new .model-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 5vw;
  object-fit: contain;
}
.vigi-color-vision .models-new .model-copy {
  display: block;
  min-width: 0;
}
.vigi-color-vision .models-new .model-id {
  display: block;
  margin: 0 0 0.55vw;
  padding: 0;
  font-size: 1.05vw;
  font-weight: 500;
  line-height: 1.25;
}
.vigi-color-vision .models-new .model-name {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0.9vw;
  font-weight: 300;
  line-height: 1.35;
  color: #d6d6d6;
}

@media (max-width: 640px) {
  .vigi-color-vision .models-new {
    font-size: min(2.5vw, 10.35px);
    padding: 0 0 17vw;
  }
  .vigi-color-vision .models-new .w-container {
    width: auto;
    max-width: 100%;
  }
  .vigi-color-vision .models-new h2 {
    margin: 0 0 7vw;
    padding: 0 4.6vw;
    font-size: 6.15vw;
    line-height: 1.25;
  }
  .vigi-color-vision .models-new .models-list {
    grid-template-columns: 1fr;
    gap: 5vw;
    width: 82%;
    margin: 0 auto;
  }
  .vigi-color-vision .models-new .model-link {
    grid-template-columns: 42% minmax(0, 1fr);
    align-items: center;
    align-content: center;
    gap: 5vw;
    min-height: 28vw;
    padding: 4.5vw 4vw;
  }
  .vigi-color-vision .models-new .model-img {
    height: 20vw;
    margin: 0;
  }
  .vigi-color-vision .models-new .model-img img {
    height: 100%;
  }
  .vigi-color-vision .models-new .model-id {
    margin: 0 0 2vw;
    font-size: 4.35vw;
    line-height: 1.25;
  }
  .vigi-color-vision .models-new .model-name {
    font-size: 3.5vw;
    line-height: 1.35;
  }
}
