/* GS FRONTEND CORE 0.45.0 · CONTROLES */

/* =========================================================
   CONTROLES · HERO
   ID: controles-inicio
   ========================================================= */

.gsctlh {
    --gsctlh-bg: #031224;
--gsctlh-text: #f7f9fc;
    --gsctlh-muted: #aab9ca;
    --gsctlh-cyan: #25d4f4;
--gsctlh-red: #ff405b;
    --gsctlh-green: #45dc8d;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 90px 24px 0;
    color: var(--gsctlh-text);
    background:
      radial-gradient(circle at 12% 15%, rgba(255, 64, 91, 0.15), transparent 29%),
      radial-gradient(circle at 85% 15%, rgba(37, 212, 244, 0.18), transparent 31%),
      linear-gradient(135deg, #020d1c 0%, var(--gsctlh-bg) 48%, #05283b 100%);
    font-family: var(--gs-font-sans);
  }

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

  .gsctlh-grid {
    position: absolute;
    inset: 0;
    z-index: -3;
    opacity: 0.34;
    background-image:
      linear-gradient(rgba(72, 155, 205, 0.08) 1px, transparent 1px),
      linear-gradient(90deg, rgba(72, 155, 205, 0.08) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to bottom, black, transparent 88%);
    pointer-events: none;
  }

  .gsctlh-glow {
    position: absolute;
    z-index: -2;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    filter: blur(90px);
    opacity: 0.2;
    pointer-events: none;
  }

  .gsctlh-glow--red {
    top: -100px;
    left: -120px;
    background: var(--gsctlh-red);
  }

  .gsctlh-glow--cyan {
    right: -100px;
    bottom: 40px;
    background: var(--gsctlh-cyan);
  }

  .gsctlh-wrap {
    width: min(1240px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.03fr) minmax(480px, 0.97fr);
    align-items: center;
    gap: 62px;
  }

  .gsctlh-content {
    position: relative;
    z-index: 3;
    padding-bottom: 76px;
  }

  .gsctlh-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 23px;
    padding: 10px 15px;
    border: 1px solid rgba(37, 212, 244, 0.24);
    border-radius: 999px;
    background: rgba(5, 24, 42, 0.74);
    color: #bcefff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025);
  }

  .gsctlh-badge__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gsctlh-green);
    box-shadow:
      0 0 0 5px rgba(69, 220, 141, 0.12),
      0 0 14px rgba(69, 220, 141, 0.65);
  }

  .gsctlh-title {
    max-width: 760px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(46px, 5.4vw, 78px);
    line-height: 0.99;
    font-weight: 900;
    letter-spacing: -0.055em;
  }

  .gsctlh-title span {
    display: block;
    margin-top: 9px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctlh-red) 0%,
      #ff7587 31%,
      #a8b8ca 60%,
      var(--gsctlh-cyan) 100%
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctlh-description {
    max-width: 700px;
    margin: 27px 0 0;
    color: var(--gsctlh-muted);
    font-size: clamp(16px, 1.5vw, 19px);
    line-height: 1.72;
  }

  .gsctlh-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 31px;
  }

  .gsctlh-btn {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 22px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease,
      border-color 0.25s ease,
      background 0.25s ease;
  }

  .gsctlh-btn:hover {
    transform: translateY(-3px);
  }

  .gsctlh-btn svg {
    width: 19px;
    height: 19px;
    fill: currentColor;
  }

  .gsctlh-btn--primary {
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 15px 32px rgba(37, 180, 235, 0.22),
      0 0 20px rgba(37, 212, 244, 0.10);
  }

  .gsctlh-btn--primary:hover {
    box-shadow:
      0 19px 38px rgba(37, 180, 235, 0.31),
      0 0 28px rgba(37, 212, 244, 0.15);
  }

  .gsctlh-btn--secondary {
    color: #e9f7ff !important;
    border: 1px solid rgba(37, 212, 244, 0.35);
    background: rgba(6, 29, 49, 0.72);
  }

  .gsctlh-btn--secondary:hover {
    border-color: rgba(37, 212, 244, 0.75);
    background: rgba(9, 43, 68, 0.9);
    box-shadow: 0 0 24px rgba(37, 212, 244, 0.11);
  }

  .gsctlh-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 22px;
    margin-top: 34px;
  }

  .gsctlh-trust__item {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .gsctlh-check {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 1px solid rgba(37, 212, 244, 0.25);
    background: rgba(37, 212, 244, 0.08);
    color: var(--gsctlh-cyan);
    font-size: 13px;
    font-weight: 900;
  }

  .gsctlh-trust__item strong,
  .gsctlh-trust__item small {
    display: block;
  }

  .gsctlh-trust__item strong {
    margin-bottom: 2px;
    color: #f4f8fd;
    font-size: 13px;
    line-height: 1.3;
  }

  .gsctlh-trust__item small {
    color: #8197ad;
    font-size: 11px;
    line-height: 1.35;
  }

  .gsctlh-reception {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
    align-items: center;
    margin-top: 19px;
    color: #8da4b8;
    font-size: 11px;
    line-height: 1.55;
  }

  .gsctlh-reception span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .gsctlh-reception i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsctlh-green);
    box-shadow: 0 0 10px rgba(69, 220, 141, 0.58);
  }

  .gsctlh-visual {
    position: relative;
    min-height: 625px;
    z-index: 2;
  }

  .gsctlh-visual::before {
    content: "";
    position: absolute;
    top: 82px;
    right: 0;
    bottom: 66px;
    left: 15px;
    border: 1px solid rgba(95, 171, 218, 0.22);
    border-radius: 37px;
    background:
      linear-gradient(145deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01)),
      rgba(4, 21, 38, 0.62);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.04),
      0 27px 70px rgba(0, 0, 0, 0.31);
    backdrop-filter: blur(10px);
  }

  .gsctlh-visual::after {
    content: "";
    position: absolute;
    top: 108px;
    right: 25px;
    bottom: 91px;
    left: 40px;
    border: 1px solid rgba(37, 212, 244, 0.1);
    border-radius: 29px;
    background-image:
      linear-gradient(rgba(37, 212, 244, 0.06) 1px, transparent 1px),
      linear-gradient(90deg, rgba(37, 212, 244, 0.06) 1px, transparent 1px);
    background-size: 48px 48px;
  }

  .gsctlh-orbit {
    position: absolute;
    z-index: 0;
    border-radius: 50%;
    pointer-events: none;
  }

  .gsctlh-orbit--one {
    top: 145px;
    left: 76px;
    width: 410px;
    height: 410px;
    border: 1px dashed rgba(37, 212, 244, 0.17);
  }

  .gsctlh-orbit--two {
    top: 205px;
    left: 136px;
    width: 290px;
    height: 290px;
    border: 1px solid rgba(255, 64, 91, 0.12);
  }

  .gsctlh-controller {
    position: absolute;
    z-index: 3;
    overflow: hidden;
    border: 1px solid rgba(114, 188, 232, 0.25);
    border-radius: 25px;
    background:
      linear-gradient(145deg, rgba(19, 49, 75, 0.96), rgba(5, 20, 36, 0.94));
    box-shadow:
      0 22px 50px rgba(0, 0, 0, 0.34),
      inset 0 1px 0 rgba(255, 255, 255, 0.055);
    transition:
      transform 0.35s ease,
      border-color 0.35s ease,
      box-shadow 0.35s ease;
  }

  .gsctlh-controller:hover {
    z-index: 7;
    transform: translateY(-8px) scale(1.025);
    border-color: rgba(37, 212, 244, 0.58);
    box-shadow:
      0 28px 65px rgba(0, 0, 0, 0.45),
      0 0 32px rgba(37, 212, 244, 0.12);
  }

  .gsctlh-controller__top {
    position: absolute;
    z-index: 2;
    top: 13px;
    left: 15px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(2, 14, 27, 0.8);
    color: #eaf4fb;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  .gsctlh-controller__light {
    width: 7px;
    height: 7px;
    border-radius: 50%;
  }

  .gsctlh-controller__light--blue {
    background: #4d8fff;
    box-shadow: 0 0 10px #4d8fff;
  }

  .gsctlh-controller__light--green {
    background: #55df88;
    box-shadow: 0 0 10px #55df88;
  }

  .gsctlh-controller__light--red {
    background: #ff5269;
    box-shadow: 0 0 10px #ff5269;
  }

  .gsctlh-controller img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    user-select: none;
    pointer-events: none;
  }

  .gsctlh-controller--playstation {
    top: 34px;
    right: 1px;
    width: 390px;
    height: 390px;
  }

  .gsctlh-controller--playstation img {
  padding: 32px 12px 4px;
  opacity: 1;
  filter:
    brightness(0)
    invert(91%)
    sepia(14%)
    saturate(720%)
    hue-rotate(153deg)
    brightness(110%)
    contrast(112%)
    drop-shadow(0 15px 22px rgba(0, 0, 0, 0.32));
}

  .gsctlh-controller--xbox {
    top: 286px;
    left: 0;
    width: 290px;
    height: 290px;
    transform: rotate(-4deg);
  }

  .gsctlh-controller--xbox:hover {
    transform: translateY(-8px) rotate(-1deg) scale(1.025);
  }

  .gsctlh-controller--xbox img {
    padding: 23px 7px 0;
    filter:
      brightness(0)
      invert(90%)
      sepia(18%)
      saturate(850%)
      hue-rotate(151deg)
      brightness(106%)
      drop-shadow(0 14px 18px rgba(0, 0, 0, 0.28));
  }

  .gsctlh-controller--nintendo {
    right: 21px;
    bottom: 3px;
    width: 285px;
    height: 285px;
    transform: rotate(4deg);
  }

  .gsctlh-controller--nintendo:hover {
    transform: translateY(-8px) rotate(1deg) scale(1.025);
  }

  .gsctlh-controller--nintendo img {
    padding: 20px 6px 2px;
    filter:
      brightness(0)
      invert(91%)
      sepia(14%)
      saturate(720%)
      hue-rotate(153deg)
      brightness(103%)
      drop-shadow(0 14px 18px rgba(0, 0, 0, 0.28));
  }

  .gsctlh-status {
    position: absolute;
    z-index: 8;
    left: 70px;
    bottom: 28px;
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 275px;
    padding: 13px 15px;
    border: 1px solid rgba(37, 212, 244, 0.2);
    border-radius: 17px;
    background: rgba(3, 17, 31, 0.88);
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.26);
    backdrop-filter: blur(9px);
  }

  .gsctlh-status__pulse {
    width: 12px;
    height: 12px;
    flex: 0 0 12px;
    border-radius: 50%;
    background: var(--gsctlh-green);
    box-shadow:
      0 0 0 6px rgba(69, 220, 141, 0.11),
      0 0 16px rgba(69, 220, 141, 0.55);
  }

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

  .gsctlh-status strong {
    margin-bottom: 3px;
    color: #f2f7fc;
    font-size: 12px;
  }

  .gsctlh-status small {
    color: #869cb1;
    font-size: 10px;
    line-height: 1.4;
  }

  .gsctlh-services {
    position: relative;
    z-index: 9;
    width: min(1240px, 100%);
    margin: 2px auto 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border: 1px solid rgba(90, 167, 214, 0.2);
    border-bottom: 0;
    border-radius: 26px 26px 0 0;
    background: rgba(5, 23, 40, 0.88);
    box-shadow:
      0 -8px 35px rgba(0, 0, 0, 0.15),
      inset 0 1px 0 rgba(255, 255, 255, 0.035);
    backdrop-filter: blur(12px);
  }

  .gsctlh-services__item {
    min-height: 94px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 23px 27px;
  }

  .gsctlh-services__item + .gsctlh-services__item {
    border-left: 1px solid rgba(90, 167, 214, 0.16);
  }

  .gsctlh-services__item svg {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    fill: none;
    stroke: var(--gsctlh-cyan);
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 9px rgba(37, 212, 244, 0.24));
  }

  .gsctlh-services__item strong,
  .gsctlh-services__item span {
    display: block;
  }

  .gsctlh-services__item strong {
    margin-bottom: 4px;
    color: #f1f7fc;
    font-size: 14px;
  }

  .gsctlh-services__item span {
    color: #8299af;
    font-size: 11px;
    line-height: 1.4;
  }

  .gsctlh a:focus-visible {
    outline: 2px solid var(--gsctlh-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1100px) {
    .gsctlh {
      padding-top: 72px;
    }

    .gsctlh-wrap {
      grid-template-columns: 1fr;
      gap: 12px;
    }

    .gsctlh-content {
      padding-bottom: 25px;
      text-align: center;
    }

    .gsctlh-description {
      margin-right: auto;
      margin-left: auto;
    }

    .gsctlh-actions,
    .gsctlh-trust,
    .gsctlh-reception {
      justify-content: center;
    }

    .gsctlh-visual {
      width: min(650px, 100%);
      margin: 0 auto;
    }

    .gsctlh-services {
      margin-top: 10px;
    }
  }

  @media (max-width: 740px) {
    .gsctlh {
      padding: 58px 16px 0;
    }

    .gsctlh-title {
      font-size: clamp(39px, 11vw, 57px);
    }

    .gsctlh-description {
      font-size: 16px;
    }

    .gsctlh-visual {
      min-height: 590px;
    }

    .gsctlh-controller--playstation {
      top: 48px;
      right: 50%;
      width: 360px;
      height: 360px;
      transform: translateX(50%);
    }

    .gsctlh-controller--playstation:hover {
      transform: translateX(50%) translateY(-8px) scale(1.02);
    }

    .gsctlh-controller--xbox {
      top: 330px;
      left: 2%;
      width: 245px;
      height: 245px;
    }

    .gsctlh-controller--nintendo {
      right: 2%;
      bottom: 0;
      width: 235px;
      height: 235px;
    }

    .gsctlh-status {
      left: 50%;
      bottom: 12px;
      width: min(310px, 88%);
      max-width: none;
      transform: translateX(-50%);
    }

    .gsctlh-services {
      grid-template-columns: 1fr;
      border-radius: 23px 23px 0 0;
    }

    .gsctlh-services__item + .gsctlh-services__item {
      border-top: 1px solid rgba(90, 167, 214, 0.16);
      border-left: 0;
    }
  }

  @media (max-width: 520px) {
    .gsctlh-actions {
      flex-direction: column;
    }

    .gsctlh-btn {
      width: 100%;
    }

    .gsctlh-trust {
      flex-direction: column;
      align-items: flex-start;
      width: fit-content;
      margin-right: auto;
      margin-left: auto;
    }

    .gsctlh-visual {
      min-height: 520px;
    }

    .gsctlh-controller--playstation {
      top: 55px;
      width: 300px;
      height: 300px;
    }

    .gsctlh-controller--xbox {
      top: 300px;
      width: 190px;
      height: 190px;
    }

    .gsctlh-controller--nintendo {
      width: 185px;
      height: 185px;
    }

    .gsctlh-status {
      bottom: 5px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctlh *,
    .gsctlh *::before,
    .gsctlh *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   CONTROLES · MARCAS Y MODELOS
   ID: marcas-controles
   ========================================================= */

.gsctm {
    --gsctm-bg: #f6f8fb;
    --gsctm-card: #ffffff;
    --gsctm-text: #101b2a;
    --gsctm-muted: #617184;
    --gsctm-line: #dce5ee;
--gsctm-cyan: #20cceb;
    --gsctm-red: #ff405b;
    --gsctm-green: #39c978;

    position: relative;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 104px 24px;
    color: var(--gsctm-text);
    background:
      radial-gradient(
        circle at 4% 8%,
        rgba(255, 64, 91, 0.07),
        transparent 25%
      ),
      radial-gradient(
        circle at 96% 90%,
        rgba(32, 204, 235, 0.08),
        transparent 27%
      ),
      var(--gsctm-bg);
    font-family: var(--gs-font-sans);
  }

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

  .gsctm::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.4;
    background-image:
      linear-gradient(
        rgba(51, 111, 158, 0.035) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(51, 111, 158, 0.035) 1px,
        transparent 1px
      );
    background-size: 58px 58px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 14%,
      black 82%,
      transparent
    );
  }

  .gsctm-wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctm-header {
    max-width: 850px;
    margin: 0 auto 53px;
    text-align: center;
  }

  .gsctm-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(20, 125, 245, 0.15);
    border-radius: 999px;
    color: #0f68bd;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 8px 24px rgba(28, 63, 97, 0.05);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctm-eyebrow span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctm-green);
    box-shadow:
      0 0 0 5px rgba(57, 201, 120, 0.1),
      0 0 12px rgba(57, 201, 120, 0.44);
  }

  .gsctm-header h2 {
    margin: 0;
    color: var(--gsctm-text);
    font-size: clamp(38px, 4.3vw, 62px);
    line-height: 1.03;
    font-weight: 900;
    letter-spacing: -0.048em;
  }

  .gsctm-header h2 span {
    display: block;
    margin-top: 6px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctm-red),
      #ad7eaa 48%,
      var(--gsctm-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctm-header p {
    max-width: 760px;
    margin: 22px auto 0;
    color: var(--gsctm-muted);
    font-size: 17px;
    line-height: 1.75;
  }

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

  .gsctm-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--gsctm-line);
    border-radius: 27px;
    background: var(--gsctm-card);
    box-shadow:
      0 18px 48px rgba(34, 63, 91, 0.08),
      0 3px 12px rgba(34, 63, 91, 0.035);
    transition:
      transform 0.3s ease,
      box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  .gsctm-card:hover {
    transform: translateY(-7px);
    border-color: rgba(20, 125, 245, 0.26);
    box-shadow:
      0 27px 65px rgba(34, 63, 91, 0.13),
      0 0 32px rgba(32, 204, 235, 0.07);
  }

  .gsctm-card__visual {
    position: relative;
    min-height: 330px;
    overflow: hidden;
    border-bottom: 1px solid rgba(205, 219, 231, 0.8);
    background:
      linear-gradient(
        rgba(47, 116, 167, 0.045) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(47, 116, 167, 0.045) 1px,
        transparent 1px
      ),
      linear-gradient(145deg, #f7fafc, #edf3f8);
    background-size:
      38px 38px,
      38px 38px,
      auto;
  }

  .gsctm-card__visual::after {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(83, 151, 197, 0.12);
    border-radius: 20px;
    pointer-events: none;
  }

  .gsctm-platform {
    position: absolute;
    z-index: 4;
    top: 20px;
    left: 20px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid rgba(111, 152, 182, 0.17);
    border-radius: 999px;
    color: #34485c;
    background: rgba(255, 255, 255, 0.87);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(38, 75, 106, 0.06);
    backdrop-filter: blur(8px);
  }

  .gsctm-platform i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
  }

  .gsctm-card--xbox .gsctm-platform i {
    background: #39c978;
    box-shadow: 0 0 10px rgba(57, 201, 120, 0.7);
  }

  .gsctm-card--playstation .gsctm-platform i {
    background: #257ef5;
    box-shadow: 0 0 10px rgba(37, 126, 245, 0.65);
  }

  .gsctm-card--nintendo .gsctm-platform i {
    background: #ff405b;
    box-shadow: 0 0 10px rgba(255, 64, 91, 0.65);
  }

  .gsctm-card__glow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 220px;
    height: 220px;
    transform: translate(-50%, -45%);
    border-radius: 50%;
    filter: blur(45px);
    opacity: 0.13;
  }

  .gsctm-card--xbox .gsctm-card__glow {
    background: #39c978;
  }

  .gsctm-card--playstation .gsctm-card__glow {
    background: #257ef5;
  }

  .gsctm-card--nintendo .gsctm-card__glow {
    background: #ff405b;
  }

  .gsctm-card__visual img {
    position: absolute;
    max-width: none;
    z-index: 2;
    top: 52%;
    left: 50%;
    width: 106%;
    height: 106%;
    display: block;
    object-fit: contain;
    transform: translate(-50%, -50%);
    user-select: none;
    pointer-events: none;
    transition: transform 0.35s ease;
    filter:
      brightness(0)
      saturate(100%)
      invert(19%)
      sepia(18%)
      saturate(1220%)
      hue-rotate(164deg)
      brightness(87%)
      contrast(93%)
      drop-shadow(0 16px 20px rgba(24, 52, 74, 0.11));
  }

  .gsctm-card:hover .gsctm-card__visual img {
    transform: translate(-50%, -52%) scale(1.035);
  }

  .gsctm-card__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 31px 28px 28px;
  }

  .gsctm-card__content h3 {
    margin: 0;
    color: #102033;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 900;
    letter-spacing: -0.025em;
  }

  .gsctm-card__content > p {
    margin: 14px 0 21px;
    color: var(--gsctm-muted);
    font-size: 14px;
    line-height: 1.68;
  }

  .gsctm-card__content ul {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .gsctm-card__content li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #384b5f;
    font-size: 13px;
    line-height: 1.45;
  }

  .gsctm-card__content li span {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: grid;
    place-items: center;
    margin-top: -1px;
    border-radius: 50%;
    color: #0e93c0;
    background: rgba(32, 204, 235, 0.09);
    font-size: 10px;
    font-weight: 900;
  }

  .gsctm-card__note {
    margin-top: auto;
    padding: 13px 14px;
    border-left: 3px solid rgba(32, 204, 235, 0.7);
    border-radius: 0 11px 11px 0;
    color: #698094;
    background: #f6f9fc;
    font-size: 11px;
    line-height: 1.5;
  }

  .gsctm-bottom {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    margin-top: 28px;
    padding: 22px 24px;
    border: 1px solid var(--gsctm-line);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 14px 35px rgba(34, 63, 91, 0.06);
    backdrop-filter: blur(10px);
  }

  .gsctm-bottom__icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(32, 204, 235, 0.18);
    border-radius: 15px;
    color: #1597bd;
    background: rgba(32, 204, 235, 0.07);
  }

  .gsctm-bottom__icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctm-bottom strong {
    display: block;
    margin-bottom: 4px;
    color: #102033;
    font-size: 15px;
  }

  .gsctm-bottom p {
    margin: 0;
    color: var(--gsctm-muted);
    font-size: 12px;
    line-height: 1.5;
  }

  .gsctm-bottom > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 12px 18px;
    border-radius: 999px;
    color: #ffffff !important;
    background: linear-gradient(110deg, #147df5, #20bfe2);
    box-shadow: 0 12px 25px rgba(20, 125, 245, 0.17);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctm-bottom > a:hover {
    transform: translateY(-2px);
    box-shadow: 0 17px 30px rgba(20, 125, 245, 0.25);
  }

  .gsctm a:focus-visible {
    outline: 2px solid var(--gsctm-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1100px) {
    .gsctm-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsctm-card:last-child {
      grid-column: 1 / -1;
      width: calc(50% - 11px);
      justify-self: center;
    }
  }

  @media (max-width: 720px) {
    .gsctm {
      padding: 79px 17px;
    }

    .gsctm-header {
      margin-bottom: 39px;
    }

    .gsctm-header p {
      font-size: 15px;
    }

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

    .gsctm-card:last-child {
      grid-column: auto;
      width: 100%;
    }

    .gsctm-card__visual {
      min-height: 315px;
    }

    .gsctm-bottom {
      grid-template-columns: auto 1fr;
    }

    .gsctm-bottom > a {
      grid-column: 1 / -1;
      width: 100%;
    }
  }

  @media (max-width: 480px) {
    .gsctm-card__visual {
      min-height: 280px;
    }

    .gsctm-card__content {
      padding: 27px 22px 24px;
    }

    .gsctm-card__content h3 {
      font-size: 22px;
    }

    .gsctm-bottom {
      padding: 19px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctm *,
    .gsctm *::before,
    .gsctm *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   CONTROLES · FALLAS FRECUENTES
   ID: fallas-controles
   ========================================================= */

.gsctf {
    --gsctf-bg: #031224;
    --gsctf-bg-deep: #020b17;
    --gsctf-card: rgba(7, 27, 47, 0.88);
--gsctf-line: rgba(104, 173, 218, 0.18);
    --gsctf-text: #f5f9fd;
    --gsctf-muted: #9db0c3;
    --gsctf-cyan: #26d2ef;
--gsctf-red: #ff405b;
    --gsctf-green: #43d28a;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gsctf-text);
    background:
      radial-gradient(
        circle at 7% 15%,
        rgba(255, 64, 91, 0.12),
        transparent 27%
      ),
      radial-gradient(
        circle at 93% 84%,
        rgba(38, 210, 239, 0.13),
        transparent 29%
      ),
      linear-gradient(
        135deg,
        var(--gsctf-bg-deep) 0%,
        var(--gsctf-bg) 50%,
        #05283a 100%
      );
    font-family: var(--gs-font-sans);
  }

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

  .gsctf-grid-bg {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: 0.42;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      );
    background-size: 54px 54px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 12%,
      black 88%,
      transparent
    );
  }

  .gsctf-glow {
    position: absolute;
    z-index: -2;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.15;
    pointer-events: none;
  }

  .gsctf-glow--red {
    top: 30%;
    left: -230px;
    background: var(--gsctf-red);
  }

  .gsctf-glow--cyan {
    right: -230px;
    bottom: 5%;
    background: var(--gsctf-cyan);
  }

  .gsctf-wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctf-header {
    max-width: 875px;
    margin: 0 auto 55px;
    text-align: center;
  }

  .gsctf-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 19px;
    padding: 9px 14px;
    border: 1px solid rgba(38, 210, 239, 0.22);
    border-radius: 999px;
    color: #b8effa;
    background: rgba(5, 27, 47, 0.75);
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.02),
      0 10px 25px rgba(0, 0, 0, 0.13);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctf-eyebrow__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctf-red);
    box-shadow:
      0 0 0 5px rgba(255, 64, 91, 0.1),
      0 0 13px rgba(255, 64, 91, 0.65);
  }

  .gsctf-header h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(39px, 4.4vw, 64px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.05em;
  }

  .gsctf-header h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctf-red),
      #c185aa 46%,
      var(--gsctf-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctf-header p {
    max-width: 770px;
    margin: 23px auto 0;
    color: var(--gsctf-muted);
    font-size: 17px;
    line-height: 1.75;
  }

  .gsctf-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
  }

  .gsctf-card {
    --gsctf-accent: var(--gsctf-cyan);

    position: relative;
    min-width: 0;
    min-height: 385px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 25px 23px 22px;
    border: 1px solid var(--gsctf-line);
    border-radius: 24px;
    background:
      linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.035),
        rgba(255, 255, 255, 0.006)
      ),
      var(--gsctf-card);
    box-shadow:
      0 20px 45px rgba(0, 0, 0, 0.21),
      inset 0 1px 0 rgba(255, 255, 255, 0.035);
    transition:
      transform 0.3s ease,
      border-color 0.3s ease,
      box-shadow 0.3s ease;
  }

  .gsctf-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 23px;
    left: 23px;
    height: 2px;
    border-radius: 0 0 5px 5px;
    background: linear-gradient(
      90deg,
      transparent,
      var(--gsctf-accent),
      transparent
    );
    opacity: 0.75;
  }

  .gsctf-card::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: -90px;
    right: -80px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: var(--gsctf-accent);
    filter: blur(65px);
    opacity: 0.07;
    pointer-events: none;
  }

  .gsctf-card:hover {
    transform: translateY(-7px);
    border-color: color-mix(
      in srgb,
      var(--gsctf-accent) 42%,
      transparent
    );
    box-shadow:
      0 28px 58px rgba(0, 0, 0, 0.3),
      0 0 32px color-mix(
        in srgb,
        var(--gsctf-accent) 9%,
        transparent
      );
  }

  .gsctf-card--cyan {
    --gsctf-accent: #26d2ef;
  }

  .gsctf-card--blue {
    --gsctf-accent: #4389ff;
  }

  .gsctf-card--red {
    --gsctf-accent: #ff5069;
  }

  .gsctf-card--purple {
    --gsctf-accent: #a579ff;
  }

  .gsctf-card--green {
    --gsctf-accent: #43d28a;
  }

  .gsctf-card--yellow {
    --gsctf-accent: #f5c84b;
  }

  .gsctf-card--orange {
    --gsctf-accent: #ff8b4d;
  }

  .gsctf-card--pink {
    --gsctf-accent: #ed6cc7;
  }

  .gsctf-card__top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 22px;
  }

  .gsctf-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(
      in srgb,
      var(--gsctf-accent) 32%,
      transparent
    );
    border-radius: 16px;
    color: var(--gsctf-accent);
    background: color-mix(
      in srgb,
      var(--gsctf-accent) 8%,
      transparent
    );
    box-shadow:
      inset 0 0 17px color-mix(
        in srgb,
        var(--gsctf-accent) 5%,
        transparent
      ),
      0 0 20px color-mix(
        in srgb,
        var(--gsctf-accent) 7%,
        transparent
      );
  }

  .gsctf-icon svg {
    width: 28px;
    height: 28px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctf-number {
    color: rgba(191, 215, 233, 0.22);
    font-size: 27px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -0.04em;
  }

  .gsctf-card h3 {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #f5f9fd;
    font-size: 20px;
    line-height: 1.24;
    font-weight: 850;
    letter-spacing: -0.025em;
  }

  .gsctf-card > p {
    position: relative;
    z-index: 2;
    margin: 13px 0 17px;
    color: var(--gsctf-muted);
    font-size: 13px;
    line-height: 1.65;
  }

  .gsctf-signals {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 18px;
  }

  .gsctf-signals span {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 5px 9px;
    border: 1px solid rgba(125, 178, 213, 0.14);
    border-radius: 999px;
    color: #a8bdd0;
    background: rgba(255, 255, 255, 0.025);
    font-size: 9px;
    font-weight: 750;
    letter-spacing: 0.035em;
  }

  .gsctf-card__service {
    position: relative;
    z-index: 2;
    margin-top: auto;
    padding: 13px 14px;
    border-left: 3px solid var(--gsctf-accent);
    border-radius: 0 11px 11px 0;
    background: rgba(255, 255, 255, 0.035);
  }

  .gsctf-card__service strong,
  .gsctf-card__service small {
    display: block;
  }

  .gsctf-card__service strong {
    margin-bottom: 5px;
    color: #ddecf6;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .gsctf-card__service small {
    color: #839bb0;
    font-size: 10px;
    line-height: 1.52;
  }

  .gsctf-diagnostic {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    margin-top: 28px;
    padding: 27px 29px;
    border: 1px solid rgba(38, 210, 239, 0.2);
    border-radius: 24px;
    background:
      linear-gradient(
        110deg,
        rgba(38, 210, 239, 0.055),
        rgba(255, 64, 91, 0.035)
      ),
      rgba(5, 25, 43, 0.9);
    box-shadow:
      0 20px 46px rgba(0, 0, 0, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.035);
  }

  .gsctf-diagnostic__icon {
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(38, 210, 239, 0.24);
    border-radius: 19px;
    color: var(--gsctf-cyan);
    background: rgba(38, 210, 239, 0.07);
    box-shadow: 0 0 26px rgba(38, 210, 239, 0.07);
  }

  .gsctf-diagnostic__icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctf-diagnostic__content > span {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctf-cyan);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.11em;
    text-transform: uppercase;
  }

  .gsctf-diagnostic__content h3 {
    margin: 0;
    color: #f6f9fd;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 850;
  }

  .gsctf-diagnostic__content p {
    max-width: 730px;
    margin: 8px 0 0;
    color: #91a7ba;
    font-size: 12px;
    line-height: 1.62;
  }

  .gsctf-diagnostic__button {
    min-height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 19px;
    border-radius: 999px;
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 13px 28px rgba(37, 180, 235, 0.20),
      0 0 22px rgba(38, 210, 239, 0.08);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctf-diagnostic__button:hover {
    transform: translateY(-3px);
    box-shadow:
      0 18px 34px rgba(37, 180, 235, 0.29),
      0 0 28px rgba(38, 210, 239, 0.12);
  }

  .gsctf-reception {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 9px 18px;
    align-items: center;
    margin-top: 18px;
    color: #8ca3b8;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctf-reception span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .gsctf-reception i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsctf-green);
    box-shadow: 0 0 10px rgba(67, 210, 138, 0.58);
  }

  .gsctf-disclaimer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 22px;
    color: #7991a7;
    text-align: center;
  }

  .gsctf-disclaimer svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: #7aa8c4;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctf-disclaimer p {
    margin: 0;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctf a:focus-visible {
    outline: 2px solid var(--gsctf-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1100px) {
    .gsctf-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsctf-card {
      min-height: 350px;
    }
  }

  @media (max-width: 760px) {
    .gsctf {
      padding: 80px 17px;
    }

    .gsctf-header {
      margin-bottom: 40px;
    }

    .gsctf-header p {
      font-size: 15px;
    }

    .gsctf-diagnostic {
      grid-template-columns: auto minmax(0, 1fr);
      padding: 23px;
    }

    .gsctf-diagnostic__button {
      grid-column: 1 / -1;
      width: 100%;
    }
  }

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

    .gsctf-card {
      min-height: auto;
    }

    .gsctf-diagnostic {
      grid-template-columns: 1fr;
      text-align: center;
    }

    .gsctf-diagnostic__icon {
      margin: 0 auto;
    }

    .gsctf-diagnostic__content p {
      margin-right: auto;
      margin-left: auto;
    }

    .gsctf-disclaimer {
      align-items: flex-start;
      text-align: left;
    }
  }

  @media (max-width: 430px) {
    .gsctf-card {
      padding: 23px 20px 20px;
    }

    .gsctf-card h3 {
      font-size: 19px;
    }

    .gsctf-diagnostic {
      padding: 21px 18px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctf *,
    .gsctf *::before,
    .gsctf *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   CONTROLES · JOYSTICKS Y TECNOLOGÍAS
   ID: joysticks-controles
   ========================================================= */

.gsctj {
    --gsctj-bg: #f5f8fb;
    --gsctj-card: #ffffff;
    --gsctj-text: #102033;
    --gsctj-muted: #607286;
    --gsctj-line: #dce6ef;
    --gsctj-cyan: #20cceb;
    --gsctj-blue: #167df4;
    --gsctj-red: #ff405b;
    --gsctj-green: #35c97b;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gsctj-text);
    background:
      radial-gradient(
        circle at 2% 10%,
        rgba(255, 64, 91, 0.07),
        transparent 25%
      ),
      radial-gradient(
        circle at 96% 88%,
        rgba(32, 204, 235, 0.09),
        transparent 27%
      ),
      var(--gsctj-bg);
    font-family: var(--gs-font-sans);
  }

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

  .gsctj-grid-bg {
    position: absolute;
    z-index: -2;
    inset: 0;
    opacity: 0.52;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(48, 114, 165, 0.035) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(48, 114, 165, 0.035) 1px,
        transparent 1px
      );
    background-size: 58px 58px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 12%,
      black 88%,
      transparent
    );
  }

  .gsctj-wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctj-header {
    max-width: 880px;
    margin: 0 auto 55px;
    text-align: center;
  }

  .gsctj-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(22, 125, 244, 0.15);
    border-radius: 999px;
    color: #126fc9;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 8px 24px rgba(28, 63, 97, 0.05);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctj-eyebrow span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctj-green);
    box-shadow:
      0 0 0 5px rgba(53, 201, 123, 0.1),
      0 0 12px rgba(53, 201, 123, 0.45);
  }

  .gsctj-header h2 {
    margin: 0;
    color: var(--gsctj-text);
    font-size: clamp(39px, 4.5vw, 64px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.052em;
  }

  .gsctj-header h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctj-red),
      #9d78bc 48%,
      var(--gsctj-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctj-header p {
    max-width: 780px;
    margin: 23px auto 0;
    color: var(--gsctj-muted);
    font-size: 17px;
    line-height: 1.75;
  }

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

  .gsctj-card {
    --gsctj-accent: var(--gsctj-cyan);

    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--gsctj-line);
    border-radius: 28px;
    background: var(--gsctj-card);
    box-shadow:
      0 19px 48px rgba(31, 66, 96, 0.09),
      0 3px 12px rgba(31, 66, 96, 0.035);
    transition:
      transform 0.3s ease,
      box-shadow 0.3s ease,
      border-color 0.3s ease;
  }

  .gsctj-card:hover {
    transform: translateY(-7px);
    border-color: rgba(32, 204, 235, 0.31);
    box-shadow:
      0 29px 65px rgba(31, 66, 96, 0.14),
      0 0 35px rgba(32, 204, 235, 0.07);
  }

  .gsctj-card--tmr {
    --gsctj-accent: #20cceb;
  }

  .gsctj-card--standard {
    --gsctj-accent: #167df4;
  }

  .gsctj-card--hall {
    --gsctj-accent: #ff405b;
  }

  .gsctj-card__visual {
    position: relative;
    min-height: 300px;
    overflow: hidden;
    border-bottom: 1px solid var(--gsctj-line);
    background:
      linear-gradient(
        rgba(54, 119, 168, 0.045) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(54, 119, 168, 0.045) 1px,
        transparent 1px
      ),
      linear-gradient(145deg, #f9fbfd, #eaf1f7);
    background-size:
      38px 38px,
      38px 38px,
      auto;
  }

  .gsctj-card__visual::after {
    content: "";
    position: absolute;
    inset: 17px;
    border: 1px solid rgba(73, 145, 194, 0.12);
    border-radius: 20px;
    pointer-events: none;
  }

  .gsctj-tech-badge {
    position: absolute;
    z-index: 5;
    top: 21px;
    left: 21px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 1px solid rgba(100, 151, 186, 0.17);
    border-radius: 999px;
    color: #405469;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 8px 22px rgba(38, 75, 106, 0.06);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
  }

  .gsctj-tech-badge span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gsctj-accent);
    box-shadow: 0 0 10px var(--gsctj-accent);
  }

  .gsctj-tech-image {
    position: absolute;
    z-index: 2;
    top: 58%;
    left: 50%;
    width: min(76%, 300px);
    height: min(64%, 192px);
    display: block;
    object-fit: contain;
    object-position: center;
    transform: translate(-50%, -50%);
    user-select: none;
    pointer-events: none;
    filter: drop-shadow(0 18px 24px rgba(35, 65, 88, 0.15));
    transition:
      transform 0.35s ease,
      filter 0.35s ease;
  }

  /* Ajuste individual para equilibrar el peso visual entre las tres tecnologías */
  .gsctj-card--tmr .gsctj-tech-image {
    top: 58%;
    width: min(74%, 292px);
    height: min(62%, 186px);
  }

  .gsctj-card--standard .gsctj-tech-image {
    top: 58%;
    width: min(80%, 316px);
    height: min(68%, 204px);
  }

  .gsctj-card--hall .gsctj-tech-image {
    top: 58%;
    width: min(71%, 282px);
    height: min(60%, 180px);
  }

  .gsctj-card:hover .gsctj-tech-image {
    transform: translate(-50%, -52%) scale(1.015);
    filter: drop-shadow(0 22px 28px rgba(35, 65, 88, 0.18));
  }

  .gsctj-card--tmr .gsctj-card__visual {
    background:
      radial-gradient(circle at 50% 60%, rgba(32, 204, 235, 0.11), transparent 43%),
      linear-gradient(rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(145deg, #f9fbfd, #eaf1f7);
    background-size: auto, 38px 38px, 38px 38px, auto;
  }

  .gsctj-card--standard .gsctj-card__visual {
    background:
      radial-gradient(circle at 50% 60%, rgba(22, 125, 244, 0.09), transparent 43%),
      linear-gradient(rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(145deg, #f9fbfd, #eaf1f7);
    background-size: auto, 38px 38px, 38px 38px, auto;
  }

  .gsctj-card--hall .gsctj-card__visual {
    background:
      radial-gradient(circle at 50% 60%, rgba(255, 64, 91, 0.09), transparent 43%),
      linear-gradient(rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(54, 119, 168, 0.045) 1px, transparent 1px),
      linear-gradient(145deg, #f9fbfd, #eaf1f7);
    background-size: auto, 38px 38px, 38px 38px, auto;
  }

  .gsctj-card__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 31px 28px 28px;
  }

  .gsctj-card__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 17px;
  }

  .gsctj-card__label {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctj-accent);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctj-card__heading h3 {
    margin: 0;
    color: #102033;
    font-size: 25px;
    line-height: 1.14;
    font-weight: 900;
    letter-spacing: -0.03em;
  }

  .gsctj-card__number {
    color: #d6e1ea;
    font-size: 26px;
    line-height: 1;
    font-weight: 900;
  }

  .gsctj-card__content > p {
    margin: 16px 0 21px;
    color: var(--gsctj-muted);
    font-size: 14px;
    line-height: 1.7;
  }

  .gsctj-features {
    display: grid;
    gap: 10px;
  }

  .gsctj-features > div {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #405467;
    font-size: 12px;
    line-height: 1.45;
  }

  .gsctj-features > div > span {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: grid;
    place-items: center;
    margin-top: -1px;
    border-radius: 50%;
    color: var(--gsctj-accent);
    background: rgba(32, 204, 235, 0.08);
    font-size: 10px;
    font-weight: 900;
  }

  .gsctj-compatible {
    margin-top: 23px;
    padding-top: 18px;
    border-top: 1px solid #e4ebf1;
  }

  .gsctj-compatible strong {
    display: block;
    margin-bottom: 10px;
    color: #30465a;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .gsctj-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
  }

  .gsctj-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 5px 10px;
    border: 1px solid #dbe7ef;
    border-radius: 999px;
    color: #425b70;
    background: #f9fbfc;
    font-size: 9px;
    font-weight: 800;
  }

  .gsctj-note {
    margin-top: auto;
    padding: 14px;
    border-left: 3px solid var(--gsctj-accent);
    border-radius: 0 11px 11px 0;
    color: #667d90;
    background: #f6f9fb;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsctj-note--warning {
    color: #82616a;
    background: #fff6f7;
  }

  .gsctj-process {
    display: grid;
    grid-template-columns: minmax(260px, 0.75fr) minmax(0, 1.25fr);
    gap: 31px;
    margin-top: 29px;
    padding: 31px;
    border: 1px solid var(--gsctj-line);
    border-radius: 26px;
    background:
      linear-gradient(
        115deg,
        rgba(255, 255, 255, 0.94),
        rgba(246, 250, 253, 0.9)
      );
    box-shadow: 0 18px 45px rgba(31, 66, 96, 0.07);
  }

  .gsctj-process__intro > span {
    display: block;
    margin-bottom: 7px;
    color: var(--gsctj-cyan);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctj-process__intro h3 {
    margin: 0;
    color: #102033;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: -0.025em;
  }

  .gsctj-process__intro p {
    margin: 13px 0 0;
    color: var(--gsctj-muted);
    font-size: 12px;
    line-height: 1.65;
  }

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

  .gsctj-step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    border: 1px solid #e0e8ef;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.8);
  }

  .gsctj-step > span {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: #ffffff;
    background: linear-gradient(
      135deg,
      var(--gsctj-blue),
      var(--gsctj-cyan)
    );
    font-size: 9px;
    font-weight: 900;
  }

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

  .gsctj-step strong {
    margin-bottom: 4px;
    color: #20374c;
    font-size: 12px;
  }

  .gsctj-step small {
    color: #74889a;
    font-size: 9px;
    line-height: 1.45;
  }

  .gsctj-cta {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
    margin-top: 29px;
    padding: 26px 28px;
    border: 1px solid #cfdae4;
    border-radius: 25px;
    color: #ffffff;
    background:
      radial-gradient(
        circle at 94% 20%,
        rgba(32, 204, 235, 0.17),
        transparent 31%
      ),
      linear-gradient(120deg, #061b30, #0a2f48);
    box-shadow:
      0 21px 50px rgba(26, 55, 82, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.06);
  }

  .gsctj-cta__icon {
    width: 61px;
    height: 61px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(32, 204, 235, 0.25);
    border-radius: 18px;
    color: var(--gsctj-cyan);
    background: rgba(32, 204, 235, 0.07);
  }

  .gsctj-cta__icon svg {
    width: 32px;
    height: 32px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctj-cta__content > span {
    display: block;
    margin-bottom: 4px;
    color: var(--gsctj-cyan);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctj-cta__content h3 {
    margin: 0;
    color: #ffffff;
    font-size: 20px;
    font-weight: 900;
  }

  .gsctj-cta__content p {
    margin: 7px 0 0;
    color: #9eb3c5;
    font-size: 11px;
    line-height: 1.55;
  }

  .gsctj-cta > a {
    min-height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 19px;
    border-radius: 999px;
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 13px 28px rgba(37, 180, 235, 0.20),
      0 0 22px rgba(32, 204, 235, 0.08);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctj-cta > a:hover {
    transform: translateY(-3px);
    box-shadow:
      0 18px 34px rgba(37, 180, 235, 0.29),
      0 0 28px rgba(32, 204, 235, 0.12);
  }

  .gsctj-reception {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 9px 18px;
    align-items: center;
    margin-top: 18px;
    color: #758ba0;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctj-reception span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .gsctj-reception i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsctj-green);
    box-shadow: 0 0 10px rgba(53, 201, 123, 0.52);
  }

  .gsctj-disclaimer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 21px;
    color: #7a8ea0;
    text-align: center;
  }

  .gsctj-disclaimer svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: #6b9ab7;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctj-disclaimer p {
    margin: 0;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctj a:focus-visible {
    outline: 2px solid var(--gsctj-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1100px) {
    .gsctj-main-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gsctj-card--hall {
      grid-column: 1 / -1;
      width: calc(50% - 11px);
      justify-self: center;
    }

    .gsctj-process {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 760px) {
    .gsctj {
      padding: 80px 17px;
    }

    .gsctj-header {
      margin-bottom: 41px;
    }

    .gsctj-header p {
      font-size: 15px;
    }

    .gsctj-main-grid {
      grid-template-columns: 1fr;
    }

    .gsctj-card--hall {
      grid-column: auto;
      width: 100%;
    }

    .gsctj-process {
      padding: 24px;
    }

    .gsctj-cta {
      grid-template-columns: auto minmax(0, 1fr);
    }

    .gsctj-cta > a {
      grid-column: 1 / -1;
      width: 100%;
    }
  }

  @media (max-width: 560px) {
    .gsctj-card__visual {
      min-height: 280px;
    }

    .gsctj-card__content {
      padding: 27px 22px 24px;
    }

    .gsctj-process__steps {
      grid-template-columns: 1fr;
    }

    .gsctj-cta {
      grid-template-columns: 1fr;
      padding: 24px 20px;
      text-align: center;
    }

    .gsctj-cta__icon {
      margin: 0 auto;
    }

    .gsctj-disclaimer {
      align-items: flex-start;
      text-align: left;
    }
  }

  @media (max-width: 420px) {
    .gsctj-card__visual {
      min-height: 255px;
    }

    .gsctj-tech-image {
      top: 58%;
      width: 76%;
      height: 64%;
    }

    .gsctj-card--tmr .gsctj-tech-image {
      top: 58%;
      width: 74%;
      height: 62%;
    }

    .gsctj-card--standard .gsctj-tech-image {
      top: 58%;
      width: 80%;
      height: 68%;
    }

    .gsctj-card--hall .gsctj-tech-image {
      top: 58%;
      width: 71%;
      height: 60%;
    }

    .gsctj-card__heading h3 {
      font-size: 23px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctj *,
    .gsctj *::before,
    .gsctj *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   CONTROLES · PRECIOS DE JOYSTICKS
   ID: precios-controles
   ========================================================= */

.gsctp {
    --gsctp-bg: #031224;
    --gsctp-bg-deep: #020b17;
    --gsctp-card: rgba(7, 27, 47, 0.91);
    --gsctp-line: rgba(104, 173, 218, 0.19);
    --gsctp-text: #f5f9fd;
    --gsctp-muted: #9db1c4;
    --gsctp-cyan: #26d2ef;
--gsctp-red: #ff405b;
    --gsctp-green: #43d28a;
    --gsctp-yellow: #f5c84b;

    position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gsctp-text);
    background:
      radial-gradient(
        circle at 5% 14%,
        rgba(255, 64, 91, 0.12),
        transparent 27%
      ),
      radial-gradient(
        circle at 94% 84%,
        rgba(38, 210, 239, 0.14),
        transparent 29%
      ),
      linear-gradient(
        135deg,
        var(--gsctp-bg-deep) 0%,
        var(--gsctp-bg) 52%,
        #05283a 100%
      );
    font-family: var(--gs-font-sans);
  }

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

  .gsctp-grid-bg {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: 0.42;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      );
    background-size: 54px 54px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 10%,
      black 90%,
      transparent
    );
  }

  .gsctp-glow {
    position: absolute;
    z-index: -2;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    filter: blur(105px);
    opacity: 0.15;
    pointer-events: none;
  }

  .gsctp-glow--red {
    top: 26%;
    left: -250px;
    background: var(--gsctp-red);
  }

  .gsctp-glow--cyan {
    right: -250px;
    bottom: 7%;
    background: var(--gsctp-cyan);
  }

  .gsctp-wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctp-header {
    max-width: 885px;
    margin: 0 auto 55px;
    text-align: center;
  }

  .gsctp-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(38, 210, 239, 0.22);
    border-radius: 999px;
    color: #b9eff9;
    background: rgba(5, 27, 47, 0.76);
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.02),
      0 10px 25px rgba(0, 0, 0, 0.13);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctp-eyebrow span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctp-green);
    box-shadow:
      0 0 0 5px rgba(67, 210, 138, 0.1),
      0 0 13px rgba(67, 210, 138, 0.58);
  }

  .gsctp-header h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(40px, 4.5vw, 65px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.052em;
  }

  .gsctp-header h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctp-red),
      #bd82ae 47%,
      var(--gsctp-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctp-header > p {
    max-width: 780px;
    margin: 23px auto 0;
    color: var(--gsctp-muted);
    font-size: 17px;
    line-height: 1.75;
  }

  .gsctp-single-note {
    width: fit-content;
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 23px auto 0;
    padding: 10px 14px;
    border: 1px solid rgba(245, 200, 75, 0.2);
    border-radius: 999px;
    color: #c6d2dc;
    background: rgba(245, 200, 75, 0.055);
    font-size: 11px;
    line-height: 1.45;
  }

  .gsctp-single-note svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: var(--gsctp-yellow);
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctp-single-note strong {
    color: #f0ce6a;
  }

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

  .gsctp-card {
    --gsctp-accent: var(--gsctp-cyan);

    min-width: 0;
    overflow: hidden;
    padding: 28px;
    border: 1px solid var(--gsctp-line);
    border-radius: 27px;
    background:
      linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.035),
        rgba(255, 255, 255, 0.006)
      ),
      var(--gsctp-card);
    box-shadow:
      0 21px 48px rgba(0, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.035);
    transition:
      transform 0.3s ease,
      border-color 0.3s ease,
      box-shadow 0.3s ease;
  }

  .gsctp-card:hover {
    transform: translateY(-7px);
    border-color: rgba(38, 210, 239, 0.4);
    box-shadow:
      0 29px 62px rgba(0, 0, 0, 0.3),
      0 0 35px rgba(38, 210, 239, 0.08);
  }

  .gsctp-card--xbox {
    --gsctp-accent: #43d28a;
  }

  .gsctp-card--playstation {
    --gsctp-accent: #4389ff;
  }

  .gsctp-card__header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
  }

  .gsctp-platform-icon {
    width: 55px;
    height: 55px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(38, 210, 239, 0.2);
    border-radius: 17px;
    color: var(--gsctp-accent);
    background: rgba(38, 210, 239, 0.055);
  }

  .gsctp-platform-icon svg {
    width: 31px;
    height: 31px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.55;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctp-card__header > div:nth-child(2) > span,
  .gsctp-nintendo__title > div:last-child > span {
    display: block;
    margin-bottom: 4px;
    color: var(--gsctp-accent);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctp-card__header h3,
  .gsctp-nintendo__title h3 {
    margin: 0;
    color: #ffffff;
    font-size: 25px;
    line-height: 1.15;
    font-weight: 900;
  }

  .gsctp-platform-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--gsctp-accent);
    box-shadow:
      0 0 0 6px rgba(38, 210, 239, 0.07),
      0 0 15px var(--gsctp-accent);
  }

  .gsctp-card__description {
    margin: 20px 0;
    color: var(--gsctp-muted);
    font-size: 13px;
    line-height: 1.65;
  }

  .gsctp-price-list {
    display: grid;
    gap: 12px;
  }

  .gsctp-price {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 18px;
    border: 1px solid rgba(105, 170, 211, 0.15);
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.025);
  }

  .gsctp-price--featured {
    border-color: rgba(38, 210, 239, 0.25);
    background:
      linear-gradient(
        110deg,
        rgba(38, 210, 239, 0.075),
        rgba(67, 137, 255, 0.035)
      );
  }

  .gsctp-price__label {
    width: fit-content;
    margin-bottom: 6px;
    padding: 4px 8px;
    border-radius: 999px;
    color: #b9eef7;
    background: rgba(38, 210, 239, 0.1);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .gsctp-price__type,
  .gsctp-price__info small {
    display: block;
  }

  .gsctp-price__type {
    margin-bottom: 4px;
    color: #eef6fc;
    font-size: 14px;
    font-weight: 850;
  }

  .gsctp-price__info small {
    color: #8299ad;
    font-size: 10px;
    line-height: 1.4;
  }

  .gsctp-price__amount {
    display: flex;
    align-items: flex-start;
    color: #ffffff;
    white-space: nowrap;
  }

  .gsctp-price__amount small {
    margin-top: 5px;
    color: var(--gsctp-accent);
    font-size: 15px;
    font-weight: 850;
  }

  .gsctp-price__amount strong {
    font-size: 38px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -0.045em;
  }

  .gsctp-price__amount span {
    align-self: flex-end;
    margin: 0 0 4px 5px;
    color: #7890a5;
    font-size: 8px;
    font-weight: 800;
  }

  .gsctp-card__foot {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 17px;
    color: #8299ad;
    font-size: 10px;
  }

  .gsctp-card__foot span {
    width: 20px;
    height: 20px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--gsctp-accent);
    background: rgba(38, 210, 239, 0.07);
    font-size: 10px;
    font-weight: 900;
  }

  .gsctp-nintendo {
    margin-top: 23px;
    overflow: hidden;
    border: 1px solid var(--gsctp-line);
    border-radius: 28px;
    background:
      linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.035),
        rgba(255, 255, 255, 0.006)
      ),
      var(--gsctp-card);
    box-shadow:
      0 21px 48px rgba(0, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.035);
  }

  .gsctp-nintendo__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 27px 29px;
    border-bottom: 1px solid var(--gsctp-line);
    background:
      linear-gradient(
        110deg,
        rgba(255, 64, 91, 0.065),
        rgba(38, 210, 239, 0.025)
      );
  }

  .gsctp-nintendo__title {
    --gsctp-accent: #ff5069;

    display: flex;
    align-items: center;
    gap: 14px;
  }

  .gsctp-nintendo__notice {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #9bb0c2;
    font-size: 10px;
  }

  .gsctp-nintendo__notice > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctp-yellow);
    box-shadow: 0 0 11px rgba(245, 200, 75, 0.5);
  }

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

  .gsctp-model {
    min-width: 0;
    padding: 27px;
  }

  .gsctp-model + .gsctp-model {
    border-left: 1px solid var(--gsctp-line);
  }

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

  .gsctp-model__category {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctp-cyan);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctp-model h4 {
    margin: 0;
    color: #f5f9fd;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 900;
  }

  .gsctp-model__number {
    color: rgba(190, 216, 233, 0.2);
    font-size: 25px;
    line-height: 1;
    font-weight: 900;
  }

  .gsctp-model > p {
    min-height: 43px;
    margin: 14px 0 17px;
    color: var(--gsctp-muted);
    font-size: 11px;
    line-height: 1.55;
  }

  .gsctp-model__prices {
    display: grid;
    gap: 9px;
  }

  .gsctp-model__prices > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 13px;
    padding: 13px 14px;
    border: 1px solid rgba(105, 170, 211, 0.14);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.025);
  }

  .gsctp-model__prices > div.gsctp-model__prices--hall {
    border-color: rgba(255, 64, 91, 0.22);
    background: rgba(255, 64, 91, 0.045);
  }

  .gsctp-model__prices > div.gsctp-model__prices--tmr {
    border-color: rgba(38, 210, 239, 0.22);
    background: rgba(38, 210, 239, 0.045);
  }

  .gsctp-model__prices span {
    color: #c8d6e1;
    font-size: 11px;
    font-weight: 750;
  }

  .gsctp-model__prices strong {
    color: #ffffff;
    font-size: 23px;
    font-weight: 900;
    white-space: nowrap;
  }

  .gsctp-model__prices strong small {
    margin-right: 2px;
    color: var(--gsctp-cyan);
    font-size: 11px;
  }

  .gsctp-model__note {
    margin-top: 15px;
    padding: 11px 12px;
    border-left: 3px solid rgba(38, 210, 239, 0.65);
    border-radius: 0 9px 9px 0;
    color: #8299ad;
    background: rgba(255, 255, 255, 0.025);
    font-size: 9px;
    line-height: 1.5;
  }

  .gsctp-diagnostic {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(220px, auto);
    align-items: center;
    gap: 22px;
    margin-top: 23px;
    padding: 27px 29px;
    border: 1px solid rgba(245, 200, 75, 0.2);
    border-radius: 24px;
    background:
      linear-gradient(
        110deg,
        rgba(245, 200, 75, 0.055),
        rgba(255, 64, 91, 0.025)
      ),
      rgba(5, 25, 43, 0.9);
  }

  .gsctp-diagnostic__icon {
    width: 63px;
    height: 63px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(245, 200, 75, 0.23);
    border-radius: 18px;
    color: var(--gsctp-yellow);
    background: rgba(245, 200, 75, 0.06);
  }

  .gsctp-diagnostic__icon svg {
    width: 33px;
    height: 33px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctp-diagnostic__content > span {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctp-yellow);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctp-diagnostic__content h3 {
    margin: 0;
    color: #ffffff;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 900;
  }

  .gsctp-diagnostic__content p {
    margin: 8px 0 0;
    color: #94a9bb;
    font-size: 10px;
    line-height: 1.58;
  }

  .gsctp-diagnostic__status {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 15px;
    border: 1px solid rgba(245, 200, 75, 0.15);
    border-radius: 14px;
    background: rgba(245, 200, 75, 0.035);
  }

  .gsctp-diagnostic__dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--gsctp-yellow);
    box-shadow:
      0 0 0 6px rgba(245, 200, 75, 0.07),
      0 0 13px rgba(245, 200, 75, 0.42);
  }

  .gsctp-diagnostic__status strong,
  .gsctp-diagnostic__status small {
    display: block;
  }

  .gsctp-diagnostic__status strong {
    margin-bottom: 3px;
    color: #e7edf2;
    font-size: 10px;
  }

  .gsctp-diagnostic__status small {
    color: #8299ad;
    font-size: 8px;
    line-height: 1.4;
  }

  .gsctp-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    margin-top: 23px;
    padding: 28px 30px;
    border: 1px solid rgba(38, 210, 239, 0.21);
    border-radius: 25px;
    background:
      radial-gradient(
        circle at 94% 20%,
        rgba(38, 210, 239, 0.17),
        transparent 31%
      ),
      linear-gradient(120deg, #071d32, #0a3049);
    box-shadow:
      0 21px 50px rgba(0, 0, 0, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.05);
  }

  .gsctp-cta__content > span {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctp-cyan);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctp-cta__content h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    font-weight: 900;
  }

  .gsctp-cta__content p {
    margin: 8px 0 0;
    color: #9eb3c5;
    font-size: 11px;
    line-height: 1.55;
  }

  .gsctp-cta > a {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 20px;
    border-radius: 999px;
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 13px 28px rgba(37, 180, 235, 0.20),
      0 0 22px rgba(38, 210, 239, 0.08);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctp-cta > a:hover {
    transform: translateY(-3px);
    box-shadow:
      0 18px 34px rgba(37, 180, 235, 0.29),
      0 0 28px rgba(38, 210, 239, 0.12);
  }

  .gsctp-service-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 9px 18px;
    align-items: center;
    margin-top: 18px;
    color: #8ca3b8;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctp-service-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .gsctp-service-meta i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsctp-green);
    box-shadow: 0 0 10px rgba(67, 210, 138, 0.55);
  }

  .gsctp-disclaimer {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 9px;
    margin-top: 20px;
    color: #7b91a5;
    text-align: center;
  }

  .gsctp-disclaimer svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: #73a5c1;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctp-disclaimer p {
    max-width: 850px;
    margin: 0;
    font-size: 9px;
    line-height: 1.55;
  }

  .gsctp a:focus-visible {
    outline: 2px solid var(--gsctp-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1050px) {
    .gsctp-nintendo__grid {
      grid-template-columns: 1fr;
    }

    .gsctp-model + .gsctp-model {
      border-top: 1px solid var(--gsctp-line);
      border-left: 0;
    }

    .gsctp-model > p {
      min-height: 0;
    }

    .gsctp-diagnostic {
      grid-template-columns: auto minmax(0, 1fr);
    }

    .gsctp-diagnostic__status {
      grid-column: 1 / -1;
    }
  }

  @media (max-width: 760px) {
    .gsctp {
      padding: 80px 17px;
    }

    .gsctp-header {
      margin-bottom: 41px;
    }

    .gsctp-header > p {
      font-size: 15px;
    }

    .gsctp-single-note {
      align-items: flex-start;
      border-radius: 17px;
      text-align: left;
    }

    .gsctp-platforms {
      grid-template-columns: 1fr;
    }

    .gsctp-nintendo__header {
      align-items: flex-start;
      flex-direction: column;
    }

    .gsctp-diagnostic {
      grid-template-columns: 1fr;
      padding: 24px;
      text-align: center;
    }

    .gsctp-diagnostic__icon {
      margin: 0 auto;
    }

    .gsctp-diagnostic__status {
      grid-column: auto;
      justify-content: center;
      text-align: left;
    }

    .gsctp-cta {
      grid-template-columns: 1fr;
      padding: 25px 22px;
      text-align: center;
    }

    .gsctp-cta > a {
      width: 100%;
    }
  }

  @media (max-width: 500px) {
    .gsctp-card,
    .gsctp-model {
      padding: 23px 20px;
    }

    .gsctp-card__header {
      grid-template-columns: auto minmax(0, 1fr);
    }

    .gsctp-platform-dot {
      display: none;
    }

    .gsctp-price {
      align-items: flex-start;
      grid-template-columns: 1fr;
    }

    .gsctp-price__amount {
      justify-self: start;
    }

    .gsctp-nintendo__header {
      padding: 24px 20px;
    }

    .gsctp-model__prices > div {
      align-items: flex-start;
      flex-direction: column;
    }

    .gsctp-disclaimer {
      text-align: left;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctp *,
    .gsctp *::before,
    .gsctp *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   CONTROLES · PROCESO Y GARANTÍA
   ID: proceso-garantia-controles
   ========================================================= */

.gsctpg {
    --gsctpg-bg: #f4f8fb;
--gsctpg-text: #102033;
    --gsctpg-muted: #607286;
    --gsctpg-line: #dae5ee;
    --gsctpg-cyan: #20cceb;
    --gsctpg-blue: #167df4;
    --gsctpg-red: #ff405b;
    --gsctpg-green: #36c97d;
position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gsctpg-text);
    background:
      radial-gradient(
        circle at 3% 13%,
        rgba(255, 64, 91, 0.07),
        transparent 25%
      ),
      radial-gradient(
        circle at 96% 86%,
        rgba(32, 204, 235, 0.09),
        transparent 28%
      ),
      var(--gsctpg-bg);
    font-family: var(--gs-font-sans);
  }

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

  .gsctpg-grid-bg {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: 0.48;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(47, 112, 163, 0.036) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(47, 112, 163, 0.036) 1px,
        transparent 1px
      );
    background-size: 58px 58px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 10%,
      black 90%,
      transparent
    );
  }

  .gsctpg-glow {
    position: absolute;
    z-index: -2;
    width: 410px;
    height: 410px;
    border-radius: 50%;
    filter: blur(105px);
    opacity: 0.1;
    pointer-events: none;
  }

  .gsctpg-glow--red {
    top: 23%;
    left: -240px;
    background: var(--gsctpg-red);
  }

  .gsctpg-glow--cyan {
    right: -240px;
    bottom: 8%;
    background: var(--gsctpg-cyan);
  }

  .gsctpg-wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctpg-header {
    max-width: 890px;
    margin: 0 auto 55px;
    text-align: center;
  }

  .gsctpg-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(22, 125, 244, 0.15);
    border-radius: 999px;
    color: #126fc9;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 8px 24px rgba(28, 63, 97, 0.05);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctpg-eyebrow span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctpg-green);
    box-shadow:
      0 0 0 5px rgba(54, 201, 125, 0.1),
      0 0 12px rgba(54, 201, 125, 0.45);
  }

  .gsctpg-header h2 {
    margin: 0;
    color: var(--gsctpg-text);
    font-size: clamp(39px, 4.5vw, 64px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.052em;
  }

  .gsctpg-header h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctpg-red),
      #9f7db9 47%,
      var(--gsctpg-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctpg-header p {
    max-width: 780px;
    margin: 23px auto 0;
    color: var(--gsctpg-muted);
    font-size: 17px;
    line-height: 1.75;
  }

  .gsctpg-main {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(350px, 0.92fr);
    gap: 24px;
  }

  .gsctpg-process,
  .gsctpg-times {
    min-width: 0;
    padding: 31px;
    border: 1px solid var(--gsctpg-line);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.91);
    box-shadow:
      0 19px 48px rgba(31, 66, 96, 0.08),
      0 3px 12px rgba(31, 66, 96, 0.03);
    backdrop-filter: blur(9px);
  }

  .gsctpg-section-heading > span {
    display: block;
    margin-bottom: 6px;
    color: var(--gsctpg-blue);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.11em;
    text-transform: uppercase;
  }

  .gsctpg-section-heading h3 {
    margin: 0;
    color: #102033;
    font-size: 27px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -0.03em;
  }

  .gsctpg-section-heading > p {
    margin: 12px 0 0;
    color: var(--gsctpg-muted);
    font-size: 12px;
    line-height: 1.65;
  }

  .gsctpg-timeline {
    position: relative;
    display: grid;
    gap: 13px;
    margin-top: 27px;
  }

  .gsctpg-timeline::before {
    content: "";
    position: absolute;
    top: 30px;
    bottom: 30px;
    left: 24px;
    width: 1px;
    background: linear-gradient(
      to bottom,
      var(--gsctpg-cyan),
      rgba(22, 125, 244, 0.15)
    );
  }

  .gsctpg-step {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 48px 50px minmax(0, 1fr);
    align-items: center;
    gap: 13px;
    padding: 15px;
    border: 1px solid #e0e8ef;
    border-radius: 17px;
    background: rgba(250, 252, 253, 0.92);
    transition:
      transform 0.25s ease,
      border-color 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctpg-step:hover {
    transform: translateX(4px);
    border-color: rgba(32, 204, 235, 0.28);
    box-shadow: 0 12px 25px rgba(36, 73, 102, 0.07);
  }

  .gsctpg-step__number {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #ffffff;
    background: linear-gradient(
      135deg,
      var(--gsctpg-blue),
      var(--gsctpg-cyan)
    );
    box-shadow: 0 9px 18px rgba(22, 125, 244, 0.16);
    font-size: 10px;
    font-weight: 900;
  }

  .gsctpg-step__icon {
    width: 45px;
    height: 45px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(32, 204, 235, 0.16);
    border-radius: 14px;
    color: #168daf;
    background: rgba(32, 204, 235, 0.06);
  }

  .gsctpg-step__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-step__content h4 {
    margin: 0;
    color: #1a3046;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 850;
  }

  .gsctpg-step__content p {
    margin: 5px 0 0;
    color: #718699;
    font-size: 10px;
    line-height: 1.52;
  }

  .gsctpg-times {
    display: flex;
    flex-direction: column;
  }

  .gsctpg-time-card {
    margin-top: 18px;
    padding: 19px;
    border: 1px solid #e0e8ef;
    border-radius: 19px;
    background: #fafcfd;
  }

  .gsctpg-time-card--quick {
    border-color: rgba(54, 201, 125, 0.22);
    background:
      linear-gradient(
        120deg,
        rgba(54, 201, 125, 0.055),
        rgba(255, 255, 255, 0.92)
      );
  }

  .gsctpg-time-card--regular {
    border-color: rgba(22, 125, 244, 0.19);
    background:
      linear-gradient(
        120deg,
        rgba(22, 125, 244, 0.045),
        rgba(255, 255, 255, 0.92)
      );
  }

  .gsctpg-time-card__top {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .gsctpg-time-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(22, 125, 244, 0.15);
    border-radius: 15px;
    color: var(--gsctpg-blue);
    background: rgba(22, 125, 244, 0.055);
  }

  .gsctpg-time-card--quick .gsctpg-time-icon {
    color: #1b9a5c;
    border-color: rgba(54, 201, 125, 0.2);
    background: rgba(54, 201, 125, 0.07);
  }

  .gsctpg-time-icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-time-card__top span,
  .gsctpg-time-card__top strong {
    display: block;
  }

  .gsctpg-time-card__top span {
    margin-bottom: 4px;
    color: #6e8294;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .gsctpg-time-card__top strong {
    color: #173047;
    font-size: 15px;
    line-height: 1.25;
  }

  .gsctpg-time-card > p {
    margin: 14px 0 0;
    color: #687e91;
    font-size: 10px;
    line-height: 1.58;
  }

  .gsctpg-time-card ul {
    display: grid;
    gap: 9px;
    margin: 15px 0 0;
    padding: 0;
    list-style: none;
  }

  .gsctpg-time-card li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #40576a;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsctpg-time-card li span {
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    display: grid;
    place-items: center;
    margin-top: -1px;
    border-radius: 50%;
    color: #168a51;
    background: rgba(54, 201, 125, 0.09);
    font-size: 9px;
    font-weight: 900;
  }

  .gsctpg-time-card__notice {
    margin-top: 14px;
    padding: 11px 12px;
    border-left: 3px solid var(--gsctpg-cyan);
    border-radius: 0 9px 9px 0;
    color: #718699;
    background: rgba(255, 255, 255, 0.75);
    font-size: 9px;
    line-height: 1.48;
  }

  .gsctpg-time-card--quick .gsctpg-time-card__notice {
    border-left-color: var(--gsctpg-green);
  }

  .gsctpg-info-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 18px;
    padding: 16px;
    border: 1px solid #e0e8ef;
    border-radius: 17px;
    background: #fafcfd;
  }

  .gsctpg-info-card__icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #168dac;
    background: rgba(32, 204, 235, 0.07);
  }

  .gsctpg-info-card__icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-info-card strong {
    display: block;
    margin-bottom: 5px;
    color: #21384d;
    font-size: 12px;
  }

  .gsctpg-info-card p {
    margin: 0;
    color: #718699;
    font-size: 9px;
    line-height: 1.5;
  }

  .gsctpg-payment {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 18px;
    padding: 18px;
    border: 1px solid rgba(241, 189, 62, 0.22);
    border-radius: 18px;
    background:
      linear-gradient(
        120deg,
        rgba(241, 189, 62, 0.06),
        rgba(255, 255, 255, 0.92)
      );
  }

  .gsctpg-payment__icon {
    width: 47px;
    height: 47px;
    flex: 0 0 47px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(241, 189, 62, 0.22);
    border-radius: 14px;
    color: #bc8a14;
    background: rgba(241, 189, 62, 0.08);
  }

  .gsctpg-payment__icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-payment span {
    display: block;
    margin-bottom: 4px;
    color: #a77b18;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .gsctpg-payment h4 {
    margin: 0;
    color: #293e51;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 850;
  }

  .gsctpg-payment p {
    margin: 7px 0 0;
    color: #718699;
    font-size: 9px;
    line-height: 1.5;
  }

  .gsctpg-conditions {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 24px;
    padding: 20px 22px;
    border: 1px solid rgba(22, 125, 244, 0.15);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 12px 30px rgba(31, 66, 96, 0.045);
  }

  .gsctpg-conditions__icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--gsctpg-blue);
    background: rgba(22, 125, 244, 0.06);
  }

  .gsctpg-conditions__icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-conditions strong {
    display: block;
    margin-bottom: 5px;
    color: #1b3349;
    font-size: 13px;
  }

  .gsctpg-conditions p {
    margin: 0;
    color: #708598;
    font-size: 10px;
    line-height: 1.55;
  }

  .gsctpg-warranty {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 24px;
    padding: 34px;
    border: 1px solid rgba(87, 169, 217, 0.22);
    border-radius: 29px;
    color: #ffffff;
    background:
      radial-gradient(
        circle at 95% 12%,
        rgba(32, 204, 235, 0.16),
        transparent 30%
      ),
      radial-gradient(
        circle at 4% 94%,
        rgba(255, 64, 91, 0.12),
        transparent 28%
      ),
      linear-gradient(125deg, #031529, #07314a);
    box-shadow:
      0 24px 60px rgba(26, 55, 82, 0.17),
      inset 0 1px 0 rgba(255, 255, 255, 0.055);
  }

  .gsctpg-warranty__glow {
    position: absolute;
    z-index: -1;
    top: -180px;
    right: -130px;
    width: 390px;
    height: 390px;
    border-radius: 50%;
    background: var(--gsctpg-cyan);
    filter: blur(110px);
    opacity: 0.1;
  }

  .gsctpg-warranty__intro {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 22px;
  }

  .gsctpg-warranty__badge {
    width: 105px;
    height: 105px;
    display: grid;
    align-content: center;
    justify-items: center;
    border: 1px solid rgba(32, 204, 235, 0.27);
    border-radius: 29px;
    background:
      linear-gradient(
        145deg,
        rgba(32, 204, 235, 0.12),
        rgba(255, 255, 255, 0.025)
      );
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.06),
      0 0 28px rgba(32, 204, 235, 0.08);
  }

  .gsctpg-warranty__badge span {
    color: #ffffff;
    font-size: 45px;
    line-height: 0.95;
    font-weight: 900;
    letter-spacing: -0.06em;
  }

  .gsctpg-warranty__badge small {
    margin-top: 5px;
    color: var(--gsctpg-cyan);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.15em;
  }

  .gsctpg-warranty__label {
    display: block;
    margin-bottom: 6px;
    color: var(--gsctpg-cyan);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.11em;
    text-transform: uppercase;
  }

  .gsctpg-warranty__intro h3 {
    margin: 0;
    color: #ffffff;
    font-size: 28px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -0.03em;
  }

  .gsctpg-warranty__intro p {
    max-width: 780px;
    margin: 10px 0 0;
    color: #9db2c4;
    font-size: 11px;
    line-height: 1.62;
  }

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

  .gsctpg-warranty-box {
    min-width: 0;
    padding: 23px;
    border: 1px solid rgba(99, 172, 216, 0.17);
    border-radius: 21px;
    background: rgba(255, 255, 255, 0.035);
    backdrop-filter: blur(8px);
  }

  .gsctpg-warranty-box--covered {
    border-color: rgba(54, 201, 125, 0.2);
  }

  .gsctpg-warranty-box--excluded {
    border-color: rgba(255, 64, 91, 0.2);
  }

  .gsctpg-warranty-box__heading {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .gsctpg-warranty-box__icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
  }

  .gsctpg-warranty-box--covered .gsctpg-warranty-box__icon {
    color: #52dc92;
    background: rgba(54, 201, 125, 0.08);
    border: 1px solid rgba(54, 201, 125, 0.19);
  }

  .gsctpg-warranty-box--excluded .gsctpg-warranty-box__icon {
    color: #ff667d;
    background: rgba(255, 64, 91, 0.07);
    border: 1px solid rgba(255, 64, 91, 0.18);
  }

  .gsctpg-warranty-box__icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-warranty-box__heading span {
    display: block;
    margin-bottom: 4px;
    color: #809bb0;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctpg-warranty-box__heading h4 {
    margin: 0;
    color: #f3f8fc;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 850;
  }

  .gsctpg-warranty-box ul {
    display: grid;
    gap: 10px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
  }

  .gsctpg-warranty-box li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #9eb2c3;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsctpg-warranty-box li > span {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: grid;
    place-items: center;
    margin-top: -1px;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 900;
  }

  .gsctpg-warranty-box--covered li > span {
    color: #52dc92;
    background: rgba(54, 201, 125, 0.08);
  }

  .gsctpg-warranty-box--excluded li > span {
    color: #ff667d;
    background: rgba(255, 64, 91, 0.07);
  }

  .gsctpg-warranty-box__note {
    margin-top: 19px;
    padding: 12px 13px;
    border-left: 3px solid #52dc92;
    border-radius: 0 10px 10px 0;
    color: #8ea6b9;
    background: rgba(255, 255, 255, 0.03);
    font-size: 9px;
    line-height: 1.52;
  }

  .gsctpg-opened {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    margin-top: 24px;
    padding: 23px 25px;
    border: 1px solid rgba(241, 189, 62, 0.22);
    border-radius: 22px;
    background:
      linear-gradient(
        115deg,
        rgba(241, 189, 62, 0.06),
        rgba(255, 255, 255, 0.86)
      );
    box-shadow: 0 14px 35px rgba(31, 66, 96, 0.05);
  }

  .gsctpg-opened__icon {
    width: 55px;
    height: 55px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(241, 189, 62, 0.22);
    border-radius: 16px;
    color: #b68718;
    background: rgba(241, 189, 62, 0.08);
  }

  .gsctpg-opened__icon svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctpg-opened__content > span {
    display: block;
    margin-bottom: 4px;
    color: #a67b1d;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctpg-opened__content h3 {
    margin: 0;
    color: #233a4f;
    font-size: 17px;
    font-weight: 900;
  }

  .gsctpg-opened__content p {
    margin: 7px 0 0;
    color: #718699;
    font-size: 10px;
    line-height: 1.58;
  }

  .gsctpg-service-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 9px 18px;
    align-items: center;
    margin-top: 20px;
    color: #718699;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctpg-service-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .gsctpg-service-meta i {
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gsctpg-green);
    box-shadow: 0 0 10px rgba(54, 201, 125, 0.52);
  }

  .gsctpg-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    margin-top: 24px;
    padding: 28px 30px;
    border: 1px solid rgba(32, 204, 235, 0.2);
    border-radius: 25px;
    color: #ffffff;
    background:
      radial-gradient(
        circle at 94% 20%,
        rgba(32, 204, 235, 0.17),
        transparent 31%
      ),
      linear-gradient(120deg, #061b30, #0a3049);
    box-shadow:
      0 21px 50px rgba(26, 55, 82, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.055);
  }

  .gsctpg-cta__content > span {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctpg-cyan);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctpg-cta__content h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.25;
    font-weight: 900;
  }

  .gsctpg-cta__content p {
    margin: 8px 0 0;
    color: #9eb3c5;
    font-size: 11px;
    line-height: 1.55;
  }

  .gsctpg-cta__actions {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .gsctpg-button {
    min-height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 19px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease,
      border-color 0.25s ease;
  }

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

  .gsctpg-button--primary {
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 13px 28px rgba(37, 180, 235, 0.20),
      0 0 22px rgba(32, 204, 235, 0.08);
  }

  .gsctpg-button--primary:hover {
    box-shadow:
      0 18px 34px rgba(37, 180, 235, 0.29),
      0 0 28px rgba(32, 204, 235, 0.12);
  }

  .gsctpg-button--secondary {
    color: #eaf8fd !important;
    border: 1px solid rgba(32, 204, 235, 0.27);
    background: rgba(255, 255, 255, 0.035);
  }

  .gsctpg-button--secondary:hover {
    border-color: rgba(32, 204, 235, 0.6);
    box-shadow: 0 0 25px rgba(32, 204, 235, 0.08);
  }

  .gsctpg a:focus-visible {
    outline: 2px solid var(--gsctpg-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1050px) {
    .gsctpg-main {
      grid-template-columns: 1fr;
    }

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

    .gsctpg-times > .gsctpg-section-heading {
      grid-column: 1 / -1;
    }

    .gsctpg-time-card,
    .gsctpg-info-card,
    .gsctpg-payment {
      margin-top: 0;
    }

    .gsctpg-info-card,
    .gsctpg-payment {
      height: 100%;
    }

    .gsctpg-cta {
      grid-template-columns: 1fr;
    }

    .gsctpg-cta__actions {
      justify-content: flex-start;
    }
  }

  @media (max-width: 760px) {
    .gsctpg {
      padding: 80px 17px;
    }

    .gsctpg-header {
      margin-bottom: 41px;
    }

    .gsctpg-header p {
      font-size: 15px;
    }

    .gsctpg-process,
    .gsctpg-times {
      padding: 24px;
    }

    .gsctpg-times {
      grid-template-columns: 1fr;
    }

    .gsctpg-times > .gsctpg-section-heading {
      grid-column: auto;
    }

    .gsctpg-warranty {
      padding: 27px 23px;
    }

    .gsctpg-warranty__columns {
      grid-template-columns: 1fr;
    }

    .gsctpg-cta {
      padding: 25px 22px;
      text-align: center;
    }

    .gsctpg-cta__actions {
      justify-content: center;
    }
  }

  @media (max-width: 560px) {
    .gsctpg-step {
      grid-template-columns: 43px minmax(0, 1fr);
    }

    .gsctpg-step__number {
      width: 43px;
      height: 43px;
    }

    .gsctpg-step__icon {
      display: none;
    }

    .gsctpg-timeline::before {
      left: 21px;
    }

    .gsctpg-warranty__intro {
      grid-template-columns: 1fr;
      text-align: center;
    }

    .gsctpg-warranty__badge {
      margin: 0 auto;
    }

    .gsctpg-opened {
      grid-template-columns: 1fr;
      text-align: center;
    }

    .gsctpg-opened__icon {
      margin: 0 auto;
    }

    .gsctpg-cta__actions {
      flex-direction: column;
    }

    .gsctpg-button {
      width: 100%;
    }
  }

  @media (max-width: 430px) {
    .gsctpg-process,
    .gsctpg-times {
      padding: 21px 18px;
    }

    .gsctpg-section-heading h3 {
      font-size: 24px;
    }

    .gsctpg-step {
      padding: 13px;
    }

    .gsctpg-conditions {
      padding: 18px;
    }

    .gsctpg-conditions__icon {
      display: none;
    }

    .gsctpg-warranty {
      padding: 24px 18px;
    }

    .gsctpg-warranty-box {
      padding: 20px 17px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .gsctpg *,
    .gsctpg *::before,
    .gsctpg *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   PROBADOR CONTROLES
   ID: probador-controles
   ========================================================= */

.gs-tester {
--gst-text: #f5f9fd;
    --gst-muted: #9cb1c4;
    --gst-cyan: #26d2ef;
    --gst-blue: #4389ff;
    --gst-red: #ff405b;
    --gst-green: #43d28a;
    --gst-yellow: #f3c54d;
position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gst-text);
    background:
      radial-gradient(
        circle at 8% 18%,
        rgba(67, 137, 255, 0.16),
        transparent 28%
      ),
      radial-gradient(
        circle at 88% 82%,
        rgba(38, 210, 239, 0.17),
        transparent 32%
      ),
      linear-gradient(
        135deg,
        #020a15,
        #04192f 48%,
        #07243d
      );
    font-family: var(--gs-font-sans);
  }

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

  .gs-tester__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: 0.43;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(72, 159, 211, 0.07) 1px,
        transparent 1px
      );
    background-size: 54px 54px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 10%,
      black 90%,
      transparent
    );
  }

  .gs-tester__glow {
    position: absolute;
    z-index: -2;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    filter: blur(105px);
    opacity: 0.16;
    pointer-events: none;
  }

  .gs-tester__glow--red {
    top: 8%;
    left: -240px;
    background: var(--gst-red);
  }

  .gs-tester__glow--cyan {
    right: -230px;
    bottom: 0;
    background: var(--gst-cyan);
  }

  .gs-tester__wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gs-tester__layout {
    display: grid;
    grid-template-columns:
      minmax(0, 0.94fr)
      minmax(430px, 1.06fr);
    align-items: center;
    gap: 70px;
  }

  .gs-tester__content {
    min-width: 0;
  }

  .gs-tester__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 19px;
    padding: 9px 14px;
    border: 1px solid rgba(38, 210, 239, 0.22);
    border-radius: 999px;
    color: #b9eef8;
    background: rgba(5, 27, 47, 0.77);
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.02),
      0 10px 25px rgba(0, 0, 0, 0.14);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gs-tester__eyebrow > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gst-green);
    box-shadow:
      0 0 0 5px rgba(67, 210, 138, 0.1),
      0 0 13px rgba(67, 210, 138, 0.56);
  }

  .gs-tester__content h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(43px, 4.8vw, 68px);
    line-height: 1.01;
    font-weight: 900;
    letter-spacing: -0.055em;
  }

  .gs-tester__content h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      #7ad7ff,
      var(--gst-cyan) 42%,
      var(--gst-blue)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gs-tester__description {
    max-width: 650px;
    margin: 24px 0 0;
    color: var(--gst-muted);
    font-size: 17px;
    line-height: 1.75;
  }

  .gs-tester__features {
    display: grid;
    gap: 11px;
    margin-top: 28px;
  }

  .gs-tester__feature {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 14px 15px;
    border: 1px solid rgba(101, 171, 214, 0.14);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.018));
  }

  .gs-tester__feature-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(38, 210, 239, 0.18);
    border-radius: 13px;
    color: var(--gst-cyan);
    background: rgba(38, 210, 239, 0.06);
  }

  .gs-tester__feature-icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gs-tester__feature strong,
  .gs-tester__feature small {
    display: block;
  }

  .gs-tester__feature strong {
    margin-bottom: 4px;
    color: #eef6fc;
    font-size: 12px;
  }

  .gs-tester__feature small {
    color: #8299ad;
    font-size: 9px;
    line-height: 1.45;
  }

  .gs-tester__button {
    min-height: 53px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 27px;
    padding: 14px 23px;
    border-radius: 999px;
    color: #ffffff !important;
    background: linear-gradient(
      110deg,
      #25cffa,
      #4389ff
    );
    box-shadow:
      0 14px 30px rgba(39, 168, 245, 0.26),
      0 0 23px rgba(39, 168, 245, 0.09);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gs-tester__button:hover {
    transform: translateY(-3px);
    box-shadow:
      0 19px 36px rgba(39, 168, 245, 0.34),
      0 0 29px rgba(39, 168, 245, 0.13);
  }

  .gs-tester__browser {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 17px;
    color: #758da2;
  }

  .gs-tester__browser svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: #64abc9;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gs-tester__browser p {
    margin: 0;
    font-size: 9px;
    line-height: 1.5;
  }

  .gs-tester__panel {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: 29px;
    border: 1px solid rgba(101, 178, 222, 0.24);
    border-radius: 29px;
    background:
      radial-gradient(
        circle at 84% 12%,
        rgba(67, 137, 255, 0.12),
        transparent 28%
      ),
      radial-gradient(
        circle at 22% 0%,
        rgba(38, 210, 239, 0.08),
        transparent 32%
      ),
      linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.04),
        rgba(255, 255, 255, 0.012)
      ),
      linear-gradient(180deg, rgba(8, 24, 42, 0.98), rgba(6, 19, 34, 0.98));
    box-shadow:
      0 30px 70px rgba(0, 0, 0, 0.36),
      inset 0 1px 0 rgba(255, 255, 255, 0.045),
      inset 0 0 0 1px rgba(37, 117, 167, 0.08);
  }

  .gs-tester__panel::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(255,255,255,0.045), transparent 20%);
    mask-image: linear-gradient(to bottom, black, transparent 26%);
  }

  .gs-tester__panel::after {
    content: "";
    position: absolute;
    right: 22px;
    top: 22px;
    width: 92px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(38,210,239,0), rgba(38,210,239,0.8), rgba(67,137,255,0));
    opacity: 0.45;
    pointer-events: none;
  }

  .gs-tester__panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 19px;
    border-bottom: 1px solid rgba(101, 178, 222, 0.14);
  }

  .gs-tester__panel-brand {
    display: flex;
    align-items: center;
    gap: 11px;
  }

  .gs-tester__status-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--gst-green);
    box-shadow:
      0 0 0 6px rgba(67, 210, 138, 0.09),
      0 0 15px rgba(67, 210, 138, 0.6);
  }

  .gs-tester__panel-brand strong,
  .gs-tester__panel-brand small {
    display: block;
  }

  .gs-tester__panel-brand strong {
    margin-bottom: 4px;
    color: #f3f9fd;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 850;
  }

  .gs-tester__panel-brand small {
    color: #8aa5b8;
    font-size: 9px;
    line-height: 1.35;
  }

  .gs-tester__free {
    padding: 8px 12px;
    border: 1px solid rgba(67, 210, 138, 0.28);
    border-radius: 999px;
    color: #8af0b8;
    background: linear-gradient(
      180deg,
      rgba(67, 210, 138, 0.11),
      rgba(67, 210, 138, 0.055)
    );
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.04),
      0 0 18px rgba(67, 210, 138, 0.08);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.11em;
  }

  .gs-tester__controller-area {
    position: relative;
    isolation: isolate;
    min-height: 315px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 25px 0 19px;
    overflow: hidden;
    border: 1px solid rgba(38, 210, 239, 0.14);
    border-radius: 25px;
    background:
      linear-gradient(
        rgba(58, 145, 201, 0.048) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(58, 145, 201, 0.048) 1px,
        transparent 1px
      ),
      radial-gradient(
        circle at 50% 42%,
        rgba(38, 210, 239, 0.15),
        transparent 46%
      ),
      radial-gradient(
        circle at 52% 48%,
        rgba(67, 137, 255, 0.16),
        transparent 62%
      ),
      linear-gradient(180deg, rgba(3, 16, 30, 0.9), rgba(4, 20, 36, 0.82));
    background-size:
      34px 34px,
      34px 34px,
      auto,
      auto,
      auto;
  }

  .gs-tester__controller-area::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 18px;
    border: 1px solid rgba(38, 210, 239, 0.08);
    border-radius: 19px;
  }

  .gs-tester__controller-area::after {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    width: 72%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(38,210,239,0.18), rgba(67,137,255,0.09) 42%, rgba(67,137,255,0) 70%);
    transform: translate(-50%, -50%);
    filter: blur(14px);
    opacity: 0.95;
  }

  .gs-tester__controller-halo {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    border: 1px solid rgba(122, 215, 255, 0.24);
    border-radius: 50%;
    box-shadow: 0 0 28px rgba(38, 210, 239, 0.12), inset 0 0 18px rgba(67, 137, 255, 0.04);
    transform: translate(-50%, -50%);
    animation: gsTesterHalo 5s ease-in-out infinite;
  }

  .gs-tester__controller-halo--one {
    width: 338px;
    height: 222px;
    border-color: rgba(122, 215, 255, 0.28);
  }

  .gs-tester__controller-halo--two {
    width: 425px;
    height: 278px;
    opacity: 0.54;
    border-color: rgba(67, 137, 255, 0.22);
    animation-delay: -2.5s;
  }

  .gs-tester__controller-image {
    position: relative;
    z-index: 2;
    width: min(382px, 89%);
    aspect-ratio: 1 / 1;
    overflow: visible;
    padding: 14px;
    border: 1px solid rgba(123, 195, 231, 0.1);
    border-radius: 30px;
    background: linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.015));
    box-shadow:
      0 30px 54px rgba(0, 0, 0, 0.36),
      0 0 46px rgba(38, 210, 239, 0.11);
    animation: gsTesterControllerFloat 4.5s ease-in-out infinite;
  }

  .gs-tester__controller-image::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    bottom: 10px;
    width: 72%;
    height: 26px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(39,168,245,0.42), rgba(39,168,245,0) 72%);
    transform: translateX(-50%);
    filter: blur(14px);
    opacity: 0.9;
  }

  .gs-tester__controller-image::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.025),
      inset 0 -20px 35px rgba(0, 0, 0, 0.13);
  }

  .gs-tester__controller-image img {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 22px !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: scale(1.075) !important;
    filter:
      drop-shadow(0 14px 30px rgba(0,0,0,0.34))
      drop-shadow(0 0 25px rgba(77,206,255,0.19)) !important;
    opacity: 1 !important;
  }

  .gs-tester__representative {
    position: absolute;
    z-index: 4;
    right: 16px;
    bottom: 14px;
    padding: 7px 10px;
    border: 1px solid rgba(102, 177, 222, 0.16);
    border-radius: 999px;
    color: #91b6ca;
    background: rgba(3, 16, 28, 0.86);
    box-shadow: 0 8px 22px rgba(0,0,0,0.22);
    font-size: 7px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
  }

  .gs-tester__panel-heading {
    text-align: center;
  }

  .gs-tester__panel-heading > span {
    display: block;
    margin-bottom: 8px;
    color: #55ddf3;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.11em;
    text-transform: uppercase;
  }

  .gs-tester__panel-heading h3 {
    margin: 0;
    color: #ffffff;
    font-size: 27px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -0.03em;
  }

  .gs-tester__panel-heading p {
    max-width: 390px;
    margin: 11px auto 0;
    color: #a0b5c5;
    font-size: 11px;
    line-height: 1.6;
  }

  .gs-tester__steps {
    display: grid;
    gap: 9px;
    margin-top: 25px;
  }

  .gs-tester__step {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border: 1px solid rgba(101, 178, 222, 0.13);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.025);
  }

  .gs-tester__step > span {
    width: 35px;
    height: 35px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: #ffffff;
    background: linear-gradient(
      135deg,
      var(--gst-blue),
      var(--gst-cyan)
    );
    font-size: 9px;
    font-weight: 900;
  }

  .gs-tester__step strong,
  .gs-tester__step small {
    display: block;
  }

  .gs-tester__step strong {
    margin-bottom: 4px;
    color: #e7f1f8;
    font-size: 11px;
    line-height: 1.35;
  }

  .gs-tester__step small {
    color: #8aa2b5;
    font-size: 9px;
    line-height: 1.45;
  }

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

  .gs-tester__advantages > div {
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px;
    border: 1px solid rgba(67, 210, 138, 0.15);
    border-radius: 11px;
    color: #9cb2c2;
    background: rgba(67, 210, 138, 0.035);
    font-size: 9px;
    line-height: 1.35;
    font-weight: 650;
    text-align: center;
  }

  .gs-tester__advantages span {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--gst-green);
    box-shadow: 0 0 9px rgba(67, 210, 138, 0.45);
  }

  .gs-tester__notice {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-top: 36px;
    padding: 21px 23px;
    border: 1px solid rgba(243, 197, 77, 0.19);
    border-radius: 20px;
    background:
      linear-gradient(
        110deg,
        rgba(243, 197, 77, 0.055),
        rgba(255, 64, 91, 0.025)
      ),
      rgba(5, 25, 43, 0.82);
  }

  .gs-tester__notice-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(243, 197, 77, 0.2);
    border-radius: 13px;
    color: var(--gst-yellow);
    background: rgba(243, 197, 77, 0.06);
  }

  .gs-tester__notice-icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gs-tester__notice strong {
    display: block;
    margin-bottom: 5px;
    color: #e9eef3;
    font-size: 12px;
  }

  .gs-tester__notice p {
    margin: 0;
    color: #879db0;
    font-size: 10px;
    line-height: 1.55;
  }

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

    50% {
      transform: translateY(-9px) rotate(-0.8deg);
    }
  }

  @keyframes gsTesterHalo {
    0%,
    100% {
      opacity: 0.25;
      transform: translate(-50%, -50%) scale(0.95);
    }

    50% {
      opacity: 0.7;
      transform: translate(-50%, -50%) scale(1.05);
    }
  }

  .gs-tester a:focus-visible {
    outline: 2px solid var(--gst-cyan);
    outline-offset: 4px;
  }

  @media (max-width: 1080px) {
    .gs-tester__layout {
      grid-template-columns: 1fr;
      gap: 45px;
    }

    .gs-tester__content {
      max-width: 780px;
      margin: 0 auto;
      text-align: center;
    }

    .gs-tester__description {
      margin-right: auto;
      margin-left: auto;
    }

    .gs-tester__features {
      text-align: left;
    }

    .gs-tester__browser {
      justify-content: center;
    }

    .gs-tester__panel {
      width: min(680px, 100%);
      margin: 0 auto;
    }
  }

  @media (max-width: 760px) {
    .gs-tester {
      padding: 80px 17px;
    }

    .gs-tester__description {
      font-size: 15px;
    }

    .gs-tester__controller-area {
      min-height: 285px;
    }

    .gs-tester__notice {
      margin-top: 25px;
    }
  }

  @media (max-width: 560px) {
    .gs-tester__button {
      width: 100%;
    }

    .gs-tester__browser {
      align-items: flex-start;
      justify-content: flex-start;
      text-align: left;
    }

    .gs-tester__panel {
      padding: 23px 18px;
    }

    .gs-tester__controller-area {
      min-height: 250px;
    }

    .gs-tester__controller-image {
      width: min(314px, 88%);
      padding: 10px;
    }

    .gs-tester__advantages {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 420px) {
    .gs-tester__panel-header {
      align-items: flex-start;
      flex-direction: column;
    }

    .gs-tester__controller-area {
      min-height: 225px;
      border-radius: 20px;
    }

    .gs-tester__controller-image {
      width: min(258px, 88%);
      padding: 8px;
      border-radius: 22px;
    }

    .gs-tester__controller-halo--one {
      width: 250px;
      height: 165px;
    }

    .gs-tester__controller-halo--two {
      width: 305px;
      height: 200px;
    }

    .gs-tester__representative {
      right: 10px;
      bottom: 9px;
    }

    .gs-tester__panel-heading h3 {
      font-size: 24px;
    }

    .gs-tester__notice {
      padding: 18px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .gs-tester *,
    .gs-tester *::before,
    .gs-tester *::after {
      animation: none !important;
      transition: none !important;
      scroll-behavior: auto !important;
    }
  }

/* =========================================================
   FAQ CONTROLES
   ID: faq-controles
   ========================================================= */

.gsctfaq {
    --gsctfaq-bg: #f4f8fb;
--gsctfaq-text: #102033;
    --gsctfaq-muted: #607286;
    --gsctfaq-line: #d9e5ee;
    --gsctfaq-cyan: #20cceb;
    --gsctfaq-blue: #167df4;
    --gsctfaq-red: #ff405b;
    --gsctfaq-green: #36c97d;
    --gsctfaq-yellow: #efb932;
position: relative;
    isolation: isolate;
    overflow: hidden;
    scroll-margin-top: 110px;
    padding: 105px 24px;
    color: var(--gsctfaq-text);
    background:
      radial-gradient(
        circle at 3% 14%,
        rgba(255, 64, 91, 0.07),
        transparent 25%
      ),
      radial-gradient(
        circle at 96% 88%,
        rgba(32, 204, 235, 0.09),
        transparent 28%
      ),
      var(--gsctfaq-bg);
    font-family: var(--gs-font-sans);
  }

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

  .gsctfaq__grid {
    position: absolute;
    z-index: -3;
    inset: 0;
    opacity: 0.48;
    pointer-events: none;
    background-image:
      linear-gradient(
        rgba(47, 112, 163, 0.036) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(47, 112, 163, 0.036) 1px,
        transparent 1px
      );
    background-size: 58px 58px;
    mask-image: linear-gradient(
      to bottom,
      transparent,
      black 10%,
      black 90%,
      transparent
    );
  }

  .gsctfaq__glow {
    position: absolute;
    z-index: -2;
    width: 410px;
    height: 410px;
    border-radius: 50%;
    filter: blur(105px);
    opacity: 0.1;
    pointer-events: none;
  }

  .gsctfaq__glow--red {
    top: 20%;
    left: -240px;
    background: var(--gsctfaq-red);
  }

  .gsctfaq__glow--cyan {
    right: -240px;
    bottom: 8%;
    background: var(--gsctfaq-cyan);
  }

  .gsctfaq__wrap {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
  }

  .gsctfaq__header {
    max-width: 890px;
    margin: 0 auto 55px;
    text-align: center;
  }

  .gsctfaq__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(22, 125, 244, 0.15);
    border-radius: 999px;
    color: #126fc9;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 8px 24px rgba(28, 63, 97, 0.05);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }

  .gsctfaq__eyebrow span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctfaq-green);
    box-shadow:
      0 0 0 5px rgba(54, 201, 125, 0.1),
      0 0 12px rgba(54, 201, 125, 0.45);
  }

  .gsctfaq__header h2 {
    margin: 0;
    color: var(--gsctfaq-text);
    font-size: clamp(39px, 4.5vw, 64px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.052em;
  }

  .gsctfaq__header h2 span {
    display: block;
    margin-top: 7px;
    color: transparent;
    background: linear-gradient(
      90deg,
      var(--gsctfaq-red),
      #9f7db9 47%,
      var(--gsctfaq-cyan)
    );
    -webkit-background-clip: text;
    background-clip: text;
  }

  .gsctfaq__header p {
    max-width: 780px;
    margin: 23px auto 0;
    color: var(--gsctfaq-muted);
    font-size: 17px;
    line-height: 1.75;
  }

  .gsctfaq__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.28fr) minmax(315px, 0.72fr);
    align-items: start;
    gap: 25px;
  }

  .gsctfaq__questions {
    display: grid;
    gap: 12px;
  }

  .gsctfaq__item {
    overflow: hidden;
    border: 1px solid var(--gsctfaq-line);
    border-radius: 19px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow:
      0 12px 31px rgba(31, 66, 96, 0.055),
      0 2px 7px rgba(31, 66, 96, 0.025);
    transition:
      border-color 0.25s ease,
      box-shadow 0.25s ease,
      transform 0.25s ease;
  }

  .gsctfaq__item[open] {
    border-color: rgba(32, 204, 235, 0.3);
    box-shadow:
      0 17px 38px rgba(31, 66, 96, 0.08),
      0 0 26px rgba(32, 204, 235, 0.045);
  }

  .gsctfaq__item summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 77px;
    padding: 15px 18px;
    cursor: pointer;
    list-style: none;
  }

  .gsctfaq__item summary::-webkit-details-marker {
    display: none;
  }

  .gsctfaq__item summary:focus-visible {
    outline: 3px solid rgba(22, 125, 244, 0.24);
    outline-offset: -3px;
  }

  .gsctfaq__number {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #ffffff;
    background: linear-gradient(
      135deg,
      var(--gsctfaq-blue),
      var(--gsctfaq-cyan)
    );
    box-shadow: 0 9px 18px rgba(22, 125, 244, 0.15);
    font-size: 9px;
    font-weight: 900;
  }

  .gsctfaq__question {
    color: #193148;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 850;
  }

  .gsctfaq__toggle {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid #dce7ef;
    border-radius: 11px;
    background: #f7fafc;
  }

  .gsctfaq__toggle::before,
  .gsctfaq__toggle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    border-radius: 999px;
    background: #4e6a80;
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease;
  }

  .gsctfaq__toggle::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }

  .gsctfaq__item[open] .gsctfaq__toggle {
    border-color: rgba(32, 204, 235, 0.22);
    background: rgba(32, 204, 235, 0.06);
  }

  .gsctfaq__item[open] .gsctfaq__toggle::after {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  .gsctfaq__answer {
    padding: 0 22px 22px 75px;
    border-top: 1px solid #e8eef3;
    color: var(--gsctfaq-muted);
  }

  .gsctfaq__answer > p {
    margin: 15px 0 0;
    font-size: 11px;
    line-height: 1.67;
  }

  .gsctfaq__answer strong {
    color: #294156;
  }

  .gsctfaq__price-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 17px;
  }

  .gsctfaq__price-grid > div {
    padding: 12px 13px;
    border: 1px solid #e0e8ef;
    border-radius: 13px;
    background: #f9fbfc;
  }

  .gsctfaq__price-grid span,
  .gsctfaq__price-grid strong {
    display: block;
  }

  .gsctfaq__price-grid span {
    margin-bottom: 4px;
    color: #61778a;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  .gsctfaq__price-grid strong {
    color: #20384e;
    font-size: 10px;
    line-height: 1.45;
  }

  .gsctfaq__small-note {
    padding: 11px 12px;
    border-left: 3px solid var(--gsctfaq-yellow);
    border-radius: 0 9px 9px 0;
    background: rgba(239, 185, 50, 0.055);
  }

  .gsctfaq__tech-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 17px;
  }

  .gsctfaq__tech {
    padding: 13px;
    border: 1px solid #e0e8ef;
    border-radius: 13px;
    background: #f9fbfc;
  }

  .gsctfaq__tech > span {
    display: block;
    margin-bottom: 6px;
    font-size: 10px;
    font-weight: 900;
  }

  .gsctfaq__tech p {
    margin: 0;
    color: #718699;
    font-size: 9px;
    line-height: 1.5;
  }

  .gsctfaq__tech--standard > span {
    color: var(--gsctfaq-blue);
  }

  .gsctfaq__tech--tmr > span {
    color: #159eb8;
  }

  .gsctfaq__tech--hall > span {
    color: var(--gsctfaq-red);
  }

  .gsctfaq__list {
    display: grid;
    gap: 9px;
    margin: 15px 0 0;
    padding: 0;
    list-style: none;
  }

  .gsctfaq__list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #50677a;
    font-size: 10px;
    line-height: 1.5;
  }

  .gsctfaq__list li span {
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    display: grid;
    place-items: center;
    margin-top: -1px;
    border-radius: 50%;
    color: #16925a;
    background: rgba(54, 201, 125, 0.09);
    font-size: 9px;
    font-weight: 900;
  }

  .gsctfaq__warranty-note {
    margin-top: 17px;
    padding: 14px;
    border: 1px solid rgba(255, 64, 91, 0.16);
    border-radius: 13px;
    background: rgba(255, 64, 91, 0.045);
  }

  .gsctfaq__warranty-note strong {
    display: block;
    margin-bottom: 5px;
    color: #bd3d55;
    font-size: 10px;
  }

  .gsctfaq__warranty-note p {
    margin: 0;
    color: #7b6870;
    font-size: 9px;
    line-height: 1.55;
  }

  .gsctfaq__tester-link {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 17px;
    padding: 10px 16px;
    border-radius: 999px;
    color: #ffffff !important;
    background: linear-gradient(
      110deg,
      var(--gsctfaq-blue),
      var(--gsctfaq-cyan)
    );
    box-shadow: 0 10px 22px rgba(22, 125, 244, 0.16);
    font-size: 10px;
    font-weight: 850;
    text-decoration: none !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctfaq__tester-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(22, 125, 244, 0.23);
  }

  .gsctfaq__aside {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 17px;
  }

  .gsctfaq__aside-card {
    min-width: 0;
    padding: 24px;
    border: 1px solid var(--gsctfaq-line);
    border-radius: 23px;
    background: rgba(255, 255, 255, 0.91);
    box-shadow: 0 17px 43px rgba(31, 66, 96, 0.07);
  }

  .gsctfaq__aside-card--support {
    color: #ffffff;
    border-color: rgba(65, 151, 207, 0.23);
    background:
      radial-gradient(
        circle at 90% 10%,
        rgba(32, 204, 235, 0.17),
        transparent 36%
      ),
      linear-gradient(135deg, #04172a, #08334b);
  }

  .gsctfaq__aside-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
    border: 1px solid rgba(32, 204, 235, 0.22);
    border-radius: 16px;
    color: var(--gsctfaq-cyan);
    background: rgba(32, 204, 235, 0.07);
  }

  .gsctfaq__aside-icon svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctfaq__aside-card--support > span {
    display: block;
    margin-bottom: 5px;
    color: var(--gsctfaq-cyan);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctfaq__aside-card--support h3 {
    margin: 0;
    color: #ffffff;
    font-size: 23px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: -0.025em;
  }

  .gsctfaq__aside-card--support p {
    margin: 12px 0 0;
    color: #9db2c4;
    font-size: 10px;
    line-height: 1.6;
  }

  .gsctfaq__aside-card--support > a {
    width: 100%;
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 20px;
    padding: 12px 17px;
    border-radius: 999px;
    color: #03131f !important;
    background: linear-gradient(110deg, #42dcf3, #43aaf7);
    box-shadow:
      0 13px 28px rgba(37, 180, 235, 0.20),
      0 0 22px rgba(32, 204, 235, 0.08);
    font-size: 11px;
    font-weight: 850;
    text-decoration: none !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease;
  }

  .gsctfaq__aside-card--support > a:hover {
    transform: translateY(-3px);
    box-shadow:
      0 18px 34px rgba(37, 180, 235, 0.29),
      0 0 28px rgba(32, 204, 235, 0.12);
  }

  .gsctfaq__aside-small-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #60788c;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctfaq__aside-small-heading > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gsctfaq-green);
    box-shadow: 0 0 10px rgba(54, 201, 125, 0.4);
  }

  .gsctfaq__hours {
    margin-top: 17px;
    padding-bottom: 17px;
    border-bottom: 1px solid #e2eaf0;
  }

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

  .gsctfaq__hours strong {
    color: #1c354b;
    font-size: 16px;
  }

  .gsctfaq__hours span {
    margin-top: 4px;
    color: #61788b;
    font-size: 10px;
  }

  .gsctfaq__contact-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
  }

  .gsctfaq__contact-row svg {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    fill: none;
    stroke: var(--gsctfaq-blue);
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctfaq__contact-row a {
    overflow-wrap: anywhere;
    color: #38536a !important;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none !important;
  }

  .gsctfaq__contact-row a:hover {
    color: var(--gsctfaq-blue) !important;
  }

  .gsctfaq__aside-card--important {
    border-color: rgba(239, 185, 50, 0.25);
    background:
      linear-gradient(
        125deg,
        rgba(239, 185, 50, 0.065),
        rgba(255, 255, 255, 0.91)
      );
  }

  .gsctfaq__important-title {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .gsctfaq__important-title svg {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    fill: none;
    stroke: #b58412;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .gsctfaq__important-title strong {
    color: #354b5f;
    font-size: 13px;
  }

  .gsctfaq__aside-card--important ul {
    display: grid;
    gap: 10px;
    margin: 17px 0 0;
    padding: 0 0 0 18px;
    color: #6d8192;
  }

  .gsctfaq__aside-card--important li {
    padding-left: 3px;
    font-size: 9px;
    line-height: 1.5;
  }

  .gsctfaq__aside-card--important li::marker {
    color: #c29427;
  }

  .gsctfaq__final {
    display: grid;
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
    align-items: center;
    gap: 25px;
    margin-top: 25px;
    padding: 20px 23px;
    border: 1px solid rgba(22, 125, 244, 0.14);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.78);
  }

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

  .gsctfaq__final span {
    margin-bottom: 4px;
    color: var(--gsctfaq-blue);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .gsctfaq__final strong {
    color: #263f55;
    font-size: 12px;
  }

  .gsctfaq__final p {
    margin: 0;
    color: #74889a;
    font-size: 9px;
    line-height: 1.55;
    text-align: right;
  }

  .gsctfaq a:focus-visible {
    outline: 2px solid var(--gsctfaq-cyan);
    outline-offset: 4px;
  }

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

    .gsctfaq__aside {
      position: static;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      align-items: stretch;
    }

    .gsctfaq__aside-card {
      height: 100%;
    }
  }

  @media (max-width: 760px) {
    .gsctfaq {
      padding: 80px 17px;
    }

    .gsctfaq__header {
      margin-bottom: 41px;
    }

    .gsctfaq__header p {
      font-size: 15px;
    }

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

    .gsctfaq__final {
      grid-template-columns: 1fr;
      text-align: center;
    }

    .gsctfaq__final p {
      text-align: center;
    }
  }

  @media (max-width: 590px) {
    .gsctfaq__item summary {
      grid-template-columns: auto minmax(0, 1fr) auto;
      gap: 10px;
      min-height: 71px;
      padding: 13px;
    }

    .gsctfaq__number {
      width: 39px;
      height: 39px;
    }

    .gsctfaq__question {
      font-size: 12px;
    }

    .gsctfaq__toggle {
      width: 31px;
      height: 31px;
    }

    .gsctfaq__answer {
      padding: 0 17px 19px;
    }

    .gsctfaq__price-grid,
    .gsctfaq__tech-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 420px) {
    .gsctfaq__item summary {
      grid-template-columns: 35px minmax(0, 1fr) 29px;
      gap: 8px;
    }

    .gsctfaq__number {
      width: 35px;
      height: 35px;
      border-radius: 11px;
    }

    .gsctfaq__toggle {
      width: 29px;
      height: 29px;
      border-radius: 9px;
    }

    .gsctfaq__aside-card {
      padding: 21px 18px;
    }
  }

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


/* =========================================================
   CARGA DINÁMICA — CONTROLES
   ========================================================= */
.gsctrl-loading,
.gsctrl-noscript{
    width:100%;
    margin:0;
    padding:24px 18px;
    border:1px solid rgba(38,210,239,.12);
    border-radius:14px;
    background:rgba(3,18,36,.72);
    color:#7f93a5;
    font-size:11px;
    line-height:1.6;
    text-align:center;
}
.gsctlh-visual[data-gs-component="controles-hero"]{min-height:520px;}
.gsctm-grid[data-gs-component="controles-marcas"]{min-height:560px;}
.gsctf-grid[data-gs-component="controles-fallas"]{min-height:820px;}
.gsctj-main-grid[data-gs-component="controles-joysticks"]{min-height:700px;}
.gsctp-pricing[data-gs-component="controles-precios"]{min-height:900px;}
.gsctpg-main[data-gs-component="controles-proceso"]{min-height:620px;}
.gs-tester__panel[data-gs-component="controles-probador"]{min-height:650px;}
.gsctfaq__aside[data-gs-component="controles-faqs"]{min-height:560px;}
[data-gs-component^="controles-"][data-gs-loaded="1"]{min-height:0;}
@media(max-width:700px){
    .gsctlh-visual[data-gs-component="controles-hero"],
    .gsctm-grid[data-gs-component="controles-marcas"],
    .gsctf-grid[data-gs-component="controles-fallas"],
    .gsctj-main-grid[data-gs-component="controles-joysticks"],
    .gsctp-pricing[data-gs-component="controles-precios"],
    .gsctpg-main[data-gs-component="controles-proceso"],
    .gs-tester__panel[data-gs-component="controles-probador"],
    .gsctfaq__aside[data-gs-component="controles-faqs"]{
        min-height:320px;
    }
}
