
  html{scroll-behavior:smooth}
  body{margin:0;background:#ffffff;font-family:"Plus Jakarta Sans",system-ui,sans-serif;color:#151515}
  *{box-sizing:border-box}
  h1,h2,h3,h4{font-family:"Sora",sans-serif;margin:0}
  button{font-family:inherit}
  input,textarea{font-family:inherit}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(19,165,56,.5)}70%{box-shadow:0 0 0 9px rgba(19,165,56,0)}100%{box-shadow:0 0 0 0 rgba(19,165,56,0)}}
  @keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
  @keyframes tabIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
  @keyframes modalIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes fadeIn{from{opacity:0}to{opacity:1}}

  


  /* TA MOBILE RESPONSIVE FIX V2 START */

  @media (max-width: 900px) {
    html, body {
      width: 100% !important;
      max-width: 100% !important;
      overflow-x: hidden !important;
      -webkit-text-size-adjust: 100% !important;
    }

    * {
      box-sizing: border-box !important;
    }

    body * {
      min-width: 0 !important;
    }

    header {
      padding: 12px 14px !important;
      gap: 10px !important;
      flex-wrap: wrap !important;
      align-items: center !important;
    }

    header > a {
      flex: 0 0 auto !important;
    }

    header > a img {
      height: 26px !important;
      max-width: 170px !important;
      display: block !important;
      object-fit: contain !important;
    }

    header nav {
      order: 3 !important;
      width: 100% !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      gap: 2px !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      white-space: nowrap !important;
      padding-top: 2px !important;
      -webkit-overflow-scrolling: touch !important;
      scrollbar-width: none !important;
    }

    header nav::-webkit-scrollbar {
      display: none !important;
    }

    header nav a {
      flex: 0 0 auto !important;
      white-space: nowrap !important;
      font-size: 12px !important;
      padding: 8px 10px 12px !important;
      border-radius: 10px !important;
    }

    header > div:last-child {
      margin-left: auto !important;
      display: flex !important;
      align-items: center !important;
      gap: 6px !important;
      flex-wrap: nowrap !important;
    }

    header > div:last-child > button[data-i18n="btn_descargar"],
    header > div:last-child > button[data-i18n="btn_contacto"] {
      display: none !important;
    }

    header > div:last-child button {
      font-size: 12px !important;
      padding: 9px 12px !important;
      border-radius: 11px !important;
      white-space: nowrap !important;
    }

    header > div:last-child > div button {
      padding: 8px 10px !important;
      min-width: 44px !important;
    }

    main section,
    main div[style*="max-width:1180px"],
    footer div[style*="max-width:1180px"] {
      width: 100% !important;
      max-width: 100% !important;
    }

    main section,
    footer {
      overflow-x: hidden !important;
    }

    main h1 {
      font-size: clamp(34px, 10vw, 44px) !important;
      line-height: 1.02 !important;
      letter-spacing: -1.4px !important;
      word-break: normal !important;
      overflow-wrap: anywhere !important;
    }

    main h2 {
      font-size: clamp(28px, 8vw, 36px) !important;
      line-height: 1.08 !important;
      letter-spacing: -1px !important;
      word-break: normal !important;
      overflow-wrap: anywhere !important;
    }

    main h3 {
      font-size: clamp(22px, 6vw, 28px) !important;
      line-height: 1.18 !important;
      letter-spacing: -0.6px !important;
      word-break: normal !important;
      overflow-wrap: anywhere !important;
    }

    main p,
    main span,
    main a,
    main button,
    footer p,
    footer span,
    footer a {
      overflow-wrap: anywhere !important;
      word-break: normal !important;
    }

    main p {
      font-size: 15px !important;
      line-height: 1.6 !important;
    }

    /* paddings generales */
    main [style*="padding:64px 40px 84px"],
    main [style*="padding:72px 40px 64px"],
    main [style*="padding:64px 40px"],
    main [style*="padding:72px 40px"],
    main [style*="padding:72px 40px 30px"],
    main [style*="padding:34px 40px 20px"],
    main [style*="padding:34px 40px 40px"],
    main [style*="padding:40px 40px 30px"],
    main [style*="padding:72px 40px 80px"],
    main [style*="padding:56px 40px 30px"],
    main [style*="padding:48px 40px 80px"],
    main [style*="padding:0 40px 80px"],
    footer [style*="padding:56px 40px 30px"],
    footer [style*="padding:18px 40px"] {
      padding-left: 16px !important;
      padding-right: 16px !important;
    }

    /* TODAS las grillas principales a 1 columna en móvil */
    main [style*="grid-template-columns"],
    footer [style*="grid-template-columns"] {
      grid-template-columns: 1fr !important;
      gap: 16px !important;
    }

    main [style*="display:grid"][style*="grid-template-columns"] > *,
    footer [style*="display:grid"][style*="grid-template-columns"] > * {
      min-width: 0 !important;
      max-width: 100% !important;
    }

    /* hero */
    main div[style*="min-height:440px"] {
      min-height: auto !important;
      justify-content: center !important;
      align-items: center !important;
      padding-top: 12px !important;
    }

    main div[style*="width:400px;height:400px"],
    main div[style*="width:360px;height:360px"] {
      width: 220px !important;
      height: 220px !important;
      max-width: 70vw !important;
      max-height: 70vw !important;
    }

    main img[src*="tori_"],
    main img[alt*="Tori"],
    main img[alt*="tori"] {
      height: auto !important;
      max-height: 250px !important;
      max-width: 100% !important;
      object-fit: contain !important;
    }

    /* botones del hero y CTA */
    main div[style*="display:flex;gap:12px"] {
      flex-direction: column !important;
      align-items: stretch !important;
      gap: 12px !important;
    }

    main div[style*="display:flex;gap:12px"] > a,
    main div[style*="display:flex;gap:12px"] > button {
      width: 100% !important;
      justify-content: center !important;
      text-align: center !important;
    }

    /* stats del hero */
    main div[style*="display:flex;gap:26px;margin-top:40px"] {
      display: grid !important;
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      gap: 12px !important;
      align-items: start !important;
    }

    main div[style*="display:flex;gap:26px;margin-top:40px"] > div {
      min-width: 0 !important;
    }

    main div[style*="width:1px;background:rgba(21,21,21,.1)"] {
      display: none !important;
    }

    /* cards */
    main [style*="border-radius:22px"],
    main [style*="border-radius:20px"],
    main [style*="border-radius:24px"],
    main [style*="border-radius:28px"] {
      border-radius: 18px !important;
    }

    main [style*="padding:30px 28px"],
    main [style*="padding:28px 26px 0"],
    main [style*="padding:34px 38px"],
    main [style*="padding:32px"],
    main [style*="padding:28px"] {
      padding: 22px !important;
    }

    /* galería fotos */
    image-slot {
      width: 100% !important;
      height: 230px !important;
      display: block !important;
    }

    /* textos de captions de fotos */
    main span[style*="ui-monospace"] {
      display: block !important;
      font-size: 10.5px !important;
      line-height: 1.5 !important;
    }

    /* footer */
    footer img {
      max-width: 100% !important;
      height: auto !important;
    }

    footer div[style*="justify-content:space-between"] {
      flex-direction: column !important;
      align-items: flex-start !important;
    }
  }

  @media (max-width: 560px) {
    header {
      padding: 10px 12px !important;
    }

    header > a img {
      height: 24px !important;
      max-width: 160px !important;
    }

    header nav a {
      font-size: 11.5px !important;
      padding: 8px 9px 11px !important;
    }

    header > div:last-child button {
      font-size: 11px !important;
      padding: 8px 10px !important;
    }

    main [style*="padding:64px 40px 84px"],
    main [style*="padding:72px 40px 64px"],
    main [style*="padding:64px 40px"],
    main [style*="padding:72px 40px"],
    main [style*="padding:72px 40px 30px"],
    main [style*="padding:34px 40px 20px"],
    main [style*="padding:34px 40px 40px"],
    main [style*="padding:40px 40px 30px"],
    main [style*="padding:72px 40px 80px"],
    main [style*="padding:48px 40px 80px"],
    main [style*="padding:0 40px 80px"],
    footer [style*="padding:56px 40px 30px"],
    footer [style*="padding:18px 40px"] {
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    main h1 {
      font-size: clamp(32px, 10.5vw, 40px) !important;
    }

    main h2 {
      font-size: clamp(26px, 8.5vw, 32px) !important;
    }

    main h3 {
      font-size: clamp(21px, 6vw, 25px) !important;
    }

    main p {
      font-size: 14.5px !important;
    }

    main div[style*="display:flex;gap:26px;margin-top:40px"] {
      grid-template-columns: 1fr !important;
    }

    main div[style*="width:400px;height:400px"],
    main div[style*="width:360px;height:360px"] {
      width: 200px !important;
      height: 200px !important;
    }

    image-slot {
      height: 210px !important;
    }
  }

  /* TA MOBILE RESPONSIVE FIX V2 END */


.ta-state-1:hover{background:rgba(255,193,7,.14)}
.ta-state-2:hover{background:rgba(255,193,7,.14)}
.ta-state-3:hover{background:rgba(255,193,7,.14)}
.ta-state-4:hover{background:rgba(255,193,7,.14)}
.ta-state-5:hover{background:rgba(255,193,7,.14)}
.ta-state-6:hover{transform:translateY(-2px)}
.ta-state-7:hover{transform:translateY(-2px)}
.ta-state-8:hover{transform:translateY(-2px)}
.ta-state-9:hover{transform:translateY(-2px)}
.ta-state-10:hover{transform:translateY(-2px)}
.ta-state-11:hover{transform:translateY(-2px)}
.ta-state-12:hover{transform:translateY(-2px)}
.ta-state-13:hover{transform:translateY(-2px)}
.ta-state-14:hover{transform:translateY(-2px)}
.ta-state-15:hover{transform:translateY(-2px)}
.ta-state-16:hover{transform:translateY(-2px)}
.ta-state-17:hover{transform:translateY(-2px)}
.ta-state-18:hover{background:rgba(255,193,7,.18)}
.ta-state-19:hover{background:rgba(255,193,7,.18)}
.ta-state-20:hover{background:rgba(255,193,7,.18)}
.ta-state-21:hover{background:rgba(255,193,7,.18)}
.ta-state-22:focus{border-color:#ffc107}
.ta-state-23:focus{border-color:#ffc107}
.ta-state-24:focus{border-color:#ffc107}
.ta-state-25:hover{transform:translateY(-2px)}
.ta-state-26:hover{color:#fff}
.ta-state-27:hover{color:#fff}
.ta-state-28:hover{color:#fff}
.ta-state-29:hover{color:#fff}
.ta-state-30:hover{color:#fff}
.ta-state-31:hover{color:#fff}
.ta-state-32:hover{color:#fff}
.ta-state-33:hover{color:#fff}
.ta-state-34:hover{color:#fff}
.ta-state-35:hover{border-color:#ffc107;box-shadow:0 14px 34px rgba(255,193,7,.22);transform:translateY(-3px)}
.ta-state-36:hover{border-color:#151515;box-shadow:0 14px 34px rgba(21,21,21,.16);transform:translateY(-3px)}
.ta-state-37:hover{transform:translateY(-2px)}

/* Native replacements for the original dynamic style bindings. */
[hidden]{display:none!important}
[data-ta-action^="go"]{text-decoration:none}
.ta-period-option{font:700 13px 'Plus Jakarta Sans',sans-serif;padding:10px 16px;border-radius:10px;border:0;cursor:pointer;background:transparent;color:#5a5a5a;transition:all .2s}
.ta-period-option[aria-pressed="true"]{background:#151515;color:#fff}
.ta-demo-option{display:block;width:100%;text-align:left;font:700 14px 'Plus Jakarta Sans',sans-serif;padding:13px 16px;border-radius:12px;border:1px solid rgba(21,21,21,.1);background:#fff;color:#333;cursor:pointer;transition:all .2s}
.ta-demo-option:disabled{cursor:default}
.ta-demo-option.is-correct{background:rgba(19,165,56,.1);border:1px solid rgba(19,165,56,.4);color:#0d6425}
.ta-demo-option.is-wrong{background:rgba(231,29,43,.07);border:1px solid rgba(231,29,43,.35);color:#b3131f}
.ta-demo-option.is-muted{opacity:.55}
