/* CYBER — réplica exacta del bloque del sitio anterior (gg-cyber-v3). Clases con prefijo ggc- para no chocar con el theme. */
#gg-cyber-v3 {
  --mint:#54f4d8;
  --blue:#071b3b;
  --ink:#092a46;
  --muted:#d3e9f1;
  font-family:Arial,Helvetica,sans-serif;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(ellipse at 95% 0%,#117e8a 0%,transparent 42%),
    linear-gradient(120deg,#04142d,#103b64);
  padding:30px;
  border-radius:22px;
}

#gg-cyber-v3 * {
  box-sizing:border-box;
}

#gg-cyber-v3 button,
#gg-cyber-v3 input,
#gg-cyber-v3 select {
  font:inherit;
}

/* FONDO ANIMADO */

#gg-cyber-v3 .ggc-mesh {
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:
    linear-gradient(#59f8db0d 1px,transparent 1px),
    linear-gradient(90deg,#59f8db0d 1px,transparent 1px);
  background-size:42px 42px;
  animation:ggc-mesh-move 19s linear infinite;
}

#gg-cyber-v3 .ggc-orb {
  position:absolute;
  z-index:-1;
  pointer-events:none;
  border-radius:50%;
  filter:blur(6px);
  opacity:.48;
  background:radial-gradient(circle,#54f4d855 0%,#54f4d800 68%);
  width:460px;
  height:460px;
  right:-170px;
  top:-220px;
  animation:ggc-orbit 12s ease-in-out infinite alternate;
}

#gg-cyber-v3 .ggc-orb.two {
  width:310px;
  height:310px;
  left:20%;
  right:auto;
  top:auto;
  bottom:-235px;
  animation-delay:-5s;
}

#gg-cyber-v3 .ggc-particles {
  position:absolute;
  inset:0;
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
}

#gg-cyber-v3 .ggc-particles i {
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#67ffe3;
  box-shadow:0 0 17px #67ffe3;
  opacity:.35;
  animation:ggc-float 9s ease-in-out infinite alternate;
}

#gg-cyber-v3 .ggc-particles i:nth-child(1) {
  left:6%;
  top:22%;
}

#gg-cyber-v3 .ggc-particles i:nth-child(2) {
  left:17%;
  top:69%;
  animation-delay:-3s;
}

#gg-cyber-v3 .ggc-particles i:nth-child(3) {
  left:39%;
  top:14%;
  animation-delay:-5s;
}

#gg-cyber-v3 .ggc-particles i:nth-child(4) {
  left:65%;
  top:81%;
  animation-delay:-2s;
}

#gg-cyber-v3 .ggc-particles i:nth-child(5) {
  left:83%;
  top:27%;
  animation-delay:-7s;
}

#gg-cyber-v3 .ggc-particles i:nth-child(6) {
  left:96%;
  top:68%;
  animation-delay:-4s;
}

@keyframes ggc-mesh-move {
  to {background-position:42px 42px}
}

@keyframes ggc-orbit {
  to {transform:translate(-100px,110px) scale(1.3)}
}

@keyframes ggc-float {
  to {
    transform:translate(40px,-60px);
    opacity:.8;
  }
}

/* DISEÑO HORIZONTAL */

#gg-cyber-v3 .ggc-layout {
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:22px;
  align-items:stretch;
}

/* PANEL IZQUIERDO */

#gg-cyber-v3 .ggc-side {
  border:1px solid #67ffe344;
  border-radius:19px;
  padding:22px;
  background:#ffffff10;
  backdrop-filter:blur(12px);
  display:flex;
  flex-direction:column;
  min-width:0;
}

#gg-cyber-v3 .ggc-eyebrow {
  font-size:10px;
  font-weight:900;
  letter-spacing:2.3px;
  color:var(--mint);
}

#gg-cyber-v3 h2 {
  font-weight:950;
  font-size:clamp(50px,6vw,79px);
  line-height:1;
  margin:10px 0;
  color:var(--mint);
  letter-spacing:-3px;
  text-shadow:0 0 35px #54f4d877;
  animation:ggc-pulse 3s ease-in-out infinite alternate;
}

@keyframes ggc-pulse {
  to {
    text-shadow:
      0 0 8px #54f4d844,
      0 0 55px #54f4d899;
  }
}

#gg-cyber-v3 .ggc-intro {
  font-size:13px;
  line-height:1.55;
  color:var(--muted);
  margin:5px 0 18px;
}

#gg-cyber-v3 .ggc-field {
  font-size:12px;
  font-weight:800;
  margin:12px 0 7px;
  display:block;
  color:#fff;
}

#gg-cyber-v3 .ggc-input,
#gg-cyber-v3 .ggc-select {
  width:100%;
  height:44px;
  padding:0 13px;
  border:1px solid #79ffe47a;
  border-radius:10px;
  background:white;
  color:#092a46;
  outline:none;
  font-size:14px;
  font-weight:700;
}

#gg-cyber-v3 .ggc-input:focus,
#gg-cyber-v3 .ggc-select:focus {
  box-shadow:0 0 0 3px #54f4d847;
}

#gg-cyber-v3 .ggc-recommend {
  margin-top:14px;
  width:100%;
  background:var(--mint);
  color:var(--blue);
  border:0;
  border-radius:11px;
  padding:14px 8px;
  font-size:12px;
  font-weight:950;
  letter-spacing:.6px;
  cursor:pointer;
  box-shadow:0 0 25px #54f4d83d;
  transition:transform .2s,filter .2s;
}

#gg-cyber-v3 .ggc-recommend:hover {
  transform:translateY(-3px);
  filter:brightness(1.05);
}

#gg-cyber-v3 .ggc-note {
  font-size:10px;
  line-height:1.55;
  color:#c5e4ec;
  margin:10px 0 0;
}

#gg-cyber-v3 .ggc-result {
  margin-top:15px;
  font-size:12px;
  line-height:1.45;
  color:#def8f3;
}

#gg-cyber-v3 .ggc-result-head {
  font-size:12px;
  font-weight:900;
  color:var(--mint);
  margin-bottom:8px;
}

#gg-cyber-v3 .ggc-rec-link {
  display:block;
  color:#fff;
  text-decoration:none;
  border:1px solid #54f4d84d;
  padding:9px 10px;
  border-radius:9px;
  margin:6px 0;
  background:#54f4d812;
  font-size:11px;
  font-weight:700;
  transition:background .2s;
}

#gg-cyber-v3 .ggc-rec-link:hover {
  color:var(--mint);
  background:#54f4d828;
  text-decoration:none;
}

/* CATÁLOGO */

#gg-cyber-v3 .ggc-catalog {
  min-width:0;
  display:flex;
  flex-direction:column;
}

#gg-cyber-v3 .ggc-head {
  display:flex;
  gap:14px;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px;
}

#gg-cyber-v3 .ggc-head strong {
  font-size:16px;
}

#gg-cyber-v3 .ggc-count {
  font-size:11px;
  color:var(--muted);
}

#gg-cyber-v3 .ggc-nav {
  display:flex;
  gap:7px;
  align-items:center;
}

#gg-cyber-v3 .ggc-arrow {
  border:1px solid #54f4d86b;
  color:white;
  background:#ffffff19;
  border-radius:50%;
  width:37px;
  height:37px;
  cursor:pointer;
  font-size:21px;
  transition:background .2s;
}

#gg-cyber-v3 .ggc-arrow:hover {
  color:var(--blue);
  background:var(--mint);
}

/* FILTROS */

#gg-cyber-v3 .ggc-filters {
  display:flex;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:thin;
  padding:3px 0 14px;
}

#gg-cyber-v3 .ggc-filter {
  flex:none;
  border:1px solid #a7ffe055;
  border-radius:30px;
  background:#ffffff12;
  color:#e1f8f5;
  padding:9px 13px;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  transition:.2s;
}

#gg-cyber-v3 .ggc-filter.active,
#gg-cyber-v3 .ggc-filter:hover {
  background:var(--mint);
  color:var(--blue);
  border-color:var(--mint);
}

/* CARRUSEL */

#gg-cyber-v3 .ggc-viewport {
  min-width:0;
  width:100%;
  overflow:hidden;
  padding:5px 2px 22px;
  touch-action:pan-y;
}

#gg-cyber-v3 .ggc-track {
  display:flex;
  gap:14px;
  transition:transform .6s cubic-bezier(.19,1,.22,1);
  will-change:transform;
}

#gg-cyber-v3 .ggc-card {
  flex:0 0 calc((100% - 14px)/2.15);
  min-width:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  position:relative;
  color:var(--ink);
  background:#fff;
  border:2px solid transparent;
  border-radius:16px;
  box-shadow:0 7px 23px #04132533;
  transition:
    border-color .2s,
    transform .25s,
    box-shadow .25s;
}

#gg-cyber-v3 .ggc-card:hover {
  transform:translateY(-4px);
  box-shadow:0 12px 35px #54f4d82d;
}

#gg-cyber-v3 .ggc-card.recommended {
  border-color:var(--mint);
  box-shadow:0 0 23px #54f4d84a;
}

#gg-cyber-v3 .ggc-tag {
  position:absolute;
  z-index:2;
  left:11px;
  top:11px;
  border-radius:20px;
  padding:7px 10px;
  background:#0b3455;
  color:var(--mint);
  font-size:9px;
  font-weight:900;
  letter-spacing:.6px;
}

/* IMAGEN DEL PRODUCTO */

#gg-cyber-v3 .ggc-image {
  height:164px;
  background:
    radial-gradient(circle,#e2f8f4,#f8fafc 68%);
  padding:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
}

#gg-cyber-v3 .ggc-image img {
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .35s;
}

#gg-cyber-v3 .ggc-card:hover .ggc-image img {
  transform:scale(1.06);
}

#gg-cyber-v3 .ggc-img-fallback {
  display:none;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:20px;
  font-size:18px;
  font-weight:950;
  color:#087e85;
  letter-spacing:1px;
}

/* INFORMACIÓN */

#gg-cyber-v3 .ggc-info {
  padding:14px;
  flex:1;
  display:flex;
  flex-direction:column;
  min-height:178px;
}

#gg-cyber-v3 .ggc-type {
  font-size:10px;
  color:#087e85;
  text-transform:uppercase;
  letter-spacing:1px;
  font-weight:900;
  margin-bottom:7px;
}

#gg-cyber-v3 .ggc-name {
  font-size:14px;
  font-weight:900;
  line-height:1.35;
  margin:0 0 9px;
  min-height:38px;
}

#gg-cyber-v3 .ggc-specs {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-bottom:10px;
}

#gg-cyber-v3 .ggc-spec {
  font-size:10px;
  font-weight:800;
  color:#087e85;
  background:#e5f9f4;
  padding:5px 8px;
  border-radius:30px;
}

#gg-cyber-v3 .ggc-price {
  font-size:20px;
  font-weight:950;
  color:#087e85;
  margin-top:auto;
  margin-bottom:11px;
}

#gg-cyber-v3 .ggc-buy {
  display:block;
  text-align:center;
  text-decoration:none;
  border-radius:9px;
  background:#092f52;
  color:#fff;
  padding:12px 8px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.5px;
}

#gg-cyber-v3 .ggc-buy:hover {
  background:#087e85;
  color:#fff;
  text-decoration:none;
}

/* PIE DEL CARRUSEL */

#gg-cyber-v3 .ggc-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  padding:6px 1px 0;
  color:#c8e4e9;
  font-size:11px;
}

#gg-cyber-v3 .ggc-progress {
  height:4px;
  flex:1;
  max-width:140px;
  border-radius:4px;
  background:#ffffff35;
  overflow:hidden;
}

#gg-cyber-v3 .ggc-progress>span {
  display:block;
  height:100%;
  width:0;
  background:var(--mint);
  border-radius:4px;
  transition:width .35s;
}

#gg-cyber-v3 .ggc-shop {
  display:inline-block;
  color:var(--mint);
  text-decoration:none;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}

#gg-cyber-v3 .ggc-shop:hover {
  color:white;
  text-decoration:underline;
}

/* RESPONSIVE */

@media(max-width:1100px) {
  #gg-cyber-v3 .ggc-layout {
    grid-template-columns:270px minmax(0,1fr);
  }

  #gg-cyber-v3 .ggc-card {
    flex-basis:74%;
  }
}

@media(max-width:760px) {
  #gg-cyber-v3 {
    padding:18px 14px;
    border-radius:15px;
  }

  #gg-cyber-v3 .ggc-layout {
    grid-template-columns:1fr;
    gap:20px;
  }

  #gg-cyber-v3 .ggc-side {
    padding:18px;
  }

  #gg-cyber-v3 .ggc-card {
    flex-basis:83%;
  }

  #gg-cyber-v3 .ggc-image {
    height:185px;
  }
}

@media(prefers-reduced-motion:reduce) {
  #gg-cyber-v3 *,
  #gg-cyber-v3 *::before,
  #gg-cyber-v3 *::after {
    animation:none!important;
    transition:none!important;
  }
}

/* Aislar del theme nuevo: misma tipografía y ritmo que tenía en el sitio anterior */
#gg-cyber-v3 h2,
#gg-cyber-v3 h3 {
  font-family:inherit;
  text-transform:none;
}
#gg-cyber-v3 h3.ggc-name {
  font-size:14px;
  letter-spacing:normal;
  margin:0 0 9px;
}
#gg-cyber-v3 p {
  max-width:none;
}
.gg-sec--cyber {
  padding-block:clamp(28px,4vw,56px);
}
