.elementor-widget-container [data-tippy-root] > .tippy-box{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-container [data-tippy-root] > .tippy-box .tippy-arrow{color:var( --e-global-color-primary );}.elementor-2885 .elementor-element.elementor-element-698faee{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-html [data-tippy-root] > .tippy-box{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-html [data-tippy-root] > .tippy-box .tippy-arrow{color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 input:not([type="submit"]){background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 select{background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 textarea{background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 label{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-html ::placeholder{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7-submit{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 input[type="submit"]:hover{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );}.elementor-widget-shortcode [data-tippy-root] > .tippy-box{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-shortcode [data-tippy-root] > .tippy-box .tippy-arrow{color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7 input:not([type="submit"]){background-color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7 select{background-color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7 textarea{background-color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7 label{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-shortcode ::placeholder{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7-submit{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );}.elementor-widget-shortcode .wpcf7 input[type="submit"]:hover{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-e7c7a61 */.container{width:min(var(--max), calc(100% - 48px)); margin:0 auto;}
    .section{padding:84px 0;}

    /* Header */
    .chip{
      display:inline-flex; align-items:center; gap:10px;
      padding:10px 14px; border:1px solid var(--line); border-radius:999px;
      background:#fff; box-shadow: 0 1px 0 rgba(11,18,32,.03);
      font-size:14px; font-weight:900;
    }
    .dot{
      width:9px;height:9px;border-radius:50%;
      background:var(--accent);
    }
    .head{
      display:flex; align-items:flex-end; justify-content:space-between;
      gap:18px; margin-bottom: 22px;
    }
    .head h2{
      font-size: clamp(24px, 3.2vw, 40px);
      letter-spacing:-.6px;
      margin:10px 0 0;
      line-height:1.15;
    }
    .head p{margin:0; color:var(--muted); max-width: 62ch; line-height:1.6}

    /* Shell */
    .shell{
      border: 1px solid rgba(11,18,32,.08);
      border-radius: 28px;
      background:
        radial-gradient(circle at 18% 20%, rgba(210,128,48,.08), transparent 45%),
        radial-gradient(circle at 82% 70%, rgba(86,139,197,.10), transparent 45%),
        #fff;
      box-shadow: 0 1px 0 rgba(11,18,32,.03);
      padding: 18px;
      overflow:hidden;
      position:relative;
    }
    .shell:before{
      content:"";
      position:absolute; inset:-120px;
      background: radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.55), transparent 45%);
      opacity:.55;
      pointer-events:none;
    }
    .grid{
      display:grid;
      grid-template-columns: 1fr 1.1fr;
      gap: 16px;
      position:relative;
    }

    /* Panels */
    .panel{
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 22px;
      background: rgba(255,255,255,.90);
      box-shadow: 0 10px 22px rgba(11,18,32,.06);
      padding: 16px;
      position:relative;
      overflow:hidden;
    }
    .panel:before{
      content:"";
      position:absolute; inset:-90px;
      background: radial-gradient(circle at 22% 20%, rgba(210,128,48,.08), transparent 55%),
                  radial-gradient(circle at 78% 70%, rgba(86,139,197,.09), transparent 58%);
      opacity:.8;
      pointer-events:none;
    }
    .panel h3{
      margin: 0 0 10px;
      font-size: 18px;
      letter-spacing:-.2px;
      font-weight:950;
      position:relative;
    }
    .sub{
      margin: 0 0 14px;
      color: var(--muted);
      line-height:1.55;
      font-size: 13px;
      position:relative;
    }

    /* Inputs */
    .row{display:flex; gap:12px; align-items:center; justify-content:space-between; margin: 10px 0; position:relative;}
    .row label{font-weight:900; font-size:13px;}
    .val{
      font-weight:950; font-size:13px; color:#2b3340;
      background:#fff; border:1px solid rgba(11,18,32,.10);
      border-radius:999px; padding:6px 10px;
    }
    input[type="range"]{width: 100%;}
    .rangeWrap{display:grid; gap:8px; margin: 10px 0 14px; position:relative;}
    .rangeWrap small{color: var(--muted);}

    /* Switches (sliders) */
    .switchWrap{display:grid; gap:10px; margin-top: 10px; position:relative;}
    .switchLine{display:flex; align-items:center; justify-content:space-between; gap:12px;}
    .switchLabel{font-size:13px; font-weight:950;}
    .switch{
      width: 320px;
      max-width: 100%;
      height: 44px;
      background: rgba(11,18,32,.04);
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 999px;
      position:relative;
      overflow:hidden;
      box-shadow: 0 1px 0 rgba(11,18,32,.03);
    }
    .switch button{
      position:absolute; inset:0;
      width:100%;
      height:100%;
      background: transparent;
      border:none;
      cursor:pointer;
      padding:0;
    }
    .knob{
      position:absolute;
      top: 3px;
      left: 3px;
      width: calc(50% - 6px);
      height: calc(100% - 6px);
      border-radius: 999px;
      background: var(--accent);
      box-shadow: 0 18px 44px rgba(35,69,121,.18);
      transition: transform .28s var(--ease);
    }
    .switch[data-state="monthly"] .knob{ transform: translateX(100%); }
    .switchText{
      position:absolute; inset:0;
      display:grid;
      grid-template-columns: 1fr 1fr;
      align-items:center;
      font-size:12px;
      font-weight:950;
      letter-spacing:.2px;
      color:#2b3340;
      user-select:none;
      padding: 0 10px;
      gap: 10px;
    }
    .switchText span{
      display:flex; align-items:center; justify-content:center;
      padding: 0 8px;
      text-align:center;
      line-height:1.1;
    }
    .switch[data-state="annual"] .switchText span:first-child{ color:#fff; }
    .switch[data-state="monthly"] .switchText span:last-child{ color:#fff; }

    .miniHint{
      margin: 6px 0 0;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.45;
      position:relative;
    }

    /* Toggle (single) as switch */
    .miniSwitch{
      width: 200px;
      max-width: 100%;
      height: 38px;
      background: rgba(11,18,32,.04);
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 999px;
      position:relative;
      overflow:hidden;
      box-shadow: 0 1px 0 rgba(11,18,32,.03);
    }
    .miniKnob{
      position:absolute; top:3px; left:3px;
      width: calc(50% - 6px);
      height: calc(100% - 6px);
      border-radius: 999px;
      background: var(--accent2);
      transition: transform .28s var(--ease);
      box-shadow: 0 14px 34px rgba(35,69,121,.14);
    }
    .miniSwitch[data-on="0"] .miniKnob{ transform: translateX(0%); }
    .miniSwitch[data-on="1"] .miniKnob{ transform: translateX(100%); }
    .miniSwitch .txt{
      position:absolute; inset:0;
      display:grid; grid-template-columns: 1fr 1fr;
      align-items:center;
      font-size:12px;
      font-weight:950;
      color:#2b3340;
      user-select:none;
      padding: 0 10px;
    }
    .miniSwitch[data-on="0"] .txt span:first-child{ color:#fff; }
    .miniSwitch[data-on="1"] .txt span:last-child{ color:#fff; }
    .miniSwitch button{position:absolute; inset:0; width:100%; height:100%; border:none; background:transparent; cursor:pointer;}

    /* Result card */
    .resultCard{
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 22px;
      background:#fff;
      padding: 16px;
      box-shadow: 0 10px 22px rgba(11,18,32,.06);
      position:relative;
      overflow:hidden;
    }
    .resultCard:before{
      content:"";
      position:absolute; inset:-120px;
      background: radial-gradient(circle at 25% 20%, rgba(210,128,48,.14), transparent 55%),
                  radial-gradient(circle at 80% 70%, rgba(86,139,197,.14), transparent 58%);
      opacity:.9;
      pointer-events:none;
    }
    .pulse{ animation: pulse .45s var(--ease); }
    @keyframes pulse{
      0%{ transform: translateY(0); }
      35%{ transform: translateY(-3px); }
      100%{ transform: translateY(0); }
    }

    .topline{display:flex; align-items:flex-start; justify-content:space-between; gap:10px; position:relative;}
    .name{font-weight:950; letter-spacing:-.2px; margin:0; font-size:16px;}
    .tag{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.90);
      font-size: 12px;
      font-weight:950;
      color:#2b3340;
      white-space:nowrap;
    }
    .price{
      font-weight:950;
      font-size:28px;
      letter-spacing:-.6px;
      margin-top:10px;
      position:relative;
      display:flex; align-items:baseline; gap:8px; flex-wrap:wrap;
    }
    .price small{color:var(--muted); font-size:12px; font-weight:900;}
    .lineInfo{margin-top:6px; color:var(--muted); font-size:12px; line-height:1.5; position:relative;}

    .metrics{display:grid; grid-template-columns: repeat(3, 1fr); gap:10px; margin-top: 12px; position:relative;}
    .m{
      border:1px solid rgba(11,18,32,.10);
      border-radius: 16px;
      background: rgba(255,255,255,.92);
      padding: 10px 10px;
    }
    .m b{display:block; font-size:12px; color:var(--muted);}
    .m span{font-weight:950; font-size:14px;}

    /* “Más por menos” highlight */
    .moreLess{
      margin-top: 12px;
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 22px;
      background:
        radial-gradient(circle at 25% 20%, rgba(210,128,48,.10), transparent 55%),
        radial-gradient(circle at 80% 70%, rgba(86,139,197,.12), transparent 58%),
        #fff;
      padding: 14px;
      box-shadow: 0 10px 22px rgba(11,18,32,.06);
      position:relative;
      overflow:hidden;
    }
    .mlTitle{
      font-weight: 950;
      font-size: 14px;
      letter-spacing:-.2px;
      margin:0 0 8px;
    }
    .mlGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
    }
    .mlBox{
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 16px;
      background: rgba(255,255,255,.92);
      padding: 10px;
    }
    .mlBox b{display:block; font-size:12px; color:var(--muted);}
    .mlBox span{font-weight:950; font-size:13px;}
    .good{
      background: linear-gradient(135deg, rgba(86,139,197,.16), rgba(210,128,48,.16));
      border-color: rgba(11,18,32,.10);
    }
    .badgeGood{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius:999px;
      background: var(--accent);
      color:#fff;
      font-weight:950;
      font-size:12px;
      margin-top: 10px;
    }

    /* Comparison table */
    .table{
      margin-top: 12px;
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 18px;
      overflow:hidden;
      background:#fff;
      position:relative;
    }
    table{width:100%; border-collapse:collapse; font-size:13px;}
    thead th{
      text-align:left;
      padding: 12px 12px;
      background: rgba(11,18,32,.03);
      border-bottom: 1px solid rgba(11,18,32,.08);
      font-weight:950;
    }
    tbody td{
      padding: 12px 12px;
      border-bottom: 1px solid rgba(11,18,32,.06);
      vertical-align:top;
    }
    tbody tr:last-child td{border-bottom:none;}
    .right{text-align:right;}
    .hl{
      font-weight:950;
      background: linear-gradient(135deg, rgba(210,128,48,.14), rgba(86,139,197,.14));
    }

    /* Competitor catalog strip */
    .stripTitle{
      margin-top: 14px;
      font-weight: 950;
      font-size: 14px;
      letter-spacing:-.2px;
      position:relative;
    }
    .strip{
      margin-top: 10px;
      display:flex;
      gap:10px;
      overflow:auto;
      padding-bottom: 6px;
      scroll-snap-type: x mandatory;
    }
    .strip::-webkit-scrollbar{height:10px}
    .strip::-webkit-scrollbar-thumb{background: rgba(11,18,32,.16); border-radius:999px}
    .cCard{
      min-width: 240px;
      scroll-snap-align: start;
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 18px;
      background:#fff;
      padding: 12px;
      box-shadow: 0 10px 22px rgba(11,18,32,.06);
      position:relative;
      overflow:hidden;
    }
    .cCard:before{
      content:"";
      position:absolute; inset:-90px;
      background: radial-gradient(circle at 25% 20%, rgba(210,128,48,.10), transparent 55%),
                  radial-gradient(circle at 80% 70%, rgba(86,139,197,.10), transparent 58%);
      opacity:.85;
      pointer-events:none;
    }
    .cTop{display:flex; justify-content:space-between; gap:10px; position:relative;}
    .cName{font-weight:950;}
    .cPrice{font-weight:950;}
    .cSub{color:var(--muted); font-size:12px; margin-top:6px; line-height:1.45; position:relative;}
    .pillTiny{
      display:inline-flex; align-items:center; gap:8px;
      padding: 6px 8px;
      border-radius: 999px;
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.92);
      font-size: 11px;
      font-weight: 950;
      margin-top:10px;
      position:relative;
      white-space:nowrap;
    }
    .pillTiny i{width:7px;height:7px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent2)); display:inline-block;}

    .footnote{
      margin-top: 10px;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.5;
      position:relative;
    }

    @media (max-width: 980px){
      .grid{grid-template-columns:1fr;}
      .metrics{grid-template-columns:1fr;}
      .mlGrid{grid-template-columns:1fr;}
      .right{text-align:left;}
      .switch{width:100%}
    }
    @media (prefers-reduced-motion: reduce){
      .pulse{animation:none}
      .knob, .miniKnob{transition:none}
    }
     /* Contenedor principal del footer */
.footer-wrapper {
  display: grid;
  gap: 100px;
  grid-template-columns: repeat(3, auto); /* 'auto' para que las columnas no fuercen un ancho del 100% */
  justify-content: center; /* ESTO centra las 3 columnas como un bloque en el medio */
  align-items: start;
  max-width: 1200px;
  margin: 0 auto; /* Centra el contenedor padre */
  padding: 0 20px;
}

/* Cada columna individual */
.footer-col-contacto, 
.footer-col-app, 
.footer-col-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* ESTO alinea el contenido (imágenes/links) a la IZQUIERDA */
  text-align: left;        /* ESTO asegura que el texto no se centre */
}

/* Ajustes específicos para la columna de links */
.footer-col-links div {
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* Links alineados a la izquierda */
}

/* Responsive para Móvil */
@media (max-width: 768px) {
  .footer-wrapper {
    grid-template-columns: 1fr 1.2fr; 
    justify-content: start; /* En móvil regresamos a la izquierda */
    gap: 20px;
  }

  .footer-col-links {
    border-left: 1px solid #eee;
    padding-left: 15px;
  }
}
  @media (max-width: 480px) {
    .bl-icon-wrap {
    width: 100px;  /* Ajusta este tamaño según necesites */
    height: 100px; /* Debe ser igual al ancho para ser cuadrado */
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
    }
    .bl-icon-wrap img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain; /* Mantiene la proporción sin deformar */
    }
}

/* Contenedor principal del botón */
#ast-scroll-top {
    background-color: #234579 !important; /* Azul Biencel */
    color: #ffffff !important;
    border-radius: 12px !important; /* Bordes redondeados modernos */
    width: 35px !important;
    height: 35px !important;
    line-height: 35px !important;
    bottom: 30px !important; /* Separación del borde inferior */
    right: 30px !important;  /* Separación del borde derecho */
    transition: all 0.3s ease !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    box-shadow: 0 8px 20px rgba(35,69,121,0.2) !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

/* Efecto al pasar el mouse (Hover) */
#ast-scroll-top:hover {
    background-color: #d28030 !important; /* Cambia a naranja al hacer hover */
    transform: translateY(-5px) !important; /* Pequeño salto hacia arriba */
    box-shadow: 0 12px 24px rgba(210,128,48,0.3) !important;
}

/* Ajuste del ícono SVG dentro del botón */
#ast-scroll-top .ast-icon svg {
    fill: currentColor !important;
    width: 18px !important;
    height: 18px !important;
    transition: transform 0.3s ease !important;
}

/* Girar el ícono ligeramente en hover */
#ast-scroll-top:hover .ast-icon svg {
    transform: scale(1.1);
}

/* Ocultar en pantallas muy pequeñas si estorba al botón de WhatsApp */
@media (max-width: 480px) {
    #ast-scroll-top {
        width: 30px !important;
        height: 30px !important;
        bottom: 20px !important;
        right: 20px !important;
    }
}/* End custom CSS */