
/* ═══════════════════════════════════════════
   BLUE7 AI – Design System V2 (Mockup-Exact)
   ═══════════════════════════════════════════ */

:root {
  --blue7-primary: #00CFFF;
  --blue7-accent: #0047FF;
  --blue7-mid: #007BFF;
  --blue7-black: #000000;
  --blue7-text: #E6E6E6;
  --blue7-gradient: linear-gradient(90deg, #0047FF 0%, #007BFF 50%, #00CFFF 100%);
  --glass-bg: rgba(4, 8, 20, 0.6);
  --glass-border: rgba(0, 207, 255, 0.12);
  --glow-sm: 0 0 20px rgba(0, 207, 255, 0.08);
  --glow-md: 0 0 40px rgba(0, 207, 255, 0.12), 0 0 80px rgba(0, 71, 255, 0.06);
  --section-pad: clamp(60px, 8vw, 120px);
  --inner-width: min(90%, 1280px);
}

/* ── Reset ── */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  font-weight: 400;
  color: var(--blue7-text);
  background: #000005;
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }

/* ═══════════════════════════════════════════
   COSMIC BACKGROUND – Multi-layer nebula
   ═══════════════════════════════════════════ */

/* Canvas starfield sits behind everything */
#starfield {
  position: fixed;
  inset: 0;
  z-index: -10;
  pointer-events: none;
  width: 100%;
  height: 100%;
}

/* Nebula layer 1: Upper-center cosmic cloud (hero area) */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -9;
  background:
    /* Central nebula blob */
    radial-gradient(ellipse 80% 50% at 45% 25%, rgba(0, 71, 255, 0.14) 0%, transparent 70%),
    radial-gradient(ellipse 60% 40% at 55% 20%, rgba(0, 123, 255, 0.08) 0%, transparent 60%),
    radial-gradient(ellipse 50% 35% at 40% 30%, rgba(0, 207, 255, 0.06) 0%, transparent 55%),
    /* Secondary cloud wisps */
    radial-gradient(ellipse 40% 30% at 70% 15%, rgba(0, 71, 255, 0.07) 0%, transparent 60%),
    radial-gradient(ellipse 35% 25% at 25% 35%, rgba(0, 123, 255, 0.05) 0%, transparent 50%),
    /* Deep subtle coloring */
    radial-gradient(ellipse 100% 60% at 50% 50%, rgba(2, 5, 20, 0.8) 0%, transparent 80%),
    radial-gradient(ellipse 120% 80% at 50% 30%, rgba(0, 30, 80, 0.06) 0%, transparent 70%);
  pointer-events: none;
}

/* Nebula layer 2: Energy waves (bottom of hero + footer zone) */
body::after {
  content: '';
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 45vh;
  z-index: -8;
  background:
    radial-gradient(ellipse 130% 70% at 50% 100%, rgba(0, 71, 255, 0.2) 0%, transparent 65%),
    radial-gradient(ellipse 90% 50% at 50% 100%, rgba(0, 207, 255, 0.1) 0%, transparent 55%),
    radial-gradient(ellipse 70% 35% at 35% 100%, rgba(0, 71, 255, 0.08) 0%, transparent 45%),
    radial-gradient(ellipse 60% 30% at 65% 100%, rgba(0, 207, 255, 0.05) 0%, transparent 40%);
  pointer-events: none;
}

/* ═══════════════════════════════════════════
   HEADER
   ═══════════════════════════════════════════ */

.site-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  height: 80px;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.header-inner {
  width: var(--inner-width);
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header-logo img { height: 42px; width: auto; }

.header-nav {
  display: flex;
  align-items: center;
  gap: 40px;
}

.nav-link {
  font-size: 0.92rem;
  font-weight: 600;
  color: rgba(230, 230, 230, 0.85);
  transition: color 0.25s ease;
}

.nav-link:hover,
.nav-link:focus-visible { color: var(--blue7-primary); }

.nav-link--cta { color: var(--blue7-primary); }

.menu-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  z-index: 1001;
}

.menu-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--blue7-text);
  transition: all 0.3s ease;
  border-radius: 2px;
}

.menu-toggle.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.menu-toggle.active span:nth-child(2) { opacity: 0; }
.menu-toggle.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* ═══════════════════════════════════════════
   HERO
   ═══════════════════════════════════════════ */

.hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  position: relative;
}

/* Sub-hero energy glow */
.hero::after {
  content: '';
  position: absolute;
  bottom: -420px;
  left: 0;
  right: 0;
  height: 900px;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 120% 70% at 50% 75%, rgba(0, 71, 255, 0.10) 0%, rgba(0, 71, 255, 0.06) 22%, rgba(0, 207, 255, 0.04) 45%, transparent 72%);
  filter: blur(14px);
  opacity: 0.85;
}


.hero-inner {
  width: var(--inner-width);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 48px;
  align-items: center;
  padding: var(--section-pad) 0;
}

.hero-content { max-width: 620px; }

.hero-headline {
  font-size: clamp(1.75rem, 3.2vw, 2.75rem);
  font-weight: 700;
  line-height: 1.22;
  color: #ffffff;
  margin-bottom: 24px;
}

.highlight { color: var(--blue7-primary); }


.cyan { color: var(--blue7-primary); }
.hero-paragraph {
  font-size: clamp(0.88rem, 1.1vw, 1rem);
  color: rgba(230, 230, 230, 0.72);
  line-height: 1.75;
  margin-bottom: 14px;
}

.hero-paragraph strong {
  color: rgba(255, 255, 255, 0.92);
  font-weight: 600;
}

.hero-small { text-align: center; margin-top: 18px; margin-bottom: 18px; color: rgba(230,230,230,0.65); }

/* ── CTA BUTTONS ── */

/* Filled variant (hero) */
.btn-primary {
  display: inline-block;
  padding: 15px 34px;
  color: #ffffff;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 700;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  text-align: center;
}

.btn-primary--filled {
  background: var(--blue7-gradient);
  box-shadow: 0 4px 24px rgba(0, 71, 255, 0.3), 0 0 60px rgba(0, 207, 255, 0.08);
}

.btn-primary--filled:hover {
  transform: scale(1.04);
  box-shadow: 0 4px 32px rgba(0, 71, 255, 0.4), 0 0 80px rgba(0, 207, 255, 0.15);
}

/* Outline variant (methodology) */
.btn-primary--outline {
  background: rgba(0, 71, 255, 0.08);
  border: 1.5px solid transparent;
  background-image: linear-gradient(rgba(0, 71, 255, 0.08), rgba(0, 71, 255, 0.08)),
                    var(--blue7-gradient);
  background-origin: padding-box, border-box;
  background-clip: padding-box, border-box;
  box-shadow: 0 0 30px rgba(0, 71, 255, 0.15), 0 0 60px rgba(0, 207, 255, 0.05);
}

.btn-primary--outline:hover {
  transform: scale(1.04);
  background-image: linear-gradient(rgba(0, 71, 255, 0.15), rgba(0, 71, 255, 0.15)),
                    var(--blue7-gradient);
  box-shadow: 0 0 40px rgba(0, 71, 255, 0.25), 0 0 80px rgba(0, 207, 255, 0.1);
}

/* ── ISOTIPO ── */

.hero-visual {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ── HERO ISOTIPO LAYER (between cosmic bg and hero text) ── */
.hero-visual{ position: relative; align-self: stretch; min-height: 220px; }
.hero-isotipo-layer{ position:absolute; inset:0; pointer-events:none; z-index:1; display:flex; align-items:center; justify-content:center; }
.hero-content{ position:relative; z-index:2; }


.isotipo-container {
  position: relative;
  width: 100%;
  max-width: 440px;
  aspect-ratio: 695 / 563;
}

.isotipo-plate {
  position: absolute;
  inset: -6%;
  background: rgba(4, 8, 20, 0.5);
  border-radius: 20px;
  border: 1px solid rgba(0, 207, 255, 0.04);
  display: none;
}

.isotipo-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}

.isotipo-svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0 0 20px rgba(0, 207, 255, 0.25))
    drop-shadow(0 0 50px rgba(0, 71, 255, 0.15))
    drop-shadow(0 0 80px rgba(0, 207, 255, 0.08));
  position: relative;
  z-index: 2;
}


.isotipo-scan {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  pointer-events: none;
  overflow: visible;
}


/* PATCH: ocultar contorno/scan del isotipo para evitar doble silueta */
.hero-visual .isotipo-scan{ opacity:0; }
.scan-path {
  fill: none;
  stroke: var(--blue7-primary);
  stroke-width: 2.6px;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.0;
  stroke-dasharray: 70 930;
  stroke-dashoffset: 1000;
  filter:
    drop-shadow(0 0 10px rgba(0, 207, 255, 0.35))
    drop-shadow(0 0 26px rgba(0, 71, 255, 0.22))
    drop-shadow(0 0 60px rgba(0, 207, 255, 0.10));
  animation: blue7StrokeScan 9s ease-in-out infinite;
}

@keyframes blue7StrokeScan {
  0% { stroke-dashoffset: 1000; opacity: 0; }
  5% { opacity: 1; }
  33.333% { stroke-dashoffset: 0; opacity: 0; }
  100% { stroke-dashoffset: 0; opacity: 0; }
}
  10% { opacity: 0.95; }
  45% { stroke-dashoffset: 0; opacity: 0.95; }
  55% { opacity: 0; }
  56% { stroke-dashoffset: 1000; opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .scan-path { animation: none; opacity: 0; }
}

8% { opacity: 1; }
  42% { left: 150%; opacity: 1; }
  52% { opacity: 0; }
  53%, 99% { left: -100%; opacity: 0; }
}

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

/* ═══════════════════════════════════════════
   SECTIONS COMMON
   ═══════════════════════════════════════════ */

.section-inner {
  width: var(--inner-width);
  margin: 0 auto;
}

.section-title {
  font-size: clamp(1.4rem, 2.8vw, 2.1rem);
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin-bottom: 14px;
}

.section-subtitle {
  font-size: clamp(0.88rem, 1.1vw, 1rem);
  color: rgba(230, 230, 230, 0.55);
  text-align: center;
  max-width: 620px;
  margin: 0 auto 52px;
  line-height: 1.65;
}

.section-subtitle .highlight { color: var(--blue7-primary); }

/* ═══════════════════════════════════════════
   IMPACTO
   ═══════════════════════════════════════════ */

.impacto {
  padding: var(--section-pad) 0;
  position: relative;
}

.impacto-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

/* Glass card with gradient border on ALL sides */
.impact-card {
  position: relative;
  border-radius: 16px;
  padding: 30px 24px;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  overflow: hidden;
  /* Gradient border technique */
  background: var(--glass-bg);
  border: 1px solid transparent;
  background-image:
    linear-gradient(var(--glass-bg), var(--glass-bg)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.3) 0%, rgba(0, 207, 255, 0.15) 50%, rgba(0, 71, 255, 0.08) 100%);
  background-origin: padding-box, border-box;
  background-clip: padding-box, border-box;
}

.impact-card:hover {
  transform: scale(1.04);
  box-shadow: var(--glow-md);
  background-image:
    linear-gradient(var(--glass-bg), var(--glass-bg)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.45) 0%, rgba(0, 207, 255, 0.25) 50%, rgba(0, 71, 255, 0.15) 100%);
}

.impact-card__icon {
  width: 100%;
  max-width: 160px;
  height: auto;
  margin: 0 auto 20px;
  display: block;
}


.impact-card__icon svg {
  width: 100%;
  height: auto;
}

.impact-card__title {
  font-size: 1.1rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 2px;
}

.impact-card__label {
  font-size: 0.78rem;
  color: rgba(230, 230, 230, 0.35);
  margin-bottom: 14px;
}

.impact-card__desc {
  font-size: 0.88rem;
  color: rgba(230, 230, 230, 0.65);
  line-height: 1.6;
  margin-bottom: 14px;
}

.impact-card__tags {
  font-size: 0.78rem;
  color: rgba(230, 230, 230, 0.38);
  margin-bottom: 16px;
  line-height: 1.5;
}

.impact-card__result {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--blue7-primary);
}

/* ═══════════════════════════════════════════
   METODOLOGÍA
   ═══════════════════════════════════════════ */

.metodologia {
  padding: var(--section-pad) 0;
  position: relative;
}

.metodo-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
  margin-bottom: 48px;
}

.metodo-card {
  position: relative;
  border-radius: 14px;
  padding: 28px 16px 20px;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  overflow: hidden;
  background: var(--glass-bg);
  border: 1px solid transparent;
  background-image:
    linear-gradient(var(--glass-bg), var(--glass-bg)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.25) 0%, rgba(0, 207, 255, 0.1) 50%, rgba(0, 71, 255, 0.06) 100%);
  background-origin: padding-box, border-box;
  background-clip: padding-box, border-box;
}

.metodo-card:hover {
  transform: scale(1.04);
  box-shadow: var(--glow-sm);
  background-image:
    linear-gradient(var(--glass-bg), var(--glass-bg)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.4) 0%, rgba(0, 207, 255, 0.2) 50%, rgba(0, 71, 255, 0.12) 100%);
}

/* Step indicator */
.metodo-card__step {
  position: absolute;
  top: 10px;
  left: 14px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.68rem;
  font-weight: 700;
  color: var(--blue7-primary);
  background: rgba(0, 71, 255, 0.12);
  border: 1px solid rgba(0, 207, 255, 0.2);
}

.metodo-card__icon {
  width: 56px;
  height: 56px;
  margin: 0 auto 12px;
  display: block;
}


.metodo-card__icon svg {
  width: 100%;
  height: 100%;
}

.metodo-card__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 8px;
  line-height: 1.35;
}

.metodo-card__desc {
  font-size: 0.85rem;
  color: rgba(230, 230, 230, 0.48);
  line-height: 1.55;
}

.metodo-cta-wrap { text-align: center; }

/* ═══════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════ */

.site-footer {
  padding: 64px 0 32px;
  position: relative;
}

.footer-inner {
  width: var(--inner-width);
  margin: 0 auto;
}

.footer-brand { margin-bottom: 32px; }

.footer-logo {
  height: 40px;
  width: auto;
  margin-bottom: 16px;
  max-width:none !important;
  height:40px !important;
  width:auto !important;
}


.footer-desc {
  font-size: 0.85rem;
  color: rgba(230, 230, 230, 0.48);
  max-width: 480px;
  line-height: 1.65;
}

.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-copy {
  font-size: 0.8rem;
  color: rgba(230, 230, 230, 0.35);
}

.footer-copy strong {
  color: rgba(230, 230, 230, 0.5);
  font-weight: 700;
}

.footer-social {
  display: flex;
  gap: 12px;
  align-items: center;
}

.social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  color: rgba(230, 230, 230, 0.45);
  transition: all 0.25s ease;
  background: rgba(4, 8, 20, 0.5);
  border: 1px solid transparent;
  background-image:
    linear-gradient(rgba(4, 8, 20, 0.5), rgba(4, 8, 20, 0.5)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.25), rgba(0, 207, 255, 0.15));
  background-origin: padding-box, border-box;
  background-clip: padding-box, border-box;
}

.social-icon:hover {
  color: var(--blue7-primary);
  box-shadow: 0 0 14px rgba(0, 207, 255, 0.15);
  background-image:
    linear-gradient(rgba(4, 8, 20, 0.5), rgba(4, 8, 20, 0.5)),
    linear-gradient(135deg, rgba(0, 71, 255, 0.45), rgba(0, 207, 255, 0.35));
}

.social-icon svg { width: 16px; height: 16px; }

/* ═══════════════════════════════════════════
   RESPONSIVE (7 BREAKPOINTS)
   ═══════════════════════════════════════════ */

@media (min-width: 1601px) {
  :root { --inner-width: min(85%, 1400px); }
}

@media (max-width: 1600px) and (min-width: 1201px) {
  .hero-headline { font-size: clamp(1.6rem, 2.6vw, 2.4rem); }
}

@media (max-width: 1200px) and (min-width: 993px) {
  .metodo-grid { gap: 12px; }
  .metodo-card { padding: 26px 12px 18px; }
  .hero-inner { gap: 36px; }
  .isotipo-container { max-width: 360px; }
}

@media (max-width: 992px) {
  .hero-inner {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 36px;
  }
  .hero-content { max-width: 100%; order: 1; }
  .hero-visual { order: 0; }
  .isotipo-container { max-width: 300px; margin: 0 auto; }
  .impacto-grid {
    grid-template-columns: 1fr;
    max-width: 500px;
    margin: 0 auto;
  }
  .metodo-grid { grid-template-columns: repeat(2, 1fr); }

  .menu-toggle { display: flex; }
  .header-nav {
    position: fixed;
    top: 0;
    right: -100%;
    width: 280px;
    height: 100vh;
    height: 100dvh;
    background: rgba(0, 0, 0, 0.95);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 36px;
    transition: right 0.35s ease;
    border-left: 1px solid rgba(0, 207, 255, 0.08);
  }
  .header-nav.open { right: 0; }
  .nav-link { font-size: 1.08rem; }
}

@media (max-width: 768px) {
  .site-header { height: 68px; }
  .hero {
  }
  .header-logo img { height: 40px; }
  .hero-headline { font-size: clamp(1.4rem, 5vw, 1.9rem); }
  .section-title { font-size: clamp(1.25rem, 4vw, 1.7rem); }
  .isotipo-container { max-width: 250px; }
  .metodo-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 600px) {
  :root { --section-pad: 48px; }
  .hero-headline { font-size: 1.35rem; }
  .btn-primary { padding: 14px 28px; font-size: 0.9rem; width: 100%; }
  .metodo-grid { grid-template-columns: 1fr; }
  .impact-card { padding: 24px 20px; }
  .impact-card__icon { max-width: 130px; }
  .isotipo-container { max-width: 210px; }
}

@media (max-width: 480px) {
  :root { --section-pad: 36px; --inner-width: 92%; }
  .hero-headline { font-size: 1.2rem; }
  .section-title { font-size: 1.15rem; }
  .header-logo img { height: 40px; }
  .site-header { height: 58px; }
  .hero {
  }
  .footer-social { gap: 8px; }
  .social-icon { width: 30px; height: 30px; }
  .social-icon svg { width: 14px; height: 14px; }
}
.hero-content .btn-primary--filled{ width: fit-content; margin-left:auto; margin-right:auto; display:inline-flex; justify-content:center; }

.metodo-cta-lead{ text-align:center; margin: 10px 0 14px; font-size: 1rem; color: rgba(230,230,230,0.85);} 


  
.isotipo-plate{display:none !important;}

.isotipo-container{background:transparent !important;}
.isotipo-wrapper{background:transparent !important;}

.isotipo-fill{position:absolute; inset:0; width:100%; height:100%; object-fit:contain; filter: drop-shadow(0 0 18px rgba(0,207,255,0.18)); z-index:1;}
.isotipo-svg{position:relative; z-index:2;}
.isotipo-scan{position:absolute; inset:0; z-index:3; pointer-events:none;}

.hero-post{padding: 10px 0 28px;}
.hero-post-inner{text-align:center; display:flex; flex-direction:column; align-items:center; gap:16px;}
.hero-small--post{margin:0;}

.impact-card, .metodo-card{ text-align:center; }
.metodo-card__icon, .impact-card__icon{ display:flex; align-items:center; justify-content:center; }
.impact-card__icon{margin-left:auto; margin-right:auto;}

@media (prefers-reduced-motion: reduce){ .scan-path{animation:none !important; opacity:0.35;} }



/* === blue7 CARD ICON STAGE (mockup platform) — scoped to Impact cards only === */
.impact-card__icon{
  position: relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow: visible; /* allow glow to breathe */
}

/* Keep the SVG on top */
.impact-card__icon > svg{
  position: relative;
  z-index: 3;
  width:100% !important;
  height:100% !important;
  display:block;
}

/* Stage container */
.impact-card__icon .b7-icon-stage{
  position:absolute;
  left:50%;
  bottom:6%;
  transform: translateX(-50%);
  width:118%;
  height:48%;
  z-index: 1;
  pointer-events:none;
  filter: drop-shadow(0 0 14px rgba(0,207,255,.18));
}

/* Base glow ellipse */
.impact-card__icon .b7-icon-stage__glow{
  position:absolute;
  inset: 0;
  background:
    radial-gradient(60% 45% at 50% 70%,
      rgba(0,207,255,.40) 0%,
      rgba(0,71,255,.22) 25%,
      rgba(0,0,0,0) 70%);
  transform: scaleY(.85);
  opacity: .95;
}

/* Perspective grid plane */
.impact-card__icon .b7-icon-stage__grid{
  position:absolute;
  left:50%;
  bottom:2%;
  width:100%;
  height:78%;
  transform: translateX(-50%) perspective(700px) rotateX(66deg);
  transform-origin: bottom center;
  background:
    /* horizontal lines */
    repeating-linear-gradient(to top,
      rgba(0,207,255,.18) 0px,
      rgba(0,207,255,.18) 1px,
      rgba(0,0,0,0) 10px,
      rgba(0,0,0,0) 18px),
    /* vertical lines */
    repeating-linear-gradient(to right,
      rgba(0,71,255,.16) 0px,
      rgba(0,71,255,.16) 1px,
      rgba(0,0,0,0) 14px,
      rgba(0,0,0,0) 24px);
  border-radius: 18px;
  opacity:.65;
  /* fade out towards the back */
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,.9), rgba(0,0,0,0));
          mask-image: linear-gradient(to top, rgba(0,0,0,.9), rgba(0,0,0,0));
}

/* Subtle particles/dots (very light) */
.impact-card__icon .b7-icon-stage__dots{
  position:absolute;
  left:50%;
  bottom:24%;
  width:100%;
  height:70%;
  transform: translateX(-50%);
  background:
    radial-gradient(circle at 12% 35%, rgba(0,207,255,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 28% 52%, rgba(0,207,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 44% 28%, rgba(0,71,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 62% 46%, rgba(0,207,255,.16) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 76% 30%, rgba(0,71,255,.16) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 88% 55%, rgba(0,207,255,.18) 0 1px, rgba(0,0,0,0) 2px);
  opacity:.7;
  -webkit-mask-image: radial-gradient(70% 70% at 50% 55%, rgba(0,0,0,1), rgba(0,0,0,0));
          mask-image: radial-gradient(70% 70% at 50% 55%, rgba(0,0,0,1), rgba(0,0,0,0));
}



/* =========================
   BLUE7 — CARD ICON FX (scoped)
   Adds tech/space/nebula/electric glow around the ICON area only.
   Does NOT touch SVG content.
========================= */
.impact-card__icon { position: relative; }
.impact-card__icon .b7-iconfx-wrap{
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  isolation: isolate; /* keep blend layers contained */
}

.impact-card__icon .b7-iconfx-back,
.impact-card__icon .b7-iconfx-mid,
.impact-card__icon .b7-iconfx-front{
  position:absolute; inset:-10%;
  pointer-events:none;
  border-radius: 22px;
}

.impact-card__icon .b7-iconfx-back{
  /* deep nebula bloom */
  background:
    radial-gradient(60% 55% at 25% 35%, rgba(0,207,255,.22), rgba(0,0,0,0) 60%),
    radial-gradient(65% 60% at 70% 25%, rgba(0,71,255,.18), rgba(0,0,0,0) 62%),
    radial-gradient(80% 70% at 55% 70%, rgba(0,123,255,.12), rgba(0,0,0,0) 68%);
  filter: blur(10px);
  opacity: .95;
  mix-blend-mode: screen;
  z-index: 0;
}

.impact-card__icon .b7-iconfx-front{
  /* electric border + inner glow */
  background:
    linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.25) 65%, rgba(0,0,0,0) 100%);
  border: 1px solid rgba(0,207,255,.18);
  box-shadow:
    0 0 18px rgba(0,207,255,.18),
    0 0 44px rgba(0,71,255,.14),
    inset 0 0 22px rgba(0,207,255,.10),
    inset 0 0 60px rgba(0,71,255,.08);
  z-index: 3;
}

.impact-card__icon .b7-iconfx-front::before{
  /* animated gradient rim */
  content:"";
  position:absolute; inset:-1px;
  border-radius: 22px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(0,71,255,.0), rgba(0,71,255,.45), rgba(0,207,255,.65), rgba(0,71,255,.35), rgba(0,71,255,.0));
  -webkit-mask: 
    linear-gradient(#000 0 0) content-box, 
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .75;
  filter: blur(.15px);
  animation: b7IconRim 5.5s linear infinite;
}

.impact-card__icon .b7-iconfx-front::after{
  /* electric arcs (soft) */
  content:"";
  position:absolute; inset:-8%;
  border-radius: 24px;
  background:
    radial-gradient(35% 25% at 15% 30%, rgba(0,207,255,.22), rgba(0,0,0,0) 70%),
    radial-gradient(30% 22% at 85% 40%, rgba(0,71,255,.20), rgba(0,0,0,0) 72%),
    radial-gradient(28% 20% at 55% 85%, rgba(0,207,255,.14), rgba(0,0,0,0) 75%);
  filter: blur(8px);
  mix-blend-mode: screen;
  opacity: .55;
  animation: b7IconPulse 3.6s ease-in-out infinite;
}

@keyframes b7IconRim{
  0%{ filter:hue-rotate(0deg); opacity:.62; }
  50%{ filter:hue-rotate(8deg); opacity:.90; }
  100%{ filter:hue-rotate(0deg); opacity:.62; }
}
@keyframes b7IconPulse{
  0%,100%{ transform: scale(0.985); opacity:.45; }
  50%{ transform: scale(1.02); opacity:.72; }
}

/* Keep the actual SVG on top */
.impact-card__icon svg{ position:relative; z-index: 5; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .impact-card__icon .b7-iconfx-front::before,
  .impact-card__icon .b7-iconfx-front::after{ animation:none; }
}


/* BLUE7 — Card icon size tweak (scoped, minimal) */
.impact-card__icon .b7-iconfx-wrap > svg{
  width: 115%;
  height: auto;
  max-width: none;
  display: block;
  transform: translateY(-2px);
}


/* BLUE7 — Card icon size tweak v2 (match title width) */
.impact-card__icon{
  width: 100%;
}
.impact-card__icon .b7-iconfx-wrap{
  width: 100%;
  height: 100%;
}
.impact-card__icon .b7-iconfx-wrap > svg{
  width: 100%;
  height: auto;
  max-width: none;
  display: block;
  margin: 0 auto;
  transform: translateY(-2px);
}



/* BLUE7 — CARD ICON CONTAINER (match title width) — minimal + safe */
.impact-card__icon{
  width: 100% !important;
  max-width: none !important;
}

/* Give the icon area real presence without changing layout outside the card */
.impact-card__icon .b7-iconfx-wrap{
  width: 90%;
  max-width: none;
  aspect-ratio: 2 / 1;          /* your SVGs are 2:1 */
  height: auto;
  display: grid;
  place-items: center;
}

/* Make the main SVG fill that 2:1 box */
.impact-card__icon .b7-iconfx-wrap > svg{
  width: 100%;
  height: 100%;
  max-width: none;
  display: block;
  margin: 0 auto;
  transform: none;
}

/* If any extra wrapper tries to constrain height, neutralize it */
.impact-card__icon > *{
  max-width: none;
}



/* BLUE7 — CARD ICON ADORNS (scoped, no SVG edits)
   Goal: tech/space elements behind icon (grid + particles + light streak), like mockup refs.
*/
.impact-card__icon .b7-iconfx-wrap{
  position: relative;
  overflow: visible;
}

/* Capsule backdrop that the adorns live inside (matches the icon "screen") */
.impact-card__icon .b7-icon-capsule{
  position:absolute;
  inset: 6% 8%;
  border-radius: 18px;
  background:
    radial-gradient(60% 70% at 35% 35%, rgba(0,207,255,.10), rgba(0,0,0,0) 62%),
    radial-gradient(70% 80% at 70% 30%, rgba(0,71,255,.08), rgba(0,0,0,0) 64%),
    linear-gradient(180deg, rgba(0,207,255,.08), rgba(0,0,0,0) 45%, rgba(0,0,0,.20));
  border: 1px solid rgba(0,207,255,.10);
  box-shadow:
    inset 0 0 18px rgba(0,207,255,.08),
    inset 0 0 50px rgba(0,71,255,.06);
  pointer-events:none;
  z-index: 1;
  overflow:hidden;
}

/* Perspective grid (clean, not "TV noise") */
.impact-card__icon .b7-icon-grid{
  position:absolute;
  inset: -10% -12% -28% -12%;
  transform: perspective(700px) rotateX(58deg) rotateZ(-8deg) translateY(18px);
  transform-origin: 50% 70%;
  opacity: .60;
  background:
    repeating-linear-gradient(0deg, rgba(0,207,255,.10) 0 1px, rgba(0,0,0,0) 1px 16px),
    repeating-linear-gradient(90deg, rgba(0,207,255,.08) 0 1px, rgba(0,0,0,0) 1px 18px);
  filter: blur(.15px);
  mix-blend-mode: screen;
}

/* Curved "orbit" lines */
.impact-card__icon .b7-icon-orbits{
  position:absolute;
  inset:-20%;
  opacity:.55;
  filter: blur(.1px);
  mix-blend-mode: screen;
  background:
    radial-gradient(closest-side at 52% 64%, rgba(0,207,255,.0) 66%, rgba(0,207,255,.22) 67%, rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 48% 68%, rgba(0,207,255,.0) 58%, rgba(0,71,255,.18) 59%, rgba(0,0,0,0) 63%),
    radial-gradient(closest-side at 55% 72%, rgba(0,207,255,.0) 49%, rgba(0,207,255,.12) 50%, rgba(0,0,0,0) 55%);
}

/* Particles (sparkles) */
.impact-card__icon .b7-icon-particles{
  position:absolute;
  inset:-8%;
  opacity:.55;
  mix-blend-mode: screen;
  filter: blur(.05px);
  background:
    radial-gradient(circle at 18% 28%, rgba(230,230,230,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 26% 62%, rgba(0,207,255,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 44% 40%, rgba(230,230,230,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 62% 58%, rgba(0,71,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 78% 34%, rgba(0,207,255,.16) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 84% 70%, rgba(230,230,230,.14) 0 1px, rgba(0,0,0,0) 2px);
}

/* Top light bar / glow rim */
.impact-card__icon .b7-icon-streak{
  position:absolute;
  left: 6%;
  right: 6%;
  top: 6%;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0,71,255,0), rgba(0,207,255,.45), rgba(0,71,255,0));
  opacity: .65;
  filter: blur(2.2px);
  mix-blend-mode: screen;
}

/* Layering: capsule contains adorns; icon stays on top */
.impact-card__icon .b7-icon-capsule > *{ pointer-events:none; }
.impact-card__icon .b7-iconfx-wrap > svg{ position:relative; z-index: 5; }

/* Variations per card (non-uniform) */
.impact-card__icon .b7-icon-capsule.b7-a{ opacity:.95; }
.impact-card__icon .b7-icon-capsule.b7-a .b7-icon-grid{ rotate: -2deg; transform: perspective(740px) rotateX(60deg) rotateZ(-10deg) translateY(16px); }
.impact-card__icon .b7-icon-capsule.b7-a .b7-icon-particles{ opacity:.55; }

.impact-card__icon .b7-icon-capsule.b7-b{ opacity:.92; }
.impact-card__icon .b7-icon-capsule.b7-b .b7-icon-grid{ transform: perspective(760px) rotateX(56deg) rotateZ(6deg) translateY(20px); opacity:.55; }
.impact-card__icon .b7-icon-capsule.b7-b .b7-icon-orbits{ opacity:.62; }
.impact-card__icon .b7-icon-capsule.b7-b .b7-icon-streak{ top:7%; opacity:.70; }

.impact-card__icon .b7-icon-capsule.b7-c{ opacity:.90; }
.impact-card__icon .b7-icon-capsule.b7-c .b7-icon-grid{ transform: perspective(720px) rotateX(62deg) rotateZ(-14deg) translateY(18px); opacity:.52; }
.impact-card__icon .b7-icon-capsule.b7-c .b7-icon-orbits{ opacity:.50; }



/* BLUE7 — ADORNS FIX: full-size (100%) + no frames */
.impact-card__icon{ position: relative; }
.impact-card__icon .b7-iconfx-wrap{ width: 90%; margin: 0 auto; } /* keep approved icon size */
.impact-card__icon .b7-icon-capsule{
  inset: 0 !important;          /* FULL area */
  border: none !important;      /* no frame */
  box-shadow: none !important;  /* no frame glow */
  border-radius: 0 !important;  /* no capsule border look */
  background:
    radial-gradient(70% 80% at 35% 35%, rgba(0,207,255,.12), rgba(0,0,0,0) 64%),
    radial-gradient(80% 90% at 72% 28%, rgba(0,71,255,.10), rgba(0,0,0,0) 66%),
    radial-gradient(90% 95% at 55% 78%, rgba(0,123,255,.07), rgba(0,0,0,0) 70%);
  opacity: .95;
}



/* BLUE7 — ADORNS v2 (merge layers, remove redundancy, keep 90% container like icon) */
.impact-card__icon .b7-iconfx-wrap{ width:90% !important; margin:0 auto !important; }

/* Kill redundant fog layers (these were stacking with the adorn capsule) */
.impact-card__icon .b7-iconfx-back,
.impact-card__icon .b7-iconfx-front{
  display:none !important;
}

/* One unified adorn layer (no frames) */
.impact-card__icon .b7-icon-capsule{
  inset: 0 !important;              /* full of the 90% wrap */
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  opacity: .85 !important;
  filter: none !important;

  /* single, clean nebula (no double fog) */
  background:
    radial-gradient(75% 85% at 45% 40%, rgba(0,207,255,.12), rgba(0,0,0,0) 66%),
    radial-gradient(85% 95% at 70% 30%, rgba(0,71,255,.09), rgba(0,0,0,0) 68%);
}

/* Reduce softness so it doesn’t look like “double mist” */
.impact-card__icon .b7-icon-orbits{ opacity:.38 !important; }
.impact-card__icon .b7-icon-particles{ opacity:.38 !important; }
.impact-card__icon .b7-icon-streak{ opacity:.45 !important; filter: blur(1.6px) !important; }
.impact-card__icon .b7-icon-grid{ opacity:.42 !important; }

/* Keep the actual icon on top */
.impact-card__icon .b7-iconfx-wrap > svg{ position:relative; z-index: 5; }



/* BLUE7 — FRAME BACK ON + ADORNS 100% INSIDE CONTAINER (behind icon) */
.impact-card__icon .b7-iconfx-wrap{ width:90% !important; margin:0 auto !important; }

/* Keep only one fog source */
.impact-card__icon .b7-iconfx-back{ display:none !important; }

/* Bring the frame/rim back */
.impact-card__icon .b7-iconfx-front{
  display:block !important;
  inset:-10% !important;
  border-radius: 22px !important;
  z-index: 4 !important;      /* above adorns, below icon */
  pointer-events:none !important;
}

/* Ensure adorns occupy full container area and sit behind icon */
.impact-card__icon .b7-icon-capsule{
  inset: 0 !important;         /* 100% of wrap */
  z-index: 1 !important;       /* behind icon and frame */
}
.impact-card__icon .b7-icon-capsule > *{ z-index:auto; }
.impact-card__icon .b7-iconfx-wrap > svg{ z-index: 5 !important; }



/* BLUE7 — CARD ICON responsive progression (minimal, safe)
   Goal: keep rim visible + maintain balance with text as cards get narrower.
   Uses conservative breakpoints.
*/
@media (max-width: 1024px){
  .impact-card__icon .b7-iconfx-wrap{ width: 92% !important; }
  .impact-card__icon .b7-iconfx-front{ inset: -9% !important; }
}
@media (max-width: 768px){
  .impact-card__icon .b7-iconfx-wrap{ width: 94% !important; }
  .impact-card__icon .b7-iconfx-front{ inset: -8% !important; }
}
@media (max-width: 480px){
  .impact-card__icon .b7-iconfx-wrap{ width: 96% !important; }
  .impact-card__icon .b7-iconfx-front{ inset: -7% !important; }
}
/* Very small screens */
@media (max-width: 360px){
  .impact-card__icon .b7-iconfx-wrap{ width: 94% !important; }
  .impact-card__icon .b7-iconfx-front{ inset: -6% !important; }
}



/* =========================
   BLUE7 — FOOTER SOCIAL ICONS (FX)
   Reference-based look: dark tile + neon rim + glow + subtle arc.
   Harmonized across all icons. PNG refs are guidance only.
========================= */
.footer-social{
  display:flex;
  gap: 12px;
  align-items:center;
}

.footer-social .social-icon{
  position: relative;
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  text-decoration: none;
  color: #E6E6E6;
  isolation: isolate;
  background:
    radial-gradient(70% 80% at 35% 30%, rgba(0,207,255,.14), rgba(0,0,0,0) 60%),
    radial-gradient(90% 100% at 70% 35%, rgba(0,71,255,.12), rgba(0,0,0,0) 62%),
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.58));
  border: 1px solid rgba(0,207,255,.16);
  box-shadow:
    0 10px 26px rgba(0,0,0,.55),
    0 0 24px rgba(0,207,255,.14),
    0 0 52px rgba(0,71,255,.10),
    inset 0 0 20px rgba(0,207,255,.10),
    inset 0 0 46px rgba(0,71,255,.08);
  overflow: visible;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

/* Rim highlight (no hard frame look, just neon edge) */
.footer-social .social-icon::before{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 16px;
  pointer-events:none;
  background:
    radial-gradient(60% 55% at 50% 20%, rgba(0,207,255,.35), rgba(0,0,0,0) 62%),
    linear-gradient(135deg, rgba(0,71,255,0), rgba(0,71,255,.30), rgba(0,207,255,.40), rgba(0,71,255,.20), rgba(0,71,255,0));
  opacity: .85;
  mix-blend-mode: screen;
}

/* Bottom arc glow */
.footer-social .social-icon::after{
  content:"";
  position:absolute;
  left: -18%;
  right: -18%;
  bottom: -26%;
  height: 60%;
  border-radius: 999px;
  pointer-events:none;
  background:
    radial-gradient(closest-side at 50% 40%, rgba(0,207,255,.25), rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 50% 55%, rgba(0,71,255,.18), rgba(0,0,0,0) 72%);
  filter: blur(8px);
  opacity: .75;
  mix-blend-mode: screen;
  z-index: -1;
}

/* Icon inside */
.footer-social .social-icon svg{
  width: 26px;
  height: 26px;
  display:block;
  position: relative;
  z-index: 2;
  filter: drop-shadow(0 0 10px rgba(0,207,255,.22));
}

/* Hover micro-dynamism */
.footer-social .social-icon:hover{
  transform: scale(1.04);
  border-color: rgba(0,207,255,.28);
  box-shadow:
    0 12px 30px rgba(0,0,0,.58),
    0 0 28px rgba(0,207,255,.18),
    0 0 60px rgba(0,71,255,.14),
    inset 0 0 22px rgba(0,207,255,.12),
    inset 0 0 52px rgba(0,71,255,.10);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .footer-social .social-icon{ transition: none; }
  .footer-social .social-icon:hover{ transform:none; }
}

/* Responsive sizing */
@media (max-width: 768px){
  .footer-social .social-icon{ width: 50px; height: 50px; border-radius: 15px; }
  .footer-social .social-icon svg{ width: 24px; height: 24px; }
}
@media (max-width: 480px){
  .footer-social{ gap: 10px; }
  .footer-social .social-icon{ width: 46px; height: 46px; border-radius: 14px; }
  .footer-social .social-icon svg{ width: 22px; height: 22px; }
}



/* BLUE7 — FOOTER SOCIAL ICONS (FX) tweaks:
   - thicker rim stroke
   - smaller overall tile size so it doesn't compete with footer imagotype
*/
.footer-social .social-icon{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border-width: 2px;                 /* thicker stroke */
  box-shadow:
    0 10px 24px rgba(0,0,0,.55),
    0 0 22px rgba(0,207,255,.12),
    0 0 46px rgba(0,71,255,.09),
    inset 0 0 18px rgba(0,207,255,.09),
    inset 0 0 40px rgba(0,71,255,.07);
}

/* inner rim highlight a touch stronger to read as thicker */
.footer-social .social-icon::before{
  opacity: .95;
}

/* icon glyph smaller */
.footer-social .social-icon svg{
  width: 20px;
  height: 20px;
}

.footer-social button.social-icon{
  padding:0;
  cursor:pointer;
  font:inherit;
  appearance:none;
  -webkit-appearance:none;
}

/* Responsive progression */
@media (max-width: 768px){
  .footer-social .social-icon{ width: 42px; height: 42px; border-radius: 13px; border-width: 2px; }
  .footer-social .social-icon svg{ width: 19px; height: 19px; }
}
@media (max-width: 480px){
  .footer-social .social-icon{ width: 40px; height: 40px; border-radius: 12px; border-width: 2px; }
  .footer-social .social-icon svg{ width: 18px; height: 18px; }
}



/* =========================
   BLUE7 — PASOS ICON FX (match CARDS)
   - container 90%, SVG 100%
   - frame + effects BELOW icon
========================= */
.metodo-card__icon{ position: relative; }
.metodo-card__icon .b7-stepfx-wrap{
  width: 90%;
  margin: 0 auto;
  aspect-ratio: 2 / 1;
  position: relative;
  display: grid;
  place-items: center;
  isolation: isolate;
}

/* Effects layer (behind) */
.metodo-card__icon .b7-stepfx-adorns{
  position:absolute;
  inset: 0;
  z-index: 1;
  pointer-events:none;
  opacity: .88;
  mix-blend-mode: screen;
}
.metodo-card__icon .b7-stepfx-grid{
  position:absolute;
  inset: -12% -12% -30% -12%;
  transform: perspective(700px) rotateX(58deg) rotateZ(-8deg) translateY(18px);
  transform-origin: 50% 70%;
  opacity: .48;
  background:
    repeating-linear-gradient(0deg, rgba(0,207,255,.10) 0 1px, rgba(0,0,0,0) 1px 16px),
    repeating-linear-gradient(90deg, rgba(0,207,255,.08) 0 1px, rgba(0,0,0,0) 1px 18px);
  filter: blur(.15px);
}
.metodo-card__icon .b7-stepfx-orbits{
  position:absolute;
  inset:-20%;
  opacity:.34;
  background:
    radial-gradient(closest-side at 52% 64%, rgba(0,207,255,.0) 66%, rgba(0,207,255,.20) 67%, rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 48% 68%, rgba(0,207,255,.0) 58%, rgba(0,71,255,.16) 59%, rgba(0,0,0,0) 63%);
}
.metodo-card__icon .b7-stepfx-particles{
  position:absolute;
  inset:-8%;
  opacity:.30;
  background:
    radial-gradient(circle at 18% 28%, rgba(230,230,230,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 26% 62%, rgba(0,207,255,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 62% 58%, rgba(0,71,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 84% 70%, rgba(230,230,230,.14) 0 1px, rgba(0,0,0,0) 2px);
}

/* Frame layer (behind icon, above adorns) */
.metodo-card__icon .b7-stepfx-frame{
  position:absolute;
  inset:-10%;
  border-radius: 22px;
  z-index: 2;
  pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.25) 65%, rgba(0,0,0,0) 100%);
  border: 1px solid rgba(0,207,255,.18);
  box-shadow:
    0 0 18px rgba(0,207,255,.18),
    0 0 44px rgba(0,71,255,.14),
    inset 0 0 22px rgba(0,207,255,.10),
    inset 0 0 60px rgba(0,71,255,.08);
}
.metodo-card__icon .b7-stepfx-frame::before{
  content:"";
  position:absolute; inset:-1px;
  border-radius: 22px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(0,71,255,.0), rgba(0,71,255,.45), rgba(0,207,255,.65), rgba(0,71,255,.35), rgba(0,71,255,.0));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .70;
}

/* SVG on top */
.metodo-card__icon .b7-stepfx-wrap > svg{
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
  display:block;
}

/* Variations per step (non-uniform) */
.metodo-card__icon .b7-stepfx-wrap.b7-a .b7-stepfx-grid{ transform: perspective(740px) rotateX(60deg) rotateZ(-10deg) translateY(16px); opacity:.46; }
.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-grid{ transform: perspective(760px) rotateX(56deg) rotateZ(6deg) translateY(20px); opacity:.44; }
.metodo-card__icon .b7-stepfx-wrap.b7-c .b7-stepfx-grid{ transform: perspective(720px) rotateX(62deg) rotateZ(-14deg) translateY(18px); opacity:.42; }
.metodo-card__icon .b7-stepfx-wrap.b7-d .b7-stepfx-grid{ transform: perspective(740px) rotateX(58deg) rotateZ(12deg) translateY(19px); opacity:.43; }
.metodo-card__icon .b7-stepfx-wrap.b7-e .b7-stepfx-grid{ transform: perspective(710px) rotateX(63deg) rotateZ(-6deg) translateY(17px); opacity:.41; }

/* Responsive (keep rim visible) */
@media (max-width: 1024px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 92%; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-9%; }
}
@media (max-width: 768px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 94%; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-8%; }
}
@media (max-width: 480px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 96%; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-7%; }
}



/* BLUE7 — PASOS ICON SIZE FIX (they were constrained by the original metodo-card__icon box) */
.metodo-card__icon{
  width: 100% !important;
  height: auto !important;
  min-height: clamp(110px, 12vw, 150px) !important; /* gives presence like mockup */
  display: block !important;
}

.metodo-card__icon .b7-stepfx-wrap{
  width: 90% !important;      /* keep rule */
  height: 100% !important;
  aspect-ratio: 2 / 1;        /* keep 2:1 */
}

.metodo-card__icon .b7-stepfx-wrap > svg{
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
}

/* If the original CSS centers a tiny icon with padding, neutralize it */
.metodo-card__icon{ padding: 0 !important; }



/* BLUE7 — PASOS: match CARDS feel (nebula back + tighter spacing) */

/* 1) Nebula layer (behind grid/orbits/particles) */
.metodo-card__icon .b7-stepfx-adorns{
  /* add nebula bloom similar to Cards (but softer) */
  background:
    radial-gradient(70% 80% at 30% 35%, rgba(0,207,255,.16), rgba(0,0,0,0) 62%),
    radial-gradient(85% 95% at 72% 28%, rgba(0,71,255,.12), rgba(0,0,0,0) 66%),
    radial-gradient(95% 100% at 55% 78%, rgba(0,123,255,.08), rgba(0,0,0,0) 70%);
  filter: blur(10px);
  opacity: .95;
}

/* keep grid/orbits/particles crisp above nebula (remove extra blur inheritance) */
.metodo-card__icon .b7-stepfx-grid,
.metodo-card__icon .b7-stepfx-orbits,
.metodo-card__icon .b7-stepfx-particles{
  filter: none;
}

/* 2) Tighten the vertical rhythm: icon closer to title like Cards */
.metodo-card__icon{
  margin: 0 auto 10px !important;                 /* was bigger */
  min-height: clamp(86px, 9vw, 120px) !important; /* less tall so it doesn't push text down */
}

/* Optional: on very small screens, tighten further */
@media (max-width: 480px){
  .metodo-card__icon{
    margin: 0 auto 8px !important;
    min-height: clamp(78px, 20vw, 108px) !important;
  }
}



/* =========================
   BLUE7 — PASOS: replicate CARDS icon FX + spacing
   Requirements:
   - Same FX stack as CARDS (nebula bloom + particles/grid/orbits + rim frame) BELOW the SVG
   - Same icon-to-text spacing as CARDS
========================= */

/* ICON/TEXT SPACING like Cards */
.metodo-card__icon{
  margin: 0 auto 12px !important; /* match typical Cards rhythm */
  min-height: clamp(92px, 9.5vw, 126px) !important;
}

/* Ensure the step icon container behaves like the Card icon container */
.metodo-card__icon .b7-stepfx-wrap{
  width: 90% !important;       /* container 90% */
  margin: 0 auto !important;
  aspect-ratio: 2 / 1;
  position: relative;
  display: grid;
  place-items: center;
  isolation: isolate;
  overflow: visible;
}

/* --- FX LAYER 1: Nebula bloom base (like Cards) --- */
.metodo-card__icon .b7-stepfx-adorns{
  position:absolute;
  inset: 0;
  z-index: 1;                 /* behind rim and SVG */
  pointer-events:none;
  border-radius: 0;
  mix-blend-mode: screen;
  opacity: .95;
  /* Nebula bloom base */
  background:
    radial-gradient(70% 80% at 30% 35%, rgba(0,207,255,.18), rgba(0,0,0,0) 62%),
    radial-gradient(85% 95% at 72% 28%, rgba(0,71,255,.14), rgba(0,0,0,0) 66%),
    radial-gradient(95% 100% at 55% 78%, rgba(0,123,255,.09), rgba(0,0,0,0) 70%);
  filter: blur(10px);
}

/* Streak (like Cards top bar) */
.metodo-card__icon .b7-stepfx-streak{
  position:absolute;
  left: 6%;
  right: 6%;
  top: 6%;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0,71,255,0), rgba(0,207,255,.45), rgba(0,71,255,0));
  opacity: .65;
  filter: blur(2.2px);
  mix-blend-mode: screen;
}

/* Keep grid/orbits/particles crisp ABOVE nebula (no blur) */
.metodo-card__icon .b7-stepfx-grid,
.metodo-card__icon .b7-stepfx-orbits,
.metodo-card__icon .b7-stepfx-particles{
  position:absolute;
  inset: 0;
  filter: none !important;
  mix-blend-mode: screen;
}

/* Grid like Cards */
.metodo-card__icon .b7-stepfx-grid{
  inset: -12% -12% -30% -12%;
  transform: perspective(700px) rotateX(58deg) rotateZ(-8deg) translateY(18px);
  transform-origin: 50% 70%;
  opacity: .48;
  background:
    repeating-linear-gradient(0deg, rgba(0,207,255,.10) 0 1px, rgba(0,0,0,0) 1px 16px),
    repeating-linear-gradient(90deg, rgba(0,207,255,.08) 0 1px, rgba(0,0,0,0) 1px 18px);
}

/* Orbits */
.metodo-card__icon .b7-stepfx-orbits{
  inset:-20%;
  opacity:.36;
  background:
    radial-gradient(closest-side at 52% 64%, rgba(0,207,255,.0) 66%, rgba(0,207,255,.20) 67%, rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 48% 68%, rgba(0,207,255,.0) 58%, rgba(0,71,255,.16) 59%, rgba(0,0,0,0) 63%);
}

/* Particles */
.metodo-card__icon .b7-stepfx-particles{
  inset:-8%;
  opacity:.32;
  background:
    radial-gradient(circle at 18% 28%, rgba(230,230,230,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 26% 62%, rgba(0,207,255,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 62% 58%, rgba(0,71,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 84% 70%, rgba(230,230,230,.14) 0 1px, rgba(0,0,0,0) 2px);
}

/* --- FX LAYER 2: Rim frame (already present) enforce layering like Cards --- */
.metodo-card__icon .b7-stepfx-frame{
  z-index: 2 !important;       /* above adorns */
}

/* --- SVG ON TOP --- */
.metodo-card__icon .b7-stepfx-wrap > svg{
  position:relative;
  z-index: 5 !important;
  width: 100%;
  height: 100%;
  display:block;
}

/* Variations per step (keep non-uniform like Cards) */
.metodo-card__icon .b7-stepfx-wrap.b7-a .b7-stepfx-grid{ transform: perspective(740px) rotateX(60deg) rotateZ(-10deg) translateY(16px); opacity:.46; }
.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-grid{ transform: perspective(760px) rotateX(56deg) rotateZ(6deg) translateY(20px); opacity:.44; }
.metodo-card__icon .b7-stepfx-wrap.b7-c .b7-stepfx-grid{ transform: perspective(720px) rotateX(62deg) rotateZ(-14deg) translateY(18px); opacity:.42; }
.metodo-card__icon .b7-stepfx-wrap.b7-d .b7-stepfx-grid{ transform: perspective(740px) rotateX(58deg) rotateZ(12deg) translateY(19px); opacity:.43; }
.metodo-card__icon .b7-stepfx-wrap.b7-e .b7-stepfx-grid{ transform: perspective(710px) rotateX(63deg) rotateZ(-6deg) translateY(17px); opacity:.41; }

/* Responsive progression (same idea as Cards) */
@media (max-width: 1024px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 92% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-9% !important; }
}
@media (max-width: 768px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 94% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-8% !important; }
}
@media (max-width: 480px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 96% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-7% !important; }
}



/* BLUE7 — PASOS refinements:
   1) Reduce icon->text gap (match Cards tighter)
   2) Add missing "Card-like" adorns: inner vignette + bottom platform glow + soft rim bloom
*/

/* 1) tighter spacing */
.metodo-card__icon{
  margin: 0 auto 8px !important;
  min-height: clamp(86px, 8.8vw, 118px) !important;
}

/* 2) extra adorns inside the icon area (behind icon) */
.metodo-card__icon .b7-stepfx-wrap::before{
  /* soft inner vignette + screen depth */
  content:"";
  position:absolute;
  inset: 2%;
  border-radius: 18px;
  pointer-events:none;
  z-index: 1;
  background:
    radial-gradient(80% 85% at 50% 45%, rgba(0,0,0,0) 55%, rgba(0,0,0,.28) 100%),
    radial-gradient(70% 80% at 50% 18%, rgba(0,207,255,.10), rgba(0,0,0,0) 62%);
  mix-blend-mode: screen;
  opacity: .70;
}

/* bottom platform glow (like Cards subtle base) */
.metodo-card__icon .b7-stepfx-wrap::after{
  content:"";
  position:absolute;
  left: -14%;
  right: -14%;
  bottom: -18%;
  height: 52%;
  border-radius: 999px;
  pointer-events:none;
  z-index: 0;
  background:
    radial-gradient(closest-side at 50% 35%, rgba(0,207,255,.20), rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 50% 55%, rgba(0,71,255,.14), rgba(0,0,0,0) 72%);
  filter: blur(10px);
  opacity: .65;
  mix-blend-mode: screen;
}

/* ensure adorn layers remain behind rim+SVG */
.metodo-card__icon .b7-stepfx-adorns{ z-index: 1 !important; }
.metodo-card__icon .b7-stepfx-frame{ z-index: 2 !important; }
.metodo-card__icon .b7-stepfx-wrap > svg{ z-index: 5 !important; }



/* =========================
   BLUE7 — PASOS FX SYSTEM (matches CARDS)
   Effects required:
   - Nebula
   - Capsule/backplate with non-uniform inner glow
   - Perspective grid (clean lines)
   - Subtle orbits
   - Particles/sparkles
   - Top streak
   - Per-step variation (angle/opacity) so it doesn't look copied
   Stack order: (capsule/adorns + rim) BELOW SVG
========================= */

/* Container rules (keep your spec) */
.metodo-card__icon{
  margin: 0 auto 8px !important; /* tight like Cards */
  width: 100% !important;
  height: auto !important;
  min-height: clamp(86px, 8.8vw, 118px) !important;
  padding: 0 !important;
}
.metodo-card__icon .b7-stepfx-wrap{
  width: 90% !important;          /* container 90% */
  margin: 0 auto !important;
  aspect-ratio: 2 / 1;
  position: relative;
  display: grid;
  place-items: center;
  isolation: isolate;
  overflow: visible;
}

/* Capsule/backplate (no hard frame; internal glow non-uniform) */
.metodo-card__icon .b7-stepfx-capsule{
  position:absolute;
  inset: 0;                 /* 100% inside the 90% wrap */
  border-radius: 18px;
  overflow: hidden;
  pointer-events:none;
  z-index: 1;               /* behind rim + svg */
  background:
    radial-gradient(60% 70% at 32% 34%, rgba(0,207,255,.14), rgba(0,0,0,0) 62%),
    radial-gradient(70% 80% at 72% 26%, rgba(0,71,255,.12), rgba(0,0,0,0) 64%),
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.28));
  box-shadow:
    inset 0 0 18px rgba(0,207,255,.10),
    inset 0 0 50px rgba(0,71,255,.08);
}

/* Nebula bloom layer (soft, behind everything in capsule) */
.metodo-card__icon .b7-stepfx-capsule::before{
  content:"";
  position:absolute;
  inset: -10%;
  pointer-events:none;
  background:
    radial-gradient(70% 80% at 30% 35%, rgba(0,207,255,.20), rgba(0,0,0,0) 62%),
    radial-gradient(85% 95% at 72% 28%, rgba(0,71,255,.16), rgba(0,0,0,0) 66%),
    radial-gradient(95% 100% at 55% 78%, rgba(0,123,255,.10), rgba(0,0,0,0) 70%);
  filter: blur(12px);
  opacity: .95;
  mix-blend-mode: screen;
}

/* Adorns container */
.metodo-card__icon .b7-stepfx-adorns{
  position:absolute;
  inset: 0;
  z-index: 2;
  mix-blend-mode: screen;
  opacity: .90;
}

/* Streak (top bar) */
.metodo-card__icon .b7-stepfx-streak{
  position:absolute;
  left: 6%;
  right: 6%;
  top: 6%;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0,71,255,0), rgba(0,207,255,.45), rgba(0,71,255,0));
  opacity: .62;
  filter: blur(2.2px);
}

/* Clean grid (NO static) */
.metodo-card__icon .b7-stepfx-grid{
  position:absolute;
  inset: -12% -12% -30% -12%;
  transform: perspective(700px) rotateX(58deg) rotateZ(-8deg) translateY(18px);
  transform-origin: 50% 70%;
  opacity: .46;
  background:
    repeating-linear-gradient(0deg, rgba(0,207,255,.10) 0 1px, rgba(0,0,0,0) 1px 16px),
    repeating-linear-gradient(90deg, rgba(0,207,255,.08) 0 1px, rgba(0,0,0,0) 1px 18px);
}

/* Orbits */
.metodo-card__icon .b7-stepfx-orbits{
  position:absolute;
  inset:-20%;
  opacity:.34;
  background:
    radial-gradient(closest-side at 52% 64%, rgba(0,207,255,.0) 66%, rgba(0,207,255,.20) 67%, rgba(0,0,0,0) 70%),
    radial-gradient(closest-side at 48% 68%, rgba(0,207,255,.0) 58%, rgba(0,71,255,.16) 59%, rgba(0,0,0,0) 63%),
    radial-gradient(closest-side at 55% 72%, rgba(0,207,255,.0) 49%, rgba(0,207,255,.12) 50%, rgba(0,0,0,0) 55%);
}

/* Particles */
.metodo-card__icon .b7-stepfx-particles{
  position:absolute;
  inset:-8%;
  opacity:.30;
  background:
    radial-gradient(circle at 18% 28%, rgba(230,230,230,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 26% 62%, rgba(0,207,255,.22) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 44% 40%, rgba(230,230,230,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 62% 58%, rgba(0,71,255,.18) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 78% 34%, rgba(0,207,255,.16) 0 1px, rgba(0,0,0,0) 2px),
    radial-gradient(circle at 84% 70%, rgba(230,230,230,.14) 0 1px, rgba(0,0,0,0) 2px);
}

/* Rim frame (below SVG, above capsule/adorns) */
.metodo-card__icon .b7-stepfx-frame{
  position:absolute;
  inset:-10%;
  border-radius: 22px;
  z-index: 3;
  pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.25) 65%, rgba(0,0,0,0) 100%);
  border: 1px solid rgba(0,207,255,.18);
  box-shadow:
    0 0 18px rgba(0,207,255,.18),
    0 0 44px rgba(0,71,255,.14),
    inset 0 0 22px rgba(0,207,255,.10),
    inset 0 0 60px rgba(0,71,255,.08);
}
.metodo-card__icon .b7-stepfx-frame::before{
  content:"";
  position:absolute; inset:-1px;
  border-radius: 22px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(0,71,255,.0), rgba(0,71,255,.45), rgba(0,207,255,.65), rgba(0,71,255,.35), rgba(0,71,255,.0));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .72;
}

/* SVG on top */
.metodo-card__icon .b7-stepfx-wrap > svg{
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
  display:block;
}

/* Per-step variations (angle/opacity + capsule glow offsets) */
.metodo-card__icon .b7-stepfx-wrap.b7-a .b7-stepfx-grid{ transform: perspective(740px) rotateX(60deg) rotateZ(-10deg) translateY(16px); opacity:.46; }
.metodo-card__icon .b7-stepfx-wrap.b7-a .b7-stepfx-orbits{ opacity:.34; }
.metodo-card__icon .b7-stepfx-wrap.b7-a .b7-stepfx-particles{ opacity:.30; }

.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-grid{ transform: perspective(760px) rotateX(56deg) rotateZ(6deg) translateY(20px); opacity:.44; }
.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-orbits{ opacity:.38; }
.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-particles{ opacity:.28; }
.metodo-card__icon .b7-stepfx-wrap.b7-b .b7-stepfx-streak{ top:7%; opacity:.66; }

.metodo-card__icon .b7-stepfx-wrap.b7-c .b7-stepfx-grid{ transform: perspective(720px) rotateX(62deg) rotateZ(-14deg) translateY(18px); opacity:.42; }
.metodo-card__icon .b7-stepfx-wrap.b7-c .b7-stepfx-orbits{ opacity:.30; }
.metodo-card__icon .b7-stepfx-wrap.b7-c .b7-stepfx-particles{ opacity:.26; }

.metodo-card__icon .b7-stepfx-wrap.b7-d .b7-stepfx-grid{ transform: perspective(740px) rotateX(58deg) rotateZ(12deg) translateY(19px); opacity:.43; }
.metodo-card__icon .b7-stepfx-wrap.b7-d .b7-stepfx-orbits{ opacity:.36; }
.metodo-card__icon .b7-stepfx-wrap.b7-d .b7-stepfx-particles{ opacity:.32; }

.metodo-card__icon .b7-stepfx-wrap.b7-e .b7-stepfx-grid{ transform: perspective(710px) rotateX(63deg) rotateZ(-6deg) translateY(17px); opacity:.41; }
.metodo-card__icon .b7-stepfx-wrap.b7-e .b7-stepfx-orbits{ opacity:.32; }
.metodo-card__icon .b7-stepfx-wrap.b7-e .b7-stepfx-particles{ opacity:.29; }

/* Responsive progression (same as Cards) */
@media (max-width: 1024px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 92% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-9% !important; }
}
@media (max-width: 768px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 94% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-8% !important; }
}
@media (max-width: 480px){
  .metodo-card__icon .b7-stepfx-wrap{ width: 96% !important; }
  .metodo-card__icon .b7-stepfx-frame{ inset:-7% !important; }
}



/* BLUE7 — Step number circles: filled background */
.metodo-card__step{
  background: radial-gradient(90% 90% at 30% 25%, rgba(0,207,255,.30), rgba(0,71,255,.22) 55%, rgba(0,0,0,.25) 100%) !important;
  border: 1.5px solid rgba(0,207,255,.30) !important;
  box-shadow: 0 0 16px rgba(0,207,255,.22), inset 0 0 12px rgba(0,207,255,.16) !important;
  color: #E6E6E6 !important;
}



/* BLUE7 — PASOS: extend FX container to reach rim (SVG unchanged) */
.metodo-card__icon .b7-stepfx-capsule{
  inset: -10% !important;        /* reach the frame */
  border-radius: 22px !important;/* match rim curvature */
}
.metodo-card__icon .b7-stepfx-adorns{
  inset: 0 !important;           /* fill capsule */
}


/* BLUE7 — Step number circles: solid fill (no transparency) + glow */
.metodo-card__step{
  background: #0047FF !important;
  border: 1.5px solid #00CFFF !important;
  box-shadow: 0 0 16px rgba(0,207,255,.22), inset 0 0 12px rgba(0,207,255,.16) !important;
  color: #E6E6E6 !important;
}



/* BLUE7 — Reduce gap between Header (fixed) and HERO (minimal, safe) */
.hero-inner{
  /* reduce only the TOP padding; keep bottom padding intact */
  padding-top: max(24px, calc(var(--section-pad) - 56px)) !important;
}
@media (max-width: 768px){
  .hero-inner{ padding-top: max(20px, calc(var(--section-pad) - 48px)) !important; }
}
@media (max-width: 480px){
  .hero-inner{ padding-top: max(18px, calc(var(--section-pad) - 42px)) !important; }
}



/* BLUE7 — Reduce spacing below HERO and below first "Iniciar diagnóstico estratégico" button (safe, scoped) */

/* 1) Space below HERO: cut bottom padding in half */
.hero-inner{
  padding-bottom: calc(var(--section-pad) / 2) !important;
}

/* 2) Space below first diagnostic button (hero-post section): cut section bottom padding in half */
.hero-post{
  padding-bottom: 28px !important; /* was 28px */
}



/* BLUE7 — HERO spacing normalized to match space below first CTA button */
.hero-inner{
  padding-top: 14px !important;
  padding-bottom: 28px !important;
}
/* Keep the earlier header-gap reduction: header fixed, so ensure minimal safe breathing on small screens */
@media (max-width: 768px){
  .hero-inner{ padding-top: 12px !important; padding-bottom: 12px !important; }
}
@media (max-width: 480px){
  .hero-inner{ padding-top: 10px !important; padding-bottom: 10px !important; }
}



/* BLUE7 — HERO: remove 100vh vertical centering that creates huge empty space
   Goal: top/bottom whitespace around hero+isotipo becomes tight and consistent.
*/
.hero{
  min-height: auto !important;
  height: auto !important;
  align-items: flex-start !important;
  padding-top: calc(80px + 28px) !important; /* fixed header (80px) + desired gap */
  padding-bottom: 28px !important;
}

/* Hero inner should not add extra vertical padding (hero handles it) */
.hero-inner{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}



/* BLUE7 — Fix big gap before IMPACTO: match spacing reference under CTA */
.impacto{
  padding-top: 28px !important;   /* was var(--section-pad) */
}
/* Keep bottom as-is; only reduce the entry gap */
.impacto .section-title{
  margin-top: 0 !important;
}



/* BLUE7 — Increase space BELOW HERO a bit (do NOT change spacing under the CTA button) */
.hero{
  padding-bottom: 40px !important; /* was 28px */
}



/* BLUE7 — Cards: add one-line worth of whitespace below the icon */
.impact-card__icon{
  margin-bottom: 16px !important; /* ~ one text line */
}



/* BLUE7 — Cards: force visible gap between icon block and text block */
.impact-card__title{
  margin-top: 16px !important;  /* one-line feel */
}



/* BLUE7 — Cards: enforce real space between icon area and text (regardless of flex/wrap) */
.impact-card{
  display: flex;
  flex-direction: column;
}
.impact-card__icon{
  padding-bottom: 16px !important; /* creates guaranteed empty space */
  margin-bottom: 0 !important;     /* avoid double counting */
}



/* BLUE7 — Reduce gap between IMPACTO cards and METODOLOGÍA heading */
.impacto{
  padding-bottom: 24px !important;
}
.metodologia{
  padding-top: 24px !important;
}



/* BLUE7 — Footer legal link */
.footer-copy .footer-legal-link{
  color: rgba(230,230,230,0.75);
  text-decoration: none;
  border-bottom: 1px solid rgba(0,207,255,0.25);
  padding-bottom: 1px;
}
.footer-copy .footer-legal-link:hover{
  color: #E6E6E6;
  border-bottom-color: rgba(0,207,255,0.55);
}



/* BLUE7 — Gradient text (apply to previously blue text) */
:root{
  --b7-grad: linear-gradient(90deg, #0047FF 0%, #007BFF 45%, #00CFFF 100%);
}

/* Any element that was using the blue accent now uses gradient */
.cyan,
.highlight,
a.highlight,
.impact-card__cta,
.metodo-card__cta,
.hero-cta,
.btn-primary--outline span{
  background-image: var(--b7-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
}

/* Ensure links with gradient keep hover without turning plain */
.cyan:hover,
.highlight:hover,
a.highlight:hover{
  filter: brightness(1.05);
}



/* BLUE7 — PASOS responsive fix (prevent break/overflow)
   Issue: step icon box + FX can force card height / overflow when grid changes to 2 columns / 1 column.
   Fix: scale down icon box and FX in smaller widths, and ensure cards wrap cleanly.
*/

/* Ensure cards can shrink without overflow */
.metodo-card{
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Keep icon area from becoming too tall on medium/small screens */
@media (max-width: 992px){
  .metodo-card__icon{
    min-height: clamp(72px, 14vw, 104px) !important;
    margin-bottom: 10px !important;
  }
  .metodo-card__icon .b7-stepfx-wrap{
    width: 92% !important;
  }
  .metodo-card__icon .b7-stepfx-frame{ inset:-9% !important; }
}
@media (max-width: 768px){
  .metodo-card__icon{
    min-height: clamp(70px, 18vw, 98px) !important;
    margin-bottom: 10px !important;
  }
  .metodo-card__icon .b7-stepfx-wrap{
    width: 94% !important;
  }
  .metodo-card__icon .b7-stepfx-frame{ inset:-8% !important; }
}
@media (max-width: 600px){
  .metodo-card__icon{
    min-height: clamp(68px, 22vw, 94px) !important;
    margin-bottom: 10px !important;
  }
  .metodo-card{
    padding: 24px 14px 18px !important;
  }
}



/* BLUE7 — PASOS overflow + rim cut + spacing restore */

/* Prevent cards from exceeding container width on small screens */
@media (max-width: 992px){
  .metodo-grid{
    width: 100% !important;
    max-width: 100% !important;
  }
  .metodo-card{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important; /* allow rim inset to show */
  }
}

/* Ensure rim never gets clipped: wrapper must allow overflow */
.metodo-card__icon,
.metodo-card__icon .b7-stepfx-wrap{
  overflow: visible !important;
}

/* Reduce negative inset on rim for narrow widths so it doesn't go out of bounds */
@media (max-width: 768px){
  .metodo-card__icon .b7-stepfx-frame{ inset: -6% !important; }
}
@media (max-width: 600px){
  .metodo-card__icon .b7-stepfx-frame{ inset: -5% !important; }
}
@media (max-width: 480px){
  .metodo-card__icon .b7-stepfx-frame{ inset: -4% !important; }
}

/* Restore consistent space between icon and text on ALL breakpoints */
.metodo-card__icon{
  margin: 0 auto 12px !important;
}
@media (max-width: 600px){
  .metodo-card__icon{ margin-bottom: 12px !important; }
}



/* BLUE7 — PASOS: stop layer overlap + enforce icon->text gap */

/* 1) Remove extra pseudo layers that can overlap on small widths */
@media (max-width: 992px){
  .metodo-card__icon .b7-stepfx-wrap::after{ display:none !important; } /* platform glow */
  .metodo-card__icon .b7-stepfx-wrap::before{ opacity:.45 !important; } /* soften vignette */
  .metodo-card__icon .b7-stepfx-capsule::before{ filter: blur(10px) !important; opacity:.75 !important; }
  .metodo-card__icon .b7-stepfx-adorns{ opacity:.75 !important; }
}

/* 2) Real gap: add padding-top to the title block instead of relying on margins */
.metodo-card__title{
  padding-top: 12px !important;
  margin-top: 0 !important;
}

/* prevent padding-top from affecting alignment on desktop if already good */
@media (min-width: 993px){
  .metodo-card__title{ padding-top: 0 !important; }
}



/* BLUE7 — PASOS: overlap cleanup v2 */

/* Keep FX inside capsule on smaller screens (stop halos spilling and stacking) */
@media (max-width: 992px){
  .metodo-card__icon .b7-stepfx-capsule{
    inset: 0 !important;           /* stop extending beyond icon area */
    border-radius: 18px !important;
  }
  .metodo-card__icon .b7-stepfx-frame{
    inset: -6% !important;         /* still visible, less spill */
  }
  .metodo-card__icon .b7-stepfx-frame::before{ opacity: .55 !important; }
  .metodo-card__icon .b7-stepfx-adorns{ opacity: .60 !important; }
  .metodo-card__icon .b7-stepfx-streak{ opacity: .50 !important; }
  .metodo-card__icon .b7-stepfx-particles{ opacity: .22 !important; }
  .metodo-card__icon .b7-stepfx-orbits{ opacity: .26 !important; }
}

/* Even tighter on very small screens */
@media (max-width: 600px){
  .metodo-card__icon .b7-stepfx-frame{ inset: -5% !important; }
  .metodo-card__icon .b7-stepfx-frame::before{ opacity: .48 !important; }
}



/* BLUE7 — PASOS: FX reach the rim (without touching the rim itself)
   Keep frame as-is. Extend ONLY the FX layers (nebula/adorns) to meet it.
*/
@media (max-width: 992px){
  /* Frame remains unchanged by request */
  .metodo-card__icon .b7-stepfx-capsule::before{
    inset: -6% !important;      /* nebula bloom reaches the rim */
  }
  .metodo-card__icon .b7-stepfx-adorns{
    inset: -6% !important;      /* grid/orbits/particles/streak reach the rim */
  }
}
@media (max-width: 600px){
  .metodo-card__icon .b7-stepfx-capsule::before{ inset: -5% !important; }
  .metodo-card__icon .b7-stepfx-adorns{ inset: -5% !important; }
}



/* BLUE7 — PASOS: restore icon/text gap + make FX reach rim (frame untouched) */

/* GAP: enforce in title (works even if other margins get overridden) */
.metodo-card__title{
  padding-top: 12px !important;
  margin-top: 0 !important;
}

/* FX reach rim: expand the whole capsule + adorn layers (not the frame) */
@media (max-width: 992px){
  .metodo-card__icon .b7-stepfx-capsule{
    inset: -6% !important;       /* expand FX container to rim */
    border-radius: 22px !important;
  }
  .metodo-card__icon .b7-stepfx-capsule::before{
    inset: -2% !important;       /* extra bloom inside expanded capsule */
  }
  .metodo-card__icon .b7-stepfx-adorns{
    inset: 0 !important;         /* fill expanded capsule */
  }
}
@media (max-width: 600px){
  .metodo-card__icon .b7-stepfx-capsule{ inset: -5% !important; }
}



/* =========================
   BASE HEADER (no fijo)
========================= */
#b7Header{
  width:100%;
  height:90px;
  position:relative;
  z-index:100;
}

#b7Header .b7-inner{
  max-width:1200px;
  margin:0 auto;
  height:100%;
  padding:0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

/* Logo responsive */
#b7Header .b7-logo img{
  height:40px;
  width:auto;
  display:block;
  max-width:none !important;
  height:40px !important;
  width:auto !important;
}


/* =========================
   DESKTOP NAV
========================= */
#b7Header .b7-nav-desktop{
  display:flex;
  gap:42px;
  align-items:center;
}

#b7Header .b7-nav-desktop a{
  color:#ffffff;
  text-decoration:none;
  font-weight:600;
  transition:color .25s ease;
  white-space:nowrap;
}
#b7Header .b7-nav-desktop a:hover{ color:#00CFFF; }

/* =========================
   KILL OVERRIDE (HAMBURGUESA)
========================= */
#b7Header .b7-toggle,
#b7Header .b7-toggle:hover,
#b7Header .b7-toggle:active,
#b7Header .b7-toggle:focus,
#b7Header .b7-toggle:focus-visible{
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  -webkit-tap-highlight-color: transparent !important;
}

#b7Header .b7-toggle::before,
#b7Header .b7-toggle::after{
  content:none !important;
  display:none !important;
}

/* Layout hamburguesa */
#b7Header .b7-toggle{
  display:none;
  flex-direction:column;
  gap:6px;
  cursor:pointer;
  padding:8px;
}

/* Líneas */
#b7Header .b7-toggle span{
  display:block !important;
  width:26px;
  height:2px;
  background:#ffffff;
  border-radius:2px;
}

/* =========================
   MOBILE PANEL
   ✅ negro 70% + estrellas en ::before (ANCLADAS)
========================= */
#b7Header .b7-mobile{
  position:fixed;
  top:0;
  right:0;
  width:320px;
  max-width:85%;
  height:100vh;

  /* ✅ fondo azul 70% */
  background: rgba(8,17,59,0.90);

  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:32px;

  transform: translateX(100%);
  transition: transform .4s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
  z-index:200;
  border-left:1px solid rgba(0,207,255,0.10);

  overflow:hidden;

  position:fixed;
}

/* 🔑 ANCLA REAL DEL PSEUDO-ELEMENTO */
#b7Header .b7-mobile{
  position:fixed;
}
#b7Header .b7-mobile{
  isolation:isolate;
}

/* Estrellas visibles (encima del negro) */
#b7Header .b7-mobile::before{
  content:"";
  position:absolute;
  inset:-20px; /* margen para evitar bordes vacíos */
  pointer-events:none;
  z-index:0;

  /* starfield más evidente */
  background:
    radial-gradient(1px 1px at 15px 20px, rgba(255,255,255,0.95), transparent 60%),
    radial-gradient(1px 1px at 60px 140px, rgba(255,255,255,0.75), transparent 60%),
    radial-gradient(1px 1px at 140px 70px, rgba(255,255,255,0.85), transparent 60%),
    radial-gradient(2px 2px at 210px 210px, rgba(255,255,255,0.95), transparent 65%),
    radial-gradient(1px 1px at 285px 105px, rgba(255,255,255,0.75), transparent 60%),
    radial-gradient(1px 1px at 40px 260px, rgba(255,255,255,0.80), transparent 60%),
    radial-gradient(2px 2px at 260px 320px, rgba(255,255,255,0.95), transparent 65%),
    radial-gradient(1px 1px at 310px 40px, rgba(255,255,255,0.70), transparent 60%),
    radial-gradient(1px 1px at 120px 330px, rgba(255,255,255,0.85), transparent 60%),
    radial-gradient(1px 1px at 220px 30px, rgba(255,255,255,0.75), transparent 60%);

  background-size: 360px 360px;
  background-repeat: repeat;

  opacity: 0.9;
  filter: drop-shadow(0 0 6px rgba(0,207,255,0.10)); /* glow tech sutil */
}

/* Contenido arriba de estrellas */
#b7Header .b7-mobile > *{
  position:relative;
  z-index:1;
}

#b7Header .b7-mobile-brand{
  position:absolute;
  top:20px;
  left:24px;
  display:inline-flex;
  align-items:center;
}

#b7Header .b7-mobile-brand img{
  height:34px;
  width:auto;
  display:block;
  max-width:none;
}

/* Apertura panel */
#b7Header .b7-mobile.open{
  transform: translateX(0);
}

/* Twinkle real (múltiples capas desfasadas) */
@keyframes b7StarsTwinkle1{
  0%,100% { opacity: 0.9; }
  50% { opacity: 0.4; }
}
@keyframes b7StarsTwinkle2{
  0%,100% { opacity: 0.5; }
  50% { opacity: 0.95; }
}
@keyframes b7StarsTwinkle3{
  0%,100% { opacity: 0.7; }
  40% { opacity: 0.3; }
  80% { opacity: 0.85; }
}

/* Capa 1: estrellas base (::before ya existente) — titileo lento */
#b7Header .b7-mobile.open::before{
  animation: b7StarsTwinkle1 3.8s ease-in-out infinite;
}

/* Capa 2: segundo campo estelar (::after) — desfasado */
#b7Header .b7-mobile::after{
  content:"";
  position:absolute;
  inset:-20px;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(1.2px 1.2px at 48px 90px, rgba(255,255,255,0.90), transparent 60%),
    radial-gradient(1px 1px at 175px 45px, rgba(255,255,255,0.80), transparent 60%),
    radial-gradient(1.5px 1.5px at 95px 240px, rgba(255,255,255,0.85), transparent 65%),
    radial-gradient(1px 1px at 250px 160px, rgba(255,255,255,0.70), transparent 60%),
    radial-gradient(1.2px 1.2px at 30px 380px, rgba(255,255,255,0.90), transparent 60%),
    radial-gradient(1px 1px at 190px 420px, rgba(255,255,255,0.75), transparent 60%),
    radial-gradient(1.5px 1.5px at 300px 280px, rgba(255,255,255,0.85), transparent 65%),
    radial-gradient(1px 1px at 80px 480px, rgba(255,255,255,0.70), transparent 60%);
  background-size: 340px 520px;
  background-repeat: repeat;
  opacity: 0;
  filter: drop-shadow(0 0 4px rgba(0,207,255,0.08));
}
#b7Header .b7-mobile.open::after{
  animation: b7StarsTwinkle2 5.2s ease-in-out infinite;
}

#b7Header .b7-mobile a{
  color:#ffffff;
  text-decoration:none;
  font-size:1.1rem;
  font-weight:600;
  transition:color .25s ease;
}
#b7Header .b7-mobile a:hover{ color:#00CFFF; }
#b7Header .b7-mobile a:last-child{
  position:relative;
  padding:11px 20px;
  border-radius:999px;
  color:#fff;
  background: rgba(255,255,255,.03);
  border:1px solid transparent;
  background-image:
    linear-gradient(rgba(7,13,30,.75), rgba(7,13,30,.75)),
    linear-gradient(90deg, rgba(0,71,255,.95), rgba(0,123,255,.95), rgba(0,207,255,.95));
  background-origin:border-box;
  background-clip:padding-box, border-box;
  box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset, 0 0 32px rgba(0,123,255,.1);
  text-align:center;
  margin-top:8px;
}
#b7Header .b7-mobile a:last-child:hover{
  color: #00CFFF !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset, 0 0 40px rgba(0,207,255,.18);
}

/* =========================
   KILL OVERRIDE (X)
========================= */
#b7Header .b7-close,
#b7Header .b7-close:hover,
#b7Header .b7-close:active,
#b7Header .b7-close:focus,
#b7Header .b7-close:focus-visible{
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  -webkit-tap-highlight-color: transparent !important;
}

#b7Header .b7-close::before,
#b7Header .b7-close::after{
  content:none !important;
  display:none !important;
}

#b7Header .b7-close{
  position:absolute;
  top:22px;
  right:22px;
  font-size:1.6rem;
  color:#ffffff;
  cursor:pointer;
  padding:0;
  line-height:1;
}

/* =========================
   OVERLAY (click fuera)
========================= */
#b7Header .b7-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.6);
  display:none;
  z-index:150;
}
#b7Header .b7-overlay.show{ display:block; }

/* =========================
   RESPONSIVE
========================= */
@media (max-width:980px){
  #b7Header .b7-nav-desktop{ display:none; }
  #b7Header .b7-toggle{ display:flex; }
}



                /* Contenedor con fondo TRANSPARENTE */
                .logo-container {
                    background: transparent;
                    padding: 50px;
                    display: flex;
                    justify-content: center;
                }

                .blue7-svg {
                    width: 100%;
                    max-width: 700px;
                }

                /* Estilos para el trazado del rayo */
                .rayo-path {
                    fill: none;
                    stroke: url(#rayo-gradient);
                    stroke-width: 5;
                    stroke-linecap: round;
                    stroke-linejoin: round;
                    filter: url(#electric-glow);
                    opacity: 0;
                    stroke-dasharray: 1500;
                    stroke-dashoffset: 1500;
                    animation: snap-strike 4s cubic-bezier(0.2, 0, 0.2, 1) infinite;
                }

                /* Delay escalonado para que las piezas se iluminen en secuencia */
                .delay-1 { animation-delay: 0s; }
                .delay-2 { animation-delay: 0.1s; }
                .delay-3 { animation-delay: 0.2s; }
                .delay-4 { animation-delay: 0.3s; }
                .delay-5 { animation-delay: 0.4s; }
                .delay-6 { animation-delay: 0.5s; }
                .delay-7 { animation-delay: 0.6s; }
                .delay-8 { animation-delay: 0.7s; }
                .delay-9 { animation-delay: 0.8s; }
                .delay-10 { animation-delay: 0.9s; }
                .delay-11 { animation-delay: 1.0s; }
                .delay-12 { animation-delay: 1.1s; }
                .delay-13 { animation-delay: 1.2s; }

                @keyframes snap-strike {
                    0% {
                        stroke-dashoffset: 1500;
                        opacity: 0;
                    }
                    1% {
                        opacity: 1.5;
                    }
                    5% {
                        stroke-dashoffset: 0;
                        opacity: 1.5;
                    }
                    10% {
                        opacity: 0;
                        stroke-dashoffset: 0;
                    }
                    100% {
                        opacity: 0;
                        stroke-dashoffset: 0;
                    }
                }

                /* Estilos originales del SVG proporcionado */
                .cls-1{fill:url(#Degradado_sin_nombre_1403);}
                .cls-2{fill:url(#Degradado_sin_nombre_1156);}
                .cls-4{fill:url(#Degradado_sin_nombre_1484);}
                .cls-9{fill:url(#Degradado_sin_nombre_1587);}
                .cls-10{fill:url(#Degradado_sin_nombre_1682);}
                .cls-11{fill:url(#Degradado_sin_nombre_1559);}
                .cls-12{fill:url(#Degradado_sin_nombre_1624);}
                .cls-13{fill:url(#Degradado_sin_nombre_1098);}
                .cls-14{fill:url(#Degradado_sin_nombre_1660);}

                /* Estilos de la silueta */
                #BORDE_EXTERIOR{opacity:.75;}
                #BORDE_EXTERIOR .cls-2{fill:url(#Degradado_sin_nombre_1757-3);stroke:url(#Degradado_sin_nombre_1729-3);stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5px;}
                #BORDE_EXTERIOR .cls-3{fill:url(#Degradado_sin_nombre_1757-2);stroke:url(#Degradado_sin_nombre_1729-2);stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5px;}
                #BORDE_EXTERIOR .cls-4{fill:url(#Degradado_sin_nombre_1757-4);stroke:url(#Degradado_sin_nombre_1729-4);stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5px;}
                #BORDE_EXTERIOR .cls-5{fill:url(#Degradado_sin_nombre_1757);stroke:url(#Degradado_sin_nombre_1729);stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5px;}
            

#b7c1_svg .cls-1{fill:#00cfff;}
#b7c1_svg .cls-2{stroke:url(#b7c1__Degradado_sin_nombre_833);stroke-linecap:round;stroke-linejoin:round;}
#b7c1_svg .cls-2, #b7c1_svg .cls-3, #b7c1_svg .cls-4{fill:none;stroke-width:2px;}
#b7c1_svg .cls-3{stroke:#000;}
#b7c1_svg .cls-3, #b7c1_svg .cls-4{stroke-miterlimit:10;}
#b7c1_svg .cls-5{isolation:isolate;}
#b7c1_svg .cls-6{opacity:.6;}
#b7c1_svg .cls-6, #b7c1_svg .cls-7, #b7c1_svg .cls-8, #b7c1_svg .cls-9, #b7c1_svg .cls-10{mix-blend-mode:screen;}
#b7c1_svg .cls-4{stroke:#00cfff;}
#b7c1_svg .cls-7{opacity:.35;}
#b7c1_svg .cls-8{opacity:.22;}
#b7c1_svg .cls-9{opacity:.45;}
#b7c1_svg .cls-11{filter:url(#b7c1__outer-glow-3);}
#b7c1_svg .cls-12{fill:#0047ff;}
#b7c1_svg .cls-10{opacity:.18;}

#b7c2_svg .cls-1{filter:url(#b7c2__outer-glow-2);}
#b7c2_svg .cls-2{stroke:#00cfff;}
#b7c2_svg .cls-2, #b7c2_svg .cls-3, #b7c2_svg .cls-4{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;}
#b7c2_svg .cls-2, #b7c2_svg .cls-4{fill-rule:evenodd;}
#b7c2_svg .cls-5{fill:#00cfff;}
#b7c2_svg .cls-3{stroke:url(#b7c2__Degradado_sin_nombre_833);}
#b7c2_svg .cls-6{isolation:isolate;}
#b7c2_svg .cls-7{opacity:.6;}
#b7c2_svg .cls-7, #b7c2_svg .cls-8, #b7c2_svg .cls-9, #b7c2_svg .cls-10, #b7c2_svg .cls-11{mix-blend-mode:screen;}
#b7c2_svg .cls-8{opacity:.35;}
#b7c2_svg .cls-9{opacity:.22;}
#b7c2_svg .cls-10{opacity:.45;}
#b7c2_svg .cls-4{stroke:#000;}
#b7c2_svg .cls-12{fill:#0047ff;}
#b7c2_svg .cls-11{opacity:.18;}

#b7c3_svg .cls-1{stroke:url(#b7c3__Degradado_sin_nombre_833-4);}
#b7c3_svg .cls-1, #b7c3_svg .cls-2, #b7c3_svg .cls-3, #b7c3_svg .cls-4, #b7c3_svg .cls-5, #b7c3_svg .cls-6, #b7c3_svg .cls-7, #b7c3_svg .cls-8{fill:none;}
#b7c3_svg .cls-1, #b7c3_svg .cls-2, #b7c3_svg .cls-5, #b7c3_svg .cls-6, #b7c3_svg .cls-7, #b7c3_svg .cls-8{stroke-width:2px;}
#b7c3_svg .cls-1, #b7c3_svg .cls-2, #b7c3_svg .cls-6, #b7c3_svg .cls-8{stroke-linecap:round;stroke-linejoin:round;}
#b7c3_svg .cls-9{fill:#00cfff;}
#b7c3_svg .cls-2{stroke:url(#b7c3__Degradado_sin_nombre_833);}
#b7c3_svg .cls-3, #b7c3_svg .cls-5, #b7c3_svg .cls-7{stroke-miterlimit:10;}
#b7c3_svg .cls-3, #b7c3_svg .cls-7{stroke:#00cfff;}
#b7c3_svg .cls-5{stroke:#000;}
#b7c3_svg .cls-10{isolation:isolate;}
#b7c3_svg .cls-11{filter:url(#b7c3__outer-glow-1);}
#b7c3_svg .cls-6{stroke:url(#b7c3__Degradado_sin_nombre_833-3);}
#b7c3_svg .cls-12{opacity:.6;}
#b7c3_svg .cls-12, #b7c3_svg .cls-13, #b7c3_svg .cls-14, #b7c3_svg .cls-15, #b7c3_svg .cls-16{mix-blend-mode:screen;}
#b7c3_svg .cls-13{opacity:.35;}
#b7c3_svg .cls-14{opacity:.22;}
#b7c3_svg .cls-15{opacity:.45;}
#b7c3_svg .cls-8{stroke:url(#b7c3__Degradado_sin_nombre_833-2);}
#b7c3_svg .cls-17{fill:#0047ff;}
#b7c3_svg .cls-16{opacity:.18;}

#b7p1_svg .cls-1{fill:url(#b7p1__blue7_NEON_GRAD-4);}
#b7p1_svg .cls-1, #b7p1_svg .cls-2, #b7p1_svg .cls-3, #b7p1_svg .cls-4, #b7p1_svg .cls-5, #b7p1_svg .cls-6, #b7p1_svg .cls-7, #b7p1_svg .cls-8{stroke-width:2px;}
#b7p1_svg .cls-1, #b7p1_svg .cls-2, #b7p1_svg .cls-3, #b7p1_svg .cls-9, #b7p1_svg .cls-10, #b7p1_svg .cls-5, #b7p1_svg .cls-6, #b7p1_svg .cls-11, #b7p1_svg .cls-8{stroke:#00cfff;}
#b7p1_svg .cls-1, #b7p1_svg .cls-2, #b7p1_svg .cls-10, #b7p1_svg .cls-5, #b7p1_svg .cls-6, #b7p1_svg .cls-11, #b7p1_svg .cls-8{stroke-miterlimit:10;}
#b7p1_svg .cls-2{fill:url(#b7p1__blue7_NEON_GRAD-3);}
#b7p1_svg .cls-3, #b7p1_svg .cls-4, #b7p1_svg .cls-6, #b7p1_svg .cls-7{fill:none;}
#b7p1_svg .cls-3, #b7p1_svg .cls-9{stroke-miterlimit:10;}
#b7p1_svg .cls-12{fill:#00cfff;}
#b7p1_svg .cls-4{stroke:url(#b7p1__Degradado_sin_nombre_833);}
#b7p1_svg .cls-4, #b7p1_svg .cls-7{stroke-linecap:round;stroke-linejoin:round;}
#b7p1_svg .cls-9{fill:url(#b7p1__blue7_NEON_GRAD-5);stroke-width:2.2543px;}
#b7p1_svg .cls-13{filter:url(#b7p1__outer-glow-43);}
#b7p1_svg .cls-14{isolation:isolate;}
#b7p1_svg .cls-10{fill:url(#b7p1__blue7_NEON_GRAD-7);stroke-width:2.2203px;}
#b7p1_svg .cls-15{opacity:.6;}
#b7p1_svg .cls-15, #b7p1_svg .cls-16, #b7p1_svg .cls-17, #b7p1_svg .cls-18, #b7p1_svg .cls-19{mix-blend-mode:screen;}
#b7p1_svg .cls-5{fill:url(#b7p1__blue7_NEON_GRAD-2);}
#b7p1_svg .cls-16{opacity:.35;}
#b7p1_svg .cls-17{opacity:.22;}
#b7p1_svg .cls-18{opacity:.45;}
#b7p1_svg .cls-7{stroke:url(#b7p1__Degradado_sin_nombre_833-2);}
#b7p1_svg .cls-11{fill:url(#b7p1__blue7_NEON_GRAD-6);stroke-width:2.3117px;}
#b7p1_svg .cls-8{fill:url(#b7p1__blue7_NEON_GRAD);}
#b7p1_svg .cls-20{fill:#0047ff;}
#b7p1_svg .cls-19{opacity:.18;}

#b7p2_svg .cls-1{stroke:url(#b7p2__Degradado_sin_nombre_833-21);}
#b7p2_svg .cls-1, #b7p2_svg .cls-2, #b7p2_svg .cls-3, #b7p2_svg .cls-4, #b7p2_svg .cls-5, #b7p2_svg .cls-6, #b7p2_svg .cls-7, #b7p2_svg .cls-8, #b7p2_svg .blue7_STROKE_512, #b7p2_svg .cls-9, #b7p2_svg .cls-10, #b7p2_svg .cls-11, #b7p2_svg .cls-12, #b7p2_svg .cls-13, #b7p2_svg .cls-14, #b7p2_svg .cls-15, #b7p2_svg .cls-16, #b7p2_svg .cls-17, #b7p2_svg .cls-18, #b7p2_svg .cls-19, #b7p2_svg .cls-20, #b7p2_svg .cls-21, #b7p2_svg .cls-22, #b7p2_svg .cls-23, #b7p2_svg .cls-24, #b7p2_svg .cls-25, #b7p2_svg .cls-26, #b7p2_svg .cls-27, #b7p2_svg .cls-28, #b7p2_svg .cls-29, #b7p2_svg .cls-30, #b7p2_svg .cls-31, #b7p2_svg .blue7_GLOW_512, #b7p2_svg .cls-32{fill:none;stroke-width:2px;}
#b7p2_svg .cls-1, #b7p2_svg .cls-2, #b7p2_svg .cls-3, #b7p2_svg .cls-4, #b7p2_svg .cls-5, #b7p2_svg .cls-6, #b7p2_svg .cls-7, #b7p2_svg .cls-8, #b7p2_svg .blue7_STROKE_512, #b7p2_svg .cls-9, #b7p2_svg .cls-10, #b7p2_svg .cls-11, #b7p2_svg .cls-12, #b7p2_svg .cls-13, #b7p2_svg .cls-14, #b7p2_svg .cls-15, #b7p2_svg .cls-16, #b7p2_svg .cls-17, #b7p2_svg .cls-18, #b7p2_svg .cls-19, #b7p2_svg .cls-20, #b7p2_svg .cls-21, #b7p2_svg .cls-22, #b7p2_svg .cls-23, #b7p2_svg .cls-25, #b7p2_svg .cls-26, #b7p2_svg .cls-27, #b7p2_svg .cls-28, #b7p2_svg .cls-29, #b7p2_svg .cls-30, #b7p2_svg .cls-31, #b7p2_svg .blue7_GLOW_512, #b7p2_svg .cls-32{stroke-linecap:round;stroke-linejoin:round;}
#b7p2_svg .cls-2{stroke:url(#b7p2__Degradado_sin_nombre_833-17);}
#b7p2_svg .cls-3{stroke:url(#b7p2__Degradado_sin_nombre_833-28);}
#b7p2_svg .cls-33{filter:url(#b7p2__outer-glow-41);}
#b7p2_svg .cls-4{stroke:url(#b7p2__Degradado_sin_nombre_833-19);}
#b7p2_svg .cls-5{stroke:url(#b7p2__Degradado_sin_nombre_833-12);}
#b7p2_svg .cls-6{stroke:url(#b7p2__Degradado_sin_nombre_833-8);}
#b7p2_svg .cls-7{stroke:url(#b7p2__Degradado_sin_nombre_833-4);}
#b7p2_svg .cls-8{stroke:url(#b7p2__Degradado_sin_nombre_833-23);}
#b7p2_svg .cls-34{fill:#00cfff;}
#b7p2_svg .blue7_STROKE_512{stroke:url(#b7p2__Degradado_sin_nombre_833);}
#b7p2_svg .cls-9{stroke:url(#b7p2__Degradado_sin_nombre_833-24);}
#b7p2_svg .cls-10{stroke:url(#b7p2__Degradado_sin_nombre_833-5);}
#b7p2_svg .cls-11{stroke:url(#b7p2__Degradado_sin_nombre_833-30);}
#b7p2_svg .cls-12{stroke:url(#b7p2__Degradado_sin_nombre_833-6);}
#b7p2_svg .cls-13{stroke:url(#b7p2__Degradado_sin_nombre_833-11);}
#b7p2_svg .cls-14{stroke:url(#b7p2__Degradado_sin_nombre_833-9);}
#b7p2_svg .cls-15{stroke:url(#b7p2__Degradado_sin_nombre_833-16);}
#b7p2_svg .cls-35{isolation:isolate;}
#b7p2_svg .cls-16{stroke:url(#b7p2__Degradado_sin_nombre_833-13);}
#b7p2_svg .cls-17{stroke:url(#b7p2__Degradado_sin_nombre_833-3);}
#b7p2_svg .cls-36{opacity:.6;}
#b7p2_svg .cls-36, #b7p2_svg .cls-37, #b7p2_svg .cls-38, #b7p2_svg .cls-39, #b7p2_svg .cls-40{mix-blend-mode:screen;}
#b7p2_svg .cls-18{stroke:url(#b7p2__Degradado_sin_nombre_833-14);}
#b7p2_svg .cls-19{filter:url(#b7p2__outer-glow-42-1);}
#b7p2_svg .cls-19, #b7p2_svg .blue7_GLOW_512{stroke:url(#b7p2__Degradado_sin_nombre_754);}
#b7p2_svg .cls-20{stroke:url(#b7p2__Degradado_sin_nombre_833-27);}
#b7p2_svg .cls-21{stroke:url(#b7p2__Degradado_sin_nombre_833-22);}
#b7p2_svg .cls-22{stroke:url(#b7p2__Degradado_sin_nombre_833-15);}
#b7p2_svg .cls-23{stroke:url(#b7p2__Degradado_sin_nombre_833-29);}
#b7p2_svg .cls-24{stroke:#00cfff;stroke-miterlimit:10;}
#b7p2_svg .cls-25{stroke:url(#b7p2__Degradado_sin_nombre_833-10);}
#b7p2_svg .cls-26{stroke:url(#b7p2__Degradado_sin_nombre_833-7);}
#b7p2_svg .cls-37{opacity:.35;}
#b7p2_svg .cls-27{stroke:url(#b7p2__Degradado_sin_nombre_833-26);}
#b7p2_svg .cls-38{opacity:.22;}
#b7p2_svg .cls-28{stroke:url(#b7p2__Degradado_sin_nombre_833-25);}
#b7p2_svg .cls-39{opacity:.45;}
#b7p2_svg .cls-29{stroke:url(#b7p2__Degradado_sin_nombre_833-18);}
#b7p2_svg .cls-30{stroke:url(#b7p2__Degradado_sin_nombre_833-20);}
#b7p2_svg .cls-31{stroke:url(#b7p2__Degradado_sin_nombre_833-2);}
#b7p2_svg .cls-41{fill:#0047ff;}
#b7p2_svg .blue7_GLOW_512{filter:url(#b7p2__outer-glow-42);}
#b7p2_svg .cls-32{stroke:url(#b7p2__Degradado_sin_nombre_833-31);}
#b7p2_svg .cls-40{opacity:.18;}

#b7p3_svg .cls-1{filter:url(#b7p3__outer-glow-27);stroke:url(#b7p3__Degradado_sin_nombre_754-4);}
#b7p3_svg .cls-1, #b7p3_svg .blue7_GLOW_512, #b7p3_svg .cls-2, #b7p3_svg .cls-3, #b7p3_svg .cls-4, #b7p3_svg .cls-5, #b7p3_svg .cls-6, #b7p3_svg .cls-7, #b7p3_svg .cls-8, #b7p3_svg .blue7_STROKE_512, #b7p3_svg .cls-9, #b7p3_svg .cls-10, #b7p3_svg .cls-11, #b7p3_svg .cls-12, #b7p3_svg .cls-13, #b7p3_svg .cls-14, #b7p3_svg .cls-15, #b7p3_svg .cls-16, #b7p3_svg .cls-17, #b7p3_svg .cls-18, #b7p3_svg .cls-19, #b7p3_svg .cls-20, #b7p3_svg .cls-21, #b7p3_svg .cls-22, #b7p3_svg .cls-23, #b7p3_svg .cls-24, #b7p3_svg .cls-25, #b7p3_svg .cls-26, #b7p3_svg .cls-27, #b7p3_svg .cls-28, #b7p3_svg .cls-29, #b7p3_svg .cls-30, #b7p3_svg .cls-31, #b7p3_svg .cls-32, #b7p3_svg .cls-33{fill:none;stroke-width:2px;}
#b7p3_svg .cls-1, #b7p3_svg .blue7_GLOW_512, #b7p3_svg .cls-2, #b7p3_svg .cls-3, #b7p3_svg .cls-4, #b7p3_svg .cls-5, #b7p3_svg .cls-6, #b7p3_svg .cls-7, #b7p3_svg .cls-8, #b7p3_svg .blue7_STROKE_512, #b7p3_svg .cls-9, #b7p3_svg .cls-10, #b7p3_svg .cls-11, #b7p3_svg .cls-12, #b7p3_svg .cls-13, #b7p3_svg .cls-14, #b7p3_svg .cls-15, #b7p3_svg .cls-16, #b7p3_svg .cls-17, #b7p3_svg .cls-18, #b7p3_svg .cls-19, #b7p3_svg .cls-20, #b7p3_svg .cls-21, #b7p3_svg .cls-22, #b7p3_svg .cls-23, #b7p3_svg .cls-24, #b7p3_svg .cls-25, #b7p3_svg .cls-26, #b7p3_svg .cls-28, #b7p3_svg .cls-29, #b7p3_svg .cls-30, #b7p3_svg .cls-31, #b7p3_svg .cls-32, #b7p3_svg .cls-33{stroke-linecap:round;stroke-linejoin:round;}
#b7p3_svg .blue7_GLOW_512{filter:url(#b7p3__outer-glow-24);}
#b7p3_svg .blue7_GLOW_512, #b7p3_svg .cls-15{stroke:url(#b7p3__Degradado_sin_nombre_754);}
#b7p3_svg .cls-2{stroke:url(#b7p3__Degradado_sin_nombre_833-12);}
#b7p3_svg .cls-3{filter:url(#b7p3__outer-glow-31);stroke:url(#b7p3__Degradado_sin_nombre_754-8);}
#b7p3_svg .cls-4{filter:url(#b7p3__outer-glow-36);stroke:url(#b7p3__Degradado_sin_nombre_754-13);}
#b7p3_svg .cls-5{filter:url(#b7p3__outer-glow-37);stroke:url(#b7p3__Degradado_sin_nombre_754-14);}
#b7p3_svg .cls-6{stroke:url(#b7p3__Degradado_sin_nombre_833-8);}
#b7p3_svg .cls-7{filter:url(#b7p3__outer-glow-33);stroke:url(#b7p3__Degradado_sin_nombre_754-10);}
#b7p3_svg .cls-8{stroke:url(#b7p3__Degradado_sin_nombre_833-4);}
#b7p3_svg .cls-34{fill:#00cfff;}
#b7p3_svg .blue7_STROKE_512{stroke:url(#b7p3__Degradado_sin_nombre_833);}
#b7p3_svg .cls-9{stroke:url(#b7p3__Degradado_sin_nombre_833-5);}
#b7p3_svg .cls-10{stroke:url(#b7p3__Degradado_sin_nombre_833-6);}
#b7p3_svg .cls-11{filter:url(#b7p3__outer-glow-32);stroke:url(#b7p3__Degradado_sin_nombre_754-9);}
#b7p3_svg .cls-12{filter:url(#b7p3__outer-glow-39);stroke:url(#b7p3__Degradado_sin_nombre_754-16);}
#b7p3_svg .cls-13{stroke:url(#b7p3__Degradado_sin_nombre_833-11);}
#b7p3_svg .cls-14{filter:url(#b7p3__outer-glow-29);stroke:url(#b7p3__Degradado_sin_nombre_754-6);}
#b7p3_svg .cls-15{filter:url(#b7p3__outer-glow-24-1);}
#b7p3_svg .cls-16{stroke:url(#b7p3__Degradado_sin_nombre_833-9);}
#b7p3_svg .cls-17{filter:url(#b7p3__outer-glow-34);stroke:url(#b7p3__Degradado_sin_nombre_754-11);}
#b7p3_svg .cls-18{stroke:url(#b7p3__Degradado_sin_nombre_833-16);}
#b7p3_svg .cls-35{isolation:isolate;}
#b7p3_svg .cls-19{stroke:url(#b7p3__Degradado_sin_nombre_833-13);}
#b7p3_svg .cls-20{filter:url(#b7p3__outer-glow-35);stroke:url(#b7p3__Degradado_sin_nombre_754-12);}
#b7p3_svg .cls-21{stroke:url(#b7p3__Degradado_sin_nombre_833-3);}
#b7p3_svg .cls-22{filter:url(#b7p3__outer-glow-28);stroke:url(#b7p3__Degradado_sin_nombre_754-5);}
#b7p3_svg .cls-36{opacity:.6;}
#b7p3_svg .cls-36, #b7p3_svg .cls-37, #b7p3_svg .cls-38, #b7p3_svg .cls-39, #b7p3_svg .cls-40{mix-blend-mode:screen;}
#b7p3_svg .cls-23{stroke:url(#b7p3__Degradado_sin_nombre_833-14);}
#b7p3_svg .cls-24{stroke:url(#b7p3__Degradado_sin_nombre_833-15);}
#b7p3_svg .cls-25{filter:url(#b7p3__outer-glow-26);stroke:url(#b7p3__Degradado_sin_nombre_754-3);}
#b7p3_svg .cls-26{filter:url(#b7p3__outer-glow-30);stroke:url(#b7p3__Degradado_sin_nombre_754-7);}
#b7p3_svg .cls-27{stroke-miterlimit:10;}
#b7p3_svg .cls-27, #b7p3_svg .cls-33{stroke:#00cfff;}
#b7p3_svg .cls-28{stroke:url(#b7p3__Degradado_sin_nombre_833-10);}
#b7p3_svg .cls-29{filter:url(#b7p3__outer-glow-25);stroke:url(#b7p3__Degradado_sin_nombre_754-2);}
#b7p3_svg .cls-30{stroke:url(#b7p3__Degradado_sin_nombre_833-7);}
#b7p3_svg .cls-37{opacity:.35;}
#b7p3_svg .cls-38{opacity:.22;}
#b7p3_svg .cls-39{opacity:.45;}
#b7p3_svg .cls-31{stroke:url(#b7p3__Degradado_sin_nombre_833-2);}
#b7p3_svg .cls-32{filter:url(#b7p3__outer-glow-38);stroke:url(#b7p3__Degradado_sin_nombre_754-15);}
#b7p3_svg .cls-41{fill:#0047ff;}
#b7p3_svg .cls-40{opacity:.18;}

#b7p4_svg .cls-1{stroke:url(#b7p4__Degradado_sin_nombre_833-21);}
#b7p4_svg .cls-1, #b7p4_svg .cls-2, #b7p4_svg .cls-3, #b7p4_svg .cls-4, #b7p4_svg .cls-5, #b7p4_svg .cls-6, #b7p4_svg .cls-7, #b7p4_svg .cls-8, #b7p4_svg .cls-9, #b7p4_svg .cls-10, #b7p4_svg .cls-11, #b7p4_svg .cls-12, #b7p4_svg .cls-13, #b7p4_svg .cls-14, #b7p4_svg .cls-15, #b7p4_svg .cls-16, #b7p4_svg .blue7_STROKE_512, #b7p4_svg .cls-17, #b7p4_svg .cls-18, #b7p4_svg .cls-19, #b7p4_svg .cls-20, #b7p4_svg .cls-21, #b7p4_svg .cls-22, #b7p4_svg .cls-23, #b7p4_svg .cls-24, #b7p4_svg .cls-25, #b7p4_svg .cls-26, #b7p4_svg .cls-27, #b7p4_svg .cls-28, #b7p4_svg .cls-29, #b7p4_svg .cls-30, #b7p4_svg .cls-31, #b7p4_svg .blue7_GLOW_512, #b7p4_svg .cls-32, #b7p4_svg .cls-33, #b7p4_svg .cls-34, #b7p4_svg .cls-35, #b7p4_svg .cls-36, #b7p4_svg .cls-37, #b7p4_svg .cls-38, #b7p4_svg .cls-39, #b7p4_svg .cls-40, #b7p4_svg .cls-41, #b7p4_svg .cls-42, #b7p4_svg .cls-43, #b7p4_svg .cls-44, #b7p4_svg .cls-45, #b7p4_svg .cls-46, #b7p4_svg .cls-47, #b7p4_svg .cls-48, #b7p4_svg .cls-49, #b7p4_svg .cls-50, #b7p4_svg .cls-51, #b7p4_svg .cls-52, #b7p4_svg .cls-53, #b7p4_svg .cls-54, #b7p4_svg .cls-55, #b7p4_svg .cls-56, #b7p4_svg .cls-57, #b7p4_svg .cls-58, #b7p4_svg .cls-59, #b7p4_svg .cls-60, #b7p4_svg .cls-61{stroke-width:2px;}
#b7p4_svg .cls-1, #b7p4_svg .cls-2, #b7p4_svg .cls-3, #b7p4_svg .cls-4, #b7p4_svg .cls-5, #b7p4_svg .cls-6, #b7p4_svg .cls-7, #b7p4_svg .cls-11, #b7p4_svg .cls-13, #b7p4_svg .cls-15, #b7p4_svg .blue7_STROKE_512, #b7p4_svg .cls-17, #b7p4_svg .cls-18, #b7p4_svg .cls-19, #b7p4_svg .cls-20, #b7p4_svg .cls-23, #b7p4_svg .cls-24, #b7p4_svg .cls-26, #b7p4_svg .cls-27, #b7p4_svg .cls-28, #b7p4_svg .cls-29, #b7p4_svg .cls-30, #b7p4_svg .cls-31, #b7p4_svg .blue7_GLOW_512, #b7p4_svg .cls-32, #b7p4_svg .cls-34, #b7p4_svg .cls-35, #b7p4_svg .cls-37, #b7p4_svg .cls-38, #b7p4_svg .cls-39, #b7p4_svg .cls-40, #b7p4_svg .cls-41, #b7p4_svg .cls-42, #b7p4_svg .cls-43, #b7p4_svg .cls-46, #b7p4_svg .cls-47, #b7p4_svg .cls-49, #b7p4_svg .cls-50, #b7p4_svg .cls-51, #b7p4_svg .cls-52, #b7p4_svg .cls-53, #b7p4_svg .cls-54, #b7p4_svg .cls-55, #b7p4_svg .cls-57, #b7p4_svg .cls-58, #b7p4_svg .cls-61{fill:none;}
#b7p4_svg .cls-1, #b7p4_svg .cls-2, #b7p4_svg .cls-3, #b7p4_svg .cls-4, #b7p4_svg .cls-5, #b7p4_svg .cls-6, #b7p4_svg .cls-7, #b7p4_svg .cls-11, #b7p4_svg .cls-13, #b7p4_svg .cls-15, #b7p4_svg .blue7_STROKE_512, #b7p4_svg .cls-17, #b7p4_svg .cls-18, #b7p4_svg .cls-19, #b7p4_svg .cls-20, #b7p4_svg .cls-23, #b7p4_svg .cls-24, #b7p4_svg .cls-26, #b7p4_svg .cls-27, #b7p4_svg .cls-28, #b7p4_svg .cls-29, #b7p4_svg .cls-30, #b7p4_svg .cls-31, #b7p4_svg .blue7_GLOW_512, #b7p4_svg .cls-32, #b7p4_svg .cls-34, #b7p4_svg .cls-35, #b7p4_svg .cls-37, #b7p4_svg .cls-38, #b7p4_svg .cls-39, #b7p4_svg .cls-41, #b7p4_svg .cls-42, #b7p4_svg .cls-43, #b7p4_svg .cls-46, #b7p4_svg .cls-47, #b7p4_svg .cls-49, #b7p4_svg .cls-50, #b7p4_svg .cls-51, #b7p4_svg .cls-52, #b7p4_svg .cls-53, #b7p4_svg .cls-54, #b7p4_svg .cls-55, #b7p4_svg .cls-57, #b7p4_svg .cls-58, #b7p4_svg .cls-61{stroke-linecap:round;stroke-linejoin:round;}
#b7p4_svg .cls-2{stroke:url(#b7p4__Degradado_sin_nombre_833-17);}
#b7p4_svg .cls-3{filter:url(#b7p4__outer-glow-11);stroke:url(#b7p4__Degradado_sin_nombre_754-10);}
#b7p4_svg .cls-4{filter:url(#b7p4__outer-glow-4);stroke:url(#b7p4__Degradado_sin_nombre_754-3);}
#b7p4_svg .cls-5{filter:url(#b7p4__outer-glow-21);stroke:url(#b7p4__Degradado_sin_nombre_754-20);}
#b7p4_svg .cls-6{stroke:url(#b7p4__Degradado_sin_nombre_833-19);}
#b7p4_svg .cls-62{fill:url(#b7p4__blue7_NEON_GRAD-2);stroke-width:2.3046px;}
#b7p4_svg .cls-62, #b7p4_svg .cls-8, #b7p4_svg .cls-9, #b7p4_svg .cls-10, #b7p4_svg .cls-12, #b7p4_svg .cls-63, #b7p4_svg .cls-14, #b7p4_svg .cls-16, #b7p4_svg .cls-21, #b7p4_svg .cls-22, #b7p4_svg .cls-25, #b7p4_svg .cls-33, #b7p4_svg .cls-36, #b7p4_svg .cls-40, #b7p4_svg .cls-44, #b7p4_svg .cls-45, #b7p4_svg .cls-48, #b7p4_svg .cls-56, #b7p4_svg .cls-59, #b7p4_svg .cls-60{stroke:#00cfff;stroke-miterlimit:10;}
#b7p4_svg .cls-7{stroke:url(#b7p4__Degradado_sin_nombre_833-12);}
#b7p4_svg .cls-8{fill:url(#b7p4__blue7_NEON_GRAD-8);}
#b7p4_svg .cls-9{fill:url(#b7p4__blue7_NEON_GRAD-4);}
#b7p4_svg .cls-10{fill:url(#b7p4__blue7_NEON_GRAD-3);}
#b7p4_svg .cls-11{stroke:url(#b7p4__Degradado_sin_nombre_833-8);}
#b7p4_svg .cls-12{fill:url(#b7p4__blue7_NEON_GRAD-14);}
#b7p4_svg .cls-13{stroke:url(#b7p4__Degradado_sin_nombre_833-4);}
#b7p4_svg .cls-63{fill:url(#b7p4__blue7_NEON_GRAD-6);stroke-width:2.1409px;}
#b7p4_svg .cls-14{fill:url(#b7p4__blue7_NEON_GRAD-9);}
#b7p4_svg .cls-64{fill:#00cfff;}
#b7p4_svg .cls-15{filter:url(#b7p4__outer-glow-3);stroke:url(#b7p4__Degradado_sin_nombre_754-2);}
#b7p4_svg .cls-16{fill:url(#b7p4__blue7_NEON_GRAD-10);}
#b7p4_svg .blue7_STROKE_512{stroke:url(#b7p4__Degradado_sin_nombre_833);}
#b7p4_svg .cls-17{stroke:url(#b7p4__Degradado_sin_nombre_833-5);}
#b7p4_svg .cls-18{filter:url(#b7p4__outer-glow-10);stroke:url(#b7p4__Degradado_sin_nombre_754-9);}
#b7p4_svg .cls-19{stroke:url(#b7p4__Degradado_sin_nombre_833-6);}
#b7p4_svg .cls-20{filter:url(#b7p4__outer-glow-15);stroke:url(#b7p4__Degradado_sin_nombre_754-14);}
#b7p4_svg .cls-21{fill:url(#b7p4__blue7_NEON_GRAD-13);}
#b7p4_svg .cls-22{fill:url(#b7p4__blue7_NEON_GRAD-19);}
#b7p4_svg .cls-23{filter:url(#b7p4__outer-glow-17);stroke:url(#b7p4__Degradado_sin_nombre_754-16);}
#b7p4_svg .cls-24{filter:url(#b7p4__outer-glow-22);stroke:url(#b7p4__Degradado_sin_nombre_754-21);}
#b7p4_svg .cls-25{fill:url(#b7p4__blue7_NEON_GRAD-5);}
#b7p4_svg .cls-26{stroke:url(#b7p4__Degradado_sin_nombre_833-11);}
#b7p4_svg .cls-27{stroke:url(#b7p4__Degradado_sin_nombre_833-9);}
#b7p4_svg .cls-28{stroke:url(#b7p4__Degradado_sin_nombre_833-16);}
#b7p4_svg .cls-65{isolation:isolate;}
#b7p4_svg .cls-29{stroke:url(#b7p4__Degradado_sin_nombre_833-13);}
#b7p4_svg .cls-30{filter:url(#b7p4__outer-glow-13);stroke:url(#b7p4__Degradado_sin_nombre_754-12);}
#b7p4_svg .cls-31{filter:url(#b7p4__outer-glow-20);stroke:url(#b7p4__Degradado_sin_nombre_754-19);}
#b7p4_svg .blue7_GLOW_512{filter:url(#b7p4__outer-glow-2);}
#b7p4_svg .blue7_GLOW_512, #b7p4_svg .cls-58{stroke:url(#b7p4__Degradado_sin_nombre_754);}
#b7p4_svg .cls-32{stroke:url(#b7p4__Degradado_sin_nombre_833-3);}
#b7p4_svg .cls-66{opacity:.6;}
#b7p4_svg .cls-66, #b7p4_svg .cls-67, #b7p4_svg .cls-68, #b7p4_svg .cls-69, #b7p4_svg .cls-70{mix-blend-mode:screen;}
#b7p4_svg .cls-33{fill:url(#b7p4__blue7_NEON_GRAD-16);}
#b7p4_svg .cls-34{stroke:url(#b7p4__Degradado_sin_nombre_833-14);}
#b7p4_svg .cls-35{stroke:url(#b7p4__Degradado_sin_nombre_833-22);}
#b7p4_svg .cls-36{fill:url(#b7p4__blue7_NEON_GRAD-18);}
#b7p4_svg .cls-37{stroke:url(#b7p4__Degradado_sin_nombre_833-15);}
#b7p4_svg .cls-38{filter:url(#b7p4__outer-glow-5);stroke:url(#b7p4__Degradado_sin_nombre_754-4);}
#b7p4_svg .cls-39{filter:url(#b7p4__outer-glow-6);stroke:url(#b7p4__Degradado_sin_nombre_754-5);}
#b7p4_svg .cls-41{stroke:url(#b7p4__Degradado_sin_nombre_833-10);}
#b7p4_svg .cls-42{stroke:url(#b7p4__Degradado_sin_nombre_833-7);}
#b7p4_svg .cls-67{opacity:.35;}
#b7p4_svg .cls-43{filter:url(#b7p4__outer-glow-9);stroke:url(#b7p4__Degradado_sin_nombre_754-8);}
#b7p4_svg .cls-44{fill:url(#b7p4__blue7_NEON_GRAD-15);}
#b7p4_svg .cls-68{opacity:.22;}
#b7p4_svg .cls-45{fill:url(#b7p4__blue7_NEON_GRAD-12);}
#b7p4_svg .cls-69{opacity:.45;}
#b7p4_svg .cls-46{filter:url(#b7p4__outer-glow-23);stroke:url(#b7p4__Degradado_sin_nombre_754-22);}
#b7p4_svg .cls-47{filter:url(#b7p4__outer-glow-8);stroke:url(#b7p4__Degradado_sin_nombre_754-7);}
#b7p4_svg .cls-48{fill:url(#b7p4__blue7_NEON_GRAD-11);}
#b7p4_svg .cls-49{filter:url(#b7p4__outer-glow-19);stroke:url(#b7p4__Degradado_sin_nombre_754-18);}
#b7p4_svg .cls-50{stroke:url(#b7p4__Degradado_sin_nombre_833-18);}
#b7p4_svg .cls-51{stroke:url(#b7p4__Degradado_sin_nombre_833-20);}
#b7p4_svg .cls-52{stroke:url(#b7p4__Degradado_sin_nombre_833-2);}
#b7p4_svg .cls-53{filter:url(#b7p4__outer-glow-12);stroke:url(#b7p4__Degradado_sin_nombre_754-11);}
#b7p4_svg .cls-54{filter:url(#b7p4__outer-glow-16);stroke:url(#b7p4__Degradado_sin_nombre_754-15);}
#b7p4_svg .cls-55{filter:url(#b7p4__outer-glow-7);stroke:url(#b7p4__Degradado_sin_nombre_754-6);}
#b7p4_svg .cls-56{fill:url(#b7p4__blue7_NEON_GRAD);}
#b7p4_svg .cls-57{filter:url(#b7p4__outer-glow-18);stroke:url(#b7p4__Degradado_sin_nombre_754-17);}
#b7p4_svg .cls-71{fill:#0047ff;}
#b7p4_svg .cls-58{filter:url(#b7p4__outer-glow-2-1);}
#b7p4_svg .cls-59{fill:url(#b7p4__blue7_NEON_GRAD-17);}
#b7p4_svg .cls-60{fill:url(#b7p4__blue7_NEON_GRAD-7);}
#b7p4_svg .cls-61{filter:url(#b7p4__outer-glow-14);stroke:url(#b7p4__Degradado_sin_nombre_754-13);}
#b7p4_svg .cls-70{opacity:.18;}

#b7p5_svg .cls-1{fill:url(#b7p5__blue7_NEON_GRAD-4);}
#b7p5_svg .cls-1, #b7p5_svg .cls-2, #b7p5_svg .cls-3, #b7p5_svg .cls-4, #b7p5_svg .cls-5, #b7p5_svg .cls-6, #b7p5_svg .cls-7, #b7p5_svg .cls-8{stroke-width:2px;}
#b7p5_svg .cls-1, #b7p5_svg .cls-2, #b7p5_svg .cls-4, #b7p5_svg .cls-5, #b7p5_svg .cls-6, #b7p5_svg .cls-7, #b7p5_svg .cls-8{stroke:#00cfff;stroke-miterlimit:10;}
#b7p5_svg .cls-2{fill:url(#b7p5__blue7_NEON_GRAD-3);}
#b7p5_svg .cls-9{fill:#00cfff;}
#b7p5_svg .cls-3{stroke:url(#b7p5__Degradado_sin_nombre_833);stroke-linecap:round;stroke-linejoin:round;}
#b7p5_svg .cls-3, #b7p5_svg .cls-6{fill:none;}
#b7p5_svg .cls-4{fill:url(#b7p5__blue7_NEON_GRAD-5);}
#b7p5_svg .cls-10{isolation:isolate;}
#b7p5_svg .cls-11{filter:url(#b7p5__outer-glow-1);}
#b7p5_svg .cls-12{opacity:.6;}
#b7p5_svg .cls-12, #b7p5_svg .cls-13, #b7p5_svg .cls-14, #b7p5_svg .cls-15, #b7p5_svg .cls-16{mix-blend-mode:screen;}
#b7p5_svg .cls-5{fill:url(#b7p5__blue7_NEON_GRAD-2);}
#b7p5_svg .cls-13{opacity:.35;}
#b7p5_svg .cls-7{fill:url(#b7p5__blue7_NEON_GRAD-6);}
#b7p5_svg .cls-14{opacity:.22;}
#b7p5_svg .cls-15{opacity:.45;}
#b7p5_svg .cls-8{fill:url(#b7p5__blue7_NEON_GRAD);}
#b7p5_svg .cls-17{fill:#0047ff;}
#b7p5_svg .cls-16{opacity:.18;}



/* HERO — line breaks only on large screens (desktop/laptop) */
.hero-headline .hero-line{
  display: inline;
}
@media (min-width: 1025px){
  .hero-headline .hero-line{
    display: block;
  }
}


/* ===== Project Home blue7ai.com V1 preview overrides ===== */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{
  --band-bg: rgba(6, 10, 24, 0.44);
  --band-bg-strong: rgba(6, 10, 24, 0.52);
  --band-stroke: linear-gradient(90deg, rgba(0,71,255,0) 0%, rgba(0,71,255,.9) 8%, rgba(0,123,255,.95) 52%, rgba(0,207,255,.9) 92%, rgba(0,207,255,0) 100%);
  --mod-stroke: linear-gradient(135deg, rgba(0,71,255,.95), rgba(0,123,255,.88), rgba(0,207,255,.82));
  --panel-bg: linear-gradient(180deg, rgba(9,14,33,.58) 0%, rgba(8,11,26,.42) 100%);
  --panel-border: rgba(108,163,255,.2);
  --panel-border-strong: rgba(0,207,255,.24);
}
html::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:-9;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(70,125,255,.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(70,125,255,.18) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(circle at 50% 40%, rgba(0,0,0,.95), rgba(0,0,0,.55) 60%, transparent 92%);
  opacity:.38;
}
body{
  position:relative;
  background:#02040b;
}
body::before{
  z-index:-8;
}
body::after{
  z-index:-7;
  height:52vh;
}
/* Mid-page nebula over grid, below content */
.impacto::before{
  content:'';
  position:absolute;
  inset:-12% -8% -18%;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(ellipse 52% 34% at 52% 48%, rgba(0,71,255,.16) 0%, rgba(0,71,255,.1) 18%, rgba(0,207,255,.08) 34%, transparent 72%),
    radial-gradient(ellipse 34% 22% at 36% 55%, rgba(0,207,255,.07) 0%, transparent 66%),
    radial-gradient(ellipse 30% 20% at 68% 44%, rgba(0,123,255,.06) 0%, transparent 60%);
  filter: blur(16px);
  opacity:.95;
}
.impacto{ position:relative; isolation:isolate; }
/* Header as full-width cintillo */
#b7Header{
  position:sticky;
  top:0;
  z-index:1000;
  height:auto;
  padding:18px 0 10px;
  backdrop-filter: none;
}
#b7Header::before,
#b7Header::after,
.hero-post::before,
.hero-post::after,
.metodo-cta-wrap::before,
.metodo-cta-wrap::after,
.site-footer::before,
.site-footer::after{
  content:'';
  position:absolute;
  left:0; right:0;
  height:1px;
  background:var(--band-stroke);
  opacity:.98;
  pointer-events:none;
}
#b7Header::before{ top:0; }
#b7Header::after{ bottom:0; }
#b7Header .b7-inner{
  max-width:none;
  min-height:68px;
  padding:0 clamp(18px, 2.6vw, 34px);
  background: linear-gradient(180deg, rgba(8,12,27,.42), rgba(8,12,27,.3));
  backdrop-filter: blur(18px) saturate(125%);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
}
#b7Header .b7-nav-desktop{ gap: clamp(20px, 2.2vw, 36px); }
#b7Header .b7-nav-desktop a{
  color: rgba(255,255,255,.8);
  font-size:.95rem;
  letter-spacing:.01em;
}
#b7Header .b7-nav-desktop a:last-child{
  position:relative;
  padding:11px 16px;
  border-radius:999px;
  color:#fff;
  background: rgba(255,255,255,.03);
  border:1px solid transparent;
  background-image:
    linear-gradient(rgba(7,13,30,.75), rgba(7,13,30,.75)),
    linear-gradient(90deg, rgba(0,71,255,.95), rgba(0,123,255,.95), rgba(0,207,255,.95));
  background-origin:border-box;
  background-clip:padding-box, border-box;
  box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset, 0 0 32px rgba(0,123,255,.1);
}
#b7Header .b7-nav-desktop a:last-child:hover{
  color: #00CFFF !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset, 0 0 40px rgba(0,207,255,.18);
}
/* Hero one modular frame */
.hero{ min-height: auto; padding: clamp(18px, 3vw, 28px) 0 0; }
.hero-inner{
  position:relative;
  width:min(90%, 1280px);
  padding: clamp(28px, 4.2vw, 52px) clamp(22px, 3vw, 42px);
  border-radius:34px;
  background: var(--panel-bg);
  border:1px solid rgba(255,255,255,.055);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 0 0 1px rgba(0,123,255,.06),
    0 30px 80px rgba(0,0,0,.24),
    0 0 80px rgba(0,71,255,.06);
  overflow:hidden;
}
.hero-inner::before{
  content:'';
  position:absolute; inset:0;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg, rgba(0,71,255,.95), rgba(0,123,255,.4) 42%, rgba(0,207,255,.78));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  opacity:.9;
  pointer-events:none;
}
.hero-inner::after{
  content:'';
  position:absolute;
  inset:18px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.035);
  pointer-events:none;
}
.hero-content{ max-width: 760px; }
.hero-headline{
  font-size: clamp(1.95rem, 3.45vw, 3rem);
  letter-spacing:-.03em;
  margin-bottom: 20px;
}
.hero-paragraph{
  font-size: clamp(.96rem, 1.12vw, 1.08rem);
  max-width: 62ch;
}
.hero-visual{
  min-height: clamp(280px, 36vw, 460px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.isotipo-container{ transform: scale(1.02); }
.isotipo-wrapper{ max-width: min(100%, 540px); }
/* CTA bands */
.hero-post{
  position:relative;
  padding: 22px 0 30px;
}
.hero-post-inner,
.metodo-cta-wrap{
  width:100%;
  max-width:none;
  min-height: 94px;
  padding: 18px clamp(18px, 3vw, 34px);
  background: linear-gradient(180deg, rgba(8,12,27,.4), rgba(8,12,27,.28));
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 18px 28px;
  flex-wrap: wrap;
  text-align:center;
}
.hero-post::before,
.hero-post::after{ display:none; }
.metodo-cta-wrap{
  position:relative;
  margin: clamp(36px, 5vw, 54px) calc(-1 * ((100vw - min(90%, 1280px)) / 2)) 0;
  padding-left: max(18px, calc((100vw - min(90%, 1280px))/2) + 18px);
  padding-right: max(18px, calc((100vw - min(90%, 1280px))/2) + 18px);
}
.metodo-cta-wrap::before{ top:0; }
.metodo-cta-wrap::after{ bottom:0; }
.hero-small--post,
.metodo-cta-lead{
  margin:0;
  font-size: clamp(1.02rem, 1.45vw, 1.22rem);
  color: rgba(255,255,255,.86);
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.btn-primary,
.btn-primary--outline,
.btn-primary--filled,
.btn-primary--post{
  min-width: clamp(250px, 24vw, 320px);
  min-height: 56px;
  padding: 16px 28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff !important;
  text-align:center;
  font-size: .98rem;
  font-weight: 700;
  border-radius: 14px;
}
.btn-primary--filled,
.btn-primary--outline{
  background: linear-gradient(180deg, rgba(0,123,255,.36), rgba(0,71,255,.46));
  border: 1px solid rgba(130,190,255,.34);
  box-shadow: 0 10px 30px rgba(0,71,255,.22), inset 0 1px 0 rgba(255,255,255,.12);
}
.hero-post .btn-primary--outline,
.metodo-cta-wrap .btn-primary--outline{
  align-self:center !important;
}

.brand-gradient,
.brand-gradient-inline{
  background: linear-gradient(90deg, #0047FF 0%, #007BFF 50%, #00CFFF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  display: inline;
  font-weight: 700;
}
.brand-gradient strong,
.brand-gradient-inline strong{
  font-weight: 700;
}
/* Section headings modular */
.section-title,
.section-subtitle{
  width: 100%;
  max-width: none;
  text-align:center;
}
.section-title{
  font-size: clamp(1.72rem, 2.8vw, 2.42rem);
  letter-spacing: -.03em;
  margin-bottom: 0;
}
.section-subtitle{
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  margin-bottom: clamp(26px, 4vw, 36px);
}
/* Cards: keep base sizes, switch strokes to control-room style */
.impact-card,
.metodo-card{
  position:relative;
  background: linear-gradient(180deg, rgba(10,14,30,.72), rgba(7,10,24,.68));
  border: 1px solid rgba(0,0,0,0);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 12px 38px rgba(0,0,0,.18);
}
.impact-card::before,
.metodo-card::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg, rgba(0,71,255,.82), rgba(0,123,255,.44) 42%, rgba(0,207,255,.68));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events:none;
  opacity:.96;
}
.impact-card:hover,
.metodo-card:hover{
  transform: translateY(-6px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 18px 54px rgba(0,0,0,.22), 0 0 32px rgba(0,123,255,.12);
}
.impact-card__label{ text-transform: uppercase; letter-spacing: .11em; font-size: .74rem; }
/* Footer band */
.site-footer{
  position:relative;
  margin-top: clamp(46px, 6vw, 72px);
  padding: 24px 0 20px;
  background: linear-gradient(180deg, rgba(8,12,27,.4), rgba(8,12,27,.28));
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  border:none;
}
.site-footer::before{ top:0; }
.site-footer::after{ bottom:0; }
.footer-inner{ width:min(92%, 1320px); }
.footer-desc{ max-width: 68ch; }
/* control huge text and responsive harmony */
@media (min-width: 981px){
  .hero-headline .hero-line{ display:block; }
  .section-title, .section-subtitle{ white-space: nowrap; }
}
@media (max-width: 1200px){
  .hero-inner{ gap: 34px; }
}
@media (max-width: 980px){
  html::before{ background-size: 44px 44px; opacity:.22; }
  #b7Header .b7-inner{ padding: 0 18px; }
  .hero-inner{ grid-template-columns: 1fr; padding: 26px 22px; }
  .hero-visual{ min-height: 300px; }
  .hero-post-inner, .metodo-cta-wrap{ gap:14px 20px; }
  .metodo-cta-wrap{
    margin-left: calc(-1 * ((100vw - min(90%, 1280px)) / 2));
    margin-right: calc(-1 * ((100vw - min(90%, 1280px)) / 2));
  }
  .section-title, .section-subtitle{ white-space: normal; }
}
@media (max-width: 768px){
  .btn-primary, .btn-primary--outline, .btn-primary--filled, .btn-primary--post{ width:min(100%, 360px); }
  .hero-small--post, .metodo-cta-lead{ font-size: 1rem; }
}
@media (max-width: 560px){
  #b7Header{ padding-top: 10px; }
  #b7Header .b7-inner{ min-height: 60px; }
  .hero{ padding-top: 8px; }
  .hero-inner{ border-radius: 24px; padding: 20px 16px; }
  .hero-visual{ min-height: 250px; }
  .hero-headline{ font-size: clamp(1.62rem, 7vw, 2rem); }
  .hero-paragraph{ font-size: .95rem; }
  .hero-post-inner, .metodo-cta-wrap{ padding: 16px; }
  .btn-primary, .btn-primary--outline, .btn-primary--filled, .btn-primary--post{ min-height: 52px; }
}


/* === 2026-03-11 targeted fixes: hero frame + full-width CTAs === */
.hero-inner::after{ display:none !important; }
.hero-post,
.metodo-cta-wrap{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  box-sizing:border-box !important;
}
.hero-post{
  padding:22px 0 30px !important;
}
.hero-post-inner,
.metodo-cta-wrap{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:14px !important;
  width:100% !important;
  max-width:none !important;
  min-height:106px !important;
  box-sizing:border-box !important;
  padding:18px max(18px, calc((100vw - min(90%, 1280px)) / 2) + 18px) !important;
}


.hero-small--post,
.metodo-cta-lead{
  text-transform: uppercase !important;
  letter-spacing: .09em !important;
}


/* ═══════════════════════════════════════════
   PROJECT HOME V1 — AJUSTES SOLICITADOS
   ═══════════════════════════════════════════ */

/* ── HEADER: fondo 100% ancho, contenido alineado con footer ── */
#b7Header{
  width: 100% !important;
  position: relative !important;
  background: linear-gradient(180deg, rgba(8,12,27,.42), rgba(8,12,27,.3)) !important;
  backdrop-filter: blur(18px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%) !important;
}
#b7Header .b7-inner{
  max-width: min(92%, 1320px) !important;  /* mismo que footer-inner */
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* Texto del nav en mayúsculas sostenidas */
#b7Header .b7-nav-desktop a{
  text-transform: uppercase !important;
  font-size: .88rem !important;
  letter-spacing: .06em !important;
}
#b7Header .b7-mobile a{
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
}
#b7Header .b7-logo,
.site-footer .footer-brand-link{
  display:inline-flex;
  align-items:center;
}
#b7Header .b7-logo img,
.site-footer .footer-logo{
  height:40px !important;
  width:auto !important;
}
@media (max-width: 768px){
  #b7Header .b7-logo img,
  .site-footer .footer-logo{ height:40px !important; }
}
@media (max-width: 480px){
  #b7Header .b7-logo img,
  .site-footer .footer-logo{ height:40px !important; }
}

/* ── HERO: ampliar contenedor para que el título encaje en 5 líneas ── */
.hero-content{
  max-width: 880px !important;
}
/* Ajustar proporción del grid hero para dar más espacio al título */
@media (min-width: 1101px){
  .hero-inner{
    grid-template-columns: 1.25fr 0.75fr !important;
  }
}

/* ── HERO responsive: isotipo arriba → texto centrado ── */
@media (max-width: 1100px){
  .hero-inner{
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }
  .hero-content{
    max-width: 100% !important;
    order: 1 !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .hero-visual{
    order: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .hero-isotipo-layer{
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .isotipo-container{
    margin: 0 auto !important;
  }
  .hero-headline{
    text-align: center !important;
  }
  .hero-paragraph{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .hero-content .btn-primary--filled{
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Isotipo siempre centrado en cualquier breakpoint */
.hero-visual{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}
.hero-isotipo-layer{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  /* Forzar que el layer centre su contenido incluso con position:absolute */
  left: 0 !important;
  right: 0 !important;
}
.isotipo-container{
  margin: 0 auto !important;
}
/* Evitar que align-self:stretch descuadre el isotipo */
.hero-visual{
  align-self: center !important;
}

/* ── PASOS: centrar la caja sola en layout 2×2+1 ── */
@media (max-width: 992px) and (min-width: 601px){
  .metodo-grid{
    grid-template-columns: repeat(2, 1fr) !important;
    justify-items: center !important;
  }
  .metodo-grid .metodo-card:last-child{
    grid-column: 1 / -1 !important;
    max-width: calc(50% - 9px) !important;
    justify-self: center !important;
  }
}

/* ── CTA1 y CTA2: una línea de texto + botón debajo, cintillo full-ancho, contenido centrado ── */
.hero-post,
.hero-post .section-inner,
.hero-post .section-inner .metodo-cta-wrap,
section.hero-post{
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
}
.hero-post .section-inner{
  padding: 0 !important;
  margin: 0 !important;
}

/* Ambos CTA: layout vertical centrado */
.hero-post .metodo-cta-wrap,
.metodo-cta-wrap{
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 18px !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
  padding: 22px max(18px, calc((100vw - min(90%, 1280px)) / 2) + 18px) !important;
}

/* Texto del CTA: forzar una línea */
.hero-small--post,
.metodo-cta-lead{
  white-space: nowrap !important;
  text-transform: uppercase !important;
  letter-spacing: .09em !important;
  margin: 0 !important;
  font-size: clamp(.92rem, 1.3vw, 1.12rem) !important;
}

/* Botón debajo del texto, nunca al lado */
.hero-post .btn-primary,
.hero-post .btn-primary--outline,
.metodo-cta-wrap .btn-primary,
.metodo-cta-wrap .btn-primary--outline{
  align-self: center !important;
  flex-shrink: 0 !important;
}

/* ── Responsive: CTA texto se adapta en pantallas pequeñas ── */
@media (max-width: 768px){
  .hero-small--post,
  .metodo-cta-lead{
    white-space: normal !important;
    font-size: .95rem !important;
  }
}
@media (max-width: 560px){
  .hero-small--post,
  .metodo-cta-lead{
    font-size: .88rem !important;
    letter-spacing: .06em !important;
  }
  #b7Header .b7-inner{
    padding: 0 18px !important;
  }
}
@media (max-width: 480px){
  .hero-small--post,
  .metodo-cta-lead{
    font-size: .82rem !important;
    letter-spacing: .04em !important;
  }
}

/* ── Paso 4: centrar visualmente el SVG ── */
#b7p4_svg{
  transform: translateX(-6px);
}



/* ═══════════════════════════════════════════
   FIX MOBILE OVERFLOW (horizontal scroll)
   El truco 100vw + calc(50% - 50vw) crea espacio
   a la derecha en móvil porque 100vw incluye el
   ancho de la scrollbar y supera el viewport visible.
   Solución: usar overflow:hidden en el contenedor
   de breakout + reemplazar 100vw por stretch real.
   ═══════════════════════════════════════════ */

/* 1) Asegura que html y body no generen overflow lateral */
html {
  overflow-x: hidden !important;
}
body {
  overflow-x: hidden !important;
  /* Ancla de referencia para los breakout full-width */
  width: 100% !important;
  max-width: 100% !important;
}

/* 2) Reemplaza el breakout 100vw por stretch con márgenes negativos
      anclados al body (que ahora es 100% del viewport visible) */
.hero-post,
.metodo-cta-wrap {
  /* Stretch to full body width sin depender de 100vw */
  width: 100% !important;
  max-width: none !important;
  /* Cancelar cualquier margin lateral previo */
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* 3) Los contenedores internos de los CTA bands:
      centrar contenido, padding seguro */
.hero-post-inner,
.hero-post .metodo-cta-wrap,
section.hero-post .metodo-cta-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: max(18px, 5vw) !important;
  padding-right: max(18px, 5vw) !important;
  box-sizing: border-box !important;
}

/* 4) metodo-cta-wrap standalone (fuera de hero-post) */
.metodologia .metodo-cta-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: max(18px, 5vw) !important;
  padding-right: max(18px, 5vw) !important;
  box-sizing: border-box !important;
}

/* 5) Secciones contenedoras: nunca más anchas que el viewport */
.hero-post,
.metodo-cta-wrap,
.impacto,
.metodologia,
.site-footer {
  max-width: 100% !important;
  overflow-x: clip !important; /* clip no crea scrollbar, a diferencia de hidden */
}

@media (max-width: 768px) {
  .hero-small--post,
  .metodo-cta-lead {
    white-space: normal !important;
  }
}

/* ═══════════════════════════════════════════
   2026-03-20 — HERO spacing micro-fix
   Corrige la unión visual entre span1→span2 y span2→span3
   sólo en breakpoints donde el título corre inline.
   Usa hair spaces para no cambiar el conteo de líneas.
   ═══════════════════════════════════════════ */
@media (max-width: 980px) {
  .hero-headline .hero-line:nth-child(1)::after,
  .hero-headline .hero-line:nth-child(2)::after {
    content: "\200A";
  }
}

/* 2026-03-21 final fix — lower CTA band in #metodologia must visually match upper CTA band */
.metodologia > .section-inner > .metodo-cta-wrap {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 18px !important;
  width: auto !important;
  max-width: none !important;
  min-height: 94px !important;
  margin: clamp(36px, 5vw, 54px) calc(-1 * ((100vw - min(90%, 1280px)) / 2)) 0 !important;
  box-sizing: border-box !important;
  padding: 22px max(18px, calc((100vw - min(90%, 1280px)) / 2) + 18px) !important;
  background: linear-gradient(180deg, rgba(8,12,27,.4), rgba(8,12,27,.28)) !important;
  backdrop-filter: blur(16px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(125%) !important;
}


/* 2026-03-31 contrast and copy polish */
.nav-link,
.hero-paragraph,
.hero-small,
.section-subtitle,
.impact-card__label,
.impact-card__desc,
.impact-card__tags,
.metodo-card__desc,
.metodo-cta-lead,
.footer-desc,
.footer-copy,
.footer-copy strong,
.footer-copy .footer-legal-link {
  color: #ffffff !important;
}
