/* Tarot IA · complementos que antes resolvía el JavaScript de Elementor/SmartMenus */

/* Submenús del menú principal (escritorio): se abren al pasar el ratón o con el teclado */
.elementor-nav-menu--main .elementor-nav-menu li.menu-item-has-children{position:relative}
.elementor-nav-menu--main.elementor-nav-menu--layout-horizontal .elementor-nav-menu li.menu-item-has-children:hover>ul.sub-menu,
.elementor-nav-menu--main.elementor-nav-menu--layout-horizontal .elementor-nav-menu li.menu-item-has-children:focus-within>ul.sub-menu{display:block;top:100%;left:0;z-index:9999;min-width:12em;width:auto;white-space:nowrap}
.elementor-nav-menu--main .elementor-nav-menu a.has-submenu{display:flex;align-items:center}
.elementor-nav-menu--main .elementor-nav-menu--dropdown a{white-space:nowrap}

/* Off-canvas: la animación de Elementor se sustituye por un fundido */
.elementor-widget-off-canvas .e-off-canvas{transition:opacity .25s ease,visibility .25s}
.elementor-widget-off-canvas .e-off-canvas[aria-hidden=false]{opacity:1;visibility:visible}
.elementor-widget-off-canvas .e-off-canvas__content{transition:transform .3s ease}
.elementor-widget-off-canvas .e-off-canvas[aria-hidden=true] .e-off-canvas__content{transform:translateX(-30px)}

/* Formulario: estado de envío y mensajes */
.elementor-form.elementor-form-waiting{opacity:.6;pointer-events:none}
.elementor-form .elementor-message{width:100%;margin:10px 0 0;font-size:15px;line-height:1.4}
.elementor-form .elementor-message-success{color:#2e7d32}
.elementor-form .elementor-message-danger{color:#c62828}
.elementor-form .elementor-error .elementor-field{border-color:#c62828!important}

/* Acordeón del tema (Bootstrap) sin JS de Bootstrap */
.accordion .collapse:not(.show){display:none}

/* Banner de cookies: compacto, sin tapar el contenido y con los tres botones iguales */
.cc{position:fixed;left:12px;right:12px;bottom:12px;z-index:2147483640;max-width:820px;margin:0 auto;background:#fff;color:#0A1633;border-radius:12px;box-shadow:0 8px 30px rgba(10, 32, 80,.22);padding:12px 14px;font:13px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}
.cc[hidden],.cc [hidden]{display:none!important}
.cc-l1{display:flex;align-items:center;gap:14px}
.cc p{margin:0;flex:1 1 auto}
.cc a{color:#1E3FA8;text-decoration:underline}
.cc-btns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex:0 0 auto}
.cc-l1 .cc-btns{width:390px}
.cc-b{min-height:48px;padding:0 12px;border-radius:999px;font:600 13px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;border:1.5px solid #1E3FA8;background:#1E3FA8;color:#fff}
.cc-b:hover{background:#1E3FA8;border-color:#1E3FA8}
.cc-b:focus-visible,.cc-sw:focus-visible{outline:3px solid #C7D8FB;outline-offset:2px}
.cc-l2{margin-top:12px;border-top:1px solid #EAF1FE;padding-top:10px}
.cc-cat{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #EAF1FE;cursor:pointer}
.cc-cat div{display:flex;flex-direction:column}
.cc-cat span{color:#4b4560}
.cc-always{font-weight:600;color:#2e7d32!important;white-space:nowrap}
.cc-sw{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:46px;height:26px;border-radius:999px;background:#C6CDDC;position:relative;cursor:pointer;transition:background .2s;margin:0}
.cc-sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.cc-sw:checked{background:#1E3FA8}
.cc-sw:checked::after{transform:translateX(20px)}
.cc-l2 .cc-btns{margin-top:12px}
@media (max-width:760px){.cc-l1{flex-direction:column;align-items:stretch;gap:10px}.cc-l1 .cc-btns{width:auto}.cc{font-size:12.5px}}
@media (max-width:420px){.cc-b{font-size:12px;padding:0 6px}}

/* Página 404 */
.tia-404{max-width:720px;margin:0 auto;padding:110px 20px 120px;text-align:center;font-family:"Poppins","Roboto",sans-serif}
.tia-404 .n{font-size:110px;line-height:1;font-weight:700;color:#2563EB;margin:0}
.tia-404 h1{font-size:30px;margin:18px 0 10px;color:#13265A}
.tia-404 p{color:#54595F;font-size:17px;margin:0 0 28px}
.tia-404 .b{display:inline-block;background:#2563EB;color:#fff;border-radius:999px;padding:12px 28px;font-weight:600;text-decoration:none;margin:4px}
.tia-404 .b.o{background:#fff;color:#2563EB;border:1.5px solid #2563EB}

body{overflow-x:clip}

/* =====================================================================
   Hoja de ruta 19/10/2026 · componentes nuevos y ajustes de diseño
   ===================================================================== */
:root{--tia-p:#2563EB;--tia-pd:#1E3FA8;--tia-ink:#13265A;--tia-tx:#2f2a3d;--tia-mut:#5b546b;--tia-bg:#EAF1FE;--tia-bd:#EAF1FE}
.tia-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Menú «Servicios» en tres columnas */
.elementor-nav-menu ul.tia-mega-list{display:block!important;position:static!important;width:auto!important;box-shadow:none!important;border:0!important;background:transparent!important;padding:0!important;margin:0!important}
.elementor-nav-menu .tia-mega-h{display:block;font:600 12px/1.2 "Roboto",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--tia-pd);padding:14px 18px 6px}
.elementor-nav-menu--main.elementor-nav-menu--layout-horizontal .elementor-nav-menu li.menu-item-has-children:hover>ul.tia-mega,
.elementor-nav-menu--main.elementor-nav-menu--layout-horizontal .elementor-nav-menu li.menu-item-has-children:focus-within>ul.tia-mega{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));width:min(760px,92vw);left:50%;transform:translateX(-50%);padding:6px 6px 12px;border-radius:14px;box-shadow:0 18px 50px rgba(10, 32, 80,.18);background:#fff;white-space:normal}
.elementor-nav-menu--main ul.tia-mega li.tia-mega-col>a{display:none}
.elementor-nav-menu--main ul.tia-mega .tia-mega-list a.elementor-sub-item{padding:7px 18px!important;font-size:14px;line-height:1.35;white-space:normal;border-radius:8px}
.elementor-nav-menu--main ul.tia-mega .tia-mega-list a.elementor-sub-item:hover{background:var(--tia-bg);color:var(--tia-p)}
.elementor-nav-menu--dropdown ul.tia-mega .tia-mega-list a,.elementor-nav-menu--layout-vertical ul.tia-mega .tia-mega-list a{padding-left:28px!important}

/* Botón compacto en la cabecera móvil y tablet */
.tia-hdr-cta-wrap{display:flex;align-items:center;margin-left:auto}
.tia-hdr-cta{display:inline-flex;align-items:center;min-height:48px;padding:0 16px;border-radius:999px;background:var(--tia-p);color:#fff!important;font:700 13px/1 "Roboto",system-ui,sans-serif;letter-spacing:.02em;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px rgba(37,99,235,.3)}
.tia-hdr-cta:hover,.tia-hdr-cta:focus-visible{background:var(--tia-pd);color:#fff}
.elementor-1624 .elementor-element-5a88d98{flex-wrap:nowrap!important;align-items:center!important;gap:10px}
.elementor-1624 .elementor-element-5a88d98 .elementor-element-4bfb149{width:auto!important;flex:0 0 auto}
.elementor-1624 .elementor-element-5a88d98 .elementor-element-4bfb149 .elementor-icon{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center}
@media (min-width:768px) and (max-width:1199px){
  /* Tablet: hamburguesa a la izquierda, logo centrado, botón a la derecha */
  .elementor-1624 .elementor-element-5a88d98{position:relative;justify-content:space-between!important}
  .elementor-1624 .elementor-element-5a88d98 .elementor-element-4bfb149{order:-1}
  .elementor-1624 .elementor-element-5a88d98 .elementor-element-9caded3{position:absolute;left:50%;transform:translateX(-50%);width:auto!important}
}
/* Menú de ordenador en una línea desde 1.200 px; por debajo, hamburguesa */
@media (min-width:1025px) and (max-width:1199px){
  .elementor-1624 .elementor-element-a537bcc{display:none!important}
  .elementor-1624 .elementor-element-bc53e73,.elementor-1624 .elementor-element-7c20a54{display:var(--display)!important}
}
@media (min-width:1200px){
  .elementor-1624 .elementor-element-e0864a0 .elementor-nav-menu{flex-wrap:nowrap!important}
  .elementor-1624 .elementor-element-a537bcc{padding-right:max(24px,2vw)!important}
}
/* Logo transparente: sin caja ni fondo */
.elementor-1624 img[src*="logo-tarot-ia"]{background:transparent!important;box-shadow:none!important;border-radius:0!important;height:auto}

/* Bloques de enlaces (portada, landings, temas) */
.tia-blk{padding:56px 20px;background:#fff}
.tia-blk-alt{background:var(--tia-bg)}
.tia-blk-in{max-width:1140px;margin:0 auto}
.tia-blk-eye{margin:0 0 6px;font:600 13px/1.2 "Roboto",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--tia-pd)}
.tia-blk h2{margin:0 0 24px;font-family:'gorditamedium',"Poppins",sans-serif;font-size:clamp(26px,3.4vw,38px);line-height:1.2;color:var(--tia-ink)}
.tia-lk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.tia-lk{position:relative;display:flex;flex-direction:column;gap:4px;min-height:44px;padding:18px 44px 18px 20px;border:1px solid var(--tia-bd);border-radius:14px;background:#fff;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.tia-lk:hover,.tia-lk:focus-visible{border-color:var(--tia-p);box-shadow:0 10px 28px rgba(37,99,235,.14);transform:translateY(-2px)}
.tia-lk-t{font:600 17px/1.3 "Roboto",sans-serif;color:var(--tia-ink)}
.tia-lk-d{font:400 14px/1.45 "Roboto",sans-serif;color:var(--tia-mut)}
.tia-lk-a{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:var(--tia-p);font-size:20px}
.tia-art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.tia-art{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--tia-bd);text-decoration:none;transition:box-shadow .2s,transform .2s}
.tia-art:hover,.tia-art:focus-visible{box-shadow:0 14px 34px rgba(10, 32, 80,.14);transform:translateY(-2px)}
.tia-art-img{display:block;aspect-ratio:3/2;overflow:hidden;background:#0A1633}
.tia-art-img img{width:100%;height:100%;object-fit:cover;display:block}
.tia-art-b{display:flex;flex-direction:column;gap:6px;padding:16px 18px 20px}
.tia-art-p{font:600 12px/1.2 "Roboto",sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--tia-pd)}
.tia-art-t{font:600 18px/1.35 "Roboto",sans-serif;color:var(--tia-ink)}
.tia-blk-more{margin:22px 0 0;text-align:left}
.tia-blk-more a{font:600 16px "Roboto",sans-serif;color:var(--tia-pd);text-decoration:none}
.tia-proof{margin:6px 0 14px!important;font:400 14px/1.5 "Roboto",sans-serif;color:var(--tia-mut);text-align:center}
.tia-proof a{color:var(--tia-pd);text-decoration:underline}
.tia-proof{color:#4f4860}

/* Guías añadidas a las landings y a la página pilar */
.tia-guide{padding:56px 20px;background:#fff}
.tia-guide-in{max-width:880px;margin:0 auto;font:400 17px/1.7 "Roboto",sans-serif;color:var(--tia-tx)}
.tia-guide-pilar .tia-guide-in{max-width:1140px}
.tia-guide-sec{margin:0 0 44px}
.tia-guide h2{margin:0 0 16px;font-family:'gorditamedium',"Poppins",sans-serif;font-size:clamp(25px,3.2vw,34px);line-height:1.25;color:var(--tia-ink);text-align:left}
.tia-guide h3{margin:0 0 8px;font:600 20px/1.3 "Roboto",sans-serif;color:var(--tia-ink)}
.tia-guide p{margin:0 0 14px;text-align:left}
.tia-guide ul,.tia-guide ol{margin:0 0 16px;padding-left:24px}
.tia-guide li{margin:0 0 8px}
.tia-guide a{color:var(--tia-pd);text-decoration:underline;text-underline-offset:2px}
.tia-guide-faq details{border:1px solid var(--tia-bd);border-radius:12px;margin:0 0 10px;background:#fff}
.tia-guide-faq summary{cursor:pointer;padding:14px 18px;font-weight:600;color:var(--tia-ink);list-style-position:inside}
.tia-guide-faq details>div{padding:0 18px 12px}
.tia-guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.tia-guide-grid-2{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}
.tia-guide-card{padding:20px 22px;border:1px solid var(--tia-bd);border-radius:14px;background:#fff;scroll-margin-top:90px}
.tia-guide-card p{font-size:16px;line-height:1.6}
.tia-num{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:28px;padding:0 8px;margin-right:6px;border-radius:999px;background:var(--tia-bg);color:var(--tia-pd);font-size:14px}
.tia-more{margin:6px 0 0!important}
.tia-more a{font-weight:600}
.tia-guide-toc{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 22px}
.tia-guide-toc a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;background:var(--tia-bg);color:var(--tia-pd);text-decoration:none!important;font-size:14px}
@media (max-width:767px){.tia-guide-grid-2{grid-template-columns:1fr}.tia-blk,.tia-guide{padding:40px 16px}}

/* Tabla comparativa única de precios */
.tia-cmp{padding:56px 16px;background:#fff}
.tia-cmp-in{max-width:880px;margin:0 auto}
.tia-cmp h2{margin:0 0 20px;text-align:center;font-family:'gorditamedium',"Poppins",sans-serif;font-size:clamp(26px,3.4vw,38px);color:var(--tia-ink)}
.tia-cmp-wrap{overflow-x:auto;border:1px solid var(--tia-bd);border-radius:16px;box-shadow:0 10px 30px rgba(10, 32, 80,.08)}
.tia-cmp table{width:100%;border-collapse:collapse;min-width:520px;font:400 16px/1.4 "Roboto",sans-serif;color:var(--tia-tx);margin:0}
.tia-cmp th,.tia-cmp td{padding:15px 16px;border:0;border-bottom:1px solid #EAF1FE;text-align:center;vertical-align:middle;background:#fff}
.tia-cmp tbody th{text-align:left;font-weight:500;color:var(--tia-tx);width:46%}
.tia-cmp thead th{background:var(--tia-bg);color:var(--tia-ink);font-weight:700;font-size:17px}
.tia-cmp thead th small{display:block;font-weight:500;font-size:14px;color:var(--tia-mut);margin-top:2px}
.tia-cmp thead th em{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:999px;background:var(--tia-p);color:#fff;font-style:normal;font-size:12px;font-weight:600}
.tia-cmp-y{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e6f6ec;color:#1e7a3c;font-weight:700}
.tia-cmp-n{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#F1F3F6;color:#6b6478;font-weight:700}
.tia-cmp tfoot td{border-bottom:0;padding:18px 12px}
.tia-cmp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:999px;background:var(--tia-p);color:#fff!important;font-weight:600;text-decoration:none;font-size:15px}
.tia-cmp-btn-o{background:#fff;color:var(--tia-pd)!important;border:1.5px solid var(--tia-p)}

/* Página de autora */
.tia-authorpage .tia-author-list{columns:2 300px;column-gap:28px;padding-left:20px}
.tia-authorpage .tia-author-list li{break-inside:avoid;margin:0 0 8px}

/* Enlace en las tarjetas de /servicios/ */
a.tia-card-link{color:inherit;text-decoration:none}
a.tia-card-link:hover,a.tia-card-link:focus-visible{color:var(--tia-p);text-decoration:underline}

/* Texto alineado a la izquierda (sin justificar) y títulos fluidos */
.elementor-widget-text-editor,.elementor-widget-text-editor p,.tia-priv p,.tia-priv li{text-align:left}
@media (max-width:1024px){
  .elementor-widget-text-editor,.elementor-widget-text-editor p{text-align:left!important}
  h1.elementor-heading-title{font-size:clamp(30px,7vw,46px)!important;line-height:1.15!important}
}
/* Botones de al menos 44 px en móvil */
@media (max-width:767px){
  .elementor-button,.tia-btn,.tia-btn-sm,.psai-btn,a.elementor-button-link{min-height:48px;display:inline-flex!important;align-items:center;justify-content:center}
}
/* Widget de Opynio ajustado al ancho de su columna (sin quitarlo) */
.opynio-widget{width:100%!important;max-width:100%!important;box-sizing:border-box}
.opynio-widget iframe,.opynio-widget img,.opynio-widget>*{max-width:100%!important}
html,body{overflow-x:hidden}
/* Portada en móvil: H1, frase y botón en el primer pantallazo; la carta debajo */
@media (max-width:767px){
  .elementor-12 .elementor-element-3ca7128{order:-1}
  .elementor-12 .elementor-element-0913f9b{padding-top:12px!important}
}
/* Logos a su tamaño visual original (el archivo nuevo ya no lleva margen blanco) */
.elementor-1624 .elementor-element-af033ab img{width:140px!important;max-width:100%;height:auto!important}
.elementor-1624 .elementor-element-9caded3 img{width:auto!important;height:56px!important;max-width:none}
.elementor-1624 .elementor-element-aa8d7ab img{width:auto!important;height:72px!important;max-width:none}
.elementor-2009 .elementor-element-bc5bf2f img{width:82px!important;height:auto!important}
.elementor-2009 img[src*="/assets/img/flags/"]{width:38px!important;height:38px!important;object-fit:contain}
.tia-cmp-in{max-width:960px}
.tia-cmp-btn{font-size:14px;padding:0 14px;line-height:1.2;text-align:center}
@media (max-width:1199px){
  .elementor-1624 .elementor-element-bc53e73{padding-left:16px!important;padding-right:16px!important}
  .elementor-1624 .elementor-element-5a88d98{min-height:72px}
}
@media (max-width:600px){
  .tia-cmp table{min-width:0;font-size:14px}
  .tia-cmp th,.tia-cmp td{padding:12px 8px}
  .tia-cmp tbody th{width:auto}
  .tia-cmp thead th{font-size:14px}
  .tia-cmp thead th em{font-size:11px;padding:2px 8px}
  .tia-cmp-btn{padding:0 10px;font-size:13px}
}
/* Móvil: margen lateral mínimo de 16 px para que el texto no toque los bordes */
@media (max-width:767px){
  .elementor[data-elementor-type="wp-page"]>.e-con.e-parent>.e-con-inner,
  .elementor[data-elementor-type="wp-page"]>.e-con-full.e-parent,
  .elementor[data-elementor-type="wp-post"]>.e-con.e-parent>.e-con-inner{padding-left:16px!important;padding-right:16px!important}
}
/* /sobre-nosotros/: secciones unificadas; en tablet y móvil se ven como antes (sin la imagen, en columna) */
@media (max-width:1024px){
  .elementor-2099 .tia-merged{--flex-direction:column!important;flex-direction:column!important}
  .elementor-2099 .tia-merged .elementor-widget-image{display:none!important}
  .elementor-2099 .tia-merged>.e-con,.elementor-2099 .tia-merged>.e-con-inner>.e-con{width:100%!important;--width:100%!important}
}
/* Enlaces dentro del texto: subrayados (no solo por el color) */
.tia-article p a:not([class]),.tia-article li a:not([class]),.tia-guide a:not([class]),
[data-elementor-type="wp-page"] p a:not([class]),[data-elementor-type="wp-page"] li a:not([class]),
[data-elementor-type="wp-post"] p a:not([class]),.tia-priv a{text-decoration:underline!important;text-underline-offset:2px}
.table-wrap:focus-visible,.tia-cmp-wrap:focus-visible{outline:3px solid #C7D8FB;outline-offset:2px}
/* Contraste: etiquetas de categoría del blog (todas, también la destacada) */
.pg-blog .tah-pill{color:#2563EB!important}

/* Ecuador: tinte del logo morado a azul andino */
.elementor-widget-theme-site-logo img,img[src*="logo-tarot-ia"]{filter:hue-rotate(-33deg) saturate(1.35) brightness(1.15)}
