  /* ============================================
    INSTANET - Estilos Base (Tesla Style)
    ============================================ */

  /* Fonts Local Loading (Inter & Poppins) */
  @font-face {
      font-family: 'Inter';
      font-style: normal;
      font-weight: 400;
      src: url('../fonts/inter-v20-latin-regular.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Inter';
      font-style: normal;
      font-weight: 500;
      src: url('../fonts/inter-v20-latin-500.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Inter';
      font-style: normal;
      font-weight: 600;
      src: url('../fonts/inter-v20-latin-600.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Inter';
      font-style: normal;
      font-weight: 700;
      src: url('../fonts/inter-v20-latin-700.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Poppins';
      font-style: normal;
      font-weight: 400;
      src: url('../fonts/poppins-v24-latin-regular.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Poppins';
      font-style: normal;
      font-weight: 600;
      src: url('../fonts/poppins-v24-latin-600.woff2') format('woff2');
      font-display: swap;
  }

  @font-face {
      font-family: 'Poppins';
      font-style: normal;
      font-weight: 700;
      src: url('../fonts/poppins-v24-latin-700.woff2') format('woff2');
      font-display: swap;
  }

  :root {
      --brand: #F7931E;
      --brand-dark: #D97706;
      --color-text: #171a20;
      --color-text-secondary: #5c5e62;
      --color-background: #FFFFFF;
      --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      --header-height: 70px;
      --container-padding: 24px;
  }

  /* Reset básico */
  *,
  *::before,
  *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
  }

  body {
      font-family: var(--font-sans);
      font-size: 14px;
      color: var(--color-text);
      background: var(--color-background);
      overflow-x: hidden;
      max-width: 100%;
  }

  html {
      overflow-x: hidden;
      max-width: 100%;
  }

  /* SOLUCIÓN SCROLL Y VIDEO FULLSCREEN - Video toca el filo superior */
  #page,
  .site,
  main,
  #content,
  .site-content,
  #primary,
  .site-main {
      position: relative;
      width: 100%;
      max-width: 100%;
      margin-top: 0 !important;
      padding-top: 0 !important;
      overflow-x: hidden;
      overflow-y: visible !important;
  }

  /* Video y Hero pegados al filo absoluto */
  .inst-hero,
  .hero-section,
  .hero {
      margin-top: 0 !important;
      padding-top: 0 !important;
      top: 0 !important;
      overflow: hidden !important;
      overflow-y: hidden !important;
  }

  /* Cuando hay admin bar, ajustar */
  body.admin-bar #page {
      margin-top: 0;
  }

  /* ELIMINAR CUALQUIER SCROLL INTERNO - Solución agresiva */
  .elementor-section-wrap,
  .elementor,
  .elementor-inner,
  .elementor-section,
  .elementor-container,
  .elementor-widget-wrap,
  #wrapper,
  .wrapper,
  .content-area,
  article,
  .entry-content {
      overflow: visible !important;
      max-height: none !important;
      height: auto !important;
  }

  /* Secciones - contenidas */
  section {
      overflow-x: hidden;
  }

  /* Media responsive */
  img,
  video,
  iframe {
      max-width: 100%;
      height: auto;
  }

  a {
      color: inherit;
      text-decoration: none;
  }

  ul,
  ol {
      list-style: none;
  }

  /* ============================================
    HEADER PREMIUM — Glassmorphism + Animated
    ============================================ */.site-header-wrapper,
#masthead,
.site-header-wrapper.is-scrolled,
#masthead.is-scrolled {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    padding: 0 20px !important;
    margin: 0 !important;
    overflow: visible;
    pointer-events: none;
    z-index: 10000;
}

#masthead .site-header,
#masthead .site-header .container {
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

  .header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      max-width: 100%;
      margin: 0;
      padding: 0 20px;
      height: 100%;
  }

  /* ---- Logo INSTANET ---- */
  .site-logo-text {
      font-family: 'Poppins', var(--font-sans);
      font-size: 22px;
      font-weight: 800;
      color: #ffffff !important;
      letter-spacing: 3px;
      text-transform: uppercase;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: opacity 0.3s ease, transform 0.3s ease;
      white-space: nowrap;
  }

  .site-logo-img {
      display: block;
      height: 66px;
      width: auto;
  }

  .site-logo-text:hover {
      opacity: 0.85;
      transform: translateY(-1px);
  }

  @media (min-width: 768px) {
      .header-inner {
          padding: 0 40px;
      }

      .site-logo-text {
          font-size: 26px;
          letter-spacing: 4px;
      }

      .site-logo-img {
          height: 80px;
      }
  }

  .site-title,
  .site-branding a {
      color: #FFFFFF;
      font-weight: 600;
      letter-spacing: 1.5px;
      text-transform: uppercase;
  }

  /* ---- Header Actions (zona derecha) ---- */
  .header-actions {
      display: none;
  }

  /* ---- Navegación + toggle ocultos en móvil ---- */
  .main-navigation,
  #js-main-nav {
      display: none;
  }

  .menu-toggle {
      display: flex;
      background: transparent;
      border: none;
      cursor: pointer;
      font-size: 14px;
      font-weight: 500;
      color: #FFFFFF;
      padding: 8px 16px;
      border-radius: 4px;
      transition: background 0.2s ease;
  }

  .menu-toggle:hover {
      background: rgba(255, 255, 255, 0.08);
  }

  .menu-toggle::after {
      content: "Menu";
  }

  /* ============================================
    MENÚ MÓVIL - Estilo Claro/Instanet
    ============================================ */

  #js-main-nav.is-open,
  .offcanvas.is-open {
      display: flex !important;
      flex-direction: column;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 9999;
      background: linear-gradient(180deg,
              #F7931E 0%,
              #E87D0E 30%,
              #C4410A 70%,
              #8B0000 100%);
      padding: 0;
      overflow-y: auto;
      animation: slideIn 0.3s ease;
  }

  @keyframes slideIn {
      from {
          transform: translateX(100%);
          opacity: 0;
      }

      to {
          transform: translateX(0);
          opacity: 1;
      }
  }

  /* Header del offcanvas */
  .offcanvas-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 20px 25px;
  }

  .offcanvas-logo-img {
      height: 40px;
      width: auto;
  }

  /* Header del offcanvas */
  .offcanvas-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 20px 25px;
  }

  .offcanvas-logo-img {
      height: 40px;
      width: auto;
  }

  /* Botón cerrar (X) */
  .offcanvas-close,
  #js-menu-close {
      background: none;
      border: none;
      cursor: pointer;
      color: #FFFFFF;
      padding: 8px;
  }

  .offcanvas-close svg {
      width: 28px;
      height: 28px;
  }

  /* Cuerpo del menú */
  .offcanvas-body {
      flex: 1;
      padding: 0 25px;
  }

  .offcanvas-menu {
      list-style: none;
      padding: 0;
      margin: 0;
  }

  .offcanvas-menu li {
      border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  }

  .offcanvas-menu a {
      display: flex !important;
      align-items: center;
      padding: 18px 0;
      font-size: 20px;
      font-weight: 600;
      color: #FFFFFF;
      text-decoration: none;
      transition: opacity 0.2s;
  }

  .offcanvas-menu a:hover {
      opacity: 0.8;
  }

  .offcanvas-menu .menu-icon {
      width: 24px;
      height: 24px;
      margin-right: 15px;
      stroke: #FFFFFF;
      flex-shrink: 0;
  }

  /* Footer del offcanvas */
  .offcanvas-footer {
      padding: 25px;
      text-align: center;
      margin-top: auto;
  }

  .offcanvas-footer-title {
      color: rgba(255, 255, 255, 0.8);
      font-size: 14px;
      margin-bottom: 15px;
  }

  .offcanvas-social {
      display: flex;
      justify-content: center;
      gap: 15px;
      margin-bottom: 20px;
  }

  .offcanvas-social a {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.2);
      color: #FFFFFF;
      transition: all 0.3s ease;
  }

  .offcanvas-social a:hover {
      background: #FFFFFF;
      color: var(--brand);
      transform: scale(1.1);
  }

  .offcanvas-social svg {
      width: 22px;
      height: 22px;
  }

  .offcanvas-copyright {
      color: rgba(255, 255, 255, 0.6);
      font-size: 12px;
  }

  /* Body cuando menú está abierto */
  body.nav-open {
      overflow: hidden;
  }

  /* ============================================
   Desktop: Header Cyber Modern — Futuristic ISP
   ============================================ */
@media (min-width: 1024px) {

    :root {
        --header-height: 92px;
    }

    /* Ocultar hamburguesa en desktop */
    .menu-toggle,
    .inst-mobile-toggle {
        display: none !important;
    }

    #masthead,
    .site-header-wrapper {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: auto;
        background: transparent !important;
        background-color: transparent !important;
        padding: 0 24px !important;
        margin: 0 !important;
        overflow: visible;
        box-shadow: none !important;
        border: none !important;
        pointer-events: none;
        z-index: 10000;
    }

    .site-header {
        max-width: 1520px;
        margin: 0 auto;
        width: 100%;
        height: auto;
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }

    /* Floating Capsule Navbar */
    .header-inner {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        background: linear-gradient(90deg, #050A18 0%, #08152E 50%, #0C2145 100%);
        min-height: 92px;
        border-radius: 26px;
        padding: 10px 32px;
        margin: 14px 0 0 0;
        border: 1px solid rgba(0, 162, 255, 0.38);
        box-shadow: 0 10px 35px rgba(0, 150, 255, 0.35), inset 0 1px 1px rgba(255, 255, 255, 0.15);
        backdrop-filter: blur(24px) saturate(180%);
        -webkit-backdrop-filter: blur(24px) saturate(180%);
        position: relative;
        overflow: visible;
        pointer-events: auto;
    }

    /* Efecto fibra óptica / cyber glow a la derecha */
    .header-inner::after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 40%;
        background: radial-gradient(ellipse at 90% 50%, rgba(0, 212, 255, 0.22) 0%, rgba(0, 162, 255, 0.08) 45%, transparent 75%);
        pointer-events: none;
        z-index: 1;
        border-radius: 0 26px 26px 0;
    }

    /* Zona 1: Logo con Neon Glow y divisor angular */
    .site-branding {
        position: relative;
        z-index: 2;
        padding-right: 32px;
        display: flex;
        align-items: center;
        flex-shrink: 0;
    }

    .site-branding::after {
        content: '';
        position: absolute;
        right: 0;
        top: 8px;
        bottom: 8px;
        width: 2px;
        background: linear-gradient(180deg, transparent, #00A2FF 30%, #00D4FF 70%, transparent);
        box-shadow: 0 0 14px #00D4FF, 0 0 28px #00A2FF;
        border-radius: 4px;
        transform: skewX(-15deg);
    }

    .site-logo-text {
        text-decoration: none;
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0;
    }

    .site-logo-img {
        display: block;
        height: 68px;
        max-height: 72px;
        width: auto;
        object-fit: contain;
        filter: drop-shadow(0 0 16px rgba(0, 162, 255, 0.45));
        transition: filter 0.3s ease, transform 0.3s ease;
    }

    .site-logo-img:hover {
        filter: drop-shadow(0 0 24px rgba(0, 212, 255, 0.85));
        transform: scale(1.03);
    }

    /* Zona 2: Menú de Navegación Cyber */
    #masthead .main-navigation,
    #masthead #desktop-nav,
    nav.main-navigation.cinematic-nav {
        display: flex !important;
        align-items: center;
        justify-content: center;
        z-index: 2;
        flex: 1;
        margin: 0 20px;
    }

    .main-navigation .menu,
    .header-nav {
        display: flex;
        flex-direction: row;
        gap: 38px;
        list-style: none;
        margin: 0;
        padding: 0;
        align-items: center;
        justify-content: center;
    }

    .main-navigation .menu>li,
    .header-nav>li {
        position: relative;
    }

    /* Submenú desplegable Cyber */
    .header-nav .sub-menu,
    .main-navigation .sub-menu {
        display: none;
        position: absolute;
        top: calc(100% + 14px);
        left: 50%;
        transform: translateX(-50%) translateY(4px);
        min-width: 220px;
        background: rgba(5, 10, 24, 0.95);
        -webkit-backdrop-filter: blur(24px) saturate(180%);
        backdrop-filter: blur(24px) saturate(180%);
        border: 1px solid rgba(0, 162, 255, 0.35);
        border-radius: 16px;
        box-shadow: 0 15px 45px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 162, 255, 0.25);
        padding: 10px 0;
        z-index: 1000;
        opacity: 0;
        transition: opacity 0.2s ease, transform 0.2s ease;
        list-style: none;
    }

    .header-nav .sub-menu::before,
    .main-navigation .sub-menu::before {
        content: '';
        position: absolute;
        top: -14px;
        left: 0;
        right: 0;
        height: 16px;
    }

    .header-nav .menu-item-has-children:hover>.sub-menu,
    .main-navigation .menu-item-has-children:hover>.sub-menu {
        display: block;
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }

    .header-nav .sub-menu a,
    .main-navigation .sub-menu a {
        display: block;
        padding: 10px 22px;
        font-size: 14px;
        color: rgba(255, 255, 255, 0.82);
        white-space: nowrap;
        border-radius: 0;
        transition: background 0.2s ease, color 0.2s ease;
    }

    .header-nav .sub-menu a:hover,
    .main-navigation .sub-menu a:hover {
        background: rgba(0, 162, 255, 0.15);
        color: #00D4FF;
    }

    /* Enlaces individuales con Poppins 16px / 500 */
    .main-navigation .menu>li>a,
    .header-nav>li>a {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        font-family: 'Poppins', sans-serif;
        font-size: 16px;
        font-weight: 500;
        color: rgba(255, 255, 255, 0.88);
        padding: 8px 14px;
        text-decoration: none;
        letter-spacing: 0.2px;
        border-radius: 12px;
        transition: all 0.25s cubic-bezier(.4, 0, .2, 1);
        white-space: nowrap;
    }

    /* Iconos del menú */
    .nav-item-icon {
        width: 18px;
        height: 18px;
        stroke: currentColor;
        flex-shrink: 0;
        opacity: 0.85;
        transition: transform 0.25s ease, opacity 0.25s ease;
    }

    .main-navigation .menu>li>a:hover,
    .header-nav>li>a:hover {
        color: #00D4FF;
        text-shadow: 0 0 14px rgba(0, 212, 255, 0.7);
        transform: translateY(-1px);
    }

    .main-navigation .menu>li>a:hover .nav-item-icon,
    .header-nav>li>a:hover .nav-item-icon {
        opacity: 1;
        transform: scale(1.12);
    }

    /* Item Activo (Pill Glass Glow) */
    .main-navigation .menu>li.current-menu-item>a,
    .header-nav>li.current-menu-item>a {
        background: rgba(0, 162, 255, 0.15);
        border: 1px solid rgba(0, 212, 255, 0.45);
        box-shadow: 0 0 20px rgba(0, 162, 255, 0.35), inset 0 0 12px rgba(0, 212, 255, 0.2);
        color: #00D4FF !important;
        font-weight: 600;
    }

    .main-navigation .menu>li.current-menu-item>a .nav-item-icon,
    .header-nav>li.current-menu-item>a .nav-item-icon {
        stroke: #00D4FF;
        filter: drop-shadow(0 0 6px #00D4FF);
    }

    .main-navigation .menu>li>a::after,
    .header-nav>li>a::after {
        display: none !important;
    }

    /* Zona 3: Botón WhatsApp "CONTRATAR" Cyber Glow */
    .header-actions {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
        z-index: 2;
    }

    .btn-wa-header {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        background: #22C55E;
        color: #FFFFFF !important;
        padding: 13px 26px;
        border-radius: 16px;
        font-family: 'Poppins', sans-serif;
        font-size: 15px;
        font-weight: 700;
        text-decoration: none;
        text-transform: uppercase;
        letter-spacing: 0.8px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        box-shadow: 0 0 25px rgba(34, 197, 94, 0.45);
        transition: all 0.3s cubic-bezier(.4, 0, .2, 1);
        white-space: nowrap;
    }

    .btn-wa-header .wa-icon {
        width: 20px;
        height: 20px;
        fill: currentColor;
        filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.6));
        transition: transform 0.3s ease;
    }

    .btn-wa-header:hover {
        background: #18B84D;
        box-shadow: 0 0 35px rgba(34, 197, 94, 0.75), 0 0 15px rgba(255, 255, 255, 0.3);
        transform: translateY(-2px) scale(1.02);
        color: #FFFFFF !important;
    }

    .btn-wa-header:hover .wa-icon {
        transform: scale(1.15) rotate(-6deg);
    }
}

  /* ============================================
    HERO SECTION - CSS eliminado (usar .inst-hero)
    ============================================ */

  /* ============================================
    FOOTER
    ============================================ */

  #legal-links-block {
      padding: 4rem 0;
      background: #020617;
      color: #fff;
  }

  .footer-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 3rem;
  }

  .link-group h3 {
      font-size: 1rem;
      font-weight: 800;
      margin-bottom: 1.5rem;
      border-left: 3px solid var(--brand);
      padding-left: 10px;
  }

  .link-group a {
      display: block;
      color: #cbd5e1;
      margin-bottom: 0.8rem;
  }

  .link-group a:hover {
      color: var(--brand);
  }

  #unified-footer-bar {
      background: #000;
      color: #64748b;
      text-align: center;
      padding: 1.5rem 0;
  }

  @media (max-width: 991px) {
      .footer-grid {
          grid-template-columns: 1fr;
          text-align: center;
      }
  }

  /* ============================================
    HOME - CARRUSEL DE PLANES (Clases únicas)
    ============================================ */

  .home-plans-section {
      background: #FFFFFF;
      padding: 80px 0;
      overflow: hidden;
  }

  .home-plans-container {
      position: relative;
      max-width: 100%;
      margin: 0 auto;
      padding: 0 20px;
  }

  /* Móvil: Carrusel de 1 tarjeta */
  .home-plans-carousel {
      overflow: hidden;
      border-radius: 24px;
  }

  .home-plans-track {
      display: flex;
      transition: transform 0.5s ease;
  }

  .home-plan-slide {
      min-width: 100%;
      flex-shrink: 0;
  }

  /* Desktop: Grid de 3 tarjetas estilo Tesla - grandes y que llenen el espacio */
  @media (min-width: 1024px) {
      .home-plans-container {
          max-width: 100%;
          padding: 0 40px;
      }

      .home-plans-carousel {
          overflow: visible;
          border-radius: 0;
      }

      .home-plans-track {
          display: grid;
          grid-template-columns: repeat(4, 1fr);
          gap: 1.5rem;
          transform: none !important;
      }

      .home-plan-slide {
          min-width: auto;
          flex-shrink: unset;
      }

      .home-plan-card {
          min-height: 500px;
          padding: 50px 40px;
      }

      .carousel-arrow {
          display: none;
      }
  }

  /* Tarjeta de Plan */
  .home-plan-card {
      background: linear-gradient(180deg, #0f172a 0%, #0a0f1a 100%);
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 24px;
      padding: 40px 32px;
      text-align: center;
  }

  .hpc-name {
      font-size: 28px;
      font-weight: 800;
      color: #FFFFFF;
      margin: 0 0 8px;
      letter-spacing: 1px;
  }

  .hpc-tagline {
      font-size: 14px;
      color: #00F0FF;
      margin: 0 0 30px;
  }

  /* Círculo de Velocidad */
  .hpc-speed-circle {
      position: relative;
      width: 150px;
      height: 150px;
      margin: 0 auto 30px;
  }

  .hpc-speed-circle svg {
      width: 100%;
      height: 100%;
      transform: rotate(-90deg);
  }

  .hpc-track {
      fill: none;
      stroke: rgba(255, 255, 255, 0.1);
      stroke-width: 8;
  }

  .hpc-progress {
      fill: none;
      stroke: #3B82F6;
      stroke-width: 8;
      stroke-linecap: round;
      stroke-dasharray: 440;
      stroke-dashoffset: 110;
  }

  .hpc-speed-text {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      text-align: center;
  }

  .hpc-speed-num {
      display: block;
      font-size: 40px;
      font-weight: 700;
      color: #FFFFFF;
      line-height: 1;
  }

  .hpc-speed-unit {
      display: block;
      font-size: 11px;
      color: rgba(255, 255, 255, 0.5);
      letter-spacing: 2px;
      margin-top: 4px;
  }

  /* Features */
  .hpc-features {
      list-style: none;
      padding: 0;
      margin: 0 0 25px;
  }

  .hpc-features li {
      font-size: 14px;
      color: rgba(255, 255, 255, 0.85);
      padding: 10px 0;
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }

  .hpc-features li::before {
      content: '✓';
      color: #00F0FF;
      margin-right: 10px;
  }

  /* Precio */
  .hpc-price {
      margin-bottom: 25px;
  }

  .hpc-curr {
      font-size: 18px;
      color: rgba(255, 255, 255, 0.6);
      vertical-align: super;
  }

  .hpc-amt {
      font-size: 44px;
      font-weight: 700;
      color: #FFFFFF;
  }

  /* Botón */
  .hpc-btn {
      display: block;
      width: 100%;
      padding: 16px;
      background: rgba(255, 255, 255, 0.05);
      color: #FFFFFF;
      font-size: 15px;
      font-weight: 600;
      border: none;
      border-radius: 12px;
      text-decoration: none;
      transition: all 0.3s ease;
  }

  .hpc-btn:hover {
      background: rgba(255, 255, 255, 0.12);
  }

  /* Indicadores */
  .home-plans-dots {
      display: flex;
      justify-content: center;
      gap: 12px;
      margin-top: 25px;
  }

  .home-plan-dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.2);
      cursor: pointer;
      transition: all 0.3s ease;
  }

  .home-plan-dot.active {
      background: #171a20;
      transform: scale(1.2);
  }

  /* Mobile */
  @media (max-width: 768px) {
      .home-plans-section {
          padding: 60px 0;
      }

      .home-plans-container {
          max-width: 100%;
          padding: 0 16px;
      }

      .home-plan-card {
          padding: 35px 24px;
      }

      .hpc-name {
          font-size: 24px;
      }

      .hpc-speed-circle {
          width: 130px;
          height: 130px;
      }

      .hpc-speed-num {
          font-size: 34px;
      }

      .hpc-amt {
          font-size: 38px;
      }
  }

  /* ==========================================================================
  /* ==========================================================================
    INSTANET ECUADOR - CSS COMPILADO
    Generado desde SCSS - PROMPTS 1-4
    Versión: 3.1.0
    ========================================================================== */

  /* IMPORTANTE: Este archivo debe reemplazar o complementar main-styles.css en:
    wellonly/assets/css/main-styles.css
    ========================================================================== */

  /* ==========================================================================
    HERO SECTION - Carrusel con Video
    ========================================================================== */

  .inst-hero {
      position: relative;
      width: 100%;
      height: 100vh;
      min-height: 600px;
      overflow: hidden;
      background-color: #0A0E27;
  }

  @media (max-width: 767px) {
      .inst-hero {
          min-height: 500px;
      }
  }

  .inst-hero__carousel {
      position: relative;
      width: 100%;
      height: 100%;
  }

  .inst-hero__slide {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      visibility: hidden;
      transition: opacity 800ms cubic-bezier(0, 0, 0.2, 1), visibility 800ms;
      z-index: 1;
      will-change: opacity;
      backface-visibility: hidden;
  }

  .inst-hero__slide.is-active {
      opacity: 1;
      visibility: visible;
      z-index: 2;
  }

  .inst-hero__video {
      position: absolute;
      top: 50%;
      left: 50%;
      min-width: 100%;
      min-height: 100%;
      width: auto;
      height: auto;
      transform: translate(-50%, -50%);
      object-fit: cover;
      z-index: 1;
  }

  @media (max-width: 767px) {
      .inst-hero__video {
          /* Video ahora habilitado en móvil */
          display: block;
      }
  }

  .inst-hero__bg-image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      z-index: 1;
  }

  .inst-hero__overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(180deg, transparent 0%, rgba(10, 14, 39, 0.8) 70%);
      z-index: 2;
      pointer-events: none;
  }

  .inst-hero__content {
      position: relative;
      z-index: 3;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      height: 100%;
      max-width: 900px;
      margin: 0 auto;
      padding: 1.5rem;
      color: #FFFFFF;
  }

  @media (max-width: 767px) {
      .inst-hero__content {
          padding: 1rem;
      }
  }

  .inst-hero__title {
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-weight: 800;
      font-size: 3.5rem;
      line-height: 1.25;
      letter-spacing: -0.02em;
      color: #FFFFFF;
      margin: 0 0 1.5rem 0;
      text-shadow: 0 2px 8px rgba(10, 14, 39, 0.5);
      animation: fadeInUp 600ms cubic-bezier(0, 0, 0.2, 1) 200ms both;
  }

  @media (max-width: 1023px) {
      .inst-hero__title {
          font-size: 3rem;
      }
  }

  @media (max-width: 767px) {
      .inst-hero__title {
          font-size: 2.5rem;
          margin-bottom: 1rem;
      }
  }

  .inst-hero__title-highlight {
      color: #F7931E;
      position: relative;
      text-shadow: 0 0 20px rgba(247, 147, 30, 0.5), 0 2px 8px rgba(10, 14, 39, 0.5);
  }

  .inst-hero__subtitle {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1.5rem;
      line-height: 1.625;
      color: rgba(255, 255, 255, 0.9);
      margin: 0 0 2.5rem 0;
      text-shadow: 0 1px 4px rgba(10, 14, 39, 0.5);
      max-width: 700px;
      animation: fadeInUp 600ms cubic-bezier(0, 0, 0.2, 1) 400ms both;
  }

  @media (max-width: 1023px) {
      .inst-hero__subtitle {
          font-size: 1.25rem;
      }
  }

  @media (max-width: 767px) {
      .inst-hero__subtitle {
          font-size: 1.125rem;
          margin-bottom: 2rem;
      }
  }

  .inst-hero__ctas {
      display: flex;
      gap: 1rem;
      align-items: center;
      flex-wrap: wrap;
      justify-content: center;
      animation: fadeInUp 600ms cubic-bezier(0, 0, 0.2, 1) 600ms both;
  }

  @media (max-width: 767px) {
      .inst-hero__ctas {
          flex-direction: column;
          width: 100%;
          gap: 0.75rem;
      }
  }

  .inst-hero .inst-button {
      min-width: 220px;
      box-shadow: 0 10px 15px -3px rgba(10, 14, 39, 0.1), 0 4px 6px -2px rgba(10, 14, 39, 0.05);
  }

  @media (max-width: 767px) {
      .inst-hero .inst-button {
          width: 100%;
          min-width: auto;
      }
  }

  .inst-hero .inst-button:hover {
      transform: translateY(-2px);
      box-shadow: 0 20px 25px -5px rgba(10, 14, 39, 0.1), 0 10px 10px -5px rgba(10, 14, 39, 0.04);
  }

  .inst-hero__arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: 100;
      width: 50px;
      height: 50px;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: rgba(255, 255, 255, 0.2);
      backdrop-filter: blur(10px);
      border: none;
      border-radius: 9999px;
      color: #FFFFFF;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0, 0, 0.2, 1);
  }

  .inst-hero__arrow svg {
      width: 24px;
      height: 24px;
      stroke-width: 2.5;
  }

  .inst-hero__arrow:hover {
      background-color: #F7931E;
      transform: translateY(-50%) scale(1.1);
      box-shadow: 0 4px 14px 0 rgba(247, 147, 30, 0.3);
  }

  .inst-hero__arrow:focus-visible {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  @media (max-width: 767px) {
      .inst-hero__arrow {
          display: none;
      }
  }

  .inst-hero__arrow--prev {
      left: 1.5rem;
  }

  @media (max-width: 1023px) {
      .inst-hero__arrow--prev {
          left: 1rem;
      }
  }

  .inst-hero__arrow--next {
      right: 1.5rem;
  }

  @media (max-width: 1023px) {
      .inst-hero__arrow--next {
          right: 1rem;
      }
  }

  .inst-hero__dots {
      position: absolute;
      bottom: 2rem;
      left: 50%;
      transform: translateX(-50%);
      z-index: 100;
      display: flex;
      gap: 0.75rem;
      align-items: center;
  }

  @media (max-width: 767px) {
      .inst-hero__dots {
          bottom: 1.5rem;
      }
  }

  .inst-hero__dot {
      width: 12px;
      height: 12px;
      padding: 0;
      border: 2px solid rgba(255, 255, 255, 0.5);
      background-color: transparent;
      border-radius: 9999px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0, 0, 0.2, 1);
  }

  .inst-hero__dot:hover {
      border-color: #FFFFFF;
      transform: scale(1.2);
  }

  .inst-hero__dot.is-active {
      width: 32px;
      background-color: #F7931E;
      border-color: #F7931E;
  }

  .inst-hero__dot:focus-visible {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  .inst-hero__scroll-indicator {
      position: absolute;
      bottom: 3rem;
      left: 50%;
      transform: translateX(-50%);
      z-index: 100;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.5rem;
      color: rgba(255, 255, 255, 0.7);
      animation: float 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
  }

  .inst-hero__scroll-indicator svg {
      width: 24px;
      height: 24px;
  }

  @media (max-width: 767px) {
      .inst-hero__scroll-indicator {
          display: none;
      }
  }

  .inst-hero__scroll-text {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 0.875rem;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: 0.025em;
  }

  @keyframes fadeInUp {
      from {
          opacity: 0;
          transform: translateY(30px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  @keyframes float {

      0%,
      100% {
          transform: translateX(-50%) translateY(0);
      }

      50% {
          transform: translateX(-50%) translateY(-10px);
      }
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-hero__slide,
      .inst-hero__title,
      .inst-hero__subtitle,
      .inst-hero__ctas,
      .inst-hero__scroll-indicator {
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
          transition-duration: 0.01ms !important;
      }
  }

  /* ==========================================================================
    TRUST BAR - Estadísticas con CountUp
    ========================================================================== */

  .inst-trust-bar {
      position: relative;
      padding: 4rem 0;
      background-color: #F8FAFC;
      border-top: 1px solid #E2E8F0;
      border-bottom: 1px solid #E2E8F0;
  }

  @media (max-width: 767px) {
      .inst-trust-bar {
          padding: 3rem 0;
      }
  }

  .inst-trust-bar__grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 3rem;
      align-items: center;
  }

  @media (max-width: 1023px) {
      .inst-trust-bar__grid {
          grid-template-columns: repeat(2, 1fr);
          gap: 2rem;
      }
  }

  @media (max-width: 767px) {
      .inst-trust-bar__grid {
          grid-template-columns: 1fr;
          gap: 1.5rem;
      }
  }

  .inst-trust-bar__item {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: 0.75rem;
      padding: 1.5rem;
      border-radius: 0.5rem;
      transition: all 200ms cubic-bezier(0, 0, 0.2, 1);
  }

  @media (max-width: 767px) {
      .inst-trust-bar__item {
          padding: 1rem;
      }
  }

  .inst-trust-bar__item:hover {
      transform: translateY(-4px);
      background-color: #FFFFFF;
      box-shadow: 0 4px 6px -1px rgba(10, 14, 39, 0.1), 0 2px 4px -1px rgba(10, 14, 39, 0.06);
  }

  .inst-trust-bar__item:hover .inst-trust-bar__icon {
      transform: scale(1.1);
  }

  .inst-trust-bar__item--success .inst-trust-bar__icon {
      color: #10B981;
  }

  .inst-trust-bar__item--primary .inst-trust-bar__icon {
      color: #F7931E;
  }

  .inst-trust-bar__item--info .inst-trust-bar__icon {
      color: #3B82F6;
  }

  .inst-trust-bar__item--warning .inst-trust-bar__icon {
      color: #F59E0B;
  }

  .inst-trust-bar__icon-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 64px;
      height: 64px;
  }

  @media (max-width: 1023px) {
      .inst-trust-bar__icon-wrapper {
          width: 56px;
          height: 56px;
      }
  }

  @media (max-width: 767px) {
      .inst-trust-bar__icon-wrapper {
          width: 48px;
          height: 48px;
      }
  }

  .inst-trust-bar__icon {
      width: 100%;
      height: 100%;
      transition: all 200ms cubic-bezier(0, 0, 0.2, 1);
      animation: iconPulse 3s ease-in-out infinite;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-trust-bar__icon {
          animation: none;
      }
  }

  @keyframes iconPulse {

      0%,
      100% {
          transform: scale(1);
      }

      50% {
          transform: scale(1.05);
      }
  }

  .inst-trust-bar__number {
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-size: 2.8125rem;
      font-weight: 800;
      line-height: 1;
      color: #0A0E27;
      font-variant-numeric: tabular-nums;
      animation: numberFadeIn 600ms cubic-bezier(0, 0, 0.2, 1);
  }

  @media (max-width: 1023px) {
      .inst-trust-bar__number {
          font-size: 2.25rem;
      }
  }

  @media (max-width: 767px) {
      .inst-trust-bar__number {
          font-size: 1.875rem;
      }
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-trust-bar__number {
          animation: none;
      }
  }

  @keyframes numberFadeIn {
      from {
          opacity: 0;
          transform: translateY(20px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  .inst-trust-bar__label {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1rem;
      font-weight: 500;
      color: #475569;
      line-height: 1.375;
      max-width: 150px;
  }

  @media (max-width: 767px) {
      .inst-trust-bar__label {
          font-size: 0.875rem;
      }
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-trust-bar__item,
      .inst-trust-bar__icon,
      .inst-trust-bar__number {
          animation: none !important;
          transition: none !important;
      }
  }

  /* ==========================================================================
    BENEFICIOS SECTION - 4 Cards Animadas
    ========================================================================== */

  .inst-beneficios {
      position: relative;
      padding: 5rem 0;
      background-color: #FFFFFF;
      overflow: hidden;
  }

  @media (max-width: 767px) {
      .inst-beneficios {
          padding: 4rem 0;
      }
  }

  .inst-beneficios::before {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 1200px;
      height: 100%;
      background: radial-gradient(circle at 20% 50%, rgba(247, 147, 30, 0.03) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(247, 147, 30, 0.03) 0%, transparent 50%);
      opacity: 0.4;
      pointer-events: none;
      z-index: 0;
  }

  .inst-beneficios__header {
      text-align: center;
      max-width: 700px;
      margin: 0 auto 4rem;
      position: relative;
      z-index: 1;
  }

  @media (max-width: 767px) {
      .inst-beneficios__header {
          margin-bottom: 3rem;
      }
  }

  .inst-beneficios__title {
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-size: 2.8125rem;
      font-weight: 700;
      line-height: 1.25;
      color: #0A0E27;
      margin: 0 0 1rem 0;
  }

  @media (max-width: 1023px) {
      .inst-beneficios__title {
          font-size: 2.25rem;
      }
  }

  @media (max-width: 767px) {
      .inst-beneficios__title {
          font-size: 1.875rem;
      }
  }

  .inst-beneficios__subtitle {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1.25rem;
      color: #475569;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-beneficios__subtitle {
          font-size: 1.125rem;
      }
  }

  .inst-beneficios__grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2rem;
      position: relative;
      z-index: 1;
  }

  @media (max-width: 1023px) {
      .inst-beneficios__grid {
          grid-template-columns: repeat(2, 1fr);
          gap: 1.5rem;
      }
  }

  @media (max-width: 767px) {
      .inst-beneficios__grid {
          grid-template-columns: 1fr;
          gap: 1rem;
      }
  }

  .inst-beneficios__card {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 2rem;
      background-color: #FFFFFF;
      border-radius: 1rem;
      border: 2px solid #E2E8F0;
      transition: all 300ms cubic-bezier(0, 0, 0.2, 1);
  }

  @media (max-width: 1023px) {
      .inst-beneficios__card {
          padding: 1.5rem;
      }
  }

  .inst-beneficios__card:hover {
      transform: translateY(-8px);
      border-color: transparent;
      box-shadow: 0 10px 15px -3px rgba(10, 14, 39, 0.1), 0 4px 6px -2px rgba(10, 14, 39, 0.05);
  }

  .inst-beneficios__card:hover .inst-beneficios__icon {
      transform: scale(1.1) rotate(5deg);
  }

  .inst-beneficios__card:focus-within {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  .inst-beneficios__card--primary:hover {
      box-shadow: 0 10px 30px -5px rgba(247, 147, 30, 0.4);
  }

  .inst-beneficios__card--success:hover {
      box-shadow: 0 4px 14px 0 rgba(16, 185, 129, 0.25);
  }

  .inst-beneficios__card--info:hover {
      box-shadow: 0 4px 14px 0 rgba(59, 130, 246, 0.25);
  }

  .inst-beneficios__card--warning:hover {
      box-shadow: 0 4px 14px 0 rgba(245, 158, 11, 0.25);
  }

  .inst-beneficios__icon-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 80px;
      height: 80px;
      margin-bottom: 1.5rem;
  }

  @media (max-width: 1023px) {
      .inst-beneficios__icon-wrapper {
          width: 64px;
          height: 64px;
          margin-bottom: 1.25rem;
      }
  }

  @media (max-width: 767px) {
      .inst-beneficios__icon-wrapper {
          width: 56px;
          height: 56px;
          margin-bottom: 1rem;
      }
  }

  .inst-beneficios__icon {
      width: 100%;
      height: 100%;
      transition: all 300ms cubic-bezier(0, 0, 0.2, 1);
      animation: iconFloat 3s ease-in-out infinite;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-beneficios__icon {
          animation: none;
      }
  }

  .inst-beneficios__card--primary .inst-beneficios__icon {
      color: #F7931E;
  }

  .inst-beneficios__card--success .inst-beneficios__icon {
      color: #10B981;
  }

  .inst-beneficios__card--info .inst-beneficios__icon {
      color: #3B82F6;
  }

  .inst-beneficios__card--warning .inst-beneficios__icon {
      color: #F59E0B;
  }

  @keyframes iconFloat {

      0%,
      100% {
          transform: translateY(0);
      }

      50% {
          transform: translateY(-8px);
      }
  }

  .inst-beneficios__card-title {
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1.25;
      color: #0A0E27;
      margin: 0 0 1rem 0;
  }

  @media (max-width: 1023px) {
      .inst-beneficios__card-title {
          font-size: 1.25rem;
      }
  }

  @media (max-width: 767px) {
      .inst-beneficios__card-title {
          font-size: 1.125rem;
      }
  }

  .inst-beneficios__card-desc {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1rem;
      line-height: 1.625;
      color: #475569;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-beneficios__card-desc {
          font-size: 0.875rem;
      }
  }

  .inst-beneficios__card.is-visible {
      animation: fadeInUp 600ms cubic-bezier(0, 0, 0.2, 1) both;
  }

  .inst-beneficios__card.is-visible:nth-child(1) {
      animation-delay: 0ms;
  }

  .inst-beneficios__card.is-visible:nth-child(2) {
      animation-delay: 100ms;
  }

  .inst-beneficios__card.is-visible:nth-child(3) {
      animation-delay: 200ms;
  }

  .inst-beneficios__card.is-visible:nth-child(4) {
      animation-delay: 300ms;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-beneficios__card.is-visible {
          animation: none;
      }
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-beneficios__card,
      .inst-beneficios__icon {
          animation: none !important;
          transition: none !important;
      }

      .inst-beneficios__card:hover {
          transform: none;
      }
  }

  /* ==========================================================================
    BENEFICIOS — 3D CUBE FOLD ANIMATION (scroll-triggered)
    ========================================================================== */

  .inst-beneficios__cube-scene {
      perspective: 1200px;
      perspective-origin: 50% 50%;
      width: 100%;
      position: relative;
      z-index: 1;
  }

  .inst-beneficios__cube {
      position: relative;
      width: 100%;
      transform-style: preserve-3d;
      transition: transform 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  /* Grid normal state — cards are flat */
  .inst-beneficios__cube .inst-beneficios__grid {
      transition: all 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  /* ---- PHASE 1: FOLDING into cube ---- */
  .inst-beneficios__cube.is-folding .inst-beneficios__grid {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0;
      height: 280px;
      position: relative;
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card {
      position: absolute;
      width: 260px;
      height: 260px;
      padding: 1.5rem;
      backface-visibility: hidden;
      transition: all 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      border: 2px solid rgba(247, 147, 30, 0.3);
      background: linear-gradient(135deg, #FFFFFF 0%, #FFF8F0 100%);
      box-shadow: 0 0 30px rgba(247, 147, 30, 0.1);
      overflow: hidden;
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card:nth-child(1) {
      transform: rotateY(0deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card:nth-child(2) {
      transform: rotateY(90deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card:nth-child(3) {
      transform: rotateY(180deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card:nth-child(4) {
      transform: rotateY(270deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card-desc {
      font-size: 0.8rem;
      line-height: 1.4;
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__card-title {
      font-size: 1.1rem;
      margin-bottom: 0.5rem;
  }

  .inst-beneficios__cube.is-folding .inst-beneficios__icon-wrapper {
      width: 50px;
      height: 50px;
      margin-bottom: 0.75rem;
  }

  /* ---- PHASE 2: FORMED — cube rotates ---- */
  .inst-beneficios__cube.is-formed .inst-beneficios__grid {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0;
      height: 280px;
      position: relative;
      animation: cubeRotate 3s linear infinite;
      transform-style: preserve-3d;
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card {
      position: absolute;
      width: 260px;
      height: 260px;
      padding: 1.5rem;
      backface-visibility: hidden;
      border: 2px solid rgba(247, 147, 30, 0.4);
      background: linear-gradient(135deg, #FFFFFF 0%, #FFF8F0 100%);
      box-shadow: 0 0 40px rgba(247, 147, 30, 0.15);
      overflow: hidden;
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card:nth-child(1) {
      transform: rotateY(0deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card:nth-child(2) {
      transform: rotateY(90deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card:nth-child(3) {
      transform: rotateY(180deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card:nth-child(4) {
      transform: rotateY(270deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card-desc {
      font-size: 0.8rem;
      line-height: 1.4;
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__card-title {
      font-size: 1.1rem;
      margin-bottom: 0.5rem;
  }

  .inst-beneficios__cube.is-formed .inst-beneficios__icon-wrapper {
      width: 50px;
      height: 50px;
      margin-bottom: 0.75rem;
  }

  /* ---- PHASE 3: FADING — cube shrinks and disappears ---- */
  .inst-beneficios__cube.is-fading .inst-beneficios__grid {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0;
      height: 280px;
      position: relative;
      transform-style: preserve-3d;
      animation: cubeFadeOut 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) forwards;
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card {
      position: absolute;
      width: 260px;
      height: 260px;
      padding: 1.5rem;
      backface-visibility: hidden;
      border: 2px solid rgba(247, 147, 30, 0.4);
      background: linear-gradient(135deg, #FFFFFF 0%, #FFF8F0 100%);
      overflow: hidden;
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card:nth-child(1) {
      transform: rotateY(0deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card:nth-child(2) {
      transform: rotateY(90deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card:nth-child(3) {
      transform: rotateY(180deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card:nth-child(4) {
      transform: rotateY(270deg) translateZ(130px);
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card-desc {
      font-size: 0.8rem;
      line-height: 1.4;
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__card-title {
      font-size: 1.1rem;
      margin-bottom: 0.5rem;
  }

  .inst-beneficios__cube.is-fading .inst-beneficios__icon-wrapper {
      width: 50px;
      height: 50px;
      margin-bottom: 0.75rem;
  }

  /* ---- HIDDEN state — after animation completes ---- */
  .inst-beneficios__cube.is-hidden {
      display: none;
  }

  /* ---- Keyframes ---- */
  @keyframes cubeRotate {
      from {
          transform: rotateY(0deg) rotateX(-5deg);
      }

      to {
          transform: rotateY(360deg) rotateX(-5deg);
      }
  }

  @keyframes cubeFadeOut {
      0% {
          opacity: 1;
          transform: rotateY(0deg) scale(1);
      }

      60% {
          opacity: 0.5;
          transform: rotateY(180deg) scale(0.5);
      }

      100% {
          opacity: 0;
          transform: rotateY(360deg) scale(0);
      }
  }

  /* ---- Mobile: simplified animation ---- */
  @media (max-width: 767px) {

      .inst-beneficios__cube.is-folding .inst-beneficios__grid,
      .inst-beneficios__cube.is-formed .inst-beneficios__grid,
      .inst-beneficios__cube.is-fading .inst-beneficios__grid {
          display: flex;
          flex-direction: column;
          height: auto;
          gap: 1rem;
          animation: none;
      }

      .inst-beneficios__cube.is-folding .inst-beneficios__card,
      .inst-beneficios__cube.is-formed .inst-beneficios__card,
      .inst-beneficios__cube.is-fading .inst-beneficios__card {
          position: relative;
          width: 100%;
          height: auto;
          transform: none !important;
      }

      .inst-beneficios__cube.is-fading .inst-beneficios__grid {
          animation: mobileFadeOut 0.8s ease-out forwards;
      }

      @keyframes mobileFadeOut {
          from {
              opacity: 1;
              transform: translateY(0) scale(1);
          }

          to {
              opacity: 0;
              transform: translateY(-30px) scale(0.95);
          }
      }
  }

  /* ---- Reduced motion fallback ---- */
  @media (prefers-reduced-motion: reduce) {

      .inst-beneficios__cube.is-folding .inst-beneficios__grid,
      .inst-beneficios__cube.is-formed .inst-beneficios__grid,
      .inst-beneficios__cube.is-fading .inst-beneficios__grid {
          animation: none !important;
          transition: none !important;
      }

      .inst-beneficios__cube.is-folding .inst-beneficios__card,
      .inst-beneficios__cube.is-formed .inst-beneficios__card,
      .inst-beneficios__cube.is-fading .inst-beneficios__card {
          position: relative !important;
          transform: none !important;
          width: 100% !important;
          height: auto !important;
      }
  }

  /* ==========================================================================
    UTILIDADES Y HELPERS
    ========================================================================== */

  .inst-container {
      width: 100%;
      max-width: 1140px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1rem;
      padding-right: 1rem;
  }

  @media (min-width: 1400px) {
      .inst-container {
          max-width: 1320px;
      }
  }

  .inst-button,
  .inst-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      padding: 0.75rem 1.5rem;
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      font-size: 1rem;
      font-weight: 600;
      line-height: 1.5;
      text-decoration: none;
      border-radius: 0.5rem;
      border: 2px solid transparent;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0, 0, 0.2, 1);
  }

  .inst-button--primary,
  .inst-btn--primary {
      background-color: #F7931E;
      color: #FFFFFF;
      border-color: #F7931E;
  }

  .inst-button--primary:hover,
  .inst-btn--primary:hover {
      background-color: #D97706;
      border-color: #D97706;
      box-shadow: 0 4px 14px 0 rgba(247, 147, 30, 0.3);
  }

  .inst-button--secondary,
  .inst-btn--secondary {
      background-color: transparent;
      color: #FFFFFF;
      border-color: #FFFFFF;
  }

  .inst-button--secondary:hover,
  .inst-btn--secondary:hover {
      background-color: rgba(255, 255, 255, 0.1);
  }

  .inst-button--white {
      background-color: #FFFFFF;
      color: #0A0E27;
      border-color: #FFFFFF;
  }

  .inst-button--white:hover {
      background-color: #F8FAFC;
      box-shadow: 0 4px 6px -1px rgba(10, 14, 39, 0.1), 0 2px 4px -1px rgba(10, 14, 39, 0.06);
  }

  .inst-button--large,
  .inst-btn--large {
      padding: 1rem 2rem;
      font-size: 1.125rem;
  }

  .inst-button__icon {
      width: 20px;
      height: 20px;
  }

  /* FIN DEL CSS COMPILADO */
  /* ==========================================================================
    PLANES SECTION - CSS COMPILADO
    INSTANET Ecuador - PROMPT 5
    ========================================================================== */

  .inst-planes {
      position: relative;
      padding: 80px 0;
      background-color: #F9FAFB;
      overflow: hidden;
  }

  @media (max-width: 767px) {
      .inst-planes {
          padding: 64px 0;
      }
  }

  .inst-planes__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 64px;
  }

  @media (max-width: 767px) {
      .inst-planes__header {
          margin-bottom: 48px;
      }
  }

  .inst-planes__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      line-height: 1.2;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-planes__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-planes__title {
          font-size: 30px;
      }
  }

  .inst-planes__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-planes__subtitle {
          font-size: 18px;
      }
  }

  .inst-planes__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      align-items: start;
  }

  @media (max-width: 1023px) {
      .inst-planes__grid {
          gap: 16px;
      }
  }

  @media (max-width: 767px) {
      .inst-planes__grid {
          grid-template-columns: 1fr;
          gap: 16px;
      }
  }

  .inst-planes__card {
      position: relative;
      display: flex;
      flex-direction: column;
      padding: 32px;
      background-color: #FFFFFF;
      border: 2px solid #E5E7EB;
      border-radius: 24px;
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @media (max-width: 1023px) {
      .inst-planes__card {
          padding: 24px;
      }
  }

  .inst-planes__card:hover {
      transform: translateY(-8px);
      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
      border-color: #D1D5DB;
  }

  .inst-planes__card--popular {
      border-color: #F7931E;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  }

  @media (min-width: 1024px) {
      .inst-planes__card--popular {
          transform: translateY(-8px) scale(1.05);
      }
  }

  .inst-planes__card--popular:hover {
      box-shadow: 0 25px 50px -12px rgba(247, 147, 30, 0.25);
      border-color: #F7931E;
  }

  @media (min-width: 1024px) {
      .inst-planes__card--popular:hover {
          transform: translateY(-12px) scale(1.05);
      }
  }

  .inst-planes__badge {
      position: absolute;
      top: -16px;
      left: 50%;
      transform: translateX(-50%);
      padding: 8px 16px;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      color: #FFFFFF;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      border-radius: 9999px;
      box-shadow: 0 10px 15px -3px rgba(247, 147, 30, 0.3);
      white-space: nowrap;
      z-index: 10;
      animation: badgePulse 2s ease-in-out infinite;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-planes__badge {
          animation: none;
      }
  }

  @keyframes badgePulse {

      0%,
      100% {
          transform: translateX(-50%) scale(1);
      }

      50% {
          transform: translateX(-50%) scale(1.05);
      }
  }

  .inst-planes__card-header {
      text-align: center;
      padding-bottom: 24px;
      border-bottom: 1px solid #E5E7EB;
      margin-bottom: 24px;
  }

  .inst-planes__name {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 30px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 24px 0;
  }

  @media (max-width: 767px) {
      .inst-planes__name {
          font-size: 24px;
      }
  }

  .inst-planes__price {
      display: flex;
      align-items: baseline;
      justify-content: center;
      margin: 0 0 16px 0;
  }

  .inst-planes__currency {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 24px;
      font-weight: 600;
      color: #6B7280;
      margin-right: 4px;
  }

  @media (max-width: 767px) {
      .inst-planes__currency {
          font-size: 20px;
      }
  }

  .inst-planes__amount {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 56px;
      font-weight: 800;
      line-height: 1;
      color: #0A0E27;
      font-variant-numeric: tabular-nums;
  }

  @media (max-width: 1023px) {
      .inst-planes__amount {
          font-size: 48px;
      }
  }

  @media (max-width: 767px) {
      .inst-planes__amount {
          font-size: 36px;
      }
  }

  .inst-planes__period {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      color: #6B7280;
      font-weight: 500;
      margin-left: 4px;
  }

  @media (max-width: 767px) {
      .inst-planes__period {
          font-size: 16px;
      }
  }

  .inst-planes__speed {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 24px;
      font-weight: 700;
      color: #F7931E;
      margin: 0 0 8px 0;
  }

  @media (max-width: 767px) {
      .inst-planes__speed {
          font-size: 20px;
      }
  }

  .inst-planes__speed-label {
      font-size: 14px;
      font-weight: 500;
      color: #9CA3AF;
      display: block;
      margin-top: 4px;
  }

  .inst-planes__target {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #9CA3AF;
      margin: 0;
  }

  .inst-planes__features {
      list-style: none;
      padding: 0;
      margin: 0 0 32px 0;
      display: flex;
      flex-direction: column;
      gap: 12px;
      flex-grow: 1;
  }

  .inst-planes__feature {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      line-height: 1.6;
      color: #374151;
  }

  @media (max-width: 767px) {
      .inst-planes__feature {
          font-size: 12px;
      }
  }

  .inst-planes__check {
      flex-shrink: 0;
      width: 20px;
      height: 20px;
      color: #10B981;
      margin-top: 2px;
  }

  @media (max-width: 767px) {
      .inst-planes__check {
          width: 18px;
          height: 18px;
      }
  }

  .inst-planes__card .inst-button {
      width: 100%;
      margin-top: auto;
  }

  .inst-planes__footer {
      text-align: center;
      margin-top: 48px;
  }

  @media (max-width: 767px) {
      .inst-planes__footer {
          margin-top: 32px;
      }
  }

  .inst-planes__disclaimer {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #9CA3AF;
      margin: 0;
  }

  .inst-planes__disclaimer a {
      color: #F7931E;
      text-decoration: underline;
  }

  .inst-planes__disclaimer a:hover {
      color: #E87D0E;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-planes__card,
      .inst-planes__badge {
          animation: none !important;
          transition: none !important;
      }

      .inst-planes__card:hover {
          transform: none;
      }
  }

  /* ==========================================================================
    CALCULADORA INTERACTIVA - CSS COMPILADO
    INSTANET Ecuador - PROMPT 6
    ========================================================================== */

  .inst-calculadora {
      position: relative;
      padding: 80px 0;
      background-color: #FFFFFF;
      overflow: hidden;
  }

  @media (max-width: 767px) {
      .inst-calculadora {
          padding: 64px 0;
      }
  }

  .inst-calculadora__header {
      text-align: center;
      max-width: 700px;
      margin: 0 auto 48px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__header {
          margin-bottom: 40px;
      }
  }

  .inst-calculadora__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      line-height: 1.2;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-calculadora__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-calculadora__title {
          font-size: 30px;
      }
  }

  .inst-calculadora__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-calculadora__subtitle {
          font-size: 18px;
      }
  }

  .inst-calculadora__quiz {
      max-width: 800px;
      margin: 0 auto;
      padding: 40px;
      background-color: #F9FAFB;
      border-radius: 32px;
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  }

  @media (max-width: 767px) {
      .inst-calculadora__quiz {
          padding: 24px;
      }
  }

  .inst-calculadora__progress {
      position: relative;
      margin-bottom: 40px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__progress {
          margin-bottom: 32px;
      }
  }

  .inst-calculadora__progress-bar {
      height: 8px;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      border-radius: 9999px;
      transition: width 400ms cubic-bezier(0.4, 0, 0.2, 1);
      box-shadow: 0 10px 15px -3px rgba(247, 147, 30, 0.3);
  }

  .inst-calculadora__progress-text {
      display: block;
      margin-top: 12px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      font-weight: 600;
      color: #6B7280;
      text-align: center;
  }

  .inst-calculadora__questions {
      min-height: 400px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__questions {
          min-height: 350px;
      }
  }

  .inst-calculadora__question {
      opacity: 0;
      transform: translateX(100%);
      transition: all 400ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-calculadora__question.active {
      opacity: 1;
      transform: translateX(0);
  }

  .inst-calculadora__question.slide-out-left {
      animation: slideOutLeft 400ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
  }

  .inst-calculadora__question.slide-in-right {
      animation: slideInRight 400ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
  }

  @keyframes slideOutLeft {
      from {
          transform: translateX(0);
          opacity: 1;
      }

      to {
          transform: translateX(-100%);
          opacity: 0;
      }
  }

  @keyframes slideInRight {
      from {
          transform: translateX(100%);
          opacity: 0;
      }

      to {
          transform: translateX(0);
          opacity: 1;
      }
  }

  .inst-calculadora__question-text {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 30px;
      font-weight: 700;
      color: #0A0E27;
      text-align: center;
      margin: 0 0 32px 0;
  }

  @media (max-width: 1023px) {
      .inst-calculadora__question-text {
          font-size: 24px;
      }
  }

  @media (max-width: 767px) {
      .inst-calculadora__question-text {
          font-size: 20px;
          margin-bottom: 24px;
      }
  }

  .inst-calculadora__options {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 16px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__options {
          grid-template-columns: 1fr;
          gap: 12px;
      }
  }

  .inst-calculadora__option {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 12px;
      padding: 24px;
      background-color: #FFFFFF;
      border: 2px solid #E5E7EB;
      border-radius: 24px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @media (max-width: 767px) {
      .inst-calculadora__option {
          flex-direction: row;
          justify-content: flex-start;
          padding: 16px;
      }
  }

  .inst-calculadora__option:hover {
      transform: translateY(-4px);
      border-color: #F7931E;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  }

  .inst-calculadora__option:active,
  .inst-calculadora__option.selected {
      background-color: #F7931E;
      border-color: #F7931E;
      transform: scale(0.98);
  }

  .inst-calculadora__option:active .inst-calculadora__option-icon,
  .inst-calculadora__option.selected .inst-calculadora__option-icon {
      color: #FFFFFF;
  }

  .inst-calculadora__option:active .inst-calculadora__option-label,
  .inst-calculadora__option.selected .inst-calculadora__option-label {
      color: #FFFFFF;
  }

  .inst-calculadora__option-icon {
      flex-shrink: 0;
      width: 48px;
      height: 48px;
      color: #F7931E;
      transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @media (max-width: 767px) {
      .inst-calculadora__option-icon {
          width: 32px;
          height: 32px;
      }
  }

  .inst-calculadora__option-icon svg {
      width: 100%;
      height: 100%;
  }

  .inst-calculadora__option-label {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      font-weight: 600;
      color: #0A0E27;
      text-align: center;
      transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @media (max-width: 767px) {
      .inst-calculadora__option-label {
          font-size: 16px;
          text-align: left;
      }
  }

  .inst-calculadora__resultado {
      text-align: center;
      opacity: 0;
      transform: scale(0.9);
  }

  .inst-calculadora__resultado.hidden {
      display: none;
  }

  .inst-calculadora__resultado.reveal {
      opacity: 1;
      transform: scale(1);
      animation: reveal 600ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
  }

  @keyframes reveal {
      from {
          opacity: 0;
          transform: scale(0.9);
      }

      to {
          opacity: 1;
          transform: scale(1);
      }
  }

  .inst-calculadora__resultado-header {
      margin-bottom: 32px;
  }

  .inst-calculadora__resultado-header h3 {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 24px;
      font-weight: 700;
      color: #0A0E27;
      margin: 16px 0 0 0;
  }

  @media (max-width: 767px) {
      .inst-calculadora__resultado-header h3 {
          font-size: 20px;
      }
  }

  .inst-calculadora__resultado-icon {
      width: 64px;
      height: 64px;
      color: #10B981;
      margin: 0 auto;
  }

  @media (max-width: 767px) {
      .inst-calculadora__resultado-icon {
          width: 48px;
          height: 48px;
      }
  }

  .inst-calculadora__plan-recomendado {
      padding: 32px;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      border-radius: 24px;
      margin-bottom: 32px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__plan-recomendado {
          padding: 24px;
      }
  }

  .inst-calculadora__plan-nombre {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 800;
      color: #FFFFFF;
      margin: 0 0 8px 0;
  }

  @media (max-width: 1023px) {
      .inst-calculadora__plan-nombre {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-calculadora__plan-nombre {
          font-size: 30px;
      }
  }

  .inst-calculadora__plan-precio {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 30px;
      font-weight: 700;
      color: #FFFFFF;
      margin: 0 0 8px 0;
  }

  @media (max-width: 767px) {
      .inst-calculadora__plan-precio {
          font-size: 24px;
      }
  }

  .inst-calculadora__plan-velocidad {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      font-weight: 600;
      color: rgba(255, 255, 255, 0.95);
      margin: 0 0 24px 0;
  }

  @media (max-width: 767px) {
      .inst-calculadora__plan-velocidad {
          font-size: 18px;
      }
  }

  .inst-calculadora__plan-justificacion {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      line-height: 1.6;
      color: rgba(255, 255, 255, 0.9);
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-calculadora__plan-justificacion {
          font-size: 16px;
      }
  }

  .inst-calculadora__ctas {
      display: flex;
      flex-direction: column;
      gap: 16px;
      max-width: 500px;
      margin: 0 auto 24px;
  }

  @media (max-width: 767px) {
      .inst-calculadora__ctas {
          gap: 12px;
      }
  }

  .inst-calculadora__reset {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 12px 20px;
      background-color: transparent;
      border: 1px solid #D1D5DB;
      border-radius: 12px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      font-weight: 500;
      color: #6B7280;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-calculadora__reset svg {
      width: 20px;
      height: 20px;
  }

  .inst-calculadora__reset:hover {
      background-color: #F3F4F6;
      border-color: #9CA3AF;
      color: #0A0E27;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-calculadora__question,
      .inst-calculadora__resultado,
      .inst-calculadora__option,
      .inst-calculadora__progress-bar {
          animation: none !important;
          transition: none !important;
      }

      .inst-calculadora__option:hover {
          transform: none;
      }
  }

  /* ==========================================================================
    MAPA COBERTURA - CSS COMPILADO
    INSTANET Ecuador - PROMPT 7
    ========================================================================== */

  .inst-mapa {
      padding: 80px 0;
      background-color: #F9FAFB;
  }

  @media (max-width: 767px) {
      .inst-mapa {
          padding: 64px 0;
      }
  }

  .inst-mapa__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 48px;
  }

  @media (max-width: 767px) {
      .inst-mapa__header {
          margin-bottom: 40px;
      }
  }

  .inst-mapa__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-mapa__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-mapa__title {
          font-size: 30px;
      }
  }

  .inst-mapa__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-mapa__subtitle {
          font-size: 18px;
      }
  }

  .inst-mapa__search {
      max-width: 600px;
      margin: 0 auto 32px;
  }

  @media (max-width: 767px) {
      .inst-mapa__search {
          margin-bottom: 24px;
      }
  }

  .inst-mapa__search-wrapper {
      position: relative;
      display: flex;
      align-items: center;
      background-color: #FFFFFF;
      border: 2px solid #D1D5DB;
      border-radius: 9999px;
      padding: 8px;
      transition: border-color 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mapa__search-wrapper:focus-within {
      border-color: #F7931E;
      box-shadow: 0 0 0 3px rgba(247, 147, 30, 0.1);
  }

  .inst-mapa__search-icon {
      position: absolute;
      left: 16px;
      color: #9CA3AF;
      pointer-events: none;
      z-index: 1;
  }

  .inst-mapa__search-input {
      flex: 1;
      border: none;
      padding: 12px 16px 12px 40px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      background: transparent;
  }

  .inst-mapa__search-input:focus {
      outline: none;
  }

  .inst-mapa__search-input::placeholder {
      color: #9CA3AF;
  }

  @media (max-width: 767px) {
      .inst-mapa__search-input {
          font-size: 14px;
      }
  }

  .inst-mapa__search-btn {
      padding: 12px 24px;
      background-color: #F7931E;
      color: #FFFFFF;
      border: none;
      border-radius: 9999px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      font-weight: 600;
      cursor: pointer;
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
      white-space: nowrap;
  }

  .inst-mapa__search-btn:hover {
      background-color: #E87D0E;
      transform: translateY(-2px);
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  }

  .inst-mapa__search-btn:active {
      transform: translateY(0);
  }

  @media (max-width: 767px) {
      .inst-mapa__search-btn {
          padding: 8px 16px;
          font-size: 14px;
      }
  }

  .inst-mapa__container {
      position: relative;
      background-color: #FFFFFF;
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  }

  .inst-mapa__leaflet {
      width: 100%;
      height: 600px;
  }

  @media (max-width: 1023px) {
      .inst-mapa__leaflet {
          height: 500px;
      }
  }

  @media (max-width: 767px) {
      .inst-mapa__leaflet {
          height: 400px;
      }
  }

  .inst-mapa__leyenda {
      position: absolute;
      top: 16px;
      right: 16px;
      background-color: rgba(255, 255, 255, 0.95);
      backdrop-filter: blur(10px);
      padding: 16px;
      border-radius: 12px;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      z-index: 1000;
      min-width: 200px;
  }

  @media (max-width: 767px) {
      .inst-mapa__leyenda {
          top: auto;
          bottom: 16px;
          right: 8px;
          left: 8px;
          width: auto;
          min-width: auto;
      }
  }

  .inst-mapa__leyenda-title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      font-weight: 700;
      margin: 0 0 12px 0;
      color: #0A0E27;
  }

  .inst-mapa__leyenda-item {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 0;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #374151;
      cursor: pointer;
      transition: opacity 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mapa__leyenda-item:hover {
      opacity: 0.7;
  }

  .inst-mapa__leyenda-item.disabled {
      opacity: 0.4;
      text-decoration: line-through;
  }

  .inst-mapa__leyenda-color {
      display: block;
      width: 20px;
      height: 20px;
      border-radius: 4px;
      flex-shrink: 0;
      border: 1px solid rgba(10, 14, 39, 0.1);
  }

  .inst-mapa__cta {
      text-align: center;
      margin-top: 48px;
  }

  @media (max-width: 767px) {
      .inst-mapa__cta {
          margin-top: 32px;
      }
  }

  .inst-mapa__cta-text {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      color: #6B7280;
      margin: 0 0 16px 0;
  }

  @media (max-width: 767px) {
      .inst-mapa__cta-text {
          font-size: 16px;
      }
  }

  .inst-modal {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 9999;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 16px;
  }

  .inst-modal.active {
      display: flex;
  }

  .inst-modal__overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(10, 14, 39, 0.7);
      backdrop-filter: blur(4px);
  }

  .inst-modal__dialog {
      position: relative;
      max-width: 600px;
      width: 100%;
      background-color: #FFFFFF;
      border-radius: 24px;
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
      z-index: 1;
      max-height: 90vh;
      overflow-y: auto;
  }

  .inst-modal__close {
      position: absolute;
      top: 16px;
      right: 16px;
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #F3F4F6;
      border: none;
      border-radius: 9999px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
      z-index: 2;
  }

  .inst-modal__close svg {
      width: 20px;
      height: 20px;
      color: #6B7280;
  }

  .inst-modal__close:hover {
      background-color: #E5E7EB;
      transform: rotate(90deg);
  }

  .inst-modal__content {
      padding: 32px;
  }

  @media (max-width: 767px) {
      .inst-modal__content {
          padding: 24px;
      }
  }

  .inst-modal__header {
      text-align: center;
      margin-bottom: 24px;
  }

  .inst-modal__header h3 {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 30px;
      font-weight: 700;
      color: #0A0E27;
      margin: 16px 0 0 0;
  }

  @media (max-width: 767px) {
      .inst-modal__header h3 {
          font-size: 24px;
      }
  }

  .inst-modal__icon {
      width: 64px;
      height: 64px;
      margin: 0 auto;
  }

  .inst-modal__icon--success {
      color: #10B981;
  }

  .inst-modal__icon--info {
      color: #3B82F6;
  }

  @media (max-width: 767px) {
      .inst-modal__icon {
          width: 48px;
          height: 48px;
      }
  }

  .inst-modal__body {
      margin-bottom: 24px;
  }

  .inst-modal__body p {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      line-height: 1.6;
      color: #374151;
      margin: 0 0 16px 0;
  }

  .inst-modal__body p strong {
      color: #0A0E27;
      font-weight: 600;
  }

  .inst-modal__footer {
      display: flex;
      flex-direction: column;
      gap: 12px;
  }

  .inst-form {
      display: flex;
      flex-direction: column;
      gap: 16px;
  }

  .inst-form__group {
      display: flex;
      flex-direction: column;
      gap: 8px;
  }

  .inst-form__group label {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      font-weight: 600;
      color: #0A0E27;
  }

  .inst-form__group input {
      padding: 12px 16px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      border: 2px solid #D1D5DB;
      border-radius: 12px;
      transition: border-color 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-form__group input:focus {
      outline: none;
      border-color: #F7931E;
      box-shadow: 0 0 0 3px rgba(247, 147, 30, 0.1);
  }

  .inst-form__group input::placeholder {
      color: #9CA3AF;
  }

  .leaflet-popup-content {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      margin: 16px;
  }

  .inst-mapa-popup {
      min-width: 200px;
  }

  .inst-mapa-popup h4 {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 8px 0;
  }

  .inst-mapa-popup p {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #6B7280;
      margin: 4px 0;
  }

  .inst-mapa-popup p strong {
      color: #0A0E27;
      font-weight: 600;
  }

  .inst-mapa-popup .inst-button {
      margin-top: 12px;
      width: 100%;
  }

  @media (max-width: 767px) {
      .leaflet-control-zoom {
          display: none;
      }
  }

  .inst-office-marker,
  .inst-search-marker {
      background: transparent;
      border: none;
  }

  /* ==========================================================================
    COMPARACIÓN TABLE - CSS COMPILADO
    INSTANET Ecuador - PROMPT 8
    ========================================================================== */

  .inst-comparacion {
      padding: 80px 0;
      background-color: #FFFFFF;
  }

  @media (max-width: 767px) {
      .inst-comparacion {
          padding: 64px 0;
      }
  }

  .inst-comparacion__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 48px;
  }

  @media (max-width: 767px) {
      .inst-comparacion__header {
          margin-bottom: 40px;
      }
  }

  .inst-comparacion__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-comparacion__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-comparacion__title {
          font-size: 30px;
      }
  }

  .inst-comparacion__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-comparacion__subtitle {
          font-size: 18px;
      }
  }

  .inst-comparacion__wrapper {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      margin: 0 -24px;
      padding: 0 24px;
  }

  @media (max-width: 1023px) {
      .inst-comparacion__wrapper {
          margin: 0;
          padding: 0;
          overflow-x: visible;
      }
  }

  .inst-comparacion__wrapper::-webkit-scrollbar {
      height: 8px;
  }

  .inst-comparacion__wrapper::-webkit-scrollbar-track {
      background: #E5E7EB;
      border-radius: 9999px;
  }

  .inst-comparacion__wrapper::-webkit-scrollbar-thumb {
      background: #F7931E;
      border-radius: 9999px;
  }

  .inst-comparacion__wrapper::-webkit-scrollbar-thumb:hover {
      background: #E87D0E;
  }

  .inst-comparacion__table {
      width: 100%;
      min-width: 650px;
      border-collapse: separate;
      border-spacing: 0;
      background-color: #FFFFFF;
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  }

  @media (max-width: 1023px) {
      .inst-comparacion__table {
          min-width: 100%;
      }
  }

  .inst-comparacion__table th,
  .inst-comparacion__table td {
      padding: 16px;
      text-align: center;
      border-bottom: 1px solid #E5E7EB;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
  }

  @media (max-width: 767px) {

      .inst-comparacion__table th,
      .inst-comparacion__table td {
          padding: 12px;
      }
  }

  .inst-comparacion__table th:first-child,
  .inst-comparacion__table td:first-child {
      text-align: left;
      position: sticky;
      left: 0;
      background-color: #FFFFFF;
      z-index: 10;
      box-shadow: 2px 0 4px rgba(10, 14, 39, 0.05);
  }

  @media (max-width: 1023px) {

      .inst-comparacion__table th:first-child,
      .inst-comparacion__table td:first-child {
          position: static;
          box-shadow: none;
      }
  }

  .inst-comparacion__table thead th {
      font-weight: 700;
      font-size: 16px;
      color: #0A0E27;
      padding: 20px 16px;
      background-color: #F9FAFB;
  }

  @media (max-width: 767px) {
      .inst-comparacion__table thead th {
          font-size: 14px;
          padding: 16px 12px;
      }
  }

  .inst-comparacion__table thead th.highlight {
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      color: #FFFFFF;
      font-weight: 800;
      position: relative;
  }

  .inst-comparacion__table thead th.highlight::after {
      content: 'Recomendado';
      display: block;
      font-size: 12px;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      margin-top: 4px;
      opacity: 0.95;
  }

  .inst-comparacion__table tbody tr {
      transition: background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-comparacion__table tbody tr:hover {
      background-color: #F9FAFB;
  }

  .inst-comparacion__table tbody tr:last-child th,
  .inst-comparacion__table tbody tr:last-child td {
      border-bottom: none;
  }

  .inst-comparacion__table tbody th {
      font-weight: 600;
      font-size: 14px;
      color: #0A0E27;
  }

  @media (max-width: 767px) {
      .inst-comparacion__table tbody th {
          font-size: 12px;
      }
  }

  .inst-comparacion__table tbody td {
      font-size: 16px;
  }

  @media (max-width: 767px) {
      .inst-comparacion__table tbody td {
          font-size: 14px;
      }
  }

  .inst-comparacion__table tbody td.highlight {
      background-color: rgba(247, 147, 30, 0.05);
      border-left: 3px solid #F7931E;
      border-right: 3px solid #F7931E;
      position: relative;
  }

  .inst-comparacion__td-feature {
      display: flex;
      align-items: center;
      gap: 8px;
      position: relative;
  }

  .inst-comparacion__tooltip-trigger {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 20px;
      height: 20px;
      padding: 0;
      background-color: #E5E7EB;
      border: none;
      border-radius: 9999px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
      flex-shrink: 0;
  }

  .inst-comparacion__tooltip-trigger svg {
      width: 14px;
      height: 14px;
      color: #6B7280;
  }

  .inst-comparacion__tooltip-trigger:hover {
      background-color: #F7931E;
  }

  .inst-comparacion__tooltip-trigger:hover svg {
      color: #FFFFFF;
  }

  .inst-comparacion__tooltip-trigger[aria-expanded="true"] {
      background-color: #F7931E;
  }

  .inst-comparacion__tooltip-trigger[aria-expanded="true"] svg {
      color: #FFFFFF;
  }

  .inst-comparacion__tooltip {
      position: absolute;
      top: 100%;
      left: 0;
      margin-top: 8px;
      padding: 12px 16px;
      background-color: #0A0E27;
      color: #FFFFFF;
      font-size: 14px;
      line-height: 1.6;
      border-radius: 12px;
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
      z-index: 1000;
      min-width: 200px;
      max-width: 300px;
      opacity: 0;
      visibility: hidden;
      transform: translateY(-8px);
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
      pointer-events: none;
  }

  .inst-comparacion__tooltip::before {
      content: '';
      position: absolute;
      bottom: 100%;
      left: 16px;
      width: 0;
      height: 0;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-bottom: 6px solid #0A0E27;
  }

  .inst-comparacion__tooltip.active {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
      pointer-events: auto;
  }

  @media (max-width: 767px) {
      .inst-comparacion__tooltip {
          font-size: 12px;
          min-width: 180px;
          max-width: 250px;
      }
  }

  .inst-comparacion__check {
      color: #10B981;
      display: block;
      margin: 0 auto;
  }

  .inst-comparacion__x {
      color: #EF4444;
      opacity: 0.5;
      display: block;
      margin: 0 auto;
  }

  .inst-comparacion__footer {
      text-align: center;
      margin-top: 48px;
  }

  @media (max-width: 767px) {
      .inst-comparacion__footer {
          margin-top: 32px;
      }
  }

  .inst-comparacion__disclaimer {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #9CA3AF;
      margin: 0 0 24px 0;
  }

  @media (max-width: 767px) {
      .inst-comparacion__disclaimer {
          font-size: 12px;
      }
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  .inst-comparacion__table th:focus,
  .inst-comparacion__table td:focus {
      outline: 3px solid #F7931E;
      outline-offset: -3px;
  }

  .inst-comparacion__tooltip-trigger:focus {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  @media print {
      .inst-comparacion__tooltip-trigger {
          display: none;
      }

      .inst-comparacion__wrapper {
          overflow: visible;
      }

      .inst-comparacion__table {
          min-width: 100%;
      }
  }

  /* ==========================================================================
    COMPARACIÓN - MEJORAS MÓVIL (scroll horizontal visible)
    ========================================================================== */

  @media (max-width: 767px) {
      .inst-comparacion__wrapper {
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
          margin: 0 -16px;
          padding: 0 16px 16px;
          scrollbar-width: thin;
          scrollbar-color: #F7931E #E5E7EB;
      }

      .inst-comparacion__wrapper::after {
          content: '← Desliza para ver más →';
          display: block;
          text-align: center;
          font-size: 12px;
          color: #9CA3AF;
          padding: 12px 0 0;
          font-style: italic;
      }

      .inst-comparacion__table {
          min-width: 600px;
          font-size: 13px;
      }

      .inst-comparacion__table th,
      .inst-comparacion__table td {
          padding: 10px 8px;
          white-space: nowrap;
      }

      .inst-comparacion__th-provider {
          min-width: 80px;
      }

      .inst-comparacion__td-feature {
          min-width: 140px;
          white-space: normal;
      }

      .inst-comparacion__check,
      .inst-comparacion__x {
          width: 20px;
          height: 20px;
      }
  }

  /* ==========================================================================
    MAPA - MEJORAS MÓVIL
    ========================================================================== */

  @media (max-width: 767px) {
      .inst-mapa__container {
          border-radius: 16px;
          margin: 0 -8px;
      }

      .inst-mapa__leaflet {
          height: 350px;
          min-height: 300px;
          border-radius: 16px 16px 0 0;
      }

      .inst-mapa__leyenda {
          position: relative;
          top: auto;
          right: auto;
          bottom: auto;
          margin: 0;
          padding: 16px;
          border-radius: 0 0 16px 16px;
          background: #FFFFFF;
          display: flex;
          flex-wrap: wrap;
          gap: 12px;
          justify-content: center;
      }

      .inst-mapa__leyenda-title {
          width: 100%;
          text-align: center;
          margin-bottom: 8px;
      }

      .inst-mapa__leyenda-item {
          font-size: 12px;
      }

      .inst-mapa__search-wrapper {
          flex-direction: column;
          gap: 12px;
          padding: 16px;
          border-radius: 16px;
          /* Menos redondeado en móvil */
      }

      .inst-mapa__search-input {
          width: 100%;
          padding: 14px 14px 14px 40px;
          border: 1px solid #E5E7EB;
          border-radius: 12px;
          background: #F9FAFB;
      }

      .inst-mapa__search-btn {
          width: 100%;
          padding: 14px 20px;
          border-radius: 12px;
      }
  }

  /* ==========================================================================
    SPEEDTEST - MEJORAS MÓVIL
    ========================================================================== */

  @media (max-width: 767px) {
      .speedtest-block {
          padding: 4rem 0;
          min-height: auto;
      }

      .container-speedtest {
          padding: 0 1rem;
      }

      .speedtest-title {
          font-size: 2rem;
      }

      .speedtest-desc {
          font-size: 1rem;
      }

      .speedtest-cta {
          width: 100%;
          text-align: center;
          padding: 1rem 1.5rem;
          font-size: 1rem;
      }

      .speedtest-illustration {
          max-width: 280px;
          margin: 0 auto;
      }
  }

  /* ==========================================================================
    CONTENEDORES - DESKTOP NO FORZADO
    ========================================================================== */

  @media (min-width: 1200px) {
      .inst-container {
          max-width: 1140px;
          padding-left: 24px;
          padding-right: 24px;
      }

      .home-plans-container {
          max-width: 1200px;
          padding: 0 40px;
      }
  }

  @media (min-width: 1400px) {
      .inst-container {
          max-width: 1280px;
      }

      .home-plans-container {
          max-width: 1320px;
      }
  }

  /* ==========================================================================
    TESTIMONIOS CAROUSEL - CSS COMPILADO
    INSTANET Ecuador - PROMPT 9
    ========================================================================== */

  .inst-testimonios {
      padding: 80px 0;
      background-color: #F9FAFB;
      overflow: hidden;
  }

  @media (max-width: 767px) {
      .inst-testimonios {
          padding: 64px 0;
      }
  }

  .inst-testimonios__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 48px;
  }

  @media (max-width: 767px) {
      .inst-testimonios__header {
          margin-bottom: 40px;
      }
  }

  .inst-testimonios__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-testimonios__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-testimonios__title {
          font-size: 30px;
      }
  }

  .inst-testimonios__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__subtitle {
          font-size: 18px;
      }
  }

  .inst-testimonios__carousel {
      position: relative;
      padding: 0 64px;
  }

  @media (max-width: 767px) {
      .inst-testimonios__carousel {
          padding: 0 48px;
      }
  }

  @media (max-width: 479px) {
      .inst-testimonios__carousel {
          padding: 0;
      }
  }

  .inst-testimonios__track {
      display: flex;
      transition: transform 600ms cubic-bezier(0.4, 0, 0.2, 1);
      cursor: grab;
  }

  .inst-testimonios__track:active {
      cursor: grabbing;
  }

  .inst-testimonios__card {
      background-color: #FFFFFF;
      border-radius: 24px;
      padding: 32px;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
      flex-shrink: 0;
      animation: fadeInUp 600ms ease-out;
      animation-fill-mode: both;
  }

  .inst-testimonios__card:hover {
      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
      transform: translateY(-4px);
  }

  @media (max-width: 767px) {
      .inst-testimonios__card {
          padding: 24px;
      }
  }

  .inst-testimonios__card:nth-child(1) {
      animation-delay: 100ms;
  }

  .inst-testimonios__card:nth-child(2) {
      animation-delay: 200ms;
  }

  .inst-testimonios__card:nth-child(3) {
      animation-delay: 300ms;
  }

  .inst-testimonios__card:nth-child(4) {
      animation-delay: 400ms;
  }

  .inst-testimonios__card:nth-child(5) {
      animation-delay: 500ms;
  }

  .inst-testimonios__card:nth-child(6) {
      animation-delay: 600ms;
  }

  .inst-testimonios__card:nth-child(7) {
      animation-delay: 700ms;
  }

  .inst-testimonios__card:nth-child(8) {
      animation-delay: 800ms;
  }

  .inst-testimonios__card-header {
      display: flex;
      align-items: center;
      gap: 16px;
      margin-bottom: 24px;
  }

  .inst-testimonios__avatar {
      width: 80px;
      height: 80px;
      border-radius: 9999px;
      object-fit: cover;
      border: 3px solid #F7931E;
      flex-shrink: 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__avatar {
          width: 64px;
          height: 64px;
      }
  }

  .inst-testimonios__info {
      flex: 1;
      min-width: 0;
  }

  .inst-testimonios__name {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 4px 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__name {
          font-size: 16px;
      }
  }

  .inst-testimonios__location {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__location {
          font-size: 12px;
      }
  }

  .inst-testimonios__rating {
      display: flex;
      align-items: center;
      gap: 4px;
      margin-bottom: 16px;
  }

  .inst-testimonios__star {
      width: 20px;
      height: 20px;
  }

  .inst-testimonios__star--filled {
      color: #F59E0B;
  }

  .inst-testimonios__star--empty {
      color: #D1D5DB;
  }

  .inst-testimonios__review {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      line-height: 1.6;
      color: #374151;
      margin: 0 0 24px 0;
      font-style: italic;
      position: relative;
  }

  .inst-testimonios__review::before {
      content: '"';
      font-size: 36px;
      color: #F7931E;
      opacity: 0.2;
      position: absolute;
      top: -16px;
      left: -8px;
      font-family: Georgia, serif;
      line-height: 1;
  }

  @media (max-width: 767px) {
      .inst-testimonios__review {
          font-size: 14px;
      }
  }

  .inst-testimonios__footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-top: 16px;
      border-top: 1px solid #E5E7EB;
  }

  .inst-testimonios__footer time {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #9CA3AF;
  }

  @media (max-width: 767px) {
      .inst-testimonios__footer time {
          font-size: 12px;
      }
  }

  .inst-testimonios__verified {
      display: flex;
      align-items: center;
      gap: 4px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #10B981;
      font-weight: 600;
  }

  .inst-testimonios__verified svg {
      width: 16px;
      height: 16px;
      flex-shrink: 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__verified {
          font-size: 12px;
      }
  }

  .inst-testimonios__arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 48px;
      height: 48px;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #FFFFFF;
      border: 2px solid #D1D5DB;
      border-radius: 9999px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
      z-index: 10;
  }

  .inst-testimonios__arrow svg {
      width: 24px;
      height: 24px;
      color: #0A0E27;
  }

  .inst-testimonios__arrow:hover {
      background-color: #F7931E;
      border-color: #F7931E;
      transform: translateY(-50%) scale(1.1);
  }

  .inst-testimonios__arrow:hover svg {
      color: #FFFFFF;
  }

  .inst-testimonios__arrow:active {
      transform: translateY(-50%) scale(0.95);
  }

  .inst-testimonios__arrow[aria-disabled="true"] {
      opacity: 0.5;
      cursor: not-allowed;
  }

  .inst-testimonios__arrow[aria-disabled="true"]:hover {
      background-color: #FFFFFF;
      border-color: #D1D5DB;
      transform: translateY(-50%);
  }

  .inst-testimonios__arrow[aria-disabled="true"]:hover svg {
      color: #0A0E27;
  }

  .inst-testimonios__arrow--prev {
      left: 0;
  }

  .inst-testimonios__arrow--next {
      right: 0;
  }

  @media (max-width: 767px) {
      .inst-testimonios__arrow {
          width: 40px;
          height: 40px;
      }

      .inst-testimonios__arrow svg {
          width: 20px;
          height: 20px;
      }
  }

  @media (max-width: 479px) {
      .inst-testimonios__arrow {
          display: none;
      }
  }

  .inst-testimonios__dots {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      margin-top: 32px;
  }

  .inst-testimonios__dot {
      width: 12px;
      height: 12px;
      padding: 0;
      background-color: #D1D5DB;
      border: none;
      border-radius: 9999px;
      cursor: pointer;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-testimonios__dot:hover {
      background-color: #9CA3AF;
      transform: scale(1.2);
  }

  .inst-testimonios__dot.active {
      background-color: #F7931E;
      width: 32px;
      border-radius: 9999px;
  }

  .inst-testimonios__dot:focus {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  @media (max-width: 479px) {
      .inst-testimonios__carousel {
          overflow: hidden;
      }

      .inst-testimonios__track {
          cursor: default;
      }
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @keyframes fadeInUp {
      from {
          opacity: 0;
          transform: translateY(20px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-testimonios__card {
          animation: none;
      }

      .inst-testimonios__track {
          transition: none;
      }

      .inst-testimonios__arrow {
          transition: none;
      }
  }

  /* ==========================================================================
    PROCESO SECTION - CSS COMPILADO
    INSTANET Ecuador - PROMPT 10
    ========================================================================== */

  .inst-proceso {
      padding: 80px 0;
      background-color: #FFFFFF;
  }

  @media (max-width: 767px) {
      .inst-proceso {
          padding: 64px 0;
      }
  }

  .inst-proceso__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 64px;
  }

  @media (max-width: 767px) {
      .inst-proceso__header {
          margin-bottom: 48px;
      }
  }

  .inst-proceso__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-proceso__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-proceso__title {
          font-size: 30px;
      }
  }

  .inst-proceso__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-proceso__subtitle {
          font-size: 18px;
      }
  }

  .inst-proceso__timeline {
      display: flex;
      gap: 48px;
      align-items: flex-start;
      justify-content: center;
      max-width: 1200px;
      margin: 0 auto;
  }

  @media (max-width: 1023px) {
      .inst-proceso__timeline {
          gap: 32px;
      }
  }

  @media (max-width: 767px) {
      .inst-proceso__timeline {
          flex-direction: column;
          gap: 32px;
          align-items: center;
      }
  }

  .inst-proceso__step {
      position: relative;
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      animation: fadeSlideIn 600ms cubic-bezier(0.4, 0, 0.2, 1) both;
  }

  .inst-proceso__step:nth-child(1) {
      animation-delay: 0ms;
  }

  .inst-proceso__step:nth-child(2) {
      animation-delay: 200ms;
  }

  .inst-proceso__step:nth-child(3) {
      animation-delay: 400ms;
  }

  @media (max-width: 767px) {
      .inst-proceso__step {
          max-width: 400px;
          width: 100%;
      }
  }

  @keyframes fadeSlideIn {
      from {
          opacity: 0;
          transform: translateY(30px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  .inst-proceso__number {
      width: 48px;
      height: 48px;
      border-radius: 9999px;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      color: #FFFFFF;
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 24px;
      font-weight: 700;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      margin-bottom: 16px;
      z-index: 2;
      position: relative;
      animation: numberPulse 2s ease-in-out infinite;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-proceso__number {
          animation: none;
      }
  }

  @keyframes numberPulse {

      0%,
      100% {
          transform: scale(1);
      }

      50% {
          transform: scale(1.05);
      }
  }

  .inst-proceso__icon {
      width: 80px;
      height: 80px;
      border-radius: 9999px;
      background-color: #FFFFFF;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 24px;
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-proceso__icon svg {
      width: 48px;
      height: 48px;
      transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-proceso__icon:hover {
      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  }

  .inst-proceso__icon:hover svg {
      transform: scale(1.1);
  }

  @media (max-width: 767px) {
      .inst-proceso__icon {
          width: 64px;
          height: 64px;
      }

      .inst-proceso__icon svg {
          width: 40px;
          height: 40px;
      }
  }

  .inst-proceso__icon--primary svg {
      color: #F7931E;
  }

  .inst-proceso__icon--success svg {
      color: #10B981;
  }

  .inst-proceso__icon--info svg {
      color: #3B82F6;
  }

  .inst-proceso__tiempo {
      display: inline-block;
      padding: 4px 12px;
      background-color: rgba(247, 147, 30, 0.1);
      color: #F7931E;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      border-radius: 9999px;
      margin-bottom: 12px;
  }

  .inst-proceso__content {
      max-width: 280px;
  }

  @media (max-width: 767px) {
      .inst-proceso__content {
          max-width: 100%;
      }
  }

  .inst-proceso__step-title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 24px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 12px 0;
  }

  @media (max-width: 767px) {
      .inst-proceso__step-title {
          font-size: 20px;
      }
  }

  .inst-proceso__description {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      line-height: 1.6;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-proceso__description {
          font-size: 16px;
      }
  }

  .inst-proceso__line {
      position: absolute;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
  }

  @media (min-width: 768px) {
      .inst-proceso__line {
          top: 100px;
          left: calc(50% + 140px);
          width: calc(100% - 140px);
          height: 2px;
          animation: drawLineHorizontal 600ms cubic-bezier(0.4, 0, 0.2, 1) 400ms both;
      }
  }

  @media (min-width: 768px) and (max-width: 1023px) {
      .inst-proceso__line {
          left: calc(50% + 120px);
          width: calc(100% - 120px);
      }
  }

  @media (max-width: 767px) {
      .inst-proceso__line {
          top: auto;
          left: 50%;
          transform: translateX(-50%);
          bottom: -32px;
          width: 2px;
          height: 32px;
          animation: drawLineVertical 600ms cubic-bezier(0.4, 0, 0.2, 1) 400ms both;
      }
  }

  @keyframes drawLineHorizontal {
      from {
          width: 0;
      }

      to {
          width: calc(100% - 140px);
      }
  }

  @media (min-width: 768px) and (max-width: 1023px) {
      @keyframes drawLineHorizontal {
          from {
              width: 0;
          }

          to {
              width: calc(100% - 120px);
          }
      }
  }

  @keyframes drawLineVertical {
      from {
          height: 0;
      }

      to {
          height: 32px;
      }
  }

  .inst-proceso__cta {
      text-align: center;
      margin-top: 64px;
  }

  @media (max-width: 767px) {
      .inst-proceso__cta {
          margin-top: 48px;
      }
  }

  .inst-proceso__cta-note {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      color: #6B7280;
      margin: 16px 0 0 0;
  }

  .inst-proceso__cta-note a {
      color: #F7931E;
      font-weight: 600;
      text-decoration: none;
      transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-proceso__cta-note a:hover {
      color: #E87D0E;
      text-decoration: underline;
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-proceso__step,
      .inst-proceso__number,
      .inst-proceso__line {
          animation: none !important;
      }

      .inst-proceso__icon svg {
          transition: none;
      }
  }

  /* ==========================================================================
    FAQ SECTION - CSS COMPILADO
    INSTANET Ecuador - PROMPT 11
    ========================================================================== */

  .inst-faq {
      padding: 80px 0;
      background-color: #F9FAFB;
  }

  @media (max-width: 767px) {
      .inst-faq {
          padding: 64px 0;
      }
  }

  .inst-faq__header {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 48px;
  }

  @media (max-width: 767px) {
      .inst-faq__header {
          margin-bottom: 40px;
      }
  }

  .inst-faq__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 48px;
      font-weight: 700;
      color: #0A0E27;
      margin: 0 0 16px 0;
  }

  @media (max-width: 1023px) {
      .inst-faq__title {
          font-size: 36px;
      }
  }

  @media (max-width: 767px) {
      .inst-faq__title {
          font-size: 30px;
      }
  }

  .inst-faq__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: #6B7280;
      margin: 0;
  }

  @media (max-width: 767px) {
      .inst-faq__subtitle {
          font-size: 18px;
      }
  }

  .inst-faq__list {
      max-width: 900px;
      margin: 0 auto;
  }

  .inst-faq__item {
      background-color: #FFFFFF;
      border-radius: 12px;
      margin-bottom: 16px;
      overflow: hidden;
      box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-faq__item:hover {
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  }

  .inst-faq__item:last-child {
      margin-bottom: 0;
  }

  .inst-faq__item.is-open {
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  }

  .inst-faq__item.is-open .inst-faq__icon {
      transform: rotate(45deg);
      color: #F7931E;
  }

  .inst-faq__question {
      width: 100%;
      padding: 20px 24px;
      background-color: transparent;
      border: none;
      text-align: left;
      cursor: pointer;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      transition: background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-faq__question:hover {
      background-color: #F9FAFB;
  }

  .inst-faq__question:focus {
      outline: 2px solid #F7931E;
      outline-offset: -2px;
  }

  @media (max-width: 767px) {
      .inst-faq__question {
          padding: 16px 20px;
      }
  }

  .inst-faq__question-text {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      font-weight: 600;
      color: #0A0E27;
      line-height: 1.5;
      flex: 1;
  }

  @media (max-width: 767px) {
      .inst-faq__question-text {
          font-size: 16px;
      }
  }

  .inst-faq__icon {
      width: 24px;
      height: 24px;
      color: #9CA3AF;
      flex-shrink: 0;
      transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @media (max-width: 767px) {
      .inst-faq__icon {
          width: 20px;
          height: 20px;
      }
  }

  .inst-faq__answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 500ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-faq__answer[hidden] {
      display: block;
      max-height: 0;
  }

  .inst-faq__answer p {
      padding: 0 24px 20px 24px;
      margin: 0;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      line-height: 1.6;
      color: #374151;
  }

  @media (max-width: 767px) {
      .inst-faq__answer p {
          padding: 0 20px 16px 20px;
          font-size: 14px;
      }
  }

  .inst-faq__item.is-open .inst-faq__answer {
      max-height: 500px;
  }

  .inst-faq__cta {
      text-align: center;
      margin-top: 64px;
  }

  @media (max-width: 767px) {
      .inst-faq__cta {
          margin-top: 48px;
      }
  }

  .inst-faq__cta-text {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      color: #6B7280;
      margin: 0 0 16px 0;
  }

  @media (max-width: 767px) {
      .inst-faq__cta-text {
          font-size: 16px;
      }
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-faq__item,
      .inst-faq__icon,
      .inst-faq__answer {
          transition: none !important;
      }
  }

  /* ==========================================================================
    CTA FINAL SECTION - CSS COMPILADO
    INSTANET Ecuador - PROMPT 12
    ========================================================================== */

  .inst-cta-final {
      position: relative;
      padding: 96px 0;
      background: linear-gradient(135deg, #F7931E 0%, #E87D0E 100%);
      overflow: hidden;
      text-align: center;
  }

  @media (max-width: 767px) {
      .inst-cta-final {
          padding: 80px 0;
      }
  }

  .inst-cta-final__pattern {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: radial-gradient(circle at 20% 50%, rgba(255, 255, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(255, 255, 255, 0.1) 0%, transparent 50%);
      opacity: 0.5;
      pointer-events: none;
  }

  .inst-cta-final__content {
      position: relative;
      z-index: 1;
      max-width: 900px;
      margin: 0 auto;
      color: #FFFFFF;
      animation: fadeScaleIn 800ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes fadeScaleIn {
      from {
          opacity: 0;
          transform: scale(0.95);
      }

      to {
          opacity: 1;
          transform: scale(1);
      }
  }

  .inst-cta-final__badge {
      display: inline-block;
      padding: 8px 16px;
      background-color: rgba(255, 255, 255, 0.2);
      backdrop-filter: blur(10px);
      color: #FFFFFF;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      border-radius: 9999px;
      margin-bottom: 24px;
  }

  .inst-cta-final__title {
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 60px;
      font-weight: 800;
      line-height: 1.2;
      color: #FFFFFF;
      margin: 0 0 24px 0;
      text-shadow: 0 2px 8px rgba(10, 14, 39, 0.3);
  }

  @media (max-width: 1023px) {
      .inst-cta-final__title {
          font-size: 48px;
      }
  }

  @media (max-width: 767px) {
      .inst-cta-final__title {
          font-size: 36px;
      }
  }

  .inst-cta-final__subtitle {
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 20px;
      color: rgba(255, 255, 255, 0.9);
      margin: 0 0 40px 0;
  }

  @media (max-width: 767px) {
      .inst-cta-final__subtitle {
          font-size: 18px;
          margin-bottom: 32px;
      }
  }

  .inst-cta-final__actions {
      display: flex;
      gap: 16px;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      margin-bottom: 32px;
  }

  @media (max-width: 767px) {
      .inst-cta-final__actions {
          flex-direction: column;
          width: 100%;
          gap: 12px;
      }
  }

  .inst-cta-final .inst-button {
      min-width: 220px;
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  }

  @media (max-width: 767px) {
      .inst-cta-final .inst-button {
          width: 100%;
          min-width: auto;
      }
  }

  .inst-cta-final .inst-button--primary {
      animation: buttonPulse 2s ease-in-out infinite;
  }

  @media (prefers-reduced-motion: reduce) {
      .inst-cta-final .inst-button--primary {
          animation: none;
      }
  }

  @keyframes buttonPulse {

      0%,
      100% {
          box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
      }

      50% {
          box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
          transform: translateY(-2px);
      }
  }

  .inst-cta-final .inst-button--secondary {
      background-color: rgba(255, 255, 255, 0.2);
      backdrop-filter: blur(10px);
      color: #FFFFFF;
      border: 2px solid rgba(255, 255, 255, 0.3);
  }

  .inst-cta-final .inst-button--secondary:hover {
      background-color: rgba(255, 255, 255, 0.3);
      border-color: #FFFFFF;
  }

  .inst-cta-final__trust {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
      flex-wrap: wrap;
      color: rgba(255, 255, 255, 0.8);
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 14px;
  }

  @media (max-width: 767px) {
      .inst-cta-final__trust {
          font-size: 12px;
      }
  }

  .inst-cta-final__trust-item {
      display: flex;
      align-items: center;
      gap: 8px;
  }

  .inst-cta-final__trust-item svg {
      width: 20px;
      height: 20px;
  }

  .inst-cta-final__trust-divider {
      opacity: 0.5;
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-cta-final__content,
      .inst-button--primary {
          animation: none !important;
      }
  }

  /* =================================================================
     INSTANET FOOTER v2.0 PREMIUM - CSS COMPILADO
     ================================================================= */

  /* --- VARIABLES CSS --- */
  :root {
      --inst-footer-bg: #0A0E27;
      --inst-footer-bg-secondary: #151935;
      --inst-footer-text: #E8E9ED;
      --inst-footer-text-muted: #A0A3BD;
      --inst-footer-primary: #F7931E;
      --inst-footer-primary-light: #FFB347;
      --inst-footer-border: rgba(255, 255, 255, 0.1);
      --inst-footer-wave-1: rgba(247, 147, 30, 0.1);
      --inst-footer-wave-2: rgba(247, 147, 30, 0.2);
      --inst-footer-wave-3: rgba(247, 147, 30, 0.3);
  }

  /* --- MAIN FOOTER --- */
  .inst-footer {
      position: relative;
      background: var(--inst-footer-bg);
      color: var(--inst-footer-text);
      padding-top: 0;
      overflow: hidden;
  }

  .inst-footer * {
      box-sizing: border-box;
  }

  .inst-footer a {
      color: var(--inst-footer-text-muted);
      text-decoration: none;
      transition: color 0.3s ease, transform 0.3s ease;
  }

  .inst-footer a:hover {
      color: var(--inst-footer-primary);
  }

  /* --- WAVE EFFECT --- */
  .inst-footer__wave {
      position: relative;
      width: 100%;
      overflow: hidden;
      line-height: 0;
      margin-bottom: -1px;
  }

  .inst-footer__wave svg {
      position: relative;
      display: block;
      width: calc(100% + 1.3px);
      height: 80px;
  }

  .inst-footer__wave-shape {
      fill: var(--inst-footer-bg);
  }

  .inst-footer__wave-shape:nth-child(1) {
      fill: var(--inst-footer-wave-1);
  }

  .inst-footer__wave-shape:nth-child(2) {
      fill: var(--inst-footer-wave-2);
  }

  .inst-footer__wave-shape:nth-child(3) {
      fill: var(--inst-footer-wave-3);
  }

  /* --- STATS SECTION --- */
  .inst-footer__stats {
      padding: 60px 20px;
      background: var(--inst-footer-bg-secondary);
      border-bottom: 1px solid var(--inst-footer-border);
  }

  .inst-footer__stats-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 40px;
      text-align: center;
  }

  .inst-footer__stat-item {
      position: relative;
  }

  .inst-footer__stat-item::after {
      content: '';
      position: absolute;
      top: 50%;
      right: -20px;
      transform: translateY(-50%);
      width: 1px;
      height: 60%;
      background: var(--inst-footer-border);
  }

  .inst-footer__stat-item:last-child::after {
      display: none;
  }

  @media (max-width: 768px) {
      .inst-footer__stat-item::after {
          display: none;
      }
  }

  .inst-footer__stat-number {
      font-size: clamp(40px, 6vw, 56px);
      font-weight: 900;
      background: linear-gradient(135deg, var(--inst-footer-primary) 0%, var(--inst-footer-primary-light) 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      line-height: 1;
      margin-bottom: 10px;
      font-family: 'Poppins', sans-serif;
  }

  .inst-footer__stat-label {
      font-size: 14px;
      color: var(--inst-footer-text-muted);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 1px;
  }

  /* --- NEWSLETTER --- */
  .inst-footer__newsletter {
      padding: 80px 20px;
      background: linear-gradient(135deg, rgba(247, 147, 30, 0.1) 0%, rgba(247, 147, 30, 0.05) 100%);
      border-radius: 20px;
      margin: 60px 0;
  }

  @media (max-width: 768px) {
      .inst-footer__newsletter {
          padding: 40px 20px;
          margin: 40px 0;
      }
  }

  .inst-footer__newsletter-content {
      max-width: 800px;
      margin: 0 auto;
      text-align: center;
  }

  .inst-footer__newsletter-title {
      font-size: clamp(24px, 4vw, 36px);
      font-weight: 800;
      color: var(--inst-footer-text);
      margin-bottom: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
  }

  .inst-footer__newsletter-title i {
      color: var(--inst-footer-primary);
      font-size: 0.9em;
  }

  .inst-footer__newsletter-subtitle {
      font-size: 16px;
      color: var(--inst-footer-text-muted);
      margin-bottom: 30px;
  }

  .inst-footer__newsletter-form {
      margin-top: 30px;
  }

  .inst-footer__newsletter-input-wrapper {
      position: relative;
      display: flex;
      max-width: 600px;
      margin: 0 auto;
      background: var(--inst-footer-bg);
      border-radius: 12px;
      border: 2px solid var(--inst-footer-border);
      overflow: hidden;
      transition: border-color 0.3s ease;
  }

  .inst-footer__newsletter-input-wrapper:focus-within {
      border-color: var(--inst-footer-primary);
  }

  @media (max-width: 480px) {
      .inst-footer__newsletter-input-wrapper {
          flex-direction: column;
      }
  }

  .inst-footer__newsletter-icon {
      position: absolute;
      left: 20px;
      top: 50%;
      transform: translateY(-50%);
      color: var(--inst-footer-text-muted);
      font-size: 18px;
  }

  @media (max-width: 480px) {
      .inst-footer__newsletter-icon {
          top: 20px;
          transform: none;
      }
  }

  .inst-footer__newsletter-input {
      flex: 1;
      padding: 18px 20px 18px 50px;
      background: transparent;
      border: none;
      color: var(--inst-footer-text);
      font-size: 16px;
      outline: none;
  }

  .inst-footer__newsletter-input::placeholder {
      color: var(--inst-footer-text-muted);
  }

  @media (max-width: 480px) {
      .inst-footer__newsletter-input {
          padding: 16px 20px 16px 50px;
      }
  }

  .inst-footer__newsletter-btn {
      padding: 18px 32px;
      background: linear-gradient(135deg, var(--inst-footer-primary) 0%, var(--inst-footer-primary-light) 100%);
      border: none;
      color: white;
      font-weight: 700;
      font-size: 16px;
      cursor: pointer;
      transition: all 0.3s ease;
      display: flex;
      align-items: center;
      gap: 10px;
      white-space: nowrap;
  }

  .inst-footer__newsletter-btn:hover {
      transform: translateX(-2px);
      box-shadow: 0 4px 20px rgba(247, 147, 30, 0.4);
  }

  .inst-footer__newsletter-btn:active {
      transform: scale(0.98);
  }

  .inst-footer__newsletter-btn.loading {
      pointer-events: none;
      opacity: 0.7;
  }

  .inst-footer__newsletter-btn.loading .inst-footer__newsletter-btn-icon {
      animation: spin 1s linear infinite;
  }

  @media (max-width: 480px) {
      .inst-footer__newsletter-btn {
          width: 100%;
          justify-content: center;
          padding: 16px;
      }
  }

  .inst-footer__newsletter-btn-icon {
      transition: transform 0.3s ease;
  }

  .inst-footer__newsletter-message {
      margin-top: 15px;
      padding: 12px 20px;
      border-radius: 8px;
      font-size: 14px;
      font-weight: 600;
      display: none;
  }

  .inst-footer__newsletter-message--success {
      background: rgba(40, 167, 69, 0.2);
      color: #28a745;
      border: 1px solid rgba(40, 167, 69, 0.3);
  }

  .inst-footer__newsletter-message--error {
      background: rgba(220, 53, 69, 0.2);
      color: #dc3545;
      border: 1px solid rgba(220, 53, 69, 0.3);
  }

  /* --- MAIN CONTENT --- */
  .inst-footer__main {
      display: grid;
      grid-template-columns: 1.5fr repeat(4, 1fr);
      gap: 50px;
      padding: 60px 0;
      border-bottom: 1px solid var(--inst-footer-border);
  }

  @media (max-width: 1024px) {
      .inst-footer__main {
          grid-template-columns: repeat(3, 1fr);
      }
  }

  @media (max-width: 768px) {
      .inst-footer__main {
          grid-template-columns: 1fr;
          gap: 0;
      }

      .inst-footer__col {
          border-bottom: 1px solid var(--inst-footer-border);
          padding: 20px 0;
      }

      .inst-footer__col--brand {
          border-bottom: 2px solid var(--inst-footer-primary);
          padding-bottom: 30px;
      }
  }

  /* Logo & Branding */
  .inst-footer__logo-link {
      display: inline-block;
      margin-bottom: 20px;
  }

  .inst-footer__logo {
      height: 40px;
      width: auto;
      transition: transform 0.3s ease;
  }

  .inst-footer__logo:hover {
      transform: scale(1.05);
  }

  .inst-footer__tagline {
      color: var(--inst-footer-text-muted);
      font-size: 14px;
      line-height: 1.6;
      margin-bottom: 25px;
      display: flex;
      align-items: center;
      gap: 8px;
  }

  .inst-footer__tagline i {
      color: var(--inst-footer-primary);
  }

  /* Business Hours */
  .inst-footer__hours {
      margin: 25px 0;
      padding: 20px;
      background: rgba(247, 147, 30, 0.05);
      border-radius: 12px;
      border-left: 4px solid var(--inst-footer-primary);
  }

  .inst-footer__hours-status {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 10px;
      font-weight: 700;
      font-size: 15px;
  }

  .inst-footer__hours-indicator {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      animation: pulse 2s infinite;
  }

  .inst-footer__hours-status--open .inst-footer__hours-indicator {
      background: #28a745;
      box-shadow: 0 0 10px #28a745;
  }

  .inst-footer__hours-status--closed .inst-footer__hours-indicator {
      background: #6c757d;
      animation: none;
  }

  .inst-footer__hours-status--open .inst-footer__hours-text {
      color: #28a745;
  }

  .inst-footer__hours-status--closed .inst-footer__hours-text {
      color: #6c757d;
  }

  .inst-footer__hours-info {
      color: var(--inst-footer-text-muted);
      font-size: 13px;
  }

  .inst-footer__hours-info i {
      margin-right: 5px;
      color: var(--inst-footer-primary);
  }

  /* Headings */
  .inst-footer__heading {
      font-size: 18px;
      font-weight: 800;
      color: var(--inst-footer-text);
      margin-bottom: 20px;
      display: flex;
      align-items: center;
      gap: 10px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }

  .inst-footer__heading i {
      color: var(--inst-footer-primary);
      font-size: 16px;
  }

  @media (max-width: 768px) {
      .inst-footer__heading {
          cursor: pointer;
          justify-content: space-between;
          user-select: none;
      }
  }

  .inst-footer__accordion-icon {
      display: none;
      transition: transform 0.3s ease;
  }

  @media (max-width: 768px) {
      .inst-footer__accordion-icon {
          display: block;
      }

      [data-accordion-col].active .inst-footer__accordion-icon {
          transform: rotate(180deg);
      }
  }

  /* Links */
  .inst-footer__links {
      list-style: none;
      padding: 0;
      margin: 0;
  }

  @media (max-width: 768px) {
      .inst-footer__links {
          max-height: 0;
          overflow: hidden;
          transition: max-height 0.3s ease;
      }

      [data-accordion-col].active .inst-footer__links {
          max-height: 500px;
      }
  }

  .inst-footer__links li {
      margin-bottom: 12px;
  }

  .inst-footer__links li:last-child {
      margin-bottom: 0;
  }

  .inst-footer__links a {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 14px;
      padding: 6px 0;
      transition: all 0.3s ease;
  }

  .inst-footer__links a i {
      font-size: 12px;
      color: var(--inst-footer-primary);
  }

  .inst-footer__links a:hover {
      padding-left: 8px;
      color: var(--inst-footer-primary);
  }

  .inst-footer__badge {
      display: inline-block;
      padding: 2px 8px;
      background: var(--inst-footer-primary);
      color: white;
      font-size: 10px;
      font-weight: 700;
      border-radius: 10px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }

  /* Social Media */
  .inst-footer__social {
      margin-top: 30px;
  }

  .inst-footer__social-title {
      font-size: 14px;
      font-weight: 700;
      color: var(--inst-footer-text);
      margin-bottom: 15px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }

  .inst-footer__social-links {
      display: flex;
      gap: 12px;
  }

  .inst-footer__social-link {
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgba(247, 147, 30, 0.1);
      border-radius: 10px;
      border: 1px solid var(--inst-footer-border);
      color: rgba(255, 255, 255, 0.7);
      transition: all 0.3s ease;
  }

  .inst-footer__social-link svg {
      width: 20px;
      height: 20px;
      fill: currentColor;
      transition: fill 0.3s ease;
  }

  .inst-footer__social-link:hover {
      background: var(--inst-footer-primary);
      border-color: var(--inst-footer-primary);
      transform: translateY(-4px);
      box-shadow: 0 6px 20px rgba(247, 147, 30, 0.4);
      color: #ffffff;
  }

  .inst-footer__social-link:hover svg {
      fill: #ffffff !important;
  }

  /* --- TESTIMONIALS --- */
  .inst-footer__testimonials {
      padding: 60px 0;
      border-bottom: 1px solid var(--inst-footer-border);
  }

  .inst-footer__testimonials-title {
      font-size: 24px;
      font-weight: 800;
      color: var(--inst-footer-text);
      text-align: center;
      margin-bottom: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
  }

  .inst-footer__testimonials-title i {
      color: var(--inst-footer-primary);
  }

  .inst-footer__testimonials-slider {
      max-width: 800px;
      margin: 0 auto;
      position: relative;
  }

  .inst-footer__testimonials-track {
      position: relative;
      min-height: 200px;
  }

  .inst-footer__testimonial-item {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      opacity: 0;
      transform: translateX(20px);
      transition: all 0.5s ease;
      pointer-events: none;
  }

  .inst-footer__testimonial-item.active {
      opacity: 1;
      transform: translateX(0);
      position: relative;
      pointer-events: all;
  }

  .inst-footer__testimonial-stars {
      display: flex;
      gap: 4px;
      margin-bottom: 20px;
      justify-content: center;
  }

  .inst-footer__testimonial-stars i {
      color: #FFD700;
      font-size: 18px;
  }

  .inst-footer__testimonial-text {
      font-size: 18px;
      line-height: 1.7;
      color: var(--inst-footer-text);
      text-align: center;
      font-style: italic;
      margin-bottom: 20px;
  }

  @media (max-width: 768px) {
      .inst-footer__testimonial-text {
          font-size: 16px;
      }
  }

  .inst-footer__testimonial-author {
      text-align: center;
      color: var(--inst-footer-text-muted);
  }

  .inst-footer__testimonial-author strong {
      display: block;
      color: var(--inst-footer-text);
      font-size: 16px;
      margin-bottom: 4px;
  }

  .inst-footer__testimonial-author span {
      font-size: 14px;
  }

  .inst-footer__testimonials-dots {
      display: flex;
      justify-content: center;
      gap: 10px;
      margin-top: 30px;
  }

  .inst-footer__testimonials-dot {
      width: 12px;
      height: 12px;
      border-radius: 50%;
      background: rgba(247, 147, 30, 0.2);
      border: none;
      cursor: pointer;
      transition: all 0.3s ease;
  }

  .inst-footer__testimonials-dot:hover {
      background: rgba(247, 147, 30, 0.5);
      transform: scale(1.2);
  }

  .inst-footer__testimonials-dot.active {
      background: var(--inst-footer-primary);
      width: 30px;
      border-radius: 6px;
  }

  /* --- TRUST BADGES --- */
  .inst-footer__trust-badges {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 30px;
      padding: 40px 0;
      flex-wrap: wrap;
  }

  @media (max-width: 768px) {
      .inst-footer__trust-badges {
          gap: 15px;
      }
  }

  .inst-footer__trust-badge {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 12px 20px;
      background: rgba(247, 147, 30, 0.05);
      border-radius: 8px;
      border: 1px solid var(--inst-footer-border);
      font-size: 13px;
      font-weight: 600;
      color: var(--inst-footer-text-muted);
      transition: all 0.3s ease;
  }

  .inst-footer__trust-badge i {
      color: var(--inst-footer-primary);
      font-size: 18px;
  }

  .inst-footer__trust-badge:hover {
      background: rgba(247, 147, 30, 0.1);
      border-color: var(--inst-footer-primary);
      transform: translateY(-2px);
  }

  @media (max-width: 768px) {
      .inst-footer__trust-badge {
          font-size: 11px;
          padding: 10px 15px;
      }

      .inst-footer__trust-badge i {
          font-size: 16px;
      }
  }

  /* --- LEGAL MERGED SECTION --- */
  .inst-footer__legal-merged {
      border-top: 1px solid rgba(255, 255, 255, 0.1);
      margin-top: 40px;
      padding-top: 40px;
  }

  .lopdp-compliance-banner {
      background: rgba(255, 255, 255, 0.05);
      padding: 15px;
      border-radius: 10px;
      margin-bottom: 30px;
      display: flex;
      align-items: center;
      gap: 15px;
      font-size: 0.95em;
  }

  .lopdp-compliance-banner__icon {
      font-size: 24px;
      color: #4CAF50;
  }

  .lopdp-compliance-banner__link {
      text-decoration: underline;
      color: inherit;
  }

  .inst-footer__legal-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 30px;
      margin-bottom: 30px;
  }

  .inst-footer__heading--spaced {
      margin-bottom: 1.5rem;
  }

  .inst-footer__responsible {
      font-size: 0.9em;
      line-height: 1.6;
      opacity: 0.9;
  }

  .inst-footer__responsible p {
      margin-bottom: 5px;
  }

  .inst-footer__responsible-name {
      margin-bottom: 10px !important;
  }

  .inst-footer__responsible-location {
      margin-bottom: 15px !important;
  }

  .inst-footer__responsible-icon {
      margin-right: 5px;
  }

  .inst-footer__compliance-list {
      list-style: none;
      padding: 0;
  }

  .inst-footer__compliance-list li {
      margin-bottom: 10px;
      display: flex;
      align-items: center;
  }

  .inst-footer__compliance-list li:last-child {
      margin-bottom: 0;
  }

  .inst-footer__compliance-icon--green,
  .inst-footer__compliance-icon--blue,
  .inst-footer__compliance-icon--yellow,
  .inst-footer__compliance-icon--purple {
      margin-right: 10px;
      min-width: 20px;
  }

  .inst-footer__compliance-icon--green {
      color: #4CAF50;
  }

  .inst-footer__compliance-icon--blue {
      color: #2196F3;
  }

  .inst-footer__compliance-icon--yellow {
      color: #FFC107;
  }

  .inst-footer__compliance-icon--purple {
      color: #9C27B0;
  }

  .inst-footer__authority {
      margin-top: 20px;
      font-size: 0.85em;
      opacity: 0.8;
      border-top: 1px solid rgba(255, 255, 255, 0.1);
      padding-top: 10px;
  }

  .inst-footer__authority a {
      color: inherit;
      text-decoration: underline;
  }

  .inst-footer__bottom {
      border-top: 1px solid rgba(255, 255, 255, 0.05);
      margin-top: 0;
      padding-top: 20px;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 20px;
      position: relative;
      z-index: 50;
  }

  .inst-footer__bottom-left p {
      margin: 0;
      font-size: 0.9em;
      opacity: 0.7;
  }

  .inst-footer__bottom-right small {
      font-size: 0.9em;
      opacity: 0.7;
  }

  .inst-footer__dev-link {
      color: #F7931E;
      text-decoration: none;
      position: relative;
      z-index: 51;
  }

  .inst-footer__dev-link:hover {
      text-decoration: underline;
  }

  .inst-footer__bottom {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 30px 0;
      font-size: 14px;
      color: var(--inst-footer-text-muted);
  }

  @media (max-width: 768px) {
      .inst-footer__bottom {
          flex-direction: column;
          gap: 20px;
          text-align: center;
      }
  }

  .inst-footer__bottom-left p {
      margin: 5px 0;
  }

  .inst-footer__bottom-right {
      display: flex;
      gap: 20px;
      align-items: center;
  }

  @media (max-width: 768px) {
      .inst-footer__bottom-right {
          flex-wrap: wrap;
          justify-content: center;
      }
  }

  .inst-footer__bottom-right a:hover {
      color: var(--inst-footer-primary);
  }

  .inst-footer__bottom-right span {
      color: var(--inst-footer-border);
  }

  .inst-footer__developer {
      font-size: 12px;
      opacity: 0.7;
  }

  .inst-footer__developer i {
      animation: heartbeat 1.5s ease-in-out infinite;
  }

  /* --- BACK TO TOP --- */
  .inst-footer__back-to-top {
      position: fixed;
      bottom: 30px;
      right: 30px;
      width: 50px;
      height: 50px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: linear-gradient(135deg, var(--inst-footer-primary) 0%, var(--inst-footer-primary-light) 100%);
      border: none;
      border-radius: 50%;
      color: white;
      font-size: 20px;
      cursor: pointer;
      box-shadow: 0 4px 20px rgba(247, 147, 30, 0.4);
      opacity: 0;
      visibility: hidden;
      transform: translateY(20px);
      transition: all 0.3s ease;
      z-index: 999;
  }

  .inst-footer__back-to-top.visible {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
  }

  .inst-footer__back-to-top:hover {
      transform: translateY(-5px);
      box-shadow: 0 8px 30px rgba(247, 147, 30, 0.6);
  }

  .inst-footer__back-to-top:active {
      transform: scale(0.95);
  }

  @media (max-width: 768px) {
      .inst-footer__back-to-top {
          bottom: 100px;
          right: 20px;
          width: 45px;
          height: 45px;
      }
  }

  /* --- FLOATING ACTIONS --- */
  .inst-footer__floating-actions {
      position: fixed;
      bottom: 30px;
      left: 30px;
      z-index: 999;
  }

  @media (max-width: 768px) {
      .inst-footer__floating-actions {
          left: 20px;
          bottom: 100px;
      }
  }

  .inst-footer__floating-btn {
      width: 60px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #25D366;
      border-radius: 50%;
      color: white;
      font-size: 30px;
      box-shadow: 0 4px 20px rgba(37, 211, 102, 0.4);
      transition: all 0.3s ease;
      animation: float 3s ease-in-out infinite;
  }

  .inst-footer__floating-btn:hover {
      transform: translateY(-5px) scale(1.1);
      box-shadow: 0 8px 30px rgba(37, 211, 102, 0.6);
  }

  .inst-footer__floating-btn:active {
      transform: scale(0.95);
  }

  @media (max-width: 768px) {
      .inst-footer__floating-btn {
          width: 55px;
          height: 55px;
          font-size: 26px;
      }
  }

  /* --- TOOLTIP --- */
  .inst-tooltip {
      position: fixed;
      background: rgba(10, 14, 39, 0.95);
      color: white;
      padding: 8px 12px;
      border-radius: 6px;
      font-size: 13px;
      font-weight: 500;
      z-index: 10000;
      pointer-events: none;
      opacity: 0;
      transform: translateY(-5px);
      transition: all 0.2s ease;
      white-space: nowrap;
  }

  .inst-tooltip::before {
      content: '';
      position: absolute;
      bottom: -5px;
      left: 50%;
      transform: translateX(-50%);
      border-left: 5px solid transparent;
      border-right: 5px solid transparent;
      border-top: 5px solid rgba(10, 14, 39, 0.95);
  }

  .inst-tooltip.visible {
      opacity: 1;
      transform: translateY(0);
  }

  /* --- ANIMATIONS --- */
  @keyframes pulse {

      0%,
      100% {
          opacity: 1;
          transform: scale(1);
      }

      50% {
          opacity: 0.7;
          transform: scale(1.1);
      }
  }

  @keyframes spin {
      from {
          transform: rotate(0deg);
      }

      to {
          transform: rotate(360deg);
      }
  }

  @keyframes heartbeat {

      0%,
      100% {
          transform: scale(1);
      }

      10%,
      30% {
          transform: scale(1.1);
      }

      20%,
      40% {
          transform: scale(0.9);
      }
  }

  @keyframes float {

      0%,
      100% {
          transform: translateY(0);
      }

      50% {
          transform: translateY(-10px);
      }
  }

  /* Fade up animation */
  [data-animate="fade-up"] {
      opacity: 0;
      transform: translateY(30px);
      transition: all 0.6s ease;
  }

  [data-animate="fade-up"].inst-animate-visible {
      opacity: 1;
      transform: translateY(0);
  }

  /* --- RESPONSIVE --- */
  @media (max-width: 1024px) {
      .inst-footer__main {
          gap: 40px;
      }

      .inst-footer__newsletter {
          margin: 40px 0;
      }
  }

  @media (max-width: 768px) {
      .inst-footer__wave svg {
          height: 50px;
      }

      .inst-footer__stats {
          padding: 40px 20px;
      }

      .inst-footer__stats-grid {
          gap: 30px;
      }

      .inst-footer__stat-number {
          font-size: 40px;
      }

      .inst-footer__newsletter {
          border-radius: 12px;
          padding: 30px 15px;
      }

      .inst-footer__testimonials {
          padding: 40px 0;
      }

      .inst-footer__testimonial-text {
          font-size: 15px;
      }

      .inst-footer__bottom {
          padding: 20px 0;
          font-size: 13px;
      }

      .inst-footer__bottom-right {
          gap: 15px;
      }
  }

  @media (max-width: 480px) {
      .inst-footer__stats-grid {
          grid-template-columns: repeat(2, 1fr);
          gap: 20px;
      }

      .inst-footer__newsletter-title {
          font-size: 20px;
      }

      .inst-footer__newsletter-subtitle {
          font-size: 14px;
      }

      .inst-footer__trust-badges {
          flex-direction: column;
          gap: 10px;
      }

      .inst-footer__trust-badge {
          width: 100%;
          justify-content: center;
      }
  }

  /* --- ACCESSIBILITY --- */
  @media (prefers-reduced-motion: reduce) {

      *,
      *::before,
      *::after {
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
          transition-duration: 0.01ms !important;
      }
  }

  *:focus-visible {
      outline: 3px solid var(--inst-footer-primary);
      outline-offset: 2px;
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  /* ==========================================================================
    MOBILE MENU - CSS COMPILADO
    INSTANET Ecuador - PROMPT 14
    ========================================================================== */

  /* ==========================================================================
    LAYOUT FIXES - REMOVED 100vw FORCE
    ========================================================================== */

  /* Standard Box Sizing */
  *,
  *::before,
  *::after {
      box-sizing: border-box;
  }

  /* Container Fixes - Professional Boxed Layout */
  .container,
  .site-content .entry-header,
  .site-content .entry-content,
  .site-footer .container,
  .site-header .container {
      max-width: 1400px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%;
  }

  /* Ensure images don't overflow */
  img,
  video,
  iframe,
  embed,
  object {
      max-width: 100%;
      height: auto;
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {

      .container,
      .site-content .entry-header,
      .site-content .entry-content,
      .site-footer .container,
      .site-header .container {
          padding-left: 15px;
          padding-right: 15px;
      }
  }

  body.mobile-menu-open {
      overflow: hidden;
      position: fixed;
      width: 100%;
  }

  .inst-mobile-toggle {
      width: auto;
      height: 40px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      background: none;
      border: none;
      cursor: pointer;
      padding: 8px 16px;
      z-index: 10001;
      transition: opacity 0.3s ease;
  }

  @media (min-width: 1024px) {
      .inst-mobile-toggle {
          display: none;
      }
  }

  .inst-mobile-toggle__text {
      color: #F7931E;
      font-size: 14px;
      font-weight: 600;
      letter-spacing: 1.5px;
      text-transform: uppercase;
  }

  .inst-mobile-toggle:hover {
      opacity: 0.8;
  }

  /* Eliminar estilos de líneas ya que ahora es texto */
  .inst-mobile-toggle__line {
      display: none;
  }

  .inst-mobile-menu {
      position: fixed;
      right: 0;
      width: 85%;
      max-width: 400px;
      height: 100vh;
      background-color: #FFFFFF;
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
      z-index: 10000;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      transform: translateX(100%);
      transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mobile-menu.is-open {
      transform: translateX(0);
  }

  @media (min-width: 1024px) {
      .inst-mobile-menu {
          display: none;
      }
  }

  .inst-mobile-menu__close {
      position: absolute;
      top: 16px;
      right: 16px;
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: none;
      border: none;
      cursor: pointer;
      color: #0A0E27;
      transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mobile-menu__close:hover {
      color: #F7931E;
  }

  .inst-mobile-menu__close svg {
      width: 32px;
      height: 32px;
  }

  .inst-mobile-menu__content {
      padding: 80px 24px 32px 24px;
  }

  .inst-mobile-menu__header {
      margin-bottom: 32px;
      text-align: center;
  }

  .inst-mobile-menu__header a {
      display: inline-block;
  }

  .inst-mobile-menu__logo {
      height: 40px;
      width: auto;
  }

  .inst-mobile-menu__nav {
      list-style: none;
      padding: 0;
      margin: 0 0 32px 0;
  }

  .inst-mobile-menu__item {
      margin-bottom: 8px;
  }

  .inst-mobile-menu__item:last-child {
      margin-bottom: 0;
  }

  .inst-mobile-menu__link {
      display: block;
      padding: 16px 16px;
      font-family: "Poppins", system-ui, -apple-system, sans-serif;
      font-size: 18px;
      font-weight: 600;
      color: #0A0E27;
      text-decoration: none;
      border-radius: 8px;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mobile-menu__link:hover,
  .inst-mobile-menu__link:focus {
      background-color: #F3F4F6;
      color: #F7931E;
  }

  .inst-mobile-menu__link:focus {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  .inst-mobile-menu__cta {
      margin-bottom: 32px;
  }

  .inst-mobile-menu__cta .inst-button {
      width: 100%;
  }

  .inst-mobile-menu__contact {
      padding-top: 24px;
      border-top: 1px solid #E5E7EB;
  }

  .inst-mobile-menu__contact-link {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 16px;
      font-family: "Inter", system-ui, -apple-system, sans-serif;
      font-size: 16px;
      color: #374151;
      text-decoration: none;
      border-radius: 8px;
      transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
      margin-bottom: 8px;
  }

  .inst-mobile-menu__contact-link:last-child {
      margin-bottom: 0;
  }

  .inst-mobile-menu__contact-link svg {
      width: 20px;
      height: 20px;
      color: #F7931E;
      flex-shrink: 0;
  }

  .inst-mobile-menu__contact-link:hover,
  .inst-mobile-menu__contact-link:focus {
      background-color: #F3F4F6;
      color: #F7931E;
  }

  .inst-mobile-menu__contact-link:focus {
      outline: 2px solid #F7931E;
      outline-offset: 2px;
  }

  .inst-mobile-menu-overlay {
      position: fixed;
      inset: 0;
      background-color: rgba(10, 14, 39, 0.6);
      backdrop-filter: blur(4px);
      z-index: 9999;
      opacity: 0;
      pointer-events: none;
      transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-mobile-menu-overlay.is-visible {
      opacity: 1;
      pointer-events: auto;
  }

  .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
  }

  @keyframes slideInRight {
      from {
          transform: translateX(100%);
      }

      to {
          transform: translateX(0);
      }
  }

  @keyframes fadeIn {
      from {
          opacity: 0;
      }

      to {
          opacity: 1;
      }
  }

  @media (prefers-reduced-motion: reduce) {

      .inst-mobile-menu,
      .inst-mobile-menu-overlay,
      .inst-mobile-toggle__line {
          transition: none !important;
      }
  }

  /* ============================================
    MOBILE MENU ULTRA - INSTANET BRANDED
    ============================================ */

  .mobile-menu-toggle {
      position: fixed;
      top: 20px;
      right: 20px;
      z-index: 100000;
      display: none;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 12px 20px;
      background: #f39c12;
      color: #ffffff;
      border: none;
      border-radius: 25px;
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      cursor: pointer;
      transition: all 200ms ease;
      box-shadow: 0 4px 12px rgba(243, 156, 18, 0.4);
      white-space: nowrap;
  }

  @media (max-width: 1024px) {
      .mobile-menu-toggle {
          display: flex;
          right: 20px;
          top: 20px;
          padding: 12px 20px;
          font-size: 14px;
          gap: 8px;
      }
  }

  @media (min-width: 1025px) {
      .mobile-menu-toggle {
          display: none !important;
      }
  }

  .mobile-menu-toggle:hover {
      background: #d4840f;
      box-shadow: 0 6px 16px rgba(243, 156, 18, 0.4);
      transform: translateY(-2px);
  }

  .mobile-menu-toggle:active {
      transform: translateY(0);
  }

  .mobile-menu-toggle .menu-icon {
      width: 18px;
      height: 18px;
      color: currentColor;
  }

  .mobile-menu-toggle .menu-text {
      font-size: 13px;
      font-weight: 800;
  }

  .mobile-menu-toggle.is-open {
      /* Mantiene visible el botón */
  }

  .mobile-menu-overlay {
      position: fixed;
      inset: 0;
      z-index: 99998;
      background: rgba(0, 0, 0, 0.75);
      backdrop-filter: blur(8px);
      opacity: 0;
      visibility: hidden;
      transition: opacity 300ms cubic-bezier(0.4, 0, 0.2, 1), visibility 300ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .mobile-menu-overlay.is-active {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
  }

  .mobile-menu-drawer {
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      z-index: 99998;
      width: 85%;
      max-width: 360px;
      background: #1a1a1a;
      display: flex;
      flex-direction: column;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      transform: translateX(100%);
      transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
      box-shadow: -4px 0 24px rgba(0, 0, 0, 0.3);
      border-radius: 24px 0 0 24px;
  }

  .mobile-menu-drawer.is-active {
      transform: translateX(0);
  }

  .mobile-menu-header {
      position: relative;
      padding: 32px 24px 24px;
      background: linear-gradient(135deg, #151515 0%, #1a1a1a 100%);
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .mobile-menu-brand {
      display: flex;
      flex-direction: column;
      gap: 8px;
  }

  .mobile-menu-logo {
      width: auto;
      height: 32px;
      object-fit: contain;
  }

  .mobile-menu-brand-text {
      margin: 0;
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Helvetica Neue', Arial, sans-serif;
      font-size: 24px;
      font-weight: 800;
      color: #ffffff;
      letter-spacing: 1px;
      text-transform: uppercase;
  }

  .mobile-menu-tagline {
      margin: 0;
      font-size: 13px;
      font-weight: 500;
      color: #b0b0b0;
  }

  .mobile-menu-close {
      position: absolute;
      top: 24px;
      right: 24px;
      padding: 8px;
      background: rgba(255, 255, 255, 0.1);
      color: #ffffff;
      border: none;
      border-radius: 50%;
      cursor: pointer;
      transition: all 200ms ease;
  }

  .mobile-menu-close:hover {
      background: rgba(255, 255, 255, 0.15);
      transform: rotate(90deg);
  }

  .mobile-menu-close svg {
      display: block;
      width: 20px;
      height: 20px;
  }

  .mobile-menu-content {
      flex: 1;
      padding: 16px 0;
      overflow-y: auto;
  }

  .mobile-menu-nav {
      list-style: none;
      margin: 0;
      padding: 0;
  }

  .mobile-menu-nav-item {
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .mobile-menu-nav-item:last-child {
      border-bottom: none;
  }

  .mobile-menu-nav-link {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 16px 24px;
      color: #ffffff;
      text-decoration: none;
      font-size: 16px;
      font-weight: 500;
      transition: background 200ms ease;
  }

  .mobile-menu-nav-link:hover {
      background: rgba(255, 255, 255, 0.05);
  }

  .mobile-menu-nav-link:active {
      background: rgba(255, 255, 255, 0.08);
  }

  .mobile-menu-nav-icon {
      flex-shrink: 0;
      width: 20px;
      height: 20px;
      color: #f39c12;
  }

  .mobile-menu-nav-icon svg {
      display: block;
      width: 100%;
      height: 100%;
  }

  .mobile-menu-nav-label {
      flex: 1;
  }

  .mobile-menu-nav-arrow {
      flex-shrink: 0;
      width: 16px;
      height: 16px;
      color: #b0b0b0;
      opacity: 0.5;
      transition: transform 200ms ease, opacity 200ms ease;
  }

  .mobile-menu-nav-link:hover .mobile-menu-nav-arrow {
      opacity: 1;
      transform: translateX(4px);
  }

  .mobile-menu-cta {
      padding: 16px 24px;
  }

  .mobile-menu-cta-button {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      width: 100%;
      padding: 14px 24px;
      background: #f39c12;
      color: #ffffff;
      font-size: 15px;
      font-weight: 700;
      text-decoration: none;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      border-radius: 8px;
      transition: all 200ms ease;
      box-shadow: 0 4px 12px rgba(243, 156, 18, 0.3);
  }

  .mobile-menu-cta-button:hover {
      background: #d4840f;
      box-shadow: 0 6px 16px rgba(243, 156, 18, 0.4);
      transform: translateY(-2px);
  }

  .mobile-menu-cta-button svg {
      width: 18px;
      height: 18px;
  }

  .mobile-menu-contact {
      display: flex;
      flex-direction: column;
      gap: 12px;
      padding: 16px 24px;
      margin-top: 8px;
      border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .mobile-menu-contact-item {
      display: flex;
      align-items: center;
      gap: 12px;
      color: #b0b0b0;
      text-decoration: none;
      font-size: 14px;
      transition: color 200ms ease;
  }

  .mobile-menu-contact-item:hover {
      color: #f39c12;
  }

  .mobile-menu-contact-item svg {
      flex-shrink: 0;
      width: 18px;
      height: 18px;
  }

  .mobile-menu-footer {
      padding: 24px 24px 32px;
      background: #151515;
      border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .mobile-menu-footer-title {
      margin: 0 0 16px;
      font-size: 13px;
      font-weight: 600;
      color: #b0b0b0;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }

  .mobile-menu-social {
      display: flex;
      gap: 12px;
      margin-bottom: 20px;
  }

  .mobile-menu-social-link {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 44px;
      height: 44px;
      background: rgba(255, 255, 255, 0.08);
      color: #ffffff;
      border-radius: 50%;
      text-decoration: none;
      transition: all 200ms ease;
  }

  .mobile-menu-social-link:hover {
      background: #f39c12;
      transform: translateY(-4px) scale(1.1);
      box-shadow: 0 6px 12px rgba(243, 156, 18, 0.4);
  }

  .mobile-menu-social-link--whatsapp:hover {
      background: #25d366;
      box-shadow: 0 6px 12px rgba(37, 211, 102, 0.4);
  }

  .mobile-menu-social-link svg {
      width: 20px;
      height: 20px;
  }

  .mobile-menu-legal {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      font-size: 12px;
      color: #b0b0b0;
  }

  .mobile-menu-legal a {
      color: #b0b0b0;
      text-decoration: none;
      transition: color 200ms ease;
  }

  .mobile-menu-legal a:hover {
      color: #f39c12;
  }

  .mobile-menu-legal-separator {
      opacity: 0.3;
  }

  body.mobile-menu-open {
      overflow: hidden;
      position: fixed;
      width: 100%;
  }

  @media (prefers-reduced-motion: reduce) {

      .mobile-menu-toggle,
      .mobile-menu-overlay,
      .mobile-menu-drawer,
      .mobile-menu-close,
      .mobile-menu-nav-link,
      .mobile-menu-cta-button,
      .mobile-menu-social-link {
          transition: none !important;
      }
  }

  /* ==========================================
     MOBILE MENU TOGGLE - BOTÓN MENÚ INSTANET
     ========================================== */
  .mobile-menu-toggle {
      position: fixed;
      top: 20px;
      right: 20px;
      z-index: 100000;
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 10px 16px;
      background: #F7931E;
      color: #fff;
      border: none;
      border-radius: 24px;
      font-family: 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      cursor: pointer;
      transition: all 200ms ease;
      box-shadow: 0 4px 12px rgba(247, 147, 30, 0.3);
  }

  .mobile-menu-toggle:hover {
      background: #D97706;
      box-shadow: 0 6px 16px rgba(247, 147, 30, 0.4);
      transform: translateY(-2px);
  }

  .mobile-menu-toggle:active {
      transform: translateY(0);
  }

  .mobile-menu-toggle .menu-icon {
      width: 18px;
      height: 18px;
      color: currentColor;
  }

  .mobile-menu-toggle .menu-text {
      font-size: 13px;
      font-weight: 800;
  }

  .mobile-menu-toggle.is-open {
      /* Mantiene visible el botón */
  }

  /* Hamburger Morphing Animation */
  .hamburger-svg .line-1,
  .hamburger-svg .line-2,
  .hamburger-svg .line-3 {
      transition: transform 300ms ease, opacity 300ms ease;
      transform-origin: center;
  }
  .mobile-menu-toggle.is-open .line-1 {
      transform: translateY(6px) rotate(45deg);
  }
  .mobile-menu-toggle.is-open .line-2 {
      opacity: 0;
  }
  .mobile-menu-toggle.is-open .line-3 {
      transform: translateY(-6px) rotate(-45deg);
  }

  /* Ocultar en desktop (1025px+) */
  @media (min-width: 1025px) {
      .mobile-menu-toggle {
          display: none !important;
      }
  }

  /* Mobile Menu Overlay */
  .mobile-menu-overlay {
      position: fixed;
      inset: 0;
      z-index: 999999;
      background: rgba(0, 0, 0, 0.75);
      backdrop-filter: blur(8px);
      opacity: 0;
      visibility: hidden;
      transition: opacity 300ms ease, visibility 300ms ease;
  }

  .mobile-menu-overlay.is-active {
      opacity: 1;
      visibility: visible;
  }

  /* Mobile Menu Drawer */
  .mobile-menu-drawer {
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      z-index: 1000000;
      width: 85%;
      max-width: 360px;
      background: #1a1a1a;
      display: flex;
      flex-direction: column;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      transform: translateX(100%);
      transition: transform 300ms ease;
      box-shadow: -4px 0 24px rgba(0, 0, 0, 0.3);
      border-radius: 24px 0 0 24px;
  }

  /* Animaciones Escalonadas */
  .mobile-menu-nav-item, 
  .mobile-menu-cta, 
  .mobile-menu-contact, 
  .mobile-menu-footer {
      opacity: 0;
      transform: translateY(15px);
      transition: opacity 400ms ease, transform 400ms ease;
  }

  .mobile-menu-drawer.is-active .mobile-menu-nav-item,
  .mobile-menu-drawer.is-active .mobile-menu-cta,
  .mobile-menu-drawer.is-active .mobile-menu-contact,
  .mobile-menu-drawer.is-active .mobile-menu-footer {
      opacity: 1;
      transform: translateY(0);
  }

  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(1) { transition-delay: 50ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(2) { transition-delay: 100ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(3) { transition-delay: 150ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(4) { transition-delay: 200ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(5) { transition-delay: 250ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(6) { transition-delay: 300ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(7) { transition-delay: 350ms; }
  .mobile-menu-drawer.is-active .mobile-menu-nav-item:nth-child(8) { transition-delay: 400ms; }
  .mobile-menu-drawer.is-active .mobile-menu-cta { transition-delay: 450ms; }
  .mobile-menu-drawer.is-active .mobile-menu-contact { transition-delay: 500ms; }
  .mobile-menu-drawer.is-active .mobile-menu-footer { transition-delay: 550ms; }

  .mobile-menu-drawer.is-active {
      transform: translateX(0);
  }

  /* Mobile Menu Close Button (X) */
  .mobile-menu-close {
      position: absolute;
      top: 16px;
      right: 16px;
      z-index: 1000001;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 48px;
      height: 48px;
      padding: 10px;
      background: #F7931E;
      color: #fff;
      border: none;
      border-radius: 50%;
      cursor: pointer;
      transition: all 200ms ease;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  }

  .mobile-menu-close:hover {
      background: rgba(255, 255, 255, 0.2);
      transform: rotate(90deg);
  }

  .mobile-menu-close:active {
      transform: scale(0.95);
  }

  .mobile-menu-close svg {
      display: block;
      width: 20px;
      height: 20px;
      pointer-events: none;
  }

  /* Mobile Menu Header */
  .mobile-menu-header {
      position: relative;
      padding: 32px 24px 24px;
      background: linear-gradient(135deg, #121212 0%, #1a1a1a 100%);
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  /* ============================================
    FIX HEADER MÓVIL - OCULTAR BARRA, SOLO HAMBURGUESA
    ============================================ */
  @media (max-width: 1024px) {
      #masthead {
          display: none !important;
      }
  }

  /* ══════════════════════════════════════════════════════════════
     INSTANET WHITE REDESIGN v5.0 — CTA FINAL OVERRIDES
     ══════════════════════════════════════════════════════════════ */

  .inst-cta-final {
      background: #FFFFFF;
      padding: 80px 24px;
  }

  .inst-cta-final__card {
      position: relative;
      max-width: 1100px;
      margin: 0 auto;
      padding: 72px 48px;
      background: linear-gradient(135deg, #F7931E 0%, #E5820D 100%);
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 20px 60px -30px rgba(247, 147, 30, 0.45);
  }

  .inst-cta-final__card .inst-cta-final__pattern {
      position: absolute;
      inset: 0;
      border-radius: 24px;
      pointer-events: none;
  }

  .inst-cta-final__card .inst-cta-final__content {
      position: relative;
      z-index: 1;
  }

  /* Badge con SVG (sin emoji) */
  .inst-cta-final__badge-icon {
      vertical-align: middle;
      margin-right: 8px;
      flex-shrink: 0;
  }

  /* Botón primario invertido: blanco sobre naranja */
  .inst-cta-final .inst-button--primary {
      background-color: #FFFFFF;
      color: #F7931E;
      border: 2px solid #FFFFFF;
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
      animation: none;
      transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1),
                  box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1),
                  color 250ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .inst-cta-final .inst-button--primary:hover,
  .inst-cta-final .inst-button--primary:focus-visible {
      background-color: #FFFFFF;
      color: #E5820D;
      transform: translateY(-2px);
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
  }

  @media (max-width: 767px) {
      .inst-cta-final {
          padding: 60px 16px;
      }

      .inst-cta-final__card {
          padding: 48px 24px;
          border-radius: 20px;
      }
  }

  /* ══════════════════════════════════════════════════════════════
     INSTANET WHITE REDESIGN v5.0 — DESIGN TOKENS
     ══════════════════════════════════════════════════════════════ */

  :root {
      --inst-bg: #FFFFFF;
      --inst-surface: #F8F9FC;
      --inst-text: #0F172A;
      --inst-text-muted: #64748B;
      --inst-orange: #F7931E;
      --inst-orange-hover: #E5820D;
      --inst-border: #E2E8F0;
      --inst-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
      --inst-shadow-hover: 0 8px 32px rgba(0, 0, 0, 0.1);
      --inst-radius: 16px;
      --inst-radius-lg: 24px;
      --inst-transition: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  }

    @media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
            animation-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            scroll-behavior: auto !important;
        }
    }

    /* ══════════════════════════════════════════════════════════════
       OVERRIDE DEFINITIVO: CERO FONDO DETRÁS DE LA CÁPSULA NAVBAR
       ══════════════════════════════════════════════════════════════ */
    html body #masthead,
    html body .site-header-wrapper,
    html body .site-header-wrapper.is-scrolled,
    html body #masthead.is-scrolled,
    html body .site-header,
    html body .site-header .container,
    html body #masthead .container {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        border: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        padding-top: 0 !important;
        margin-top: 0 !important;
    }