/*
GS FRONTEND CORE · PROBLEMAS DE VIDEO
Versión 0.57.0
CSS consolidado de los ocho widgets migrados.
*/

#problemas-video-inicio,
#sintomas-video,
#diagnostico-ruta-hdmi,
#puerto-hdmi-circuitos-video,
#equipos-video-compatibles,
#proceso-servicio-video,
#preguntas-video,
#cta-video {
  box-sizing: border-box;
}

.gsfc-video-dynamic {
  min-width: 0;
}

.gsfc-video-loading {
  width: min(620px, calc(100% - 32px));
  margin: 24px auto;
  padding: 18px 20px;
  border: 1px solid rgba(92,174,255,.16);
  border-radius: 16px;
  color: #9fb4c8;
  background: rgba(3,15,31,.52);
  font: 600 13px/1.55 "Poppins", Arial, sans-serif;
  text-align: center;
}

.gsfc-load-error {
  width: min(680px, calc(100% - 32px));
  margin: 24px auto;
  padding: 18px 20px;
  border: 1px solid rgba(255,200,92,.24);
  border-radius: 16px;
  color: #ffadb7;
  background: rgba(255,146,93,.055);
  font: 600 13px/1.55 "Poppins", Arial, sans-serif;
  text-align: center;
}
/* ===== HERO ===== */
#problemas-video-inicio {
    --gsv-cyan: #25d8f4;
    --gsv-blue: #297cff;
    --gsv-green: #48d99a;
    --gsv-yellow: #ffc85c;
    --gsv-orange: #ff925d;
    --gsv-red: #ff6b76;
    --gsv-white: #ffffff;
    --gsv-text: #b8cadb;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    min-height: 0;
    padding: clamp(74px, 7vw, 106px) 24px 38px;
    color: var(--gsv-white);
    background:
      radial-gradient(circle at 7% 16%, rgba(37,216,244,.12), transparent 31%),
      radial-gradient(circle at 92% 82%, rgba(41,124,255,.18), transparent 37%),
      linear-gradient(118deg, #020914 0%, #05162c 50%, #0a254c 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

  #problemas-video-inicio *,
  #problemas-video-inicio *::before,
  #problemas-video-inicio *::after {
    box-sizing: border-box;
  }

  #problemas-video-inicio svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvhero__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .3;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.23) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvhero__glow {
    position: absolute;
    z-index: -2;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(145px);
    pointer-events: none;
  }

  .gsvhero__glow--cyan {
    top: 2%;
    left: -240px;
    opacity: .12;
    background: var(--gsv-cyan);
  }

  .gsvhero__glow--blue {
    right: -220px;
    bottom: 5%;
    opacity: .16;
    background: var(--gsv-blue);
  }

  .gsvhero__wrap {
    width: min(1280px, 100%);
    margin: 0 auto;
  }

  .gsvhero__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.03fr) minmax(430px, .87fr);
    gap: clamp(38px, 5.5vw, 72px);
    align-items: center;
  }

  .gsvhero__content {
    min-width: 0;
  }

  .gsvhero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 19px;
    color: #82ddff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.45px;
    text-transform: uppercase;
  }

  .gsvhero__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsv-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 18px rgba(72,217,154,.65);
    animation: gsvPulse 2.4s ease-in-out infinite;
  }

  .gsvhero h1 {
    max-width: 760px;
    margin: 0;
    color: #fff;
    font-size: clamp(46px, 5.25vw, 74px);
    line-height: 1.03;
    font-weight: 850;
    letter-spacing: -.055em;
  }

  .gsvhero h1 span {
    display: block;
    color: transparent;
    background: linear-gradient(
      90deg,
      #76e1ff,
      var(--gsv-cyan) 46%,
      #668fff
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvhero__lead {
    max-width: 700px;
    margin: 22px 0 0;
    color: var(--gsv-text);
    font-size: 15px;
    line-height: 1.78;
  }

  .gsvhero__symptoms {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
  }

  .gsvhero__symptoms span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 8px 12px;
    border: 1px solid rgba(92,174,255,.14);
    border-radius: 999px;
    color: #9eb3c5;
    background: rgba(255,255,255,.023);
    font-size: 10px;
    line-height: 1.2;
  }

  .gsvhero__symptoms i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsv-cyan);
    box-shadow: 0 0 9px rgba(37,216,244,.58);
  }

  .gsvhero__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    max-width: 650px;
    margin-top: 24px;
  }

  .gsvhero__button {
    min-width: 0;
    min-height: 72px;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 22px;
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    border-radius: 16px;
    text-decoration: none !important;
    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease;
  }

  .gsvhero__button:hover {
    transform: translateY(-4px);
  }

  .gsvhero__button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvhero__button > span:not(.gs-global-wa-icon) {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
  }

  .gsvhero__button svg {
    width: 23px;
    height: 23px;
  }

  .gsvhero__button small,
  .gsvhero__button strong {
    display: block;
  }

  .gsvhero__button small {
    margin-bottom: 3px;
    font-size: 10px;
    line-height: 1.4;
  }

  .gsvhero__button strong {
    font-size: 12px;
    line-height: 1.4;
  }

  .gsvhero__button > i {
    justify-self: end;
    font-size: 18px;
    line-height: 1;
    font-style: normal;
  }

  .gsvhero__button--whatsapp {
    border: 1px solid rgba(72,217,154,.27);
    color: #fff !important;
    background: linear-gradient(115deg, #078b59, #13c982);
    box-shadow: 0 17px 36px rgba(16,191,124,.2);
  }

  .gsvhero__button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 24px 45px rgba(16,191,124,.3);
  }

  .gsvhero__button--whatsapp .gs-global-wa-icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    justify-self: center;
    margin: 0 !important;
  }

  .gsvhero__button--whatsapp .gs-global-wa-icon svg {
    width: 21px;
    height: 21px;
  }

  .gsvhero__button--whatsapp small {
    color: rgba(255,255,255,.78);
  }

  .gsvhero__button--secondary {
    border: 1px solid rgba(92,174,255,.18);
    color: #e5f1fb !important;
    background: rgba(255,255,255,.032);
  }

  .gsvhero__button--secondary:hover {
    border-color: rgba(37,216,244,.4);
    color: #fff !important;
    box-shadow: 0 21px 40px rgba(0,0,0,.2);
  }

  .gsvhero__button--secondary > span {
    color: var(--gsv-cyan);
    background: rgba(37,216,244,.075);
  }

  .gsvhero__button--secondary small {
    color: #7691a7;
  }

  .gsvhero__quick {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    max-width: 650px;
    margin-top: 15px;
  }

  .gsvhero__quick article {
    min-width: 0;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 12px;
    background: rgba(255,255,255,.018);
  }

  .gsvhero__quick article > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: var(--gsv-cyan);
    background: rgba(37,216,244,.06);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvhero__quick small,
  .gsvhero__quick strong {
    display: block;
  }

  .gsvhero__quick small {
    color: #668095;
    font-size: 8px;
    letter-spacing: .4px;
  }

  .gsvhero__quick strong {
    margin-top: 3px;
    color: #c5d6e3;
    font-size: 10px;
    line-height: 1.4;
  }

  .gsvhero__notice {
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    max-width: 650px;
    margin-top: 14px;
    padding: 12px;
    border: 1px solid rgba(255,200,92,.13);
    border-radius: 14px;
    background: rgba(255,200,92,.022);
  }

  .gsvhero__notice > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsv-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvhero__notice svg {
    width: 22px;
    height: 22px;
  }

  .gsvhero__notice p {
    margin: 0;
    color: #a09685;
    font-size: 10px;
    line-height: 1.6;
  }

  /* VISUAL TÉCNICO */

  .gsvhero__visual {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: 22px;
    border: 1px solid rgba(92,174,255,.22);
    border-radius: 28px;
    background:
      radial-gradient(circle at 50% 38%, rgba(37,216,244,.10), transparent 43%),
      linear-gradient(145deg, rgba(15,48,84,.77), rgba(4,17,35,.96));
    box-shadow:
      0 32px 75px rgba(0,0,0,.29),
      inset 0 1px 0 rgba(255,255,255,.055);
    backdrop-filter: blur(14px);
  }

  .gsvhero__visual-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvhero__visual > *:not(.gsvhero__visual-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvhero__visual-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(92,174,255,.11);
  }

  .gsvhero__visual-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .65px;
  }

  .gsvhero__visual-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsv-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvPulse 2.4s ease-in-out infinite;
  }

  .gsvhero__visual-top > strong {
    color: #668096;
    font-size: 9px;
    letter-spacing: .75px;
  }

  .gsvhero__route-map {
    position: relative;
    margin-top: 16px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 20px;
    background:
      linear-gradient(rgba(37,216,244,.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.035) 1px, transparent 1px),
      rgba(2,17,28,.72);
    background-size: 24px 24px;
  }

  .gsvhero__route-map::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 48px;
    left: 48px;
    height: 2px;
    background: linear-gradient(
      90deg,
      rgba(37,216,244,.08),
      rgba(37,216,244,.62),
      rgba(255,200,92,.62),
      rgba(72,217,154,.42)
    );
    box-shadow: 0 0 14px rgba(37,216,244,.22);
    transform: translateY(-50%);
  }

  .gsvhero__route-map::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 16%;
    right: 16px;
    left: 16px;
    height: 2px;
    opacity: .65;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(37,216,244,.85),
      transparent
    );
    box-shadow: 0 0 14px rgba(37,216,244,.5);
    animation: gsvScanRoute 4.2s ease-in-out infinite;
  }

  .gsvhero__route-cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
  }

  .gsvhero__route-card {
    min-width: 0;
    min-height: 164px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 13px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 15px;
    background: rgba(4,19,34,.94);
    box-shadow: 0 14px 28px rgba(0,0,0,.2);
  }

  .gsvhero__route-card:nth-child(2) {
    border-color: rgba(255,200,92,.14);
  }

  .gsvhero__route-card:nth-child(4) {
    border-color: rgba(72,217,154,.14);
  }

  .gsvhero__route-icon {
    width: 39px;
    height: 39px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsv-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvhero__route-card:nth-child(2) .gsvhero__route-icon {
    color: var(--gsv-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvhero__route-card:nth-child(4) .gsvhero__route-icon {
    color: var(--gsv-green);
    background: rgba(72,217,154,.07);
  }

  .gsvhero__route-icon svg {
    width: 20px;
    height: 20px;
  }

  .gsvhero__route-card small {
    display: block;
    margin-top: 11px;
    color: #718ba1;
    font-size: 8px;
    letter-spacing: .35px;
  }

  .gsvhero__route-card strong {
    display: block;
    margin-top: 4px;
    color: #dce9f2;
    font-size: 11px;
    line-height: 1.35;
  }

  .gsvhero__route-card p {
    margin: 6px 0 0;
    color: #8097aa;
    font-size: 9px;
    line-height: 1.55;
  }

  .gsvhero__route-label {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-top: 11px;
    padding: 9px 11px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 11px;
    color: #68849a;
    background: rgba(255,255,255,.014);
    font-size: 8px;
    letter-spacing: .35px;
  }

  .gsvhero__status {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin-top: 10px;
  }

  .gsvhero__status article {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 10px;
    background: rgba(255,255,255,.017);
  }

  .gsvhero__status span,
  .gsvhero__status strong {
    display: block;
  }

  .gsvhero__status span {
    color: #6d9e88;
    font-size: 7px;
  }

  .gsvhero__status span i {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin-right: 4px;
    border-radius: 50%;
    background: var(--gsv-green);
    box-shadow: 0 0 7px rgba(72,217,154,.45);
  }

  .gsvhero__status strong {
    margin-top: 4px;
    color: #9eb1bf;
    font-size: 8px;
    line-height: 1.4;
  }

  .gsvhero__visual-warning {
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    margin-top: 10px;
    padding: 12px;
    border: 1px solid rgba(255,200,92,.13);
    border-radius: 13px;
    background: rgba(255,200,92,.022);
  }

  .gsvhero__visual-warning > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsv-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvhero__visual-warning svg {
    width: 22px;
    height: 22px;
  }

  .gsvhero__visual-warning small,
  .gsvhero__visual-warning strong {
    display: block;
  }

  .gsvhero__visual-warning small {
    color: #a69776;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .5px;
  }

  .gsvhero__visual-warning strong {
    margin-top: 3px;
    color: #e6dcc8;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsvhero__visual-warning p {
    margin: 5px 0 0;
    color: #958d7e;
    font-size: 9px;
    line-height: 1.55;
  }

  .gsvhero__bottom {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-top: clamp(31px, 4vw, 46px);
  }

  .gsvhero__bottom article {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 15px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 16px;
    background: rgba(255,255,255,.021);
  }

  .gsvhero__bottom article > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsv-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvhero__bottom article:last-child > span {
    color: var(--gsv-green);
    background: rgba(72,217,154,.065);
  }

  .gsvhero__bottom svg {
    width: 24px;
    height: 24px;
  }

  .gsvhero__bottom small,
  .gsvhero__bottom strong {
    display: block;
  }

  .gsvhero__bottom small {
    color: #70899e;
    font-size: 9px;
  }

  .gsvhero__bottom strong {
    margin-top: 3px;
    color: #d3e1ec;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsvhero__disclaimer {
    margin: 18px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  @keyframes gsvPulse {
    0%, 100% {
      opacity: .45;
      transform: scale(.86);
    }
    50% {
      opacity: 1;
      transform: scale(1.13);
    }
  }

  @keyframes gsvScanRoute {
    0%, 100% {
      top: 16%;
      opacity: .2;
    }
    50% {
      top: 82%;
      opacity: .85;
    }
  }

  @media (max-width: 1120px) {
    .gsvhero__layout {
      grid-template-columns: 1fr;
    }

    .gsvhero__content {
      max-width: 850px;
    }

    .gsvhero__visual {
      max-width: 920px;
    }

    .gsvhero__bottom {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 760px) {
    #problemas-video-inicio {
      padding: 66px 17px 34px;
    }

    .gsvhero__actions,
    .gsvhero__quick {
      grid-template-columns: 1fr;
    }

    .gsvhero__visual {
      padding: 18px 16px;
      border-radius: 24px;
      backdrop-filter: none;
    }

    .gsvhero__route-cards {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvhero__route-map::before {
      display: none;
    }
  }

  @media (max-width: 520px) {
    .gsvhero h1 {
      font-size: clamp(40px, 11.8vw, 54px);
    }

    .gsvhero__lead {
      font-size: 14px;
    }

    .gsvhero__symptoms span {
      font-size: 9px;
    }

    .gsvhero__notice,
    .gsvhero__visual-warning {
      grid-template-columns: 1fr;
    }

    .gsvhero__visual-top {
      align-items: flex-start;
    }

    .gsvhero__visual-top > strong {
      display: none;
    }

    .gsvhero__route-cards,
    .gsvhero__status,
    .gsvhero__bottom {
      grid-template-columns: 1fr;
    }

    .gsvhero__route-card {
      min-height: 0;
    }

    .gsvhero__route-label {
      flex-direction: column;
    }

    .gsvhero__button {
      grid-template-columns: 40px minmax(0, 1fr) 20px;
      gap: 10px;
      padding: 11px 12px;
    }

    .gsvhero__button--whatsapp .gs-global-wa-icon {
      width: 36px;
      height: 36px;
    }
  }

  @media (max-width: 390px) {
    #problemas-video-inicio {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvhero__visual {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvhero__button {
      grid-template-columns: 38px minmax(0, 1fr) 18px;
      gap: 8px;
      padding: 10px;
    }

    .gsvhero__button small {
      font-size: 9px;
    }

    .gsvhero__button strong {
      font-size: 11px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #problemas-video-inicio,
    #problemas-video-inicio *,
    #problemas-video-inicio *::before,
    #problemas-video-inicio *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* ===== SINTOMAS ===== */
.gsvsym {
    --gsvs-cyan: #25d8f4;
    --gsvs-blue: #297cff;
    --gsvs-green: #48d99a;
    --gsvs-yellow: #ffc85c;
    --gsvs-red: #ff6b76;
    --gsvs-white: #ffffff;
    --gsvs-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(78px, 8vw, 120px) 24px;
    color: var(--gsvs-white);
    background:
      radial-gradient(circle at 7% 14%, rgba(37,216,244,.1), transparent 31%),
      radial-gradient(circle at 94% 83%, rgba(41,124,255,.16), transparent 35%),
      linear-gradient(118deg, #03101f 0%, #061a32 52%, #0b2850 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

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

  .gsvsym svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvsym__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.22) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvsym__glow {
    position: absolute;
    z-index: -2;
    width: 470px;
    height: 470px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvsym__glow--cyan {
    top: 4%;
    left: -220px;
    opacity: .1;
    background: var(--gsvs-cyan);
  }

  .gsvsym__glow--blue {
    right: -220px;
    bottom: 6%;
    opacity: .14;
    background: var(--gsvs-blue);
  }

  .gsvsym__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* HEADER */

  .gsvsym__header {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
    gap: clamp(38px, 6vw, 80px);
    align-items: end;
    margin-bottom: clamp(42px, 5vw, 65px);
  }

  .gsvsym__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.65px;
    text-transform: uppercase;
  }

  .gsvsym__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvs-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvsPulse 2.4s ease-in-out infinite;
  }

  .gsvsym__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvsym__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(
      90deg,
      #74ddff,
      var(--gsvs-cyan) 48%,
      #6593ff
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvsym__header-info > p {
    margin: 0;
    color: var(--gsvs-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvsym__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvsym__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvsym__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvsym__header-note small,
  .gsvsym__header-note strong {
    display: block;
  }

  .gsvsym__header-note small {
    margin-bottom: 3px;
    color: #7292a8;
    font-size: 10px;
  }

  .gsvsym__header-note strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* MATRIX */

  .gsvsym__matrix {
    display: grid;
    grid-template-columns: minmax(330px, .68fr) minmax(0, 1.32fr);
    gap: clamp(25px, 4vw, 44px);
    align-items: start;
  }

  /* MONITOR */

  .gsvsym__monitor {
    position: sticky;
    top: 28px;
    overflow: hidden;
    padding: 23px;
    border: 1px solid rgba(92,174,255,.2);
    border-radius: 27px;
    background:
      radial-gradient(circle at 50% 42%, rgba(37,216,244,.12), transparent 43%),
      linear-gradient(145deg, rgba(15,48,84,.73), rgba(4,17,35,.95));
    box-shadow:
      0 29px 68px rgba(0,0,0,.26),
      inset 0 1px 0 rgba(255,255,255,.05);
    backdrop-filter: blur(14px);
  }

  .gsvsym__monitor-grid {
    position: absolute;
    inset: 0;
    opacity: .4;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvsym__monitor > *:not(.gsvsym__monitor-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvsym__monitor-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .gsvsym__monitor-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvsym__monitor-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvs-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvsPulse 2.4s ease-in-out infinite;
  }

  .gsvsym__monitor-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: 1px;
  }

  .gsvsym__monitor-copy {
    margin-top: 22px;
  }

  .gsvsym__monitor-copy > small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvsym__monitor-copy h3 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(29px, 3vw, 39px);
    line-height: 1.12;
    letter-spacing: -1.1px;
  }

  .gsvsym__monitor-copy h3 span {
    display: block;
    color: #79daf8;
  }

  .gsvsym__monitor-copy p {
    margin: 13px 0 0;
    color: #93a9bc;
    font-size: 12px;
    line-height: 1.7;
  }

  /* VISUAL DE SEÑAL */

  .gsvsym__signal-panel {
    margin-top: 16px;
    padding: 14px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 17px;
    background:
      linear-gradient(rgba(37,216,244,.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.035) 1px, transparent 1px),
      rgba(2,17,28,.66);
    background-size: 22px 22px;
  }

  .gsvsym__signal-screen {
    position: relative;
    overflow: hidden;
    min-height: 178px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 22px 18px;
    border: 2px solid rgba(146,202,232,.32);
    border-radius: 15px;
    background:
      radial-gradient(circle at 50% 42%, rgba(37,216,244,.11), transparent 42%),
      linear-gradient(145deg, #061d34, #020b17);
    box-shadow:
      0 18px 34px rgba(0,0,0,.25),
      0 0 26px rgba(37,216,244,.07);
  }

  .gsvsym__signal-screen-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    background-image:
      linear-gradient(rgba(37,216,244,.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.045) 1px, transparent 1px);
    background-size: 16px 16px;
  }

  .gsvsym__signal-scan {
    position: absolute;
    z-index: 2;
    top: 12%;
    right: 7px;
    left: 7px;
    height: 2px;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(37,216,244,.82),
      transparent
    );
    box-shadow: 0 0 15px rgba(37,216,244,.55);
    animation: gsvsScan 4s ease-in-out infinite;
  }

  .gsvsym__signal-screen > *:not(.gsvsym__signal-screen-grid):not(.gsvsym__signal-scan) {
    position: relative;
    z-index: 3;
  }

  .gsvsym__signal-icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(37,216,244,.24);
    border-radius: 15px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvsym__signal-icon svg {
    width: 25px;
    height: 25px;
  }

  .gsvsym__signal-screen > strong {
    margin-top: 10px;
    color: #dcecf7;
    font-size: 12px;
    letter-spacing: 1.2px;
  }

  .gsvsym__signal-screen > small {
    margin-top: 4px;
    color: #6b8ba1;
    font-size: 8px;
    letter-spacing: .55px;
  }

  .gsvsym__signal-route {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    gap: 7px;
    align-items: center;
    margin-top: 11px;
  }

  .gsvsym__signal-route article {
    min-width: 0;
    display: grid;
    grid-template-columns: 31px minmax(0, 1fr);
    gap: 7px;
    align-items: center;
    padding: 9px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 11px;
    background: rgba(255,255,255,.018);
  }

  .gsvsym__signal-route article > span {
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.07);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvsym__signal-route small,
  .gsvsym__signal-route strong {
    display: block;
  }

  .gsvsym__signal-route small {
    color: #71899f;
    font-size: 7px;
  }

  .gsvsym__signal-route strong {
    margin-top: 2px;
    color: #e5f1fd;
    font-size: 8px;
    line-height: 1.35;
  }

  .gsvsym__signal-route > i {
    color: #52768d;
    font-size: 10px;
    font-style: normal;
  }

  /* READINGS */

  .gsvsym__readings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin-top: 6px;
  }

  .gsvsym__readings article {
    min-width: 0;
    padding: 9px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 11px;
    background: rgba(255,255,255,.018);
  }

  .gsvsym__readings article > span {
    display: block;
    color: var(--gsvs-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvsym__readings small,
  .gsvsym__readings strong {
    display: block;
  }

  .gsvsym__readings small {
    margin-top: 4px;
    color: #6d869a;
    font-size: 9px;
  }

  .gsvsym__readings strong {
    margin-top: 3px;
    color: #cbdbe7;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvsym__monitor-note {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 10px;
    padding: 11px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 12px;
    background: rgba(255,200,92,.022);
  }

  .gsvsym__monitor-note > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvs-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvsym__monitor-note svg {
    width: 21px;
    height: 21px;
  }

  .gsvsym__monitor-note p {
    margin: 0;
    color: #958d7f;
    font-size: 10px;
    line-height: 1.55;
  }

  /* GROUP */

  .gsvsym__group + .gsvsym__group {
    margin-top: 24px;
  }

  .gsvsym__group-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    margin-bottom: 11px;
    padding: 14px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.019);
  }

  .gsvsym__group-head > div {
    min-width: 0;
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
  }

  .gsvsym__group-head > div > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.065);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvsym__group-head small {
    display: block;
    color: #6e899f;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .65px;
  }

  .gsvsym__group-head h3 {
    margin: 3px 0 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
  }

  .gsvsym__group-head > strong {
    flex: 0 0 auto;
    color: #6f899e;
    font-size: 10px;
    font-weight: 650;
  }

  /* CARDS */

  .gsvsym__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .gsvsym__card {
    position: relative;
    min-width: 0;
    padding: 17px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 18px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
    transition:
      transform 220ms ease,
      border-color 220ms ease;
  }

  .gsvsym__card:hover {
    transform: translateY(-4px);
    border-color: rgba(37,216,244,.3);
  }

  .gsvsym__card-number {
    position: absolute;
    top: 12px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 22px;
    font-weight: 850;
  }

  .gsvsym__card-icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvsym__card-icon--yellow {
    color: var(--gsvs-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvsym__card-icon svg {
    width: 25px;
    height: 25px;
  }

  .gsvsym__card small {
    display: block;
    margin-top: 13px;
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvsym__card h4 {
    margin: 5px 0 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
  }

  .gsvsym__card p {
    margin: 7px 0 0;
    color: #879daf;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvsym__card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 11px;
  }

  .gsvsym__card-tags span {
    padding: 6px 8px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 999px;
    color: #7894aa;
    background: rgba(255,255,255,.02);
    font-size: 8px;
    line-height: 1;
  }

  /* CAUSES */

  .gsvsym__causes {
    margin-top: clamp(55px, 6vw, 80px);
  }

  .gsvsym__causes-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .68fr);
    gap: 35px;
    align-items: end;
    margin-bottom: 24px;
  }

  .gsvsym__causes-head > div > small {
    display: block;
    margin-bottom: 7px;
    color: #71d8f5;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .8px;
    text-transform: uppercase;
  }

  .gsvsym__causes-head h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(29px, 3.5vw, 44px);
    line-height: 1.1;
    font-weight: 790;
    letter-spacing: -1.3px;
  }

  .gsvsym__causes-head > p {
    margin: 0;
    color: #91a6b8;
    font-size: 13px;
    line-height: 1.7;
  }

  .gsvsym__cause-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
  }

  .gsvsym__cause {
    position: relative;
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 19px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
  }

  .gsvsym__cause-number {
    position: absolute;
    top: 12px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 22px;
    font-weight: 850;
  }

  .gsvsym__cause-title {
    display: grid;
    grid-template-columns: 49px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
  }

  .gsvsym__cause-title > span {
    width: 49px;
    height: 49px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvs-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvsym__cause-title svg {
    width: 24px;
    height: 24px;
  }

  .gsvsym__cause-title small,
  .gsvsym__cause-title strong {
    display: block;
  }

  .gsvsym__cause-title small {
    color: #718ba1;
    font-size: 8px;
  }

  .gsvsym__cause-title strong {
    margin-top: 3px;
    color: #fff;
    font-size: 13px;
  }

  .gsvsym__cause-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    gap: 6px;
    align-items: center;
    margin-top: 15px;
  }

  .gsvsym__cause-flow span {
    min-width: 0;
    padding: 8px 7px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 9px;
    color: #90a5b6;
    background: rgba(255,255,255,.019);
    font-size: 8px;
    line-height: 1.35;
    text-align: center;
  }

  .gsvsym__cause-flow i {
    color: #4f7187;
    font-size: 9px;
    font-style: normal;
  }

  .gsvsym__cause > p {
    margin: 13px 0 0;
    color: #879daf;
    font-size: 10px;
    line-height: 1.65;
  }

  /* HISTORY */

  .gsvsym__history {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .85fr);
    gap: 20px;
    align-items: center;
    margin-top: 28px;
    padding: 20px;
    border: 1px solid rgba(255,200,92,.16);
    border-radius: 20px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,200,92,.05), transparent 27%),
      rgba(1,12,26,.38);
  }

  .gsvsym__history-copy {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .gsvsym__history-copy > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvs-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvsym__history-copy svg {
    width: 26px;
    height: 26px;
  }

  .gsvsym__history-copy small,
  .gsvsym__history-copy strong {
    display: block;
  }

  .gsvsym__history-copy small {
    margin-bottom: 4px;
    color: #ad9d7b;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .6px;
  }

  .gsvsym__history-copy strong {
    color: #f1e7d2;
    font-size: 12px;
    line-height: 1.5;
  }

  .gsvsym__history-copy p {
    margin: 6px 0 0;
    color: #9b9383;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvsym__history-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .gsvsym__history-tags span {
    padding: 8px 10px;
    border: 1px solid rgba(255,200,92,.1);
    border-radius: 999px;
    color: #a99b80;
    background: rgba(255,200,92,.025);
    font-size: 9px;
    line-height: 1;
  }

  /* CTA */

  .gsvsym__cta {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: center;
    margin-top: 16px;
    padding: 19px;
    border: 1px solid rgba(72,217,154,.15);
    border-radius: 19px;
    background:
      radial-gradient(circle at 0 50%, rgba(72,217,154,.05), transparent 25%),
      rgba(1,12,26,.37);
  }

  .gsvsym__cta-copy {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvsym__cta-copy > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvs-green);
    background: rgba(72,217,154,.07);
  }

  .gsvsym__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvsym__cta-copy small,
  .gsvsym__cta-copy strong {
    display: block;
  }

  .gsvsym__cta-copy small {
    margin-bottom: 3px;
    color: #72a48b;
    font-size: 9px;
  }

  .gsvsym__cta-copy strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvsym__cta-copy p {
    margin: 5px 0 0;
    color: #8097ab;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvsym__cta-actions {
    flex: 0 0 auto;
    display: flex;
    gap: 9px;
  }

  .gsvsym__cta-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease;
  }

  .gsvsym__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvsym__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvsym__cta-button i {
    font-size: 17px;
    font-style: normal;
  }

  .gsvsym__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvsym__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvsym__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0;
    flex: 0 0 auto;
  }

  .gsvsym__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvsym__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  /* ANIMACIONES */

  @keyframes gsvsPulse {
    0%, 100% {
      opacity: .45;
      transform: scale(.86);
    }

    50% {
      opacity: 1;
      transform: scale(1.13);
    }
  }

  @keyframes gsvsOrbit {
    0%, 100% {
      opacity: .25;
      transform: translate(-50%, -50%) scale(.96);
    }

    50% {
      opacity: .65;
      transform: translate(-50%, -50%) scale(1.04);
    }
  }

  @keyframes gsvsDisplay {
    0%, 100% {
      transform: translate(-50%, -50%) rotate(-2deg) translateY(0);
    }

    50% {
      transform: translate(-50%, -50%) rotate(0) translateY(-7px);
    }
  }

  @keyframes gsvsScan {
    0%, 100% {
      top: 10%;
      opacity: .25;
    }

    50% {
      top: 82%;
      opacity: 1;
    }
  }

  @keyframes gsvsCard1 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(-6px) rotate(0);
    }
  }

  @keyframes gsvsCard2 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(6px) rotate(0);
    }
  }

  @keyframes gsvsCard3 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(-5px) rotate(0);
    }
  }

  /* TABLETA */

  @media (max-width: 1050px) {

    .gsvsym__matrix {
      grid-template-columns: 1fr;
    }

    .gsvsym__monitor {
      position: static;
    }

    .gsvsym__readings {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gsvsym__cause-grid {
      grid-template-columns: 1fr;
    }

    .gsvsym__history {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 850px) {

    .gsvsym__header,
    .gsvsym__causes-head {
      grid-template-columns: 1fr;
      gap: 22px;
    }

    .gsvsym__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvsym__cta-actions {
      width: 100%;
    }

    .gsvsym__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }

  }

  /* MÓVIL */

  @media (max-width: 700px) {

    .gsvsym {
      padding: 66px 17px 72px;
    }

    .gsvsym__monitor {
      display: block;
      padding: 19px 17px;
      border-radius: 23px;
      backdrop-filter: none;
    }

    .gsvsym__signal-route {
      grid-template-columns: 1fr;
    }

    .gsvsym__signal-route > i {
      display: none;
    }

    .gsvsym__readings {
      grid-template-columns: 1fr;
    }

    .gsvsym__cards {
      grid-template-columns: 1fr;
    }

    .gsvsym__cta-actions {
      flex-direction: column;
    }

  }

  @media (max-width: 480px) {

    .gsvsym__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvsym__monitor-top {
      align-items: flex-start;
    }

    .gsvsym__monitor-top > strong {
      display: none;
    }

    .gsvsym__signal-panel {
      padding: 12px;
    }

    .gsvsym__signal-screen {
      min-height: 165px;
    }

    .gsvsym__group-head {
      align-items: flex-start;
    }

    .gsvsym__group-head > strong {
      display: none;
    }

    .gsvsym__cause-flow {
      grid-template-columns: 1fr;
    }

    .gsvsym__cause-flow i {
      display: none;
    }

    .gsvsym__history-copy,
    .gsvsym__cta-copy {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 390px) {

    .gsvsym {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvsym__signal-screen > small {
      font-size: 7px;
      text-align: center;
    }

  }

  @media (prefers-reduced-motion: reduce) {

    #sintomas-video,
    #sintomas-video *,
    #sintomas-video *::before,
    #sintomas-video *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }

  }

/* ===== DIAGNOSTICO ===== */
.gsvdiag {
    --gsvd-cyan: #25d8f4;
    --gsvd-blue: #297cff;
    --gsvd-green: #48d99a;
    --gsvd-yellow: #ffc85c;
    --gsvd-red: #ff6b76;
    --gsvd-white: #ffffff;
    --gsvd-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(78px, 8vw, 120px) 24px;
    color: var(--gsvd-white);
    background:
      radial-gradient(circle at 7% 12%, rgba(37,216,244,.1), transparent 31%),
      radial-gradient(circle at 94% 86%, rgba(41,124,255,.16), transparent 35%),
      linear-gradient(118deg, #020914 0%, #05162c 52%, #0a2247 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

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

  .gsvdiag svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvdiag ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .gsvdiag__background-grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.22) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvdiag__glow {
    position: absolute;
    z-index: -2;
    width: 470px;
    height: 470px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvdiag__glow--cyan {
    top: 4%;
    left: -220px;
    opacity: .1;
    background: var(--gsvd-cyan);
  }

  .gsvdiag__glow--blue {
    right: -220px;
    bottom: 6%;
    opacity: .14;
    background: var(--gsvd-blue);
  }

  .gsvdiag__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* HEADER */

  .gsvdiag__header {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
    gap: clamp(38px, 6vw, 80px);
    align-items: end;
    margin-bottom: clamp(42px, 5vw, 65px);
  }

  .gsvdiag__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.65px;
    text-transform: uppercase;
  }

  .gsvdiag__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvd-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvdPulse 2.4s ease-in-out infinite;
  }

  .gsvdiag__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvdiag__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(
      90deg,
      #74ddff,
      var(--gsvd-cyan) 48%,
      #6593ff
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvdiag__header-info > p {
    margin: 0;
    color: var(--gsvd-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvdiag__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvdiag__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvdiag__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvdiag__header-note small,
  .gsvdiag__header-note strong {
    display: block;
  }

  .gsvdiag__header-note small {
    margin-bottom: 3px;
    color: #7292a8;
    font-size: 10px;
  }

  .gsvdiag__header-note strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* LABORATORY */

  .gsvdiag__laboratory {
    position: relative;
    overflow: hidden;
    padding: 25px;
    border: 1px solid rgba(92,174,255,.21);
    border-radius: 28px;
    background:
      radial-gradient(circle at 20% 38%, rgba(37,216,244,.12), transparent 38%),
      linear-gradient(145deg, rgba(15,48,84,.75), rgba(4,17,35,.95));
    box-shadow:
      0 30px 70px rgba(0,0,0,.27),
      inset 0 1px 0 rgba(255,255,255,.055);
    backdrop-filter: blur(14px);
  }

  .gsvdiag__laboratory-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvdiag__laboratory > *:not(.gsvdiag__laboratory-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvdiag__laboratory-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(92,174,255,.12);
  }

  .gsvdiag__laboratory-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .75px;
  }

  .gsvdiag__laboratory-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvd-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvdPulse 2.4s ease-in-out infinite;
  }

  .gsvdiag__laboratory-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: 1px;
  }

  .gsvdiag__laboratory-layout {
    display: grid;
    grid-template-columns: minmax(335px, .75fr) minmax(0, 1.25fr);
    gap: 23px;
    margin-top: 22px;
  }

  /* CONSOLE */

  .gsvdiag__console {
    min-width: 0;
    overflow: hidden;
    padding: 20px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 21px;
    background:
      radial-gradient(circle at 50% 42%, rgba(37,216,244,.1), transparent 42%),
      rgba(0,11,24,.36);
  }

  .gsvdiag__console-head {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: flex-start;
  }

  .gsvdiag__console-head small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
    text-transform: uppercase;
  }

  .gsvdiag__console-head h3 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.25;
  }

  .gsvdiag__console-head > span {
    padding: 6px 8px;
    border: 1px solid rgba(72,217,154,.16);
    border-radius: 999px;
    color: var(--gsvd-green);
    background: rgba(72,217,154,.04);
    font-size: 8px;
    font-weight: 800;
  }

  /* STAGE */

  .gsvdiag__stage {
    margin-top: 12px;
    padding: 16px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 18px;
    background:
      linear-gradient(rgba(37,216,244,.03) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.03) 1px, transparent 1px),
      rgba(2,17,28,.56);
    background-size: 24px 24px, 24px 24px, auto;
  }

  .gsvdiag__stage svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvdiag__stage-headline {
    margin-bottom: 14px;
    padding: 12px 14px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 14px;
    background: rgba(255,255,255,.018);
  }

  .gsvdiag__stage-headline strong,
  .gsvdiag__stage-headline small {
    display: block;
  }

  .gsvdiag__stage-headline strong {
    color: #f1f8fd;
    font-size: 15px;
    font-weight: 800;
  }

  .gsvdiag__stage-headline small {
    margin-top: 5px;
    color: #90a9bd;
    font-size: 11px;
    line-height: 1.6;
  }

  .gsvdiag__stage-flow {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .gsvdiag__stage-step {
    min-width: 0;
    padding: 12px;
    border: 1px solid rgba(92,174,255,.14);
    border-radius: 14px;
    background: rgba(4,18,37,.92);
    box-shadow: 0 12px 24px rgba(0,0,0,.18);
    transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
  }

  .gsvdiag__stage-step:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.28);
    box-shadow: 0 16px 30px rgba(0,0,0,.24);
  }

  .gsvdiag__stage-step-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  .gsvdiag__stage-step > small,
  .gsvdiag__stage-step > strong {
    display: block;
  }

  .gsvdiag__stage-step-top > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 11px;
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.09);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvdiag__stage-illus {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 14px;
    color: rgba(37,216,244,.82);
    background: rgba(37,216,244,.05);
    box-shadow: inset 0 0 0 1px rgba(37,216,244,.12);
    animation: gsvDiagFloat 3.6s ease-in-out infinite;
  }

  .gsvdiag__stage-illus svg {
    width: 30px;
    height: 30px;
  }

  .gsvdiag__stage-step:nth-child(2) .gsvdiag__stage-illus {
    animation-delay: .2s;
  }

  .gsvdiag__stage-step:nth-child(3) .gsvdiag__stage-illus {
    animation-delay: .4s;
  }

  .gsvdiag__stage-step:nth-child(4) .gsvdiag__stage-illus {
    animation-delay: .6s;
  }

  .gsvdiag__stage-step > small {
    margin-top: 10px;
    color: #6f8ca2;
    font-size: 9px;
  }

  .gsvdiag__stage-step > strong {
    margin-top: 4px;
    color: #edf5fb;
    font-size: 14px;
    line-height: 1.38;
  }

  .gsvdiag__stage-board {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.14);
    border-radius: 18px;
    background:
      radial-gradient(circle at 50% 50%, rgba(37,216,244,.08), transparent 52%),
      linear-gradient(145deg, #061e35, #04111d 70%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
  }

  .gsvdiag__stage-board-grid {
    position: absolute;
    inset: 0;
    opacity: .34;
    background-image:
      linear-gradient(rgba(37,216,244,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.05) 1px, transparent 1px);
    background-size: 22px 22px;
  }

  .gsvdiag__stage-board-scan {
    position: absolute;
    z-index: 1;
    left: 10px;
    right: 10px;
    top: 14%;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.75), transparent);
    box-shadow: 0 0 14px rgba(37,216,244,.4);
    animation: gsvDiagScan 4.8s ease-in-out infinite;
  }

  .gsvdiag__stage-ghost {
    position: absolute;
    z-index: 1;
    color: rgba(37,216,244,.10);
    pointer-events: none;
  }

  .gsvdiag__stage-ghost svg {
    width: 100%;
    height: 100%;
  }

  .gsvdiag__stage-ghost--left {
    left: 16px;
    top: 26%;
    width: 118px;
    height: 76px;
  }

  .gsvdiag__stage-ghost--right {
    right: 18px;
    bottom: 18%;
    width: 116px;
    height: 76px;
  }

  .gsvdiag__stage-core,
  .gsvdiag__stage-module,
  .gsvdiag__stage-link {
    position: relative;
    z-index: 2;
  }

  .gsvdiag__stage-core {
    grid-column: 1 / -1;
    padding: 18px 16px;
    border: 1px solid rgba(37,216,244,.18);
    border-radius: 18px;
    text-align: center;
    background: rgba(2,17,28,.9);
    box-shadow: 0 16px 30px rgba(0,0,0,.2);
  }

  .gsvdiag__stage-core > span {
    width: 46px;
    height: 46px;
    display: inline-grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.09);
    font-size: 13px;
    font-weight: 850;
    box-shadow: 0 0 24px rgba(37,216,244,.14);
    animation: gsvDiagPulse 2.8s ease-in-out infinite;
  }

  .gsvdiag__stage-core strong,
  .gsvdiag__stage-core small {
    display: block;
  }

  .gsvdiag__stage-core strong {
    margin-top: 12px;
    color: #f2f8fd;
    font-size: 18px;
  }

  .gsvdiag__stage-core small {
    margin-top: 5px;
    color: #87a7bc;
    font-size: 11px;
    line-height: 1.55;
  }

  .gsvdiag__stage-module {
    padding: 16px 16px 14px;
    border: 1px solid rgba(92,174,255,.15);
    border-radius: 16px;
    background: rgba(6,23,42,.92);
    box-shadow: 0 12px 24px rgba(0,0,0,.16);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvdiag__stage-module:hover {
    transform: translateY(-2px);
    border-color: rgba(37,216,244,.22);
  }

  .gsvdiag__stage-module-top {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .gsvdiag__stage-module-illus {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 12px;
    color: rgba(37,216,244,.82);
    background: rgba(37,216,244,.06);
    box-shadow: inset 0 0 0 1px rgba(37,216,244,.12);
    animation: gsvDiagFloat 3.8s ease-in-out infinite;
  }

  .gsvdiag__stage-module-illus svg {
    width: 24px;
    height: 24px;
  }

  .gsvdiag__stage-module--power .gsvdiag__stage-module-illus {
    color: rgba(255,200,92,.82);
    background: rgba(255,200,92,.06);
    box-shadow: inset 0 0 0 1px rgba(255,200,92,.12);
  }

  .gsvdiag__stage-module small,
  .gsvdiag__stage-module strong {
    display: block;
  }

  .gsvdiag__stage-module small {
    color: #75a7bf;
    font-size: 10px;
  }

  .gsvdiag__stage-module strong {
    margin-top: 10px;
    color: #eef6fd;
    font-size: 15px;
    line-height: 1.38;
  }

  .gsvdiag__stage-link {
    position: absolute;
    height: 2px;
    background: linear-gradient(90deg, rgba(37,216,244,.08), rgba(37,216,244,.55), rgba(37,216,244,.08));
    box-shadow: 0 0 12px rgba(37,216,244,.25);
    transform-origin: left center;
  }

  .gsvdiag__stage-link--tl {
    top: 106px;
    left: 40%;
    width: 70px;
    transform: rotate(25deg);
  }

  .gsvdiag__stage-link--tr {
    top: 106px;
    right: 40%;
    width: 70px;
    transform: rotate(155deg);
  }

  .gsvdiag__stage-link--bl {
    bottom: 106px;
    left: 40%;
    width: 70px;
    transform: rotate(-25deg);
  }

  .gsvdiag__stage-link--br {
    bottom: 106px;
    right: 40%;
    width: 70px;
    transform: rotate(25deg);
  }

  .gsvdiag__stage-readings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
  }

  .gsvdiag__stage-readings article {
    min-width: 0;
    padding: 12px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 13px;
    background: rgba(255,255,255,.018);
  }

  .gsvdiag__stage-readings span,
  .gsvdiag__stage-readings small,
  .gsvdiag__stage-readings strong {
    display: block;
  }

  .gsvdiag__stage-readings span {
    color: var(--gsvd-cyan);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvdiag__stage-readings small {
    margin-top: 6px;
    color: #71889b;
    font-size: 10px;
  }

  .gsvdiag__stage-readings strong {
    margin-top: 4px;
    color: #d2e0eb;
    font-size: 12px;
    line-height: 1.5;
  }

  .gsvdiag__console-note {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 10px;
    padding: 12px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 12px;
    background: rgba(255,200,92,.022);
  }

  .gsvdiag__console-note > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvd-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvdiag__console-note svg {
    width: 21px;
    height: 21px;
  }

  .gsvdiag__console-note p {
    margin: 0;
    color: #a49574;
    font-size: 11px;
    line-height: 1.65;
  }

  @keyframes gsvDiagFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
  }

  @keyframes gsvDiagPulse {
    0%, 100% { box-shadow: 0 0 18px rgba(37,216,244,.10); }
    50% { box-shadow: 0 0 30px rgba(37,216,244,.24); }
  }

  @keyframes gsvDiagScan {
    0%, 100% { top: 14%; opacity: .15; }
    50% { top: 84%; opacity: .8; }
  }

  /* STEPS */
  /* STEPS */
  /* STEPS */

  .gsvdiag__steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
  }

  .gsvdiag__step {
    position: relative;
    min-width: 0;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 13px;
    padding: 16px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 18px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
    transition:
      transform 220ms ease,
      border-color 220ms ease;
  }

  .gsvdiag__step:hover {
    transform: translateY(-4px);
    border-color: rgba(37,216,244,.3);
  }

  .gsvdiag__step-number {
    position: absolute;
    top: 11px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 22px;
    font-weight: 850;
  }

  .gsvdiag__step-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvd-blue);
    background: rgba(41,124,255,.07);
  }

  .gsvdiag__step-icon--cyan {
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvdiag__step-icon--blue {
    color: #76a3ff;
    background: rgba(80,128,255,.07);
  }

  .gsvdiag__step-icon--yellow {
    color: var(--gsvd-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvdiag__step-icon--green {
    color: var(--gsvd-green);
    background: rgba(72,217,154,.065);
  }

  .gsvdiag__step-icon svg {
    width: 25px;
    height: 25px;
  }

  .gsvdiag__step > div {
    min-width: 0;
    padding-right: 9px;
  }

  .gsvdiag__step small {
    display: block;
    color: #708ba2;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .65px;
  }

  .gsvdiag__step h3 {
    margin: 5px 0 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.35;
  }

  .gsvdiag__step p {
    margin: 7px 0 0;
    color: #8da3b6;
    font-size: 11px;
    line-height: 1.62;
  }

  .gsvdiag__step-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
  }

  .gsvdiag__step-tags span {
    padding: 5px 7px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 999px;
    color: #7894aa;
    background: rgba(255,255,255,.02);
    font-size: 8px;
    line-height: 1;
  }

  /* WORKFLOW */

  .gsvdiag__workflow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr auto 1fr;
    gap: 8px;
    align-items: center;
    margin-top: 18px;
    padding-top: 17px;
    border-top: 1px solid rgba(92,174,255,.12);
  }

  .gsvdiag__workflow article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 11px;
    background: rgba(255,255,255,.018);
  }

  .gsvdiag__workflow span,
  .gsvdiag__workflow small,
  .gsvdiag__workflow strong {
    display: block;
  }

  .gsvdiag__workflow span {
    color: var(--gsvd-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvdiag__workflow small {
    margin-top: 3px;
    color: #627c91;
    font-size: 7px;
  }

  .gsvdiag__workflow strong {
    margin-top: 3px;
    color: #b9cad8;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvdiag__workflow > i {
    color: #4f7187;
    font-size: 10px;
    font-style: normal;
  }

  /* SECTION HEAD */

  .gsvdiag__levels {
    margin-top: clamp(55px, 6vw, 80px);
  }

  .gsvdiag__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .68fr);
    gap: 35px;
    align-items: end;
    margin-bottom: 24px;
  }

  .gsvdiag__section-head > div > small {
    display: block;
    margin-bottom: 7px;
    color: #71d8f5;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .8px;
    text-transform: uppercase;
  }

  .gsvdiag__section-head h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(29px, 3.5vw, 44px);
    line-height: 1.1;
    font-weight: 790;
    letter-spacing: -1.3px;
  }

  .gsvdiag__section-head > p {
    margin: 0;
    color: #91a6b8;
    font-size: 13px;
    line-height: 1.7;
  }

  /* LEVELS */

  .gsvdiag__level-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
  }

  .gsvdiag__level {
    position: relative;
    min-width: 0;
    padding: 19px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 19px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
  }

  .gsvdiag__level-number {
    position: absolute;
    top: 12px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 22px;
    font-weight: 850;
  }

  .gsvdiag__level-head {
    display: grid;
    grid-template-columns: 51px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
  }

  .gsvdiag__level-head > span {
    width: 51px;
    height: 51px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvdiag__level-head svg {
    width: 25px;
    height: 25px;
  }

  .gsvdiag__level-head small,
  .gsvdiag__level-head h4 {
    display: block;
  }

  .gsvdiag__level-head small {
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvdiag__level-head h4 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 16px;
  }

  .gsvdiag__level > p {
    margin: 14px 0 0;
    color: #879daf;
    font-size: 11px;
    line-height: 1.65;
  }

  .gsvdiag__level ul {
    display: grid;
    gap: 8px;
    margin-top: 14px;
  }

  .gsvdiag__level li {
    display: grid;
    grid-template-columns: 7px minmax(0, 1fr);
    gap: 8px;
    color: #91a7b9;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvdiag__level li i {
    width: 6px;
    height: 6px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--gsvd-cyan);
    box-shadow: 0 0 7px rgba(37,216,244,.45);
  }

  /* IMPACT */

  .gsvdiag__impact {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(470px, 1.1fr);
    gap: 23px;
    align-items: center;
    margin-top: 28px;
    padding: 20px;
    border: 1px solid rgba(255,200,92,.16);
    border-radius: 20px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,200,92,.05), transparent 27%),
      rgba(1,12,26,.38);
  }

  .gsvdiag__impact-copy {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
  }

  .gsvdiag__impact-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvd-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvdiag__impact-icon svg {
    width: 27px;
    height: 27px;
  }

  .gsvdiag__impact-copy small {
    display: block;
    margin-bottom: 4px;
    color: #ad9d7b;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .6px;
  }

  .gsvdiag__impact-copy h3 {
    margin: 0;
    color: #f1e7d2;
    font-size: 15px;
    line-height: 1.45;
  }

  .gsvdiag__impact-copy p {
    margin: 6px 0 0;
    color: #9b9383;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvdiag__impact-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    gap: 7px;
    align-items: center;
  }

  .gsvdiag__impact-flow article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(255,200,92,.09);
    border-radius: 11px;
    background: rgba(255,200,92,.018);
  }

  .gsvdiag__impact-flow span,
  .gsvdiag__impact-flow small,
  .gsvdiag__impact-flow strong {
    display: block;
  }

  .gsvdiag__impact-flow span {
    color: var(--gsvd-yellow);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvdiag__impact-flow small {
    margin-top: 3px;
    color: #8f8269;
    font-size: 7px;
  }

  .gsvdiag__impact-flow strong {
    margin-top: 4px;
    color: #d5cab5;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvdiag__impact-flow > i {
    color: #806f55;
    font-size: 10px;
    font-style: normal;
  }

  /* WARNINGS */

  .gsvdiag__warnings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
  }

  .gsvdiag__warnings article {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 17px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 17px;
    background: rgba(255,200,92,.019);
  }

  .gsvdiag__warnings article > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvd-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvdiag__warnings svg {
    width: 24px;
    height: 24px;
  }

  .gsvdiag__warnings small,
  .gsvdiag__warnings strong {
    display: block;
  }

  .gsvdiag__warnings small {
    color: #a69574;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .55px;
  }

  .gsvdiag__warnings strong {
    margin-top: 3px;
    color: #e8deca;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvdiag__warnings p {
    margin: 6px 0 0;
    color: #958d7e;
    font-size: 10px;
    line-height: 1.6;
  }

  /* PRINCIPLE */

  .gsvdiag__principle {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(390px, .78fr);
    gap: 20px;
    align-items: center;
    margin-top: 16px;
    padding: 19px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 19px;
    background: rgba(1,12,26,.38);
  }

  .gsvdiag__principle-copy {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .gsvdiag__principle-copy > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvd-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvdiag__principle-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvdiag__principle-copy small,
  .gsvdiag__principle-copy strong {
    display: block;
  }

  .gsvdiag__principle-copy small {
    margin-bottom: 4px;
    color: #71899f;
    font-size: 9px;
  }

  .gsvdiag__principle-copy strong {
    color: #e4f1fd;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvdiag__principle-copy p {
    margin: 6px 0 0;
    color: #8299ad;
    font-size: 10px;
    line-height: 1.6;
  }

  .gsvdiag__principle-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .gsvdiag__principle-tags span {
    padding: 8px 10px;
    border: 1px solid rgba(37,216,244,.1);
    border-radius: 999px;
    color: #809bad;
    background: rgba(37,216,244,.024);
    font-size: 9px;
    line-height: 1;
  }

  /* CTA */

  .gsvdiag__cta {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: center;
    margin-top: 16px;
    padding: 19px;
    border: 1px solid rgba(72,217,154,.15);
    border-radius: 19px;
    background:
      radial-gradient(circle at 0 50%, rgba(72,217,154,.05), transparent 25%),
      rgba(1,12,26,.37);
  }

  .gsvdiag__cta-copy {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvdiag__cta-copy > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvd-green);
    background: rgba(72,217,154,.07);
  }

  .gsvdiag__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvdiag__cta-copy small,
  .gsvdiag__cta-copy strong {
    display: block;
  }

  .gsvdiag__cta-copy small {
    margin-bottom: 3px;
    color: #72a48b;
    font-size: 9px;
  }

  .gsvdiag__cta-copy strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvdiag__cta-copy p {
    margin: 5px 0 0;
    color: #8097ab;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvdiag__cta-actions {
    flex: 0 0 auto;
    display: flex;
    gap: 9px;
  }

  .gsvdiag__cta-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease;
  }

  .gsvdiag__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvdiag__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvdiag__cta-button i {
    font-size: 17px;
    font-style: normal;
  }

  .gsvdiag__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvdiag__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvdiag__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0;
    flex: 0 0 auto;
  }

  .gsvdiag__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvdiag__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvdiag__disclaimer {
    margin: 17px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  /* ANIMATIONS */

  @keyframes gsvdPulse {
    0%, 100% {
      opacity: .45;
      transform: scale(.86);
    }

    50% {
      opacity: 1;
      transform: scale(1.13);
    }
  }

  @keyframes gsvdOrbit {
    0%, 100% {
      opacity: .24;
      transform: translate(-50%, -50%) scale(.96);
    }

    50% {
      opacity: .67;
      transform: translate(-50%, -50%) scale(1.04);
    }
  }

  @keyframes gsvdBoard {
    0%, 100% {
      transform: translate(-50%, -50%) rotate(-3deg) translateY(0);
    }

    50% {
      transform: translate(-50%, -50%) rotate(-1deg) translateY(-8px);
    }
  }

  @keyframes gsvdScan {
    0%, 100% {
      top: 8%;
      opacity: .25;
    }

    50% {
      top: 88%;
      opacity: 1;
    }
  }

  @keyframes gsvdCard1 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(-6px) rotate(0);
    }
  }

  @keyframes gsvdCard2 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(6px) rotate(0);
    }
  }

  @keyframes gsvdCard3 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(-5px) rotate(0);
    }
  }

  @keyframes gsvdCard4 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(5px) rotate(0);
    }
  }

  /* TABLET */

  @media (max-width: 1080px) {

    .gsvdiag__laboratory-layout {
      grid-template-columns: 1fr;
    }

    .gsvdiag__console {
      display: grid;
      grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
      gap: 18px;
    }

    .gsvdiag__console-head,
    .gsvdiag__console-note {
      grid-column: 1 / -1;
    }

    .gsvdiag__stage {
      margin-top: 0;
    }

    .gsvdiag__stage-board {
      grid-template-columns: 1fr 1fr;
    }

    .gsvdiag__stage-link--tl,
    .gsvdiag__stage-link--tr,
    .gsvdiag__stage-link--bl,
    .gsvdiag__stage-link--br {
      width: 54px;
    }

    .gsvdiag__stage-readings {
      grid-template-columns: 1fr;
    }

    .gsvdiag__level-grid,
    .gsvdiag__warnings {
      grid-template-columns: 1fr;
    }

    .gsvdiag__impact,
    .gsvdiag__principle {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 850px) {

    .gsvdiag__header,
    .gsvdiag__section-head {
      grid-template-columns: 1fr;
      gap: 22px;
    }

    .gsvdiag__workflow {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gsvdiag__workflow > i {
      display: none;
    }

    .gsvdiag__impact-flow {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .gsvdiag__impact-flow > i {
      display: none;
    }

    .gsvdiag__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvdiag__cta-actions {
      width: 100%;
    }

    .gsvdiag__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }

  }

  /* MOBILE */

  @media (max-width: 700px) {

    .gsvdiag {
      padding: 66px 17px 72px;
    }

    .gsvdiag__laboratory {
      padding: 19px 17px;
      border-radius: 23px;
      backdrop-filter: none;
    }

    .gsvdiag__console {
      display: block;
    }

    .gsvdiag__stage {
      margin-top: 12px;
      padding: 14px;
    }

    .gsvdiag__stage-flow,
    .gsvdiag__stage-board,
    .gsvdiag__stage-readings {
      grid-template-columns: 1fr;
    }

    .gsvdiag__stage-ghost,
    .gsvdiag__stage-link {
      display: none;
    }

    .gsvdiag__steps {
      grid-template-columns: 1fr;
      margin-top: 16px;
    }

    .gsvdiag__cta-actions {
      flex-direction: column;
    }

  }

  @media (max-width: 480px) {

    .gsvdiag__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvdiag__laboratory-top {
      align-items: flex-start;
    }

    .gsvdiag__laboratory-top > strong {
      display: none;
    }

    .gsvdiag__console-head h3 {
      font-size: 21px;
    }

    .gsvdiag__console-head h3 {
      font-size: 21px;
    }

    .gsvdiag__stage-step-top {
      align-items: flex-start;
    }

    .gsvdiag__stage-step > strong,
    .gsvdiag__stage-module strong {
      font-size: 13px;
    }

    .gsvdiag__stage-core strong {
      font-size: 17px;
    }

    .gsvdiag__stage-headline strong {
      font-size: 14px;
    }

    .gsvdiag__stage-headline small {
      font-size: 10px;
    }

    .gsvdiag__workflow,
    .gsvdiag__impact-flow {
      grid-template-columns: 1fr;
    }

    .gsvdiag__step {
      grid-template-columns: 1fr;
    }

    .gsvdiag__impact-copy,
    .gsvdiag__warnings article,
    .gsvdiag__principle-copy,
    .gsvdiag__cta-copy {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 390px) {

    .gsvdiag {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvdiag__stage,
    .gsvdiag__laboratory {
      padding-right: 12px;
      padding-left: 12px;
    }

  }

  @media (prefers-reduced-motion: reduce) {

    #diagnostico-ruta-hdmi,
    #diagnostico-ruta-hdmi *,
    #diagnostico-ruta-hdmi *::before,
    #diagnostico-ruta-hdmi *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }

  }

/* ===== PUERTO ===== */
.gsvport {
    --gsvp-cyan: #25d8f4;
    --gsvp-blue: #297cff;
    --gsvp-green: #48d99a;
    --gsvp-yellow: #ffc85c;
    --gsvp-red: #ff6b76;
    --gsvp-white: #ffffff;
    --gsvp-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(78px, 8vw, 120px) 24px;
    color: var(--gsvp-white);
    background:
      radial-gradient(circle at 7% 13%, rgba(37,216,244,.1), transparent 31%),
      radial-gradient(circle at 94% 86%, rgba(41,124,255,.16), transparent 36%),
      linear-gradient(118deg, #03101f 0%, #061a32 52%, #0b2850 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

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

  .gsvport svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvport ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .gsvport__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.22) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvport__glow {
    position: absolute;
    z-index: -2;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvport__glow--cyan {
    top: 4%;
    left: -220px;
    opacity: .1;
    background: var(--gsvp-cyan);
  }

  .gsvport__glow--blue {
    right: -220px;
    bottom: 6%;
    opacity: .14;
    background: var(--gsvp-blue);
  }

  .gsvport__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* HEADER */

  .gsvport__header {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
    gap: clamp(38px, 6vw, 80px);
    align-items: end;
    margin-bottom: clamp(42px, 5vw, 65px);
  }

  .gsvport__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.65px;
    text-transform: uppercase;
  }

  .gsvport__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvp-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvpPulse 2.4s ease-in-out infinite;
  }

  .gsvport__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvport__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(
      90deg,
      #74ddff,
      var(--gsvp-cyan) 48%,
      #6593ff
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvport__header-info > p {
    margin: 0;
    color: var(--gsvp-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvport__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvport__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvport__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvport__header-note small,
  .gsvport__header-note strong {
    display: block;
  }

  .gsvport__header-note small {
    margin-bottom: 3px;
    color: #7292a8;
    font-size: 10px;
  }

  .gsvport__header-note strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* MAIN */

  .gsvport__main {
    position: relative;
    overflow: hidden;
    display: block;
    padding: 25px;
    border: 1px solid rgba(92,174,255,.21);
    border-radius: 28px;
    background:
      radial-gradient(circle at 17% 37%, rgba(37,216,244,.11), transparent 39%),
      linear-gradient(145deg, rgba(15,48,84,.75), rgba(4,17,35,.95));
    box-shadow:
      0 30px 70px rgba(0,0,0,.27),
      inset 0 1px 0 rgba(255,255,255,.055);
    backdrop-filter: blur(14px);
  }

  .gsvport__main-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvport__main > *:not(.gsvport__main-grid) {
    position: relative;
    z-index: 2;
  }

  /* VISUAL */

  .gsvport__visual {
    min-width: 0;
    overflow: hidden;
    padding: 21px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 22px;
    background:
      radial-gradient(circle at 50% 43%, rgba(37,216,244,.1), transparent 43%),
      rgba(0,11,24,.37);
  }

  .gsvport__visual-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
  }

  .gsvport__visual-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvport__visual-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvp-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvpPulse 2.4s ease-in-out infinite;
  }

  .gsvport__visual-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: 1px;
  }

  .gsvport__visual-copy {
    margin-top: 22px;
  }

  .gsvport__visual-copy > small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvport__visual-copy h3 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(29px, 3vw, 39px);
    line-height: 1.12;
    letter-spacing: -1.1px;
  }

  .gsvport__visual-copy h3 span {
    display: block;
    color: #79daf8;
  }

  .gsvport__visual-copy p {
    margin: 13px 0 0;
    color: #93a9bc;
    font-size: 12px;
    line-height: 1.7;
  }

  /* STAGE — UNA SOLA COMPOSICIÓN, ELEMENTOS SEPARADOS */

  .gsvport__stage {
    position: relative;
    overflow: hidden;
    margin-top: 16px;
    padding: 20px;
    border: 1px solid rgba(92,174,255,.14);
    border-radius: 20px;
    background:
      radial-gradient(circle at 50% 50%, rgba(37,216,244,.08), transparent 55%),
      linear-gradient(145deg, rgba(5,31,50,.96), rgba(2,15,27,.98));
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.018),
      0 22px 44px rgba(0,0,0,.2);
  }

  .gsvport__stage-grid {
    position: absolute;
    inset: 0;
    opacity: .38;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(37,216,244,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.05) 1px, transparent 1px);
    background-size: 26px 26px;
  }

  .gsvport__stage-scan {
    position: absolute;
    z-index: 1;
    top: 10%;
    right: 16px;
    left: 16px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.84), transparent);
    box-shadow: 0 0 17px rgba(37,216,244,.52);
    animation: gsvpStageScan 5s ease-in-out infinite;
  }

  .gsvport__stage-route {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr);
    gap: 10px;
    align-items: stretch;
  }

  .gsvport__stage-node {
    min-width: 0;
    min-height: 245px;
    display: flex;
    flex-direction: column;
    padding: 15px;
    border: 1px solid rgba(92,174,255,.17);
    border-radius: 17px;
    background:
      radial-gradient(circle at 50% 20%, rgba(37,216,244,.05), transparent 40%),
      rgba(3,18,34,.94);
    box-shadow: 0 16px 30px rgba(0,0,0,.22);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvport__stage-node:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.32);
  }

  .gsvport__stage-node-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
  }

  .gsvport__stage-node-head > span {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 11px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.09);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvport__stage-node-head > small {
    color: #7090a5;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .45px;
    text-align: right;
  }

  .gsvport__stage-silhouette {
    height: 92px;
    display: grid;
    place-items: center;
    margin: 14px 0 10px;
    border: 1px solid rgba(37,216,244,.09);
    border-radius: 14px;
    color: rgba(37,216,244,.78);
    background: rgba(37,216,244,.025);
    animation: gsvpStageFloat 3.8s ease-in-out infinite;
  }

  .gsvport__stage-node--connection .gsvport__stage-silhouette { animation-delay: -.7s; }
  .gsvport__stage-node--electrical .gsvport__stage-silhouette { animation-delay: -1.4s; }
  .gsvport__stage-node--processing .gsvport__stage-silhouette { animation-delay: -2.1s; }

  .gsvport__stage-silhouette svg {
    width: 100px;
    height: 66px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.3;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 8px rgba(37,216,244,.16));
  }

  .gsvport__stage-silhouette--hdmi {
    color: rgba(255,200,92,.82);
    background: rgba(255,200,92,.025);
  }

  .gsvport__stage-silhouette--filter {
    color: rgba(255,200,92,.82);
  }

  .gsvport__stage-node > strong {
    color: #eff7fd;
    font-size: 14px;
    line-height: 1.38;
  }

  .gsvport__stage-node > p {
    margin: 7px 0 0;
    color: #879daf;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvport__stage-arrow {
    align-self: center;
    justify-self: center;
    color: rgba(37,216,244,.55);
    font-size: 20px;
    font-style: normal;
    animation: gsvpStageArrow 2.3s ease-in-out infinite;
  }

  .gsvport__stage-status {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
  }

  .gsvport__stage-status span {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 8px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 10px;
    color: #7591a5;
    background: rgba(255,255,255,.017);
    font-size: 8px;
    font-weight: 750;
    letter-spacing: .3px;
    text-align: center;
  }

  .gsvport__stage-status i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsvp-green);
    box-shadow: 0 0 8px rgba(72,217,154,.48);
  }

  .gsvport__visual-note {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 10px;
    padding: 11px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 12px;
    background: rgba(255,200,92,.022);
  }

  .gsvport__visual-note > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvport__visual-note svg {
    width: 21px;
    height: 21px;
  }

  .gsvport__visual-note p {
    margin: 0;
    color: #a99a7c;
    font-size: 10px;
    line-height: 1.6;
  }

  .gsvport__faults {
    margin-top: 22px;
  }

  /* GROUPS */

  .gsvport__fault-group + .gsvport__fault-group {
    margin-top: 20px;
  }

  .gsvport__group-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    margin-bottom: 11px;
    padding: 14px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.019);
  }

  .gsvport__group-head > div {
    min-width: 0;
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
  }

  .gsvport__group-head > div > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.065);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvport__group-head small {
    display: block;
    color: #6e899f;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .65px;
  }

  .gsvport__group-head h3 {
    margin: 3px 0 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
  }

  .gsvport__group-head > strong {
    flex: 0 0 auto;
    color: #6f899e;
    font-size: 10px;
  }

  /* CARDS */

  .gsvport__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .gsvport__card {
    position: relative;
    min-width: 0;
    padding: 17px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 18px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
    transition:
      transform 220ms ease,
      border-color 220ms ease;
  }

  .gsvport__card:hover {
    transform: translateY(-4px);
    border-color: rgba(37,216,244,.3);
  }

  .gsvport__card-number {
    position: absolute;
    top: 12px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 22px;
    font-weight: 850;
  }

  .gsvport__card-icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-blue);
    background: rgba(41,124,255,.07);
  }

  .gsvport__card-icon--cyan {
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvport__card-icon--yellow {
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvport__card-icon--blue {
    color: #77a2ff;
    background: rgba(80,128,255,.07);
  }

  .gsvport__card-icon--red {
    color: var(--gsvp-red);
    background: rgba(255,107,118,.065);
  }

  .gsvport__card-icon svg {
    width: 25px;
    height: 25px;
  }

  .gsvport__card small {
    display: block;
    margin-top: 13px;
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvport__card h4 {
    margin: 5px 0 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
  }

  .gsvport__card p {
    margin: 7px 0 0;
    color: #879daf;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvport__card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 11px;
  }

  .gsvport__card-tags span {
    padding: 6px 8px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 999px;
    color: #7894aa;
    background: rgba(255,255,255,.02);
    font-size: 8px;
    line-height: 1;
  }

  /* SECTION HEAD */

  .gsvport__decision {
    margin-top: clamp(55px, 6vw, 80px);
  }

  .gsvport__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .68fr);
    gap: 35px;
    align-items: end;
    margin-bottom: 24px;
  }

  .gsvport__section-head > div > small {
    display: block;
    margin-bottom: 7px;
    color: #71d8f5;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .8px;
    text-transform: uppercase;
  }

  .gsvport__section-head h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(29px, 3.5vw, 44px);
    line-height: 1.1;
    font-weight: 790;
    letter-spacing: -1.3px;
  }

  .gsvport__section-head > p {
    margin: 0;
    color: #91a6b8;
    font-size: 13px;
    line-height: 1.7;
  }

  /* DECISION */

  .gsvport__decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .gsvport__decision-card {
    min-width: 0;
    padding: 21px;
    border-radius: 20px;
  }

  .gsvport__decision-card--yes {
    border: 1px solid rgba(72,217,154,.17);
    background:
      radial-gradient(circle at 100% 0%, rgba(72,217,154,.055), transparent 35%),
      rgba(72,217,154,.022);
  }

  .gsvport__decision-card--no {
    border: 1px solid rgba(255,200,92,.16);
    background:
      radial-gradient(circle at 100% 0%, rgba(255,200,92,.05), transparent 35%),
      rgba(255,200,92,.019);
  }

  .gsvport__decision-head {
    display: grid;
    grid-template-columns: 53px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvport__decision-head > span {
    width: 53px;
    height: 53px;
    display: grid;
    place-items: center;
    border-radius: 15px;
  }

  .gsvport__decision-card--yes .gsvport__decision-head > span {
    color: var(--gsvp-green);
    background: rgba(72,217,154,.07);
  }

  .gsvport__decision-card--no .gsvport__decision-head > span {
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvport__decision-head svg {
    width: 26px;
    height: 26px;
  }

  .gsvport__decision-head small {
    display: block;
    font-size: 9px;
    letter-spacing: .6px;
  }

  .gsvport__decision-card--yes small {
    color: #72a48b;
  }

  .gsvport__decision-card--no small {
    color: #a69574;
  }

  .gsvport__decision-head h4 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.45;
  }

  .gsvport__decision-card ul {
    display: grid;
    gap: 9px;
    margin-top: 17px;
  }

  .gsvport__decision-card li {
    display: grid;
    grid-template-columns: 7px minmax(0, 1fr);
    gap: 9px;
    color: #91a7b9;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvport__decision-card li i {
    width: 6px;
    height: 6px;
    margin-top: 5px;
    border-radius: 50%;
  }

  .gsvport__decision-card--yes li i {
    background: var(--gsvp-green);
    box-shadow: 0 0 7px rgba(72,217,154,.45);
  }

  .gsvport__decision-card--no li i {
    background: var(--gsvp-yellow);
    box-shadow: 0 0 7px rgba(255,200,92,.42);
  }

  /* RECONSTRUCTION */

  .gsvport__reconstruction {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
    gap: 23px;
    align-items: center;
    margin-top: 28px;
    padding: 21px;
    border: 1px solid rgba(255,200,92,.16);
    border-radius: 20px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,200,92,.05), transparent 27%),
      rgba(1,12,26,.38);
  }

  .gsvport__reconstruction-copy {
    display: grid;
    grid-template-columns: 55px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
  }

  .gsvport__reconstruction-icon {
    width: 55px;
    height: 55px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvport__reconstruction-icon svg {
    width: 27px;
    height: 27px;
  }

  .gsvport__reconstruction-copy small {
    display: block;
    margin-bottom: 4px;
    color: #ad9d7b;
    font-size: 9px;
    letter-spacing: .6px;
  }

  .gsvport__reconstruction-copy h3 {
    margin: 0;
    color: #f1e7d2;
    font-size: 15px;
    line-height: 1.45;
  }

  .gsvport__reconstruction-copy p {
    margin: 6px 0 0;
    color: #9b9383;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvport__reconstruction-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr;
    gap: 7px;
    align-items: center;
  }

  .gsvport__reconstruction-flow article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(255,200,92,.09);
    border-radius: 11px;
    background: rgba(255,200,92,.018);
  }

  .gsvport__reconstruction-flow span,
  .gsvport__reconstruction-flow small,
  .gsvport__reconstruction-flow strong {
    display: block;
  }

  .gsvport__reconstruction-flow span {
    color: var(--gsvp-yellow);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvport__reconstruction-flow small {
    margin-top: 3px;
    color: #8f8269;
    font-size: 7px;
  }

  .gsvport__reconstruction-flow strong {
    margin-top: 4px;
    color: #d5cab5;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvport__reconstruction-flow > i {
    color: #806f55;
    font-size: 10px;
    font-style: normal;
  }

  /* PRINCIPLES */

  .gsvport__principles {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
  }

  .gsvport__principles article {
    min-width: 0;
    display: grid;
    grid-template-columns: 49px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 18px;
    background: rgba(255,255,255,.022);
  }

  .gsvport__principles article > span {
    width: 49px;
    height: 49px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvport__principles svg {
    width: 24px;
    height: 24px;
  }

  .gsvport__principles small,
  .gsvport__principles strong {
    display: block;
  }

  .gsvport__principles small {
    color: #718ba1;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .55px;
  }

  .gsvport__principles strong {
    margin-top: 4px;
    color: #e0edf7;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvport__principles p {
    margin: 6px 0 0;
    color: #8299ad;
    font-size: 10px;
    line-height: 1.6;
  }

  /* PREVIOUS */

  .gsvport__previous {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .85fr);
    gap: 20px;
    align-items: center;
    margin-top: 16px;
    padding: 20px;
    border: 1px solid rgba(255,107,118,.14);
    border-radius: 20px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,107,118,.045), transparent 28%),
      rgba(1,12,26,.38);
  }

  .gsvport__previous-copy {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .gsvport__previous-copy > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvp-red);
    background: rgba(255,107,118,.07);
  }

  .gsvport__previous-copy svg {
    width: 26px;
    height: 26px;
  }

  .gsvport__previous-copy small,
  .gsvport__previous-copy strong {
    display: block;
  }

  .gsvport__previous-copy small {
    margin-bottom: 4px;
    color: #b18289;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .6px;
  }

  .gsvport__previous-copy strong {
    color: #f0dfe2;
    font-size: 12px;
    line-height: 1.5;
  }

  .gsvport__previous-copy p {
    margin: 6px 0 0;
    color: #9e8c90;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvport__previous-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .gsvport__previous-tags span {
    padding: 8px 10px;
    border: 1px solid rgba(255,107,118,.1);
    border-radius: 999px;
    color: #ab8c91;
    background: rgba(255,107,118,.024);
    font-size: 9px;
    line-height: 1;
  }

  /* WARNINGS */

  .gsvport__warnings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
  }

  .gsvport__warnings article {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 17px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 17px;
    background: rgba(255,200,92,.019);
  }

  .gsvport__warnings article > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvport__warnings svg {
    width: 24px;
    height: 24px;
  }

  .gsvport__warnings small,
  .gsvport__warnings strong {
    display: block;
  }

  .gsvport__warnings small {
    color: #a69574;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .55px;
  }

  .gsvport__warnings strong {
    margin-top: 3px;
    color: #e8deca;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvport__warnings p {
    margin: 6px 0 0;
    color: #958d7e;
    font-size: 10px;
    line-height: 1.6;
  }

  /* CTA */

  .gsvport__cta {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: center;
    margin-top: 16px;
    padding: 19px;
    border: 1px solid rgba(72,217,154,.15);
    border-radius: 19px;
    background:
      radial-gradient(circle at 0 50%, rgba(72,217,154,.05), transparent 25%),
      rgba(1,12,26,.37);
  }

  .gsvport__cta-copy {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvport__cta-copy > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-green);
    background: rgba(72,217,154,.07);
  }

  .gsvport__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvport__cta-copy small,
  .gsvport__cta-copy strong {
    display: block;
  }

  .gsvport__cta-copy small {
    margin-bottom: 3px;
    color: #72a48b;
    font-size: 9px;
  }

  .gsvport__cta-copy strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvport__cta-copy p {
    margin: 5px 0 0;
    color: #8097ab;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvport__cta-actions {
    flex: 0 0 auto;
    display: flex;
    gap: 9px;
  }

  .gsvport__cta-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease;
  }

  .gsvport__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvport__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvport__cta-button i {
    font-size: 17px;
    font-style: normal;
  }

  .gsvport__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvport__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvport__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0;
    flex: 0 0 auto;
  }

  .gsvport__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvport__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvport__disclaimer {
    margin: 17px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  /* ANIMACIONES */

  @keyframes gsvpPulse {
    0%, 100% {
      opacity: .45;
      transform: scale(.86);
    }

    50% {
      opacity: 1;
      transform: scale(1.13);
    }
  }

  @keyframes gsvpOrbit {
    0%, 100% {
      opacity: .24;
      transform: translate(-50%, -50%) scale(.96);
    }

    50% {
      opacity: .67;
      transform: translate(-50%, -50%) scale(1.04);
    }
  }

  @keyframes gsvpBoard {
    0%, 100% {
      transform: translate(-50%, -50%) rotate(-3deg) translateY(0);
    }

    50% {
      transform: translate(-50%, -50%) rotate(-1deg) translateY(-8px);
    }
  }

  @keyframes gsvpScan {
    0%, 100% {
      top: 8%;
      opacity: .25;
    }

    50% {
      top: 88%;
      opacity: 1;
    }
  }

  @keyframes gsvpCard1 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(-6px) rotate(0);
    }
  }

  @keyframes gsvpCard2 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(6px) rotate(0);
    }
  }

  @keyframes gsvpCard3 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(-5px) rotate(0);
    }
  }

  @keyframes gsvpCard4 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(5px) rotate(0);
    }
  }

  @keyframes gsvpStageScan {
    0%, 100% { top: 10%; opacity: .16; }
    50% { top: 88%; opacity: .88; }
  }

  @keyframes gsvpStageFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
  }

  @keyframes gsvpStageArrow {
    0%, 100% { opacity: .35; transform: translateX(0); }
    50% { opacity: .9; transform: translateX(3px); }
  }

  /* TABLETA */

  @media (max-width: 1080px) {

    .gsvport__stage-route {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvport__stage-arrow {
      display: none;
    }

    .gsvport__stage-status {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvport__reconstruction {
      grid-template-columns: 1fr;
    }

    .gsvport__principles,
    .gsvport__warnings {
      grid-template-columns: 1fr;
    }

    .gsvport__previous {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 850px) {

    .gsvport__header,
    .gsvport__section-head {
      grid-template-columns: 1fr;
      gap: 22px;
    }

    .gsvport__decision-grid {
      grid-template-columns: 1fr;
    }

    .gsvport__reconstruction-flow {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gsvport__reconstruction-flow > i {
      display: none;
    }

    .gsvport__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvport__cta-actions {
      width: 100%;
    }

    .gsvport__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }

  }

  /* MÓVIL */

  @media (max-width: 700px) {

    .gsvport {
      padding: 66px 17px 72px;
    }

    .gsvport__main {
      padding: 19px 17px;
      border-radius: 23px;
      backdrop-filter: none;
    }

    .gsvport__visual {
      display: block;
      padding: 19px 17px;
    }

    .gsvport__stage {
      margin-top: 12px;
      padding: 15px;
    }

    .gsvport__stage-route,
    .gsvport__stage-status {
      grid-template-columns: 1fr;
    }

    .gsvport__cards {
      grid-template-columns: 1fr;
    }

    .gsvport__cta-actions {
      flex-direction: column;
    }

  }

  @media (max-width: 480px) {

    .gsvport__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvport__visual-top {
      align-items: flex-start;
    }

    .gsvport__visual-top > strong {
      display: none;
    }

    .gsvport__stage-node {
      min-height: 0;
    }

    .gsvport__stage-silhouette {
      height: 82px;
    }

    .gsvport__stage-silhouette svg {
      width: 92px;
      height: 58px;
    }

    .gsvport__reconstruction-flow {
      grid-template-columns: 1fr;
    }

    .gsvport__group-head {
      align-items: flex-start;
    }

    .gsvport__group-head > strong {
      display: none;
    }

    .gsvport__decision-head,
    .gsvport__reconstruction-copy,
    .gsvport__principles article,
    .gsvport__previous-copy,
    .gsvport__warnings article,
    .gsvport__cta-copy {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 390px) {

    .gsvport {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvport__stage {
      padding-right: 12px;
      padding-left: 12px;
    }

    .gsvport__stage-node {
      padding: 13px;
    }

    .gsvport__stage-node > strong {
      font-size: 13px;
    }

  }

  @media (prefers-reduced-motion: reduce) {

    #puerto-hdmi-circuitos-video,
    #puerto-hdmi-circuitos-video *,
    #puerto-hdmi-circuitos-video *::before,
    #puerto-hdmi-circuitos-video *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }

  }

/* ===== EQUIPOS ===== */
.gsvequip {
    --gsve-cyan: #25d8f4;
    --gsve-blue: #297cff;
    --gsve-green: #48d99a;
    --gsve-yellow: #ffc85c;
    --gsve-red: #ff6b76;
    --gsve-white: #ffffff;
    --gsve-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(78px, 8vw, 120px) 24px;
    color: var(--gsve-white);
    background:
      radial-gradient(circle at 7% 13%, rgba(37,216,244,.1), transparent 31%),
      radial-gradient(circle at 94% 86%, rgba(41,124,255,.16), transparent 36%),
      linear-gradient(118deg, #020914 0%, #05162c 52%, #0a2247 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

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

  .gsvequip svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvequip ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .gsvequip__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.22) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvequip__glow {
    position: absolute;
    z-index: -2;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvequip__glow--cyan {
    top: 4%;
    left: -220px;
    opacity: .1;
    background: var(--gsve-cyan);
  }

  .gsvequip__glow--blue {
    right: -220px;
    bottom: 6%;
    opacity: .14;
    background: var(--gsve-blue);
  }

  .gsvequip__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* HEADER */

  .gsvequip__header {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
    gap: clamp(38px, 6vw, 80px);
    align-items: end;
    margin-bottom: clamp(42px, 5vw, 65px);
  }

  .gsvequip__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.65px;
    text-transform: uppercase;
  }

  .gsvequip__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsve-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvePulse 2.4s ease-in-out infinite;
  }

  .gsvequip__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvequip__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(
      90deg,
      #74ddff,
      var(--gsve-cyan) 48%,
      #6593ff
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvequip__header-info > p {
    margin: 0;
    color: var(--gsve-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvequip__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvequip__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsve-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvequip__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvequip__header-note small,
  .gsvequip__header-note strong {
    display: block;
  }

  .gsvequip__header-note small {
    margin-bottom: 3px;
    color: #7292a8;
    font-size: 10px;
  }

  .gsvequip__header-note strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* ARCHITECTURE */

  .gsvequip__architecture {
    position: relative;
    overflow: hidden;
    padding: 25px;
    border: 1px solid rgba(92,174,255,.21);
    border-radius: 28px;
    background:
      radial-gradient(circle at 18% 38%, rgba(37,216,244,.11), transparent 38%),
      linear-gradient(145deg, rgba(15,48,84,.75), rgba(4,17,35,.95));
    box-shadow:
      0 30px 70px rgba(0,0,0,.27),
      inset 0 1px 0 rgba(255,255,255,.055);
    backdrop-filter: blur(14px);
  }

  .gsvequip__architecture-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvequip__architecture > *:not(.gsvequip__architecture-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvequip__architecture-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(92,174,255,.12);
  }

  .gsvequip__architecture-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .75px;
  }

  .gsvequip__architecture-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsve-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvePulse 2.4s ease-in-out infinite;
  }

  .gsvequip__architecture-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: 1px;
  }

  .gsvequip__architecture-layout {
    display: block;
    margin-top: 22px;
  }

  /* VISUAL */

  .gsvequip__visual {
    min-width: 0;
    overflow: hidden;
    padding: 21px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 22px;
    background:
      radial-gradient(circle at 50% 43%, rgba(37,216,244,.1), transparent 43%),
      rgba(0,11,24,.37);
  }

  .gsvequip__visual-copy > small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvequip__visual-copy h3 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(29px, 3vw, 39px);
    line-height: 1.12;
    letter-spacing: -1.1px;
  }

  .gsvequip__visual-copy h3 span {
    display: block;
    color: #79daf8;
  }

  .gsvequip__visual-copy p {
    margin: 13px 0 0;
    color: #93a9bc;
    font-size: 12px;
    line-height: 1.7;
  }

  .gsvequip__stage {
    position: relative;
    overflow: hidden;
    margin-top: 15px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 18px;
    background:
      radial-gradient(circle at 50% 45%, rgba(37,216,244,.07), transparent 58%),
      rgba(2,17,29,.76);
  }

  .gsvequip__stage-grid {
    position: absolute;
    inset: 0;
    opacity: .38;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(37,216,244,.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.045) 1px, transparent 1px);
    background-size: 24px 24px;
  }

  .gsvequip__stage-scan {
    position: absolute;
    z-index: 1;
    top: 10%;
    right: 12px;
    left: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.82), transparent);
    box-shadow: 0 0 16px rgba(37,216,244,.48);
    animation: gsveStageScan 5s ease-in-out infinite;
  }

  .gsvequip__stage-cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
  }

  .gsvequip__stage-card {
    min-width: 0;
    min-height: 260px;
    display: flex;
    flex-direction: column;
    padding: 15px;
    border: 1px solid rgba(92,174,255,.15);
    border-radius: 17px;
    background:
      radial-gradient(circle at 50% 16%, rgba(37,216,244,.055), transparent 38%),
      rgba(4,20,38,.93);
    box-shadow: 0 14px 28px rgba(0,0,0,.2);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvequip__stage-card:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.3);
  }

  .gsvequip__stage-card--switch {
    border-color: rgba(255,107,118,.17);
    background:
      radial-gradient(circle at 50% 16%, rgba(255,107,118,.055), transparent 38%),
      rgba(4,20,38,.93);
  }

  .gsvequip__stage-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 9px;
  }

  .gsvequip__stage-card-top > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 11px;
    color: var(--gsve-cyan);
    background: rgba(37,216,244,.09);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvequip__stage-card--switch .gsvequip__stage-card-top > span {
    color: var(--gsve-red);
    background: rgba(255,107,118,.085);
  }

  .gsvequip__stage-card-top small {
    color: #718ba1;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .45px;
    text-align: right;
  }

  .gsvequip__stage-silhouette {
    height: 98px;
    display: grid;
    place-items: center;
    margin: 14px 0 11px;
    border: 1px solid rgba(37,216,244,.09);
    border-radius: 14px;
    color: rgba(37,216,244,.8);
    background: rgba(37,216,244,.024);
    animation: gsveStageFloat 4s ease-in-out infinite;
  }

  .gsvequip__stage-card:nth-child(2) .gsvequip__stage-silhouette { animation-delay: -.8s; }
  .gsvequip__stage-card:nth-child(3) .gsvequip__stage-silhouette { animation-delay: -1.6s; }
  .gsvequip__stage-card:nth-child(4) .gsvequip__stage-silhouette { animation-delay: -2.4s; }

  .gsvequip__stage-card--switch .gsvequip__stage-silhouette {
    color: rgba(255,107,118,.78);
    border-color: rgba(255,107,118,.09);
    background: rgba(255,107,118,.022);
  }

  .gsvequip__stage-silhouette svg {
    width: 105px;
    height: 68px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 8px rgba(37,216,244,.14));
  }

  .gsvequip__stage-card > strong {
    color: #edf6fc;
    font-size: 13px;
    line-height: 1.4;
  }

  .gsvequip__stage-card > p {
    margin: 7px 0 0;
    color: #849bae;
    font-size: 10px;
    line-height: 1.58;
  }

  .gsvequip__visual-status {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
  }

  .gsvequip__visual-status article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 11px;
    background: rgba(255,255,255,.018);
  }

  .gsvequip__visual-status span,
  .gsvequip__visual-status small,
  .gsvequip__visual-status strong {
    display: block;
  }

  .gsvequip__visual-status span {
    color: var(--gsve-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvequip__visual-status small {
    margin-top: 4px;
    color: #6d869a;
    font-size: 8px;
  }

  .gsvequip__visual-status strong {
    margin-top: 3px;
    color: #cbdbe7;
    font-size: 9px;
    line-height: 1.4;
  }

  /* ROUTES */

  .gsvequip__routes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    margin-top: 18px;
  }

  .gsvequip__route-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 18px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
  }

  .gsvequip__route-card--switch {
    border-color: rgba(255,107,118,.14);
    background:
      radial-gradient(circle at 100% 0%, rgba(255,107,118,.05), transparent 38%),
      rgba(255,255,255,.023);
  }

  .gsvequip__route-head {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
  }

  .gsvequip__route-head > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsve-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvequip__route-card--switch .gsvequip__route-head > span {
    color: var(--gsve-red);
    background: rgba(255,107,118,.065);
  }

  .gsvequip__route-head svg {
    width: 25px;
    height: 25px;
  }

  .gsvequip__route-head small {
    display: block;
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvequip__route-head h3 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.4;
  }

  .gsvequip__route-card > p {
    margin: 13px 0 0;
    color: #8da3b6;
    font-size: 11px;
    line-height: 1.65;
  }

  .gsvequip__route-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    gap: 6px;
    align-items: center;
    margin-top: 14px;
  }

  .gsvequip__route-flow span {
    min-width: 0;
    padding: 8px 6px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 9px;
    color: #8fa5b7;
    background: rgba(255,255,255,.019);
    font-size: 8px;
    line-height: 1.35;
    text-align: center;
  }

  .gsvequip__route-flow i {
    color: #4f7187;
    font-size: 9px;
    font-style: normal;
  }

  .gsvequip__route-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
  }

  .gsvequip__route-tags span {
    padding: 6px 8px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 999px;
    color: #7894aa;
    background: rgba(255,255,255,.02);
    font-size: 8px;
    line-height: 1;
  }

  /* SECTION HEAD */

  .gsvequip__platforms {
    margin-top: clamp(55px, 6vw, 80px);
  }

  .gsvequip__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .68fr);
    gap: 35px;
    align-items: end;
    margin-bottom: 24px;
  }

  .gsvequip__section-head > div > small {
    display: block;
    margin-bottom: 7px;
    color: #71d8f5;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .8px;
    text-transform: uppercase;
  }

  .gsvequip__section-head h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(29px, 3.5vw, 44px);
    line-height: 1.1;
    font-weight: 790;
    letter-spacing: -1.3px;
  }

  .gsvequip__section-head > p {
    margin: 0;
    color: #91a6b8;
    font-size: 13px;
    line-height: 1.7;
  }

  /* PLATFORMS */

  .gsvequip__platform-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
  }

  .gsvequip__platform {
    position: relative;
    min-width: 0;
    padding: 20px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 20px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.045), transparent 38%),
      rgba(255,255,255,.023);
    transition:
      transform 220ms ease,
      border-color 220ms ease;
  }

  .gsvequip__platform:hover {
    transform: translateY(-4px);
    border-color: rgba(37,216,244,.3);
  }

  .gsvequip__platform--switch {
    border-color: rgba(255,107,118,.14);
    background:
      radial-gradient(circle at 100% 0%, rgba(255,107,118,.045), transparent 38%),
      rgba(255,255,255,.023);
  }

  .gsvequip__platform--other {
    border-style: dashed;
  }

  .gsvequip__platform-number {
    position: absolute;
    top: 12px;
    right: 14px;
    color: rgba(255,255,255,.07);
    font-size: 25px;
    font-weight: 850;
  }

  .gsvequip__platform-head {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvequip__platform-head > span {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: var(--gsve-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvequip__platform--switch .gsvequip__platform-head > span {
    color: var(--gsve-red);
    background: rgba(255,107,118,.065);
  }

  .gsvequip__platform-head svg {
    width: 27px;
    height: 27px;
  }

  .gsvequip__platform-head small {
    display: block;
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .6px;
  }

  .gsvequip__platform-head h4 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.4;
  }

  .gsvequip__platform > p {
    margin: 15px 0 0;
    color: #8da3b6;
    font-size: 11px;
    line-height: 1.65;
  }

  .gsvequip__platform ul {
    display: grid;
    gap: 8px;
    margin-top: 14px;
  }

  .gsvequip__platform li {
    display: grid;
    grid-template-columns: 7px minmax(0, 1fr);
    gap: 8px;
    color: #91a7b9;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvequip__platform li i {
    width: 6px;
    height: 6px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--gsve-cyan);
    box-shadow: 0 0 7px rgba(37,216,244,.45);
  }

  .gsvequip__platform--switch li i {
    background: var(--gsve-red);
    box-shadow: 0 0 7px rgba(255,107,118,.4);
  }

  .gsvequip__platform-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 14px;
  }

  .gsvequip__platform-tags span {
    padding: 6px 8px;
    border: 1px solid rgba(92,174,255,.1);
    border-radius: 999px;
    color: #7894aa;
    background: rgba(255,255,255,.02);
    font-size: 8px;
    line-height: 1;
  }

  /* SWITCH PATH */

  .gsvequip__switch-path {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(540px, 1.1fr);
    gap: 24px;
    align-items: center;
    margin-top: 28px;
    padding: 22px;
    border: 1px solid rgba(255,107,118,.15);
    border-radius: 21px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,107,118,.05), transparent 27%),
      rgba(1,12,26,.38);
  }

  .gsvequip__switch-copy {
    display: grid;
    grid-template-columns: 57px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
  }

  .gsvequip__switch-icon {
    width: 57px;
    height: 57px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: var(--gsve-red);
    background: rgba(255,107,118,.07);
  }

  .gsvequip__switch-icon svg {
    width: 28px;
    height: 28px;
  }

  .gsvequip__switch-copy small {
    display: block;
    margin-bottom: 4px;
    color: #b18289;
    font-size: 9px;
    letter-spacing: .6px;
  }

  .gsvequip__switch-copy h3 {
    margin: 0;
    color: #f0dfe2;
    font-size: 16px;
    line-height: 1.45;
  }

  .gsvequip__switch-copy p {
    margin: 7px 0 0;
    color: #9e8c90;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvequip__switch-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr;
    gap: 7px;
    align-items: center;
  }

  .gsvequip__switch-flow article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(255,107,118,.09);
    border-radius: 11px;
    background: rgba(255,107,118,.018);
  }

  .gsvequip__switch-flow span,
  .gsvequip__switch-flow small,
  .gsvequip__switch-flow strong {
    display: block;
  }

  .gsvequip__switch-flow span {
    color: var(--gsve-red);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvequip__switch-flow small {
    margin-top: 3px;
    color: #8f7479;
    font-size: 7px;
  }

  .gsvequip__switch-flow strong {
    margin-top: 4px;
    color: #d7c4c7;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvequip__switch-flow > i {
    color: #80636a;
    font-size: 10px;
    font-style: normal;
  }

  /* COMPUTERS */

  .gsvequip__computer-path {
    margin-top: 16px;
    padding: 22px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 21px;
    background:
      radial-gradient(circle at 0 50%, rgba(37,216,244,.045), transparent 28%),
      rgba(1,12,26,.38);
  }

  .gsvequip__computer-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .7fr);
    gap: 30px;
    align-items: end;
  }

  .gsvequip__computer-head small {
    display: block;
    margin-bottom: 5px;
    color: #71d8f5;
    font-size: 9px;
    letter-spacing: .7px;
  }

  .gsvequip__computer-head h3 {
    margin: 0;
    color: #e4f1fd;
    font-size: 18px;
    line-height: 1.45;
  }

  .gsvequip__computer-head > p {
    margin: 0;
    color: #8299ad;
    font-size: 11px;
    line-height: 1.65;
  }

  .gsvequip__computer-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
    margin-top: 18px;
  }

  .gsvequip__computer-grid article {
    min-width: 0;
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 17px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 17px;
    background: rgba(255,255,255,.02);
  }

  .gsvequip__computer-grid article > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsve-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvequip__computer-grid svg {
    width: 25px;
    height: 25px;
  }

  .gsvequip__computer-grid small,
  .gsvequip__computer-grid strong {
    display: block;
  }

  .gsvequip__computer-grid small {
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvequip__computer-grid strong {
    margin-top: 4px;
    color: #e0edf7;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvequip__computer-grid p {
    margin: 6px 0 0;
    color: #8299ad;
    font-size: 10px;
    line-height: 1.6;
  }

  /* INTAKE */

  .gsvequip__intake {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(460px, .9fr);
    gap: 22px;
    align-items: center;
    margin-top: 16px;
    padding: 21px;
    border: 1px solid rgba(255,200,92,.15);
    border-radius: 20px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,200,92,.05), transparent 27%),
      rgba(1,12,26,.38);
  }

  .gsvequip__intake-copy {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
  }

  .gsvequip__intake-copy > span {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsve-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvequip__intake-copy svg {
    width: 27px;
    height: 27px;
  }

  .gsvequip__intake-copy small {
    display: block;
    margin-bottom: 4px;
    color: #ad9d7b;
    font-size: 9px;
    letter-spacing: .6px;
  }

  .gsvequip__intake-copy h3 {
    margin: 0;
    color: #f1e7d2;
    font-size: 15px;
    line-height: 1.45;
  }

  .gsvequip__intake-copy p {
    margin: 6px 0 0;
    color: #9b9383;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvequip__intake-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .gsvequip__intake-list article {
    min-width: 0;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(255,200,92,.09);
    border-radius: 11px;
    background: rgba(255,200,92,.018);
  }

  .gsvequip__intake-list span {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: var(--gsve-yellow);
    background: rgba(255,200,92,.06);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvequip__intake-list strong {
    color: #d5cab5;
    font-size: 9px;
    line-height: 1.45;
  }

  /* WARNINGS */

  .gsvequip__warnings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
  }

  .gsvequip__warnings article {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 17px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 17px;
    background: rgba(255,200,92,.019);
  }

  .gsvequip__warnings article > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsve-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvequip__warnings svg {
    width: 24px;
    height: 24px;
  }

  .gsvequip__warnings small,
  .gsvequip__warnings strong {
    display: block;
  }

  .gsvequip__warnings small {
    color: #a69574;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .55px;
  }

  .gsvequip__warnings strong {
    margin-top: 3px;
    color: #e8deca;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsvequip__warnings p {
    margin: 6px 0 0;
    color: #958d7e;
    font-size: 10px;
    line-height: 1.6;
  }

  /* CTA */

  .gsvequip__cta {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: center;
    margin-top: 16px;
    padding: 19px;
    border: 1px solid rgba(72,217,154,.15);
    border-radius: 19px;
    background:
      radial-gradient(circle at 0 50%, rgba(72,217,154,.05), transparent 25%),
      rgba(1,12,26,.37);
  }

  .gsvequip__cta-copy {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvequip__cta-copy > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsve-green);
    background: rgba(72,217,154,.07);
  }

  .gsvequip__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvequip__cta-copy small,
  .gsvequip__cta-copy strong {
    display: block;
  }

  .gsvequip__cta-copy small {
    margin-bottom: 3px;
    color: #72a48b;
    font-size: 9px;
  }

  .gsvequip__cta-copy strong {
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvequip__cta-copy p {
    margin: 5px 0 0;
    color: #8097ab;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvequip__cta-actions {
    flex: 0 0 auto;
    display: flex;
    gap: 9px;
  }

  .gsvequip__cta-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
    transition:
      transform 220ms ease,
      box-shadow 220ms ease,
      border-color 220ms ease;
  }

  .gsvequip__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvequip__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvequip__cta-button i {
    font-size: 17px;
    font-style: normal;
  }

  .gsvequip__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvequip__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvequip__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0;
    flex: 0 0 auto;
  }

  .gsvequip__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvequip__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvequip__disclaimer {
    margin: 17px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  /* ANIMACIONES */

  @keyframes gsvePulse {
    0%, 100% {
      opacity: .45;
      transform: scale(.86);
    }

    50% {
      opacity: 1;
      transform: scale(1.13);
    }
  }

  @keyframes gsveOrbit {
    0%, 100% {
      opacity: .24;
      transform: translate(-50%, -50%) scale(.96);
    }

    50% {
      opacity: .67;
      transform: translate(-50%, -50%) scale(1.04);
    }
  }

  @keyframes gsveCore {
    0%, 100% {
      transform: translate(-50%, -50%) rotate(-3deg) translateY(0);
    }

    50% {
      transform: translate(-50%, -50%) rotate(-1deg) translateY(-8px);
    }
  }

  @keyframes gsveScan {
    0%, 100% {
      top: 8%;
      opacity: .25;
    }

    50% {
      top: 88%;
      opacity: 1;
    }
  }

  @keyframes gsveCard1 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(-6px) rotate(0);
    }
  }

  @keyframes gsveCard2 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(6px) rotate(0);
    }
  }

  @keyframes gsveCard3 {
    0%, 100% {
      transform: translateY(0) rotate(1deg);
    }

    50% {
      transform: translateY(-5px) rotate(0);
    }
  }

  @keyframes gsveCard4 {
    0%, 100% {
      transform: translateY(0) rotate(-1deg);
    }

    50% {
      transform: translateY(5px) rotate(0);
    }
  }

  /* TABLETA */

    @keyframes gsveStageScan {
    0%, 100% { top: 10%; opacity: .14; }
    50% { top: 88%; opacity: .85; }
  }

  @keyframes gsveStageFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
  }

@media (max-width: 1080px) {

    .gsvequip__stage-cards {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvequip__platform-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvequip__switch-path,
    .gsvequip__intake {
      grid-template-columns: 1fr;
    }

    .gsvequip__computer-grid,
    .gsvequip__warnings {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 850px) {

    .gsvequip__header,
    .gsvequip__section-head,
    .gsvequip__computer-head {
      grid-template-columns: 1fr;
      gap: 22px;
    }

    .gsvequip__routes {
      grid-template-columns: 1fr;
    }

    .gsvequip__switch-flow {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gsvequip__switch-flow > i {
      display: none;
    }

    .gsvequip__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvequip__cta-actions {
      width: 100%;
    }

    .gsvequip__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }

  }

  @media (max-width: 700px) {

    .gsvequip {
      padding: 66px 17px 72px;
    }

    .gsvequip__architecture {
      padding: 19px 17px;
      border-radius: 23px;
      backdrop-filter: none;
    }

    .gsvequip__visual {
      padding: 19px 17px;
    }

    .gsvequip__stage {
      padding: 15px;
    }

    .gsvequip__stage-cards,
    .gsvequip__visual-status,
    .gsvequip__platform-grid,
    .gsvequip__intake-list {
      grid-template-columns: 1fr;
    }

    .gsvequip__stage-card {
      min-height: 0;
    }

    .gsvequip__cta-actions {
      flex-direction: column;
    }

  }

  @media (max-width: 480px) {

    .gsvequip__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvequip__architecture-top {
      align-items: flex-start;
    }

    .gsvequip__architecture-top > strong {
      display: none;
    }

    .gsvequip__stage-silhouette {
      height: 86px;
    }

    .gsvequip__stage-silhouette svg {
      width: 94px;
      height: 60px;
    }

    .gsvequip__route-flow,
    .gsvequip__switch-flow {
      grid-template-columns: 1fr;
    }

    .gsvequip__route-flow i,
    .gsvequip__switch-flow i {
      display: none;
    }

    .gsvequip__platform-head,
    .gsvequip__switch-copy,
    .gsvequip__computer-grid article,
    .gsvequip__intake-copy,
    .gsvequip__warnings article,
    .gsvequip__cta-copy {
      grid-template-columns: 1fr;
    }

  }

  @media (max-width: 390px) {

    .gsvequip {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvequip__stage {
      padding-right: 12px;
      padding-left: 12px;
    }

    .gsvequip__stage-card {
      padding: 13px;
    }

    .gsvequip__stage-card > strong {
      font-size: 12px;
    }

  }

  @media (prefers-reduced-motion: reduce) {

    #equipos-video-compatibles,
    #equipos-video-compatibles *,
    #equipos-video-compatibles *::before,
    #equipos-video-compatibles *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }

  }

/* ===== PROCESO ===== */
#proceso-servicio-video {
    --gsvp-cyan: #25d8f4;
    --gsvp-blue: #347fff;
    --gsvp-green: #48d99a;
    --gsvp-yellow: #ffc85c;
    --gsvp-red: #ff6b76;
    --gsvp-white: #ffffff;
    --gsvp-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(76px, 8vw, 116px) 24px;
    color: var(--gsvp-white);
    background:
      radial-gradient(circle at 8% 12%, rgba(37,216,244,.10), transparent 31%),
      radial-gradient(circle at 94% 84%, rgba(52,127,255,.15), transparent 36%),
      linear-gradient(118deg, #03101f 0%, #061a32 52%, #0b2850 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

  #proceso-servicio-video *,
  #proceso-servicio-video *::before,
  #proceso-servicio-video *::after {
    box-sizing: border-box;
  }

  #proceso-servicio-video svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  #proceso-servicio-video ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .gsvproc__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.07) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.07) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.20) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvproc__glow {
    position: absolute;
    z-index: -2;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvproc__glow--cyan {
    top: 3%;
    left: -220px;
    opacity: .10;
    background: var(--gsvp-cyan);
  }

  .gsvproc__glow--blue {
    right: -220px;
    bottom: 5%;
    opacity: .14;
    background: var(--gsvp-blue);
  }

  .gsvproc__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* ENCABEZADO */

  .gsvproc__header {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .75fr);
    gap: clamp(34px, 6vw, 76px);
    align-items: end;
    margin-bottom: clamp(38px, 5vw, 60px);
  }

  .gsvproc__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.55px;
    text-transform: uppercase;
  }

  .gsvproc__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvp-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvprocPulse 2.4s ease-in-out infinite;
  }

  .gsvproc__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvproc__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(90deg, #74ddff, var(--gsvp-cyan) 48%, #6593ff);
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvproc__header-info > p {
    margin: 0;
    color: var(--gsvp-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvproc__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvproc__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvproc__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvproc__header-note small,
  .gsvproc__header-note strong {
    display: block;
  }

  .gsvproc__header-note small {
    color: #7292a8;
    font-size: 10px;
  }

  .gsvproc__header-note strong {
    margin-top: 3px;
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* PANEL PRINCIPAL */

  .gsvproc__laboratory {
    position: relative;
    overflow: hidden;
    padding: 25px;
    border: 1px solid rgba(92,174,255,.20);
    border-radius: 28px;
    background:
      radial-gradient(circle at 18% 38%, rgba(37,216,244,.10), transparent 38%),
      linear-gradient(145deg, rgba(15,48,84,.75), rgba(4,17,35,.95));
    box-shadow:
      0 30px 70px rgba(0,0,0,.27),
      inset 0 1px 0 rgba(255,255,255,.05);
    backdrop-filter: blur(14px);
  }

  .gsvproc__laboratory-grid {
    position: absolute;
    inset: 0;
    opacity: .40;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvproc__laboratory > *:not(.gsvproc__laboratory-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvproc__laboratory-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(92,174,255,.12);
  }

  .gsvproc__laboratory-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .75px;
  }

  .gsvproc__laboratory-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvp-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvprocPulse 2.4s ease-in-out infinite;
  }

  .gsvproc__laboratory-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: .85px;
  }

  .gsvproc__visual-copy {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr);
    gap: 28px;
    align-items: end;
    margin-top: 22px;
  }

  .gsvproc__visual-copy small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvproc__visual-copy h3 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(29px, 3vw, 39px);
    line-height: 1.12;
    letter-spacing: -1.1px;
  }

  .gsvproc__visual-copy h3 span {
    display: block;
    color: #79daf8;
  }

  .gsvproc__visual-copy p {
    margin: 0;
    color: #93a9bc;
    font-size: 12px;
    line-height: 1.72;
  }

  /* MAPA VISUAL: UNA SOLA COMPOSICIÓN, SIN ELEMENTOS ENCIMADOS */

  .gsvproc__stage {
    position: relative;
    overflow: hidden;
    margin-top: 18px;
    padding: 19px;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 19px;
    background:
      radial-gradient(circle at 50% 48%, rgba(37,216,244,.07), transparent 57%),
      rgba(2,16,29,.74);
  }

  .gsvproc__stage-grid {
    position: absolute;
    inset: 0;
    opacity: .38;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(37,216,244,.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.045) 1px, transparent 1px);
    background-size: 24px 24px;
  }

  .gsvproc__stage-scan {
    position: absolute;
    z-index: 1;
    top: 10%;
    right: 14px;
    left: 14px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.82), transparent);
    box-shadow: 0 0 16px rgba(37,216,244,.48);
    animation: gsvprocScan 5s ease-in-out infinite;
  }

  .gsvproc__stage-phases {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
  }

  .gsvproc__phase {
    min-width: 0;
    min-height: 245px;
    display: flex;
    flex-direction: column;
    padding: 15px;
    border: 1px solid rgba(92,174,255,.16);
    border-radius: 17px;
    background:
      radial-gradient(circle at 50% 16%, rgba(37,216,244,.05), transparent 39%),
      rgba(4,20,38,.93);
    box-shadow: 0 14px 28px rgba(0,0,0,.2);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvproc__phase:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.30);
  }

  .gsvproc__phase-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 9px;
  }

  .gsvproc__phase-head > span {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 11px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.09);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvproc__phase-head small {
    color: #718ba1;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .45px;
    text-align: right;
  }

  .gsvproc__phase-visual {
    height: 92px;
    display: grid;
    place-items: center;
    margin: 14px 0 11px;
    border: 1px solid rgba(37,216,244,.09);
    border-radius: 14px;
    color: rgba(37,216,244,.80);
    background: rgba(37,216,244,.024);
    animation: gsvpFloat 4s ease-in-out infinite;
  }

  .gsvproc__phase:nth-child(2) .gsvproc__phase-visual { animation-delay: -.8s; }
  .gsvproc__phase:nth-child(3) .gsvproc__phase-visual { animation-delay: -1.6s; }
  .gsvproc__phase:nth-child(4) .gsvproc__phase-visual { animation-delay: -2.4s; }

  .gsvproc__phase:nth-child(3) .gsvproc__phase-visual {
    color: rgba(255,200,92,.82);
    border-color: rgba(255,200,92,.10);
    background: rgba(255,200,92,.024);
  }

  .gsvproc__phase:nth-child(4) .gsvproc__phase-visual {
    color: rgba(72,217,154,.82);
    border-color: rgba(72,217,154,.10);
    background: rgba(72,217,154,.024);
  }

  .gsvproc__phase-visual svg {
    width: 92px;
    height: 62px;
    stroke-width: 2;
    filter: drop-shadow(0 0 8px rgba(37,216,244,.14));
  }

  .gsvproc__phase > strong {
    color: #eef6fc;
    font-size: 14px;
    line-height: 1.38;
  }

  .gsvproc__phase > p {
    margin: 7px 0 0;
    color: #849bae;
    font-size: 10px;
    line-height: 1.58;
  }

  .gsvproc__visual-note {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 12px;
    padding: 12px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 13px;
    background: rgba(255,200,92,.022);
  }

  .gsvproc__visual-note > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvproc__visual-note svg {
    width: 21px;
    height: 21px;
  }

  .gsvproc__visual-note p {
    margin: 0;
    color: #a59a86;
    font-size: 10px;
    line-height: 1.6;
  }

  /* OCHO ETAPAS */

  .gsvproc__steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-top: 18px;
  }

  .gsvproc__step {
    position: relative;
    min-width: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    padding: 15px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 17px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.04), transparent 38%),
      rgba(255,255,255,.022);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvproc__step:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.28);
  }

  .gsvproc__step-number {
    position: absolute;
    top: 10px;
    right: 12px;
    color: rgba(255,255,255,.07);
    font-size: 20px;
    font-weight: 850;
  }

  .gsvproc__step-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvproc__step-icon--yellow {
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvproc__step-icon--green {
    color: var(--gsvp-green);
    background: rgba(72,217,154,.065);
  }

  .gsvproc__step-icon svg {
    width: 23px;
    height: 23px;
  }

  .gsvproc__step small,
  .gsvproc__step h3,
  .gsvproc__step p {
    display: block;
  }

  .gsvproc__step small {
    color: #718ba1;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .35px;
  }

  .gsvproc__step h3 {
    margin: 5px 0 0;
    color: #fff;
    font-size: 13px;
    line-height: 1.38;
  }

  .gsvproc__step p {
    margin: 7px 0 0;
    color: #899fb1;
    font-size: 10px;
    line-height: 1.56;
  }

  .gsvproc__step-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 9px;
  }

  .gsvproc__step-tags span {
    padding: 5px 7px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 999px;
    color: #7891a4;
    background: rgba(255,255,255,.015);
    font-size: 7px;
  }

  /* CONDICIONES */

  .gsvproc__section {
    margin-top: clamp(34px, 5vw, 54px);
  }

  .gsvproc__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
    gap: 28px;
    align-items: end;
    margin-bottom: 18px;
  }

  .gsvproc__section-head small {
    display: block;
    color: #73d8f5;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .6px;
  }

  .gsvproc__section-head h3 {
    margin: 6px 0 0;
    color: #fff;
    font-size: clamp(25px, 3vw, 35px);
    line-height: 1.2;
  }

  .gsvproc__section-head > p {
    margin: 0;
    color: #8da5b8;
    font-size: 12px;
    line-height: 1.7;
  }

  .gsvproc__condition-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
  }

  .gsvproc__condition {
    position: relative;
    min-width: 0;
    padding: 17px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 17px;
    background: rgba(255,255,255,.021);
  }

  .gsvproc__condition-number {
    position: absolute;
    top: 11px;
    right: 13px;
    color: rgba(255,255,255,.07);
    font-size: 20px;
    font-weight: 850;
  }

  .gsvproc__condition-head {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
  }

  .gsvproc__condition-head > span {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.06);
  }

  .gsvproc__condition--yellow .gsvproc__condition-head > span {
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.06);
  }

  .gsvproc__condition--green .gsvproc__condition-head > span {
    color: var(--gsvp-green);
    background: rgba(72,217,154,.06);
  }

  .gsvproc__condition-head svg {
    width: 23px;
    height: 23px;
  }

  .gsvproc__condition-head small {
    display: block;
    color: #708a9f;
    font-size: 8px;
    font-weight: 800;
  }

  .gsvproc__condition-head h4 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
  }

  .gsvproc__condition > p {
    margin: 13px 0 0;
    color: #8da3b5;
    font-size: 10px;
    line-height: 1.65;
  }

  .gsvproc__condition-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
    padding: 6px 8px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 999px;
    color: #7892a5;
    background: rgba(255,255,255,.015);
    font-size: 8px;
  }

  .gsvproc__condition-status i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--gsvp-cyan);
  }

  .gsvproc__condition--yellow .gsvproc__condition-status i { background: var(--gsvp-yellow); }
  .gsvproc__condition--green .gsvproc__condition-status i { background: var(--gsvp-green); }

  /* INTERVENCIÓN PREVIA + ACCESORIOS */

  .gsvproc__dual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(34px, 5vw, 54px);
  }

  .gsvproc__panel {
    min-width: 0;
    padding: 20px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 20px;
    background: rgba(255,255,255,.02);
  }

  .gsvproc__panel-head {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvproc__panel-head > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.06);
  }

  .gsvproc__panel--accessories .gsvproc__panel-head > span {
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.06);
  }

  .gsvproc__panel-head svg {
    width: 25px;
    height: 25px;
  }

  .gsvproc__panel-head small {
    display: block;
    color: #728da1;
    font-size: 9px;
    font-weight: 800;
  }

  .gsvproc__panel-head h3 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
  }

  .gsvproc__panel > p {
    margin: 14px 0 0;
    color: #8ca2b5;
    font-size: 11px;
    line-height: 1.7;
  }

  .gsvproc__mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
  }

  .gsvproc__mini-grid article {
    min-width: 0;
    padding: 11px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.015);
  }

  .gsvproc__mini-grid span,
  .gsvproc__mini-grid small,
  .gsvproc__mini-grid strong {
    display: block;
  }

  .gsvproc__mini-grid span {
    color: var(--gsvp-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvproc__mini-grid small {
    margin-top: 5px;
    color: #70899d;
    font-size: 8px;
  }

  .gsvproc__mini-grid strong {
    margin-top: 3px;
    color: #d7e4ed;
    font-size: 10px;
    line-height: 1.45;
  }

  /* GARANTÍA */

  .gsvproc__warranty {
    margin-top: clamp(34px, 5vw, 54px);
    padding: 22px;
    border: 1px solid rgba(72,217,154,.16);
    border-radius: 22px;
    background:
      radial-gradient(circle at 100% 0%, rgba(72,217,154,.055), transparent 37%),
      rgba(255,255,255,.02);
  }

  .gsvproc__warranty-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr);
    gap: 26px;
    align-items: end;
  }

  .gsvproc__warranty-title {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvproc__warranty-title > span {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: var(--gsvp-green);
    background: rgba(72,217,154,.07);
  }

  .gsvproc__warranty-title svg {
    width: 27px;
    height: 27px;
  }

  .gsvproc__warranty-title small {
    display: block;
    color: #7ed9b1;
    font-size: 9px;
    font-weight: 800;
  }

  .gsvproc__warranty-title h3 {
    margin: 4px 0 0;
    color: #fff;
    font-size: clamp(22px, 2.6vw, 31px);
    line-height: 1.25;
  }

  .gsvproc__warranty-head > p {
    margin: 0;
    color: #91ab9f;
    font-size: 11px;
    line-height: 1.72;
  }

  .gsvproc__warranty-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    margin-top: 18px;
  }

  .gsvproc__warranty-card {
    min-width: 0;
    padding: 17px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 16px;
    background: rgba(255,255,255,.017);
  }

  .gsvproc__warranty-card--covered { border-color: rgba(72,217,154,.13); }
  .gsvproc__warranty-card--excluded { border-color: rgba(255,107,118,.11); }

  .gsvproc__warranty-card-head {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
  }

  .gsvproc__warranty-card-head > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvp-green);
    background: rgba(72,217,154,.06);
  }

  .gsvproc__warranty-card--excluded .gsvproc__warranty-card-head > span {
    color: var(--gsvp-red);
    background: rgba(255,107,118,.055);
  }

  .gsvproc__warranty-card-head svg {
    width: 22px;
    height: 22px;
  }

  .gsvproc__warranty-card-head small {
    display: block;
    color: #76908a;
    font-size: 8px;
    font-weight: 800;
  }

  .gsvproc__warranty-card-head h4 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 13px;
  }

  .gsvproc__warranty-card ul {
    display: grid;
    gap: 8px;
    margin-top: 14px;
  }

  .gsvproc__warranty-card li {
    display: grid;
    grid-template-columns: 7px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    color: #899fb0;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvproc__warranty-card li i {
    width: 6px;
    height: 6px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--gsvp-green);
  }

  .gsvproc__warranty-card--excluded li i { background: var(--gsvp-red); }

  /* ADVERTENCIAS */

  .gsvproc__warnings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
  }

  .gsvproc__warnings article {
    min-width: 0;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 11px;
    padding: 13px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 14px;
    background: rgba(255,255,255,.015);
  }

  .gsvproc__warnings article > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvp-yellow);
    background: rgba(255,200,92,.055);
  }

  .gsvproc__warnings svg {
    width: 22px;
    height: 22px;
  }

  .gsvproc__warnings small,
  .gsvproc__warnings strong {
    display: block;
  }

  .gsvproc__warnings small {
    color: #8195a4;
    font-size: 8px;
  }

  .gsvproc__warnings strong {
    margin-top: 3px;
    color: #dfe9f0;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsvproc__warnings p {
    margin: 5px 0 0;
    color: #8296a5;
    font-size: 9px;
    line-height: 1.55;
  }

  /* RESUMEN */

  .gsvproc__summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 9px;
    margin-top: 18px;
  }

  .gsvproc__summary article {
    min-width: 0;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.016);
  }

  .gsvproc__summary article > span {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.06);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvproc__summary small,
  .gsvproc__summary strong {
    display: block;
  }

  .gsvproc__summary small {
    color: #70899d;
    font-size: 7px;
  }

  .gsvproc__summary strong {
    margin-top: 2px;
    color: #d7e4ed;
    font-size: 9px;
    line-height: 1.4;
  }

  /* CTA */

  .gsvproc__cta {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    align-items: center;
    margin-top: 22px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 18px;
    background: rgba(255,255,255,.02);
  }

  .gsvproc__cta-copy {
    min-width: 0;
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvproc__cta-copy > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvp-cyan);
    background: rgba(37,216,244,.06);
  }

  .gsvproc__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvproc__cta-copy small,
  .gsvproc__cta-copy strong {
    display: block;
  }

  .gsvproc__cta-copy small {
    color: #7c93a5;
    font-size: 9px;
  }

  .gsvproc__cta-copy strong {
    margin-top: 3px;
    color: #eef6fb;
    font-size: 13px;
    line-height: 1.45;
  }

  .gsvproc__cta-copy p {
    margin: 5px 0 0;
    color: #8499aa;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvproc__cta-actions {
    display: flex;
    gap: 9px;
    flex: 0 0 auto;
  }

  .gsvproc__cta-button {
    min-height: 56px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    border-radius: 13px;
    text-decoration: none !important;
    font-size: 10px;
    font-weight: 800;
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
  }

  .gsvproc__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvproc__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvproc__cta-button i {
    font-size: 17px;
    line-height: 1;
    font-style: normal;
  }

  .gsvproc__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvproc__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvproc__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0 !important;
    flex: 0 0 auto;
  }

  .gsvproc__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvproc__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvproc__disclaimer {
    margin: 17px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  @keyframes gsvprocPulse {
    0%, 100% { opacity: .45; transform: scale(.86); }
    50% { opacity: 1; transform: scale(1.13); }
  }

  @keyframes gsvpFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
  }

  @keyframes gsvprocScan {
    0%, 100% { top: 10%; opacity: .14; }
    50% { top: 88%; opacity: .85; }
  }

  @media (max-width: 1080px) {
    .gsvproc__stage-phases,
    .gsvproc__steps {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvproc__condition-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvproc__summary {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (max-width: 850px) {
    .gsvproc__header,
    .gsvproc__visual-copy,
    .gsvproc__section-head,
    .gsvproc__warranty-head {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .gsvproc__dual,
    .gsvproc__warnings {
      grid-template-columns: 1fr;
    }

    .gsvproc__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvproc__cta-actions {
      width: 100%;
    }

    .gsvproc__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }
  }

  @media (max-width: 700px) {
    #proceso-servicio-video {
      padding: 66px 17px 72px;
    }

    .gsvproc__laboratory {
      padding: 19px 17px;
      border-radius: 23px;
      backdrop-filter: none;
    }

    .gsvproc__stage {
      padding: 15px;
    }

    .gsvproc__stage-phases,
    .gsvproc__steps,
    .gsvproc__condition-grid,
    .gsvproc__warranty-grid,
    .gsvproc__summary {
      grid-template-columns: 1fr;
    }

    .gsvproc__phase {
      min-height: 0;
    }

    .gsvproc__mini-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 480px) {
    .gsvproc__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvproc__laboratory-top {
      align-items: flex-start;
    }

    .gsvproc__laboratory-top > strong {
      display: none;
    }

    .gsvproc__phase-visual {
      height: 84px;
    }

    .gsvproc__phase-visual svg {
      width: 84px;
      height: 56px;
    }

    .gsvproc__step,
    .gsvproc__condition-head,
    .gsvproc__panel-head,
    .gsvproc__warranty-title,
    .gsvproc__warranty-card-head,
    .gsvproc__warnings article,
    .gsvproc__cta-copy {
      grid-template-columns: 1fr;
    }

    .gsvproc__cta-actions {
      flex-direction: column;
    }
  }

  @media (max-width: 390px) {
    #proceso-servicio-video {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvproc__stage {
      padding-right: 12px;
      padding-left: 12px;
    }

    .gsvproc__phase,
    .gsvproc__step,
    .gsvproc__condition,
    .gsvproc__panel,
    .gsvproc__warranty {
      padding: 13px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #proceso-servicio-video,
    #proceso-servicio-video *,
    #proceso-servicio-video *::before,
    #proceso-servicio-video *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* ===== FAQS ===== */
#preguntas-video {
    --gsvf-cyan: #25d8f4;
    --gsvf-blue: #347fff;
    --gsvf-green: #48d99a;
    --gsvf-yellow: #ffc85c;
    --gsvf-red: #ff6b76;
    --gsvf-white: #ffffff;
    --gsvf-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(76px, 8vw, 116px) 24px;
    color: var(--gsvf-white);
    background:
      radial-gradient(circle at 7% 12%, rgba(37,216,244,.10), transparent 31%),
      radial-gradient(circle at 94% 86%, rgba(52,127,255,.15), transparent 36%),
      linear-gradient(118deg, #020914 0%, #05162c 52%, #0a2247 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

  #preguntas-video *,
  #preguntas-video *::before,
  #preguntas-video *::after {
    box-sizing: border-box;
  }

  #preguntas-video svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvfaq__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.21) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvfaq__glow {
    position: absolute;
    z-index: -2;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(140px);
    pointer-events: none;
  }

  .gsvfaq__glow--cyan {
    top: 4%;
    left: -220px;
    opacity: .10;
    background: var(--gsvf-cyan);
  }

  .gsvfaq__glow--blue {
    right: -220px;
    bottom: 6%;
    opacity: .14;
    background: var(--gsvf-blue);
  }

  .gsvfaq__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* ENCABEZADO */

  .gsvfaq__header {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .75fr);
    gap: clamp(34px, 6vw, 76px);
    align-items: end;
    margin-bottom: clamp(38px, 5vw, 58px);
  }

  .gsvfaq__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.55px;
    text-transform: uppercase;
  }

  .gsvfaq__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvf-green);
    box-shadow:
      0 0 0 6px rgba(72,217,154,.08),
      0 0 17px rgba(72,217,154,.62);
    animation: gsvfPulse 2.4s ease-in-out infinite;
  }

  .gsvfaq__header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(39px, 4.5vw, 62px);
    line-height: 1.04;
    font-weight: 850;
    letter-spacing: -.052em;
  }

  .gsvfaq__header h2 span {
    display: block;
    margin-top: 5px;
    color: transparent;
    background: linear-gradient(90deg, #74ddff, var(--gsvf-cyan) 48%, #6593ff);
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvfaq__header-info > p {
    margin: 0;
    color: var(--gsvf-text);
    font-size: 15px;
    line-height: 1.75;
  }

  .gsvfaq__header-note {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-top: 18px;
    padding: 13px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 15px;
    background: rgba(37,216,244,.025);
  }

  .gsvfaq__header-note > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvfaq__header-note svg {
    width: 22px;
    height: 22px;
  }

  .gsvfaq__header-note small,
  .gsvfaq__header-note strong {
    display: block;
  }

  .gsvfaq__header-note small {
    color: #7292a8;
    font-size: 10px;
  }

  .gsvfaq__header-note strong {
    margin-top: 3px;
    color: #dcecff;
    font-size: 12px;
    line-height: 1.45;
  }

  /* PANEL VISUAL SUPERIOR */

  .gsvfaq__visual {
    position: relative;
    overflow: hidden;
    padding: 23px;
    border: 1px solid rgba(92,174,255,.19);
    border-radius: 26px;
    background:
      radial-gradient(circle at 50% 42%, rgba(37,216,244,.10), transparent 45%),
      linear-gradient(145deg, rgba(15,48,84,.73), rgba(4,17,35,.95));
    box-shadow:
      0 29px 68px rgba(0,0,0,.25),
      inset 0 1px 0 rgba(255,255,255,.05);
  }

  .gsvfaq__visual-grid {
    position: absolute;
    inset: 0;
    opacity: .40;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvfaq__visual > *:not(.gsvfaq__visual-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvfaq__visual-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(92,174,255,.12);
  }

  .gsvfaq__visual-top > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvfaq__visual-top > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvf-green);
    box-shadow: 0 0 11px rgba(72,217,154,.68);
    animation: gsvfPulse 2.4s ease-in-out infinite;
  }

  .gsvfaq__visual-top > strong {
    color: #718ca5;
    font-size: 9px;
    letter-spacing: .9px;
  }

  .gsvfaq__visual-copy {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
    gap: 28px;
    align-items: end;
    margin-top: 20px;
  }

  .gsvfaq__visual-copy small {
    display: block;
    color: #70d7f4;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .7px;
  }

  .gsvfaq__visual-copy h3 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.12;
    letter-spacing: -1.05px;
  }

  .gsvfaq__visual-copy h3 span {
    display: block;
    color: #79daf8;
  }

  .gsvfaq__visual-copy p {
    margin: 0;
    color: #93a9bc;
    font-size: 12px;
    line-height: 1.72;
  }

  .gsvfaq__stage {
    position: relative;
    overflow: hidden;
    margin-top: 18px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 18px;
    background: rgba(1,15,28,.58);
  }

  .gsvfaq__stage-scan {
    position: absolute;
    z-index: 1;
    top: 10%;
    right: 14px;
    left: 14px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.82), transparent);
    box-shadow: 0 0 16px rgba(37,216,244,.48);
    animation: gsvfScan 5s ease-in-out infinite;
  }

  .gsvfaq__stage-cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
  }

  .gsvfaq__stage-card {
    min-width: 0;
    min-height: 218px;
    display: flex;
    flex-direction: column;
    padding: 14px;
    border: 1px solid rgba(92,174,255,.14);
    border-radius: 16px;
    background:
      radial-gradient(circle at 50% 16%, rgba(37,216,244,.05), transparent 38%),
      rgba(4,20,38,.92);
    box-shadow: 0 14px 27px rgba(0,0,0,.18);
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvfaq__stage-card:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.29);
  }

  .gsvfaq__stage-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }

  .gsvfaq__stage-card-head > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 11px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.09);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvfaq__stage-card-head small {
    color: #718ba1;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .42px;
    text-align: right;
  }

  .gsvfaq__stage-silhouette {
    height: 82px;
    display: grid;
    place-items: center;
    margin: 13px 0 10px;
    border: 1px solid rgba(37,216,244,.09);
    border-radius: 14px;
    color: rgba(37,216,244,.80);
    background: rgba(37,216,244,.024);
    animation: gsvfFloat 4s ease-in-out infinite;
  }

  .gsvfaq__stage-card:nth-child(2) .gsvfaq__stage-silhouette { animation-delay: -.8s; }
  .gsvfaq__stage-card:nth-child(3) .gsvfaq__stage-silhouette { animation-delay: -1.6s; }
  .gsvfaq__stage-card:nth-child(4) .gsvfaq__stage-silhouette { animation-delay: -2.4s; }

  .gsvfaq__stage-card:nth-child(3) .gsvfaq__stage-silhouette {
    color: rgba(255,200,92,.82);
    border-color: rgba(255,200,92,.09);
    background: rgba(255,200,92,.023);
  }

  .gsvfaq__stage-card:nth-child(4) .gsvfaq__stage-silhouette {
    color: rgba(72,217,154,.82);
    border-color: rgba(72,217,154,.09);
    background: rgba(72,217,154,.023);
  }

  .gsvfaq__stage-silhouette svg {
    width: 86px;
    height: 58px;
    stroke-width: 2;
    filter: drop-shadow(0 0 8px rgba(37,216,244,.14));
  }

  .gsvfaq__stage-card > strong {
    color: #eef6fc;
    font-size: 13px;
    line-height: 1.4;
  }

  .gsvfaq__stage-card > p {
    margin: 7px 0 0;
    color: #849bae;
    font-size: 10px;
    line-height: 1.56;
  }

  .gsvfaq__facts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-top: 12px;
  }

  .gsvfaq__facts article {
    min-width: 0;
    padding: 11px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.017);
  }

  .gsvfaq__facts span,
  .gsvfaq__facts small,
  .gsvfaq__facts strong {
    display: block;
  }

  .gsvfaq__facts span {
    color: var(--gsvf-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvfaq__facts small {
    margin-top: 5px;
    color: #70899d;
    font-size: 8px;
  }

  .gsvfaq__facts strong {
    margin-top: 3px;
    color: #d1dfe9;
    font-size: 10px;
    line-height: 1.42;
  }

  .gsvfaq__visual-warning {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 11px;
    padding: 11px;
    border: 1px solid rgba(255,200,92,.12);
    border-radius: 12px;
    background: rgba(255,200,92,.022);
  }

  .gsvfaq__visual-warning > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvf-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvfaq__visual-warning svg {
    width: 21px;
    height: 21px;
  }

  .gsvfaq__visual-warning p {
    margin: 0;
    color: #a59a86;
    font-size: 10px;
    line-height: 1.6;
  }

  /* CATEGORÍAS FAQ */

  .gsvfaq__questions {
    margin-top: clamp(30px, 5vw, 48px);
  }

  .gsvfaq__category + .gsvfaq__category {
    margin-top: 26px;
  }

  .gsvfaq__category-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    margin-bottom: 11px;
    padding: 14px;
    border: 1px solid rgba(92,174,255,.10);
    border-radius: 16px;
    background: rgba(255,255,255,.019);
  }

  .gsvfaq__category-head > div {
    min-width: 0;
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
  }

  .gsvfaq__category-head > div > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.065);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvfaq__category-head small {
    display: block;
    color: #6e899f;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .65px;
  }

  .gsvfaq__category-head h3 {
    margin: 3px 0 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
  }

  .gsvfaq__category-head > strong {
    flex: 0 0 auto;
    color: #6f899e;
    font-size: 10px;
  }

  .gsvfaq__faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    align-items: start;
  }

  .gsvfaq__item {
    overflow: hidden;
    min-width: 0;
    border: 1px solid rgba(92,174,255,.13);
    border-radius: 16px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.035), transparent 32%),
      rgba(255,255,255,.021);
    transition: border-color 220ms ease, background-color 220ms ease;
  }

  .gsvfaq__item[open] {
    border-color: rgba(37,216,244,.30);
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.065), transparent 35%),
      rgba(255,255,255,.027);
  }

  .gsvfaq__item summary {
    min-width: 0;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 34px;
    gap: 12px;
    align-items: center;
    padding: 15px;
    cursor: pointer;
    list-style: none;
    outline: none;
  }

  .gsvfaq__item summary::-webkit-details-marker {
    display: none;
  }

  .gsvfaq__item summary:focus-visible {
    outline: 2px solid var(--gsvf-cyan);
    outline-offset: -3px;
    border-radius: 14px;
  }

  .gsvfaq__item-number {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.065);
    font-size: 9px;
    font-weight: 850;
  }

  .gsvfaq__item summary small,
  .gsvfaq__item summary strong {
    display: block;
  }

  .gsvfaq__item summary small {
    color: #6f8ba1;
    font-size: 9px;
    letter-spacing: .5px;
  }

  .gsvfaq__item summary strong {
    margin-top: 4px;
    color: #e4eff8;
    font-size: 13px;
    line-height: 1.45;
  }

  .gsvfaq__item summary > i {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(92,174,255,.12);
    border-radius: 10px;
    background: rgba(255,255,255,.018);
  }

  .gsvfaq__item summary > i::before,
  .gsvfaq__item summary > i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    border-radius: 2px;
    background: var(--gsvf-cyan);
    transform: translate(-50%, -50%);
    transition: transform 220ms ease;
  }

  .gsvfaq__item summary > i::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }

  .gsvfaq__item[open] summary > i::after {
    transform: translate(-50%, -50%) rotate(0);
  }

  .gsvfaq__answer {
    padding: 0 18px 18px 69px;
    border-top: 1px solid rgba(92,174,255,.08);
  }

  .gsvfaq__answer > p {
    margin: 14px 0 0;
    color: #91a7ba;
    font-size: 12px;
    line-height: 1.75;
  }

  .gsvfaq__answer > p strong {
    color: #dce9f3;
  }

  .gsvfaq__answer-note,
  .gsvfaq__answer-warning {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 13px;
    padding: 11px;
    border-radius: 12px;
  }

  .gsvfaq__answer-note {
    border: 1px solid rgba(37,216,244,.12);
    background: rgba(37,216,244,.025);
  }

  .gsvfaq__answer-note--green {
    border-color: rgba(72,217,154,.13);
    background: rgba(72,217,154,.025);
  }

  .gsvfaq__answer-warning {
    border: 1px solid rgba(255,200,92,.13);
    background: rgba(255,200,92,.023);
  }

  .gsvfaq__answer-note > span,
  .gsvfaq__answer-warning > span {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 11px;
  }

  .gsvfaq__answer-note > span {
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.065);
  }

  .gsvfaq__answer-note--green > span {
    color: var(--gsvf-green);
    background: rgba(72,217,154,.065);
  }

  .gsvfaq__answer-warning > span {
    color: var(--gsvf-yellow);
    background: rgba(255,200,92,.065);
  }

  .gsvfaq__answer-note svg,
  .gsvfaq__answer-warning svg {
    width: 20px;
    height: 20px;
  }

  .gsvfaq__answer-note strong,
  .gsvfaq__answer-warning strong {
    color: #c3d8e4;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvfaq__answer-warning strong {
    color: #d8cdb8;
  }

  .gsvfaq__answer-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 13px;
  }

  .gsvfaq__answer-tags span {
    padding: 7px 9px;
    border: 1px solid rgba(92,174,255,.10);
    border-radius: 999px;
    color: #8099ad;
    background: rgba(255,255,255,.019);
    font-size: 9px;
    line-height: 1;
  }

  .gsvfaq__coverage {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 13px;
  }

  .gsvfaq__coverage article {
    min-width: 0;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.016);
  }

  .gsvfaq__coverage article > span {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--gsvf-green);
    background: rgba(72,217,154,.06);
  }

  .gsvfaq__coverage article:last-child > span {
    color: var(--gsvf-red);
    background: rgba(255,107,118,.055);
  }

  .gsvfaq__coverage svg {
    width: 20px;
    height: 20px;
  }

  .gsvfaq__coverage small,
  .gsvfaq__coverage strong {
    display: block;
  }

  .gsvfaq__coverage small {
    color: #76908a;
    font-size: 8px;
  }

  .gsvfaq__coverage strong {
    margin-top: 3px;
    color: #d5e2e9;
    font-size: 9px;
    line-height: 1.45;
  }

  /* RESUMEN */

  .gsvfaq__summary {
    margin-top: clamp(32px, 5vw, 50px);
    padding: 20px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 20px;
    background: rgba(255,255,255,.02);
  }

  .gsvfaq__summary-copy {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvfaq__summary-copy > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.06);
  }

  .gsvfaq__summary-copy svg {
    width: 25px;
    height: 25px;
  }

  .gsvfaq__summary-copy small {
    display: block;
    color: #728da1;
    font-size: 9px;
    font-weight: 800;
  }

  .gsvfaq__summary-copy h3 {
    margin: 4px 0 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
  }

  .gsvfaq__summary-copy p {
    margin: 6px 0 0;
    color: #8ca2b5;
    font-size: 11px;
    line-height: 1.65;
  }

  .gsvfaq__summary-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
  }

  .gsvfaq__summary-grid article {
    min-width: 0;
    padding: 11px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.015);
  }

  .gsvfaq__summary-grid span,
  .gsvfaq__summary-grid small,
  .gsvfaq__summary-grid strong {
    display: block;
  }

  .gsvfaq__summary-grid span {
    color: var(--gsvf-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvfaq__summary-grid small {
    margin-top: 5px;
    color: #70899d;
    font-size: 8px;
  }

  .gsvfaq__summary-grid strong {
    margin-top: 3px;
    color: #d7e4ed;
    font-size: 9px;
    line-height: 1.4;
  }

  /* CTA */

  .gsvfaq__cta {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    align-items: center;
    margin-top: 20px;
    padding: 18px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 18px;
    background: rgba(255,255,255,.02);
  }

  .gsvfaq__cta-copy {
    min-width: 0;
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvfaq__cta-copy > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvf-cyan);
    background: rgba(37,216,244,.06);
  }

  .gsvfaq__cta-copy svg {
    width: 24px;
    height: 24px;
  }

  .gsvfaq__cta-copy small,
  .gsvfaq__cta-copy strong {
    display: block;
  }

  .gsvfaq__cta-copy small {
    color: #7c93a5;
    font-size: 9px;
  }

  .gsvfaq__cta-copy strong {
    margin-top: 3px;
    color: #eef6fb;
    font-size: 13px;
    line-height: 1.45;
  }

  .gsvfaq__cta-copy p {
    margin: 5px 0 0;
    color: #8499aa;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsvfaq__cta-actions {
    display: flex;
    gap: 9px;
    flex: 0 0 auto;
  }

  .gsvfaq__cta-button {
    min-height: 56px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    border-radius: 13px;
    text-decoration: none !important;
    font-size: 10px;
    font-weight: 800;
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
  }

  .gsvfaq__cta-button:hover {
    transform: translateY(-3px);
  }

  .gsvfaq__cta-button:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvfaq__cta-button i {
    font-size: 17px;
    line-height: 1;
    font-style: normal;
  }

  .gsvfaq__cta-button--whatsapp {
    border: 1px solid rgba(72,217,154,.26);
    color: #fff !important;
    background: linear-gradient(110deg, #089d65, #13c982);
    box-shadow: 0 16px 32px rgba(16,191,124,.18);
  }

  .gsvfaq__cta-button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 22px 40px rgba(16,191,124,.27);
  }

  .gsvfaq__cta-button--whatsapp .gs-global-wa-icon {
    margin-right: 0 !important;
    flex: 0 0 auto;
  }

  .gsvfaq__cta-button--secondary {
    border: 1px solid rgba(92,174,255,.15);
    color: #d9e7f2 !important;
    background: rgba(255,255,255,.025);
  }

  .gsvfaq__cta-button--secondary:hover {
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvfaq__disclaimer {
    margin: 17px auto 0;
    color: #60788d;
    font-size: 9px;
    line-height: 1.65;
    text-align: center;
  }

  @keyframes gsvfPulse {
    0%, 100% { opacity: .45; transform: scale(.86); }
    50% { opacity: 1; transform: scale(1.13); }
  }

  @keyframes gsvfFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
  }

  @keyframes gsvfScan {
    0%, 100% { top: 10%; opacity: .14; }
    50% { top: 88%; opacity: .84; }
  }

  @media (max-width: 1080px) {
    .gsvfaq__stage-cards {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvfaq__facts {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvfaq__summary-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (max-width: 850px) {
    .gsvfaq__header,
    .gsvfaq__visual-copy {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .gsvfaq__faq-grid {
      grid-template-columns: 1fr;
    }

    .gsvfaq__cta {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvfaq__cta-actions {
      width: 100%;
    }

    .gsvfaq__cta-button {
      flex: 1 1 0;
      justify-content: space-between;
    }
  }

  @media (max-width: 700px) {
    #preguntas-video {
      padding: 66px 17px 72px;
    }

    .gsvfaq__visual {
      padding: 19px 17px;
      border-radius: 23px;
    }

    .gsvfaq__stage {
      padding: 14px;
    }

    .gsvfaq__stage-cards,
    .gsvfaq__facts,
    .gsvfaq__summary-grid {
      grid-template-columns: 1fr;
    }

    .gsvfaq__stage-card {
      min-height: 0;
    }

    .gsvfaq__cta-actions {
      flex-direction: column;
    }
  }

  @media (max-width: 520px) {
    .gsvfaq__header h2 {
      font-size: clamp(36px, 11vw, 49px);
    }

    .gsvfaq__visual-top {
      align-items: flex-start;
    }

    .gsvfaq__visual-top > strong,
    .gsvfaq__category-head > strong {
      display: none;
    }

    .gsvfaq__item summary {
      grid-template-columns: 38px minmax(0, 1fr) 32px;
      gap: 9px;
      padding: 13px;
    }

    .gsvfaq__item-number {
      width: 38px;
      height: 38px;
    }

    .gsvfaq__item summary strong {
      font-size: 12px;
    }

    .gsvfaq__answer {
      padding: 0 14px 15px;
    }

    .gsvfaq__coverage,
    .gsvfaq__summary-copy,
    .gsvfaq__cta-copy {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 390px) {
    #preguntas-video {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvfaq__visual,
    .gsvfaq__stage {
      padding-right: 12px;
      padding-left: 12px;
    }

    .gsvfaq__stage-card {
      padding: 13px;
    }

    .gsvfaq__item summary {
      grid-template-columns: 35px minmax(0, 1fr) 30px;
      gap: 8px;
      padding: 11px;
    }

    .gsvfaq__item-number {
      width: 35px;
      height: 35px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #preguntas-video,
    #preguntas-video *,
    #preguntas-video *::before,
    #preguntas-video *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* ===== CTA ===== */
#cta-video {
    --gsvct-cyan: #25d8f4;
    --gsvct-blue: #347fff;
    --gsvct-green: #48d99a;
    --gsvct-yellow: #ffc85c;
    --gsvct-red: #ff6b76;
    --gsvct-white: #ffffff;
    --gsvct-text: #b7c9dc;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: clamp(76px, 8vw, 116px) 24px;
    color: var(--gsvct-white);
    background:
      radial-gradient(circle at 8% 14%, rgba(37,216,244,.11), transparent 31%),
      radial-gradient(circle at 94% 82%, rgba(52,127,255,.18), transparent 36%),
      linear-gradient(125deg, #020914 0%, #061831 50%, #0b2a54 100%);
    font-family: "Poppins", Arial, sans-serif;
    scroll-margin-top: 90px;
  }

  #cta-video *,
  #cta-video *::before,
  #cta-video *::after {
    box-sizing: border-box;
  }

  #cta-video svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsvcta__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: .25;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(56,146,220,.075) 1px, transparent 1px),
      linear-gradient(90deg, rgba(56,146,220,.075) 1px, transparent 1px),
      radial-gradient(circle, rgba(37,216,244,.20) 1px, transparent 1.5px);
    background-size: 72px 72px, 72px 72px, 36px 36px;
  }

  .gsvcta__glow {
    position: absolute;
    z-index: -2;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    filter: blur(145px);
    pointer-events: none;
  }

  .gsvcta__glow--cyan {
    top: 2%;
    left: -240px;
    opacity: .12;
    background: var(--gsvct-cyan);
  }

  .gsvcta__glow--blue {
    right: -230px;
    bottom: 1%;
    opacity: .16;
    background: var(--gsvct-blue);
  }

  .gsvcta__wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  /* PANEL PRINCIPAL */

  .gsvcta__panel {
    position: relative;
    overflow: hidden;
    padding: clamp(25px, 4vw, 44px);
    border: 1px solid rgba(92,174,255,.24);
    border-radius: 32px;
    background:
      radial-gradient(circle at 78% 34%, rgba(37,216,244,.09), transparent 35%),
      linear-gradient(145deg, rgba(15,48,84,.82), rgba(3,15,31,.96));
    box-shadow:
      0 35px 80px rgba(0,0,0,.32),
      inset 0 1px 0 rgba(255,255,255,.06),
      0 0 50px rgba(37,216,244,.04);
    backdrop-filter: blur(16px);
  }

  .gsvcta__panel-grid {
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(66,157,220,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(66,157,220,.05) 1px, transparent 1px);
    background-size: 30px 30px;
  }

  .gsvcta__panel > *:not(.gsvcta__panel-grid) {
    position: relative;
    z-index: 2;
  }

  .gsvcta__status {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(92,174,255,.12);
  }

  .gsvcta__status > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #7ed9b1;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .8px;
  }

  .gsvcta__status > span i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsvct-green);
    box-shadow:
      0 0 0 5px rgba(72,217,154,.07),
      0 0 14px rgba(72,217,154,.65);
    animation: gsvctPulse 2.4s ease-in-out infinite;
  }

  .gsvcta__status > strong {
    color: #6f899e;
    font-size: 9px;
    letter-spacing: .95px;
  }

  /* ENCABEZADO / CTA */

  .gsvcta__main {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
    gap: clamp(30px, 5vw, 58px);
    align-items: start;
    margin-top: clamp(32px, 5vw, 52px);
  }

  .gsvcta__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    color: #83dcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.55px;
    text-transform: uppercase;
  }

  .gsvcta__eyebrow > span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsvct-cyan);
    box-shadow:
      0 0 0 6px rgba(37,216,244,.08),
      0 0 17px rgba(37,216,244,.62);
  }

  .gsvcta__content h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 5.2vw, 70px);
    line-height: 1.01;
    font-weight: 860;
    letter-spacing: -.055em;
  }

  .gsvcta__content h2 span {
    display: block;
    margin-top: 6px;
    color: transparent;
    background: linear-gradient(90deg, #74ddff, var(--gsvct-cyan) 45%, #7196ff);
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsvcta__lead {
    max-width: 690px;
    margin: 22px 0 0;
    color: var(--gsvct-text);
    font-size: 15px;
    line-height: 1.8;
  }

  .gsvcta__request {
    margin-top: 24px;
    padding: 17px;
    border: 1px solid rgba(37,216,244,.13);
    border-radius: 18px;
    background: rgba(37,216,244,.025);
  }

  .gsvcta__request-head {
    display: grid;
    grid-template-columns: 47px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
  }

  .gsvcta__request-head > span {
    width: 47px;
    height: 47px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--gsvct-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvcta__request-head svg {
    width: 23px;
    height: 23px;
  }

  .gsvcta__request-head small,
  .gsvcta__request-head strong {
    display: block;
  }

  .gsvcta__request-head small {
    color: #7191a7;
    font-size: 10px;
    letter-spacing: .6px;
  }

  .gsvcta__request-head strong {
    margin-top: 4px;
    color: #e2eff9;
    font-size: 13px;
  }

  .gsvcta__request-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
  }

  .gsvcta__request-grid article {
    min-width: 0;
    display: grid;
    grid-template-columns: 35px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 11px;
    background: rgba(255,255,255,.018);
  }

  .gsvcta__request-grid article > span {
    width: 35px;
    height: 35px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: var(--gsvct-cyan);
    background: rgba(37,216,244,.06);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvcta__request-grid small,
  .gsvcta__request-grid strong {
    display: block;
  }

  .gsvcta__request-grid small {
    color: #657f94;
    font-size: 8px;
  }

  .gsvcta__request-grid strong {
    margin-top: 3px;
    color: #cbdce8;
    font-size: 10px;
    line-height: 1.4;
  }

  .gsvcta__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
  }

  .gsvcta__button {
    min-width: 0;
    min-height: 64px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    padding: 12px 15px;
    border-radius: 15px;
    text-decoration: none !important;
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
  }

  .gsvcta__button:hover {
    transform: translateY(-4px);
  }

  .gsvcta__button:focus-visible,
  .gsvcta__contact-link:focus-visible,
  .gsvcta__map:focus-visible,
  .gsvcta__location-actions a:focus-visible {
    outline: 3px solid rgba(126,229,255,.92);
    outline-offset: 4px;
  }

  .gsvcta__button small,
  .gsvcta__button strong {
    display: block;
  }

  .gsvcta__button small {
    font-size: 8px;
    letter-spacing: .62px;
  }

  .gsvcta__button strong {
    margin-top: 3px;
    font-size: 12px;
  }

  .gsvcta__button > i {
    font-size: 18px;
    font-style: normal;
  }

  .gsvcta__button--whatsapp {
    border: 1px solid rgba(72,217,154,.28);
    color: #fff !important;
    background: linear-gradient(110deg, #078f5c, #12c57e);
    box-shadow: 0 18px 38px rgba(16,191,124,.20);
  }

  .gsvcta__button--whatsapp:hover {
    color: #fff !important;
    box-shadow: 0 24px 44px rgba(16,191,124,.29);
  }

  .gsvcta__button--whatsapp small {
    color: rgba(255,255,255,.68);
  }

  .gsvcta__button--whatsapp .gs-global-wa-icon {
    margin-right: 0 !important;
    flex: 0 0 auto;
  }

  .gsvcta__button--phone {
    border: 1px solid rgba(92,174,255,.18);
    color: #e6f0fa !important;
    background: rgba(255,255,255,.032);
  }

  .gsvcta__button--phone:hover {
    color: #fff !important;
    border-color: rgba(37,216,244,.36);
  }

  .gsvcta__button--phone small {
    color: #718ba1;
  }

  .gsvcta__response-note {
    margin: 12px 0 0;
    color: #7890a3;
    font-size: 10px;
    line-height: 1.6;
  }

  /* VISUAL LIMPIO */

  .gsvcta__visual {
    min-width: 0;
    overflow: hidden;
    padding: 20px;
    border: 1px solid rgba(92,174,255,.15);
    border-radius: 24px;
    background:
      radial-gradient(circle at 50% 40%, rgba(37,216,244,.09), transparent 43%),
      rgba(0,11,24,.39);
  }

  .gsvcta__visual-status {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .gsvcta__visual-status > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #7ed9b1;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .6px;
  }

  .gsvcta__visual-status > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsvct-green);
    box-shadow: 0 0 10px rgba(72,217,154,.65);
    animation: gsvctPulse 2.4s ease-in-out infinite;
  }

  .gsvcta__visual-status > strong {
    color: #6b859a;
    font-size: 8px;
    letter-spacing: .85px;
  }

  .gsvcta__stage {
    position: relative;
    overflow: hidden;
    margin-top: 12px;
    padding: 16px;
    border: 1px solid rgba(92,174,255,.10);
    border-radius: 17px;
    background:
      radial-gradient(circle at 50% 45%, rgba(37,216,244,.065), transparent 55%),
      rgba(2,16,29,.58);
  }

  .gsvcta__stage-grid {
    position: absolute;
    inset: 0;
    opacity: .38;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(37,216,244,.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.045) 1px, transparent 1px);
    background-size: 22px 22px;
  }

  .gsvcta__stage-scan {
    position: absolute;
    z-index: 1;
    top: 10%;
    right: 12px;
    left: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37,216,244,.82), transparent);
    box-shadow: 0 0 15px rgba(37,216,244,.50);
    animation: gsvctScan 5s ease-in-out infinite;
  }

  .gsvcta__screen {
    position: relative;
    z-index: 2;
    height: 175px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(118,194,222,.23);
    border-radius: 16px;
    background:
      linear-gradient(rgba(37,216,244,.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37,216,244,.04) 1px, transparent 1px),
      linear-gradient(145deg, rgba(6,30,53,.90), rgba(2,11,23,.96));
    background-size: 16px 16px, 16px 16px, auto;
    animation: gsvctFloat 4.6s ease-in-out infinite;
  }

  .gsvcta__screen svg {
    width: min(255px, 84%);
    height: 135px;
    color: rgba(37,216,244,.82);
    stroke-width: 2;
    filter: drop-shadow(0 0 10px rgba(37,216,244,.13));
  }

  .gsvcta__visual-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
  }

  .gsvcta__visual-steps article {
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(92,174,255,.08);
    border-radius: 11px;
    background: rgba(255,255,255,.016);
  }

  .gsvcta__visual-steps span,
  .gsvcta__visual-steps small,
  .gsvcta__visual-steps strong {
    display: block;
  }

  .gsvcta__visual-steps span {
    color: var(--gsvct-cyan);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvcta__visual-steps small {
    margin-top: 4px;
    color: #6f899d;
    font-size: 7px;
  }

  .gsvcta__visual-steps strong {
    margin-top: 3px;
    color: #d5e3ed;
    font-size: 9px;
    line-height: 1.4;
  }

  .gsvcta__contact-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
  }

  .gsvcta__contact-list article {
    min-width: 0;
    padding: 11px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 12px;
    background: rgba(255,255,255,.018);
  }

  .gsvcta__contact-list small,
  .gsvcta__contact-list strong,
  .gsvcta__contact-list a {
    display: block;
  }

  .gsvcta__contact-list small {
    color: #6d869a;
    font-size: 8px;
  }

  .gsvcta__contact-list strong,
  .gsvcta__contact-list a {
    margin-top: 4px;
    color: #cbdbe7;
    font-size: 9px;
    line-height: 1.45;
    text-decoration: none;
  }

  .gsvcta__contact-list a:hover {
    color: var(--gsvct-cyan);
  }

  .gsvcta__map {
    min-height: 53px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    margin-top: 9px;
    padding: 10px 12px;
    border: 1px solid rgba(37,216,244,.15);
    border-radius: 13px;
    color: #e3eff8 !important;
    background: rgba(37,216,244,.026);
    text-decoration: none !important;
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvcta__map:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.34);
    color: #fff !important;
  }

  .gsvcta__map small,
  .gsvcta__map strong {
    display: block;
  }

  .gsvcta__map small {
    color: #718ba1;
    font-size: 8px;
  }

  .gsvcta__map strong {
    margin-top: 3px;
    font-size: 10px;
  }

  .gsvcta__map > i {
    font-size: 17px;
    font-style: normal;
  }

  /* CONDICIONES */

  .gsvcta__service {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-top: clamp(32px, 4vw, 48px);
    padding-top: 22px;
    border-top: 1px solid rgba(92,174,255,.12);
  }

  .gsvcta__service article {
    min-width: 0;
    padding: 16px;
    border: 1px solid rgba(92,174,255,.11);
    border-radius: 17px;
    background:
      radial-gradient(circle at 100% 0%, rgba(37,216,244,.035), transparent 36%),
      rgba(255,255,255,.02);
  }

  .gsvcta__service-number {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    margin-bottom: 11px;
    border-radius: 11px;
    color: var(--gsvct-cyan);
    background: rgba(37,216,244,.065);
    font-size: 8px;
    font-weight: 850;
  }

  .gsvcta__service article:nth-child(3) .gsvcta__service-number,
  .gsvcta__service article:nth-child(4) .gsvcta__service-number {
    color: var(--gsvct-green);
    background: rgba(72,217,154,.065);
  }

  .gsvcta__service small,
  .gsvcta__service strong {
    display: block;
  }

  .gsvcta__service small {
    color: #718ba1;
    font-size: 8px;
    letter-spacing: .5px;
  }

  .gsvcta__service strong {
    margin-top: 4px;
    color: #e0edf7;
    font-size: 11px;
    line-height: 1.45;
  }

  .gsvcta__service p {
    margin: 6px 0 0;
    color: #8299ad;
    font-size: 9px;
    line-height: 1.6;
  }

  .gsvcta__previous {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(350px, .8fr);
    gap: 20px;
    align-items: center;
    margin-top: 14px;
    padding: 18px;
    border: 1px solid rgba(255,200,92,.14);
    border-radius: 18px;
    background:
      radial-gradient(circle at 0 50%, rgba(255,200,92,.045), transparent 28%),
      rgba(1,12,26,.35);
  }

  .gsvcta__previous-copy {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
  }

  .gsvcta__previous-copy > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: var(--gsvct-yellow);
    background: rgba(255,200,92,.07);
  }

  .gsvcta__previous-copy svg {
    width: 25px;
    height: 25px;
  }

  .gsvcta__previous-copy small,
  .gsvcta__previous-copy strong {
    display: block;
  }

  .gsvcta__previous-copy small {
    color: #a69574;
    font-size: 9px;
    letter-spacing: .5px;
  }

  .gsvcta__previous-copy strong {
    margin-top: 3px;
    color: #e7dcc8;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsvcta__previous-copy p {
    margin: 5px 0 0;
    color: #a39884;
    font-size: 10px;
    line-height: 1.62;
  }

  .gsvcta__previous-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
  }

  .gsvcta__previous-tags span {
    padding: 7px 9px;
    border: 1px solid rgba(255,200,92,.10);
    border-radius: 999px;
    color: #a99b80;
    background: rgba(255,200,92,.024);
    font-size: 9px;
    line-height: 1;
  }

  /* UBICACIÓN */

  .gsvcta__location {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: center;
    margin-top: 14px;
    padding: 19px;
    border: 1px solid rgba(37,216,244,.14);
    border-radius: 19px;
    background:
      radial-gradient(circle at 0 50%, rgba(37,216,244,.045), transparent 26%),
      rgba(1,12,26,.36);
  }

  .gsvcta__location-copy {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .gsvcta__location-copy > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: var(--gsvct-cyan);
    background: rgba(37,216,244,.07);
  }

  .gsvcta__location-copy svg {
    width: 26px;
    height: 26px;
  }

  .gsvcta__location-copy small {
    display: block;
    color: #718ba1;
    font-size: 9px;
    letter-spacing: .55px;
  }

  .gsvcta__location-copy h3 {
    margin: 4px 0 0;
    color: #e4f1fd;
    font-size: 15px;
    line-height: 1.4;
  }

  .gsvcta__location-copy p {
    margin: 5px 0 0;
    color: #8299ad;
    font-size: 10px;
    line-height: 1.6;
  }

  .gsvcta__location-actions {
    flex: 0 0 auto;
    display: flex;
    gap: 9px;
  }

  .gsvcta__location-actions a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    border: 1px solid rgba(92,174,255,.15);
    border-radius: 12px;
    color: #dce9f3 !important;
    background: rgba(255,255,255,.025);
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
    transition: transform 220ms ease, border-color 220ms ease;
  }

  .gsvcta__location-actions a:first-child {
    border-color: rgba(37,216,244,.20);
    background: rgba(37,216,244,.035);
  }

  .gsvcta__location-actions a:hover {
    transform: translateY(-3px);
    border-color: rgba(37,216,244,.38);
    color: #fff !important;
  }

  .gsvcta__location-actions i {
    font-size: 16px;
    font-style: normal;
  }

  /* AVISO */

  .gsvcta__disclaimer {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    margin-top: 14px;
    padding: 13px;
    border: 1px solid rgba(92,174,255,.09);
    border-radius: 14px;
    background: rgba(255,255,255,.017);
  }

  .gsvcta__disclaimer > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: #7794a9;
    background: rgba(255,255,255,.025);
  }

  .gsvcta__disclaimer svg {
    width: 21px;
    height: 21px;
  }

  .gsvcta__disclaimer p {
    margin: 0;
    color: #73899a;
    font-size: 9px;
    line-height: 1.68;
  }

  .gsvcta__disclaimer strong {
    color: #9caeba;
  }

  @keyframes gsvctPulse {
    0%, 100% { opacity: .45; transform: scale(.86); }
    50% { opacity: 1; transform: scale(1.13); }
  }

  @keyframes gsvctFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
  }

  @keyframes gsvctScan {
    0%, 100% { top: 10%; opacity: .18; }
    50% { top: 88%; opacity: .90; }
  }

  @media (max-width: 1080px) {
    .gsvcta__main {
      grid-template-columns: 1fr;
    }

    .gsvcta__service {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsvcta__previous {
      grid-template-columns: 1fr;
    }

    .gsvcta__location {
      flex-direction: column;
      align-items: stretch;
    }

    .gsvcta__location-actions {
      width: 100%;
    }

    .gsvcta__location-actions a {
      flex: 1 1 0;
      justify-content: space-between;
    }
  }

  @media (max-width: 760px) {
    #cta-video {
      padding: 66px 17px 72px;
    }

    .gsvcta__panel {
      padding: 21px 17px;
      border-radius: 25px;
      backdrop-filter: none;
    }

    .gsvcta__status {
      align-items: flex-start;
    }

    .gsvcta__status > strong {
      display: none;
    }

    .gsvcta__actions,
    .gsvcta__service,
    .gsvcta__contact-list {
      grid-template-columns: 1fr;
    }

    .gsvcta__location-actions {
      flex-direction: column;
    }
  }

  @media (max-width: 520px) {
    .gsvcta__content h2 {
      font-size: clamp(39px, 12vw, 54px);
    }

    .gsvcta__request-grid,
    .gsvcta__visual-steps {
      grid-template-columns: 1fr;
    }

    .gsvcta__request-head,
    .gsvcta__previous-copy,
    .gsvcta__location-copy,
    .gsvcta__disclaimer {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 390px) {
    #cta-video {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvcta__panel {
      padding-right: 14px;
      padding-left: 14px;
    }

    .gsvcta__stage {
      padding-right: 12px;
      padding-left: 12px;
    }

    .gsvcta__button {
      padding-right: 11px;
      padding-left: 11px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #cta-video,
    #cta-video *,
    #cta-video *::before,
    #cta-video *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }
