.elementor-kit-6{--e-global-color-primary:#0B0B0B;--e-global-color-secondary:#6EC1E4;--e-global-color-text:#3D434C;--e-global-color-accent:#2A7DBF;--e-global-color-dsinoche:#0C193B;--e-global-color-dsigris:#F4F6F8;--e-global-color-dsihielo:#F2FAFE;--e-global-color-dsiblanco:#FFFFFF;--e-global-color-dsiborde:#E3E7ED;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0.06em;--e-global-typography-dsih1-font-family:"Montserrat";--e-global-typography-dsih1-font-size:44px;--e-global-typography-dsih1-font-weight:700;--e-global-typography-dsih1-line-height:1.15em;--e-global-typography-dsih2-font-family:"Montserrat";--e-global-typography-dsih2-font-size:32px;--e-global-typography-dsih2-font-weight:700;--e-global-typography-dsih2-line-height:1.2em;--e-global-typography-dsih3-font-family:"Montserrat";--e-global-typography-dsih3-font-size:20px;--e-global-typography-dsih3-font-weight:700;--e-global-typography-dsih3-line-height:1.3em;--e-global-typography-dsih4-font-family:"Montserrat";--e-global-typography-dsih4-font-size:18px;--e-global-typography-dsih4-font-weight:600;--e-global-typography-dsih4-line-height:1.4em;--e-global-typography-dsikick-font-family:"Montserrat";--e-global-typography-dsikick-font-size:13px;--e-global-typography-dsikick-font-weight:700;--e-global-typography-dsikick-text-transform:uppercase;--e-global-typography-dsikick-line-height:1.4em;--e-global-typography-dsikick-letter-spacing:0.12em;--e-global-typography-dsilead-font-family:"Montserrat";--e-global-typography-dsilead-font-size:19px;--e-global-typography-dsilead-font-weight:400;--e-global-typography-dsilead-line-height:1.6em;--e-global-typography-dsitexto-font-family:"Montserrat";--e-global-typography-dsitexto-font-size:17px;--e-global-typography-dsitexto-font-weight:400;--e-global-typography-dsitexto-line-height:1.65em;--e-global-typography-dsidest-font-family:"Montserrat";--e-global-typography-dsidest-font-size:17px;--e-global-typography-dsidest-font-weight:600;--e-global-typography-dsidest-line-height:1.5em;--e-global-typography-dsipeq-font-family:"Montserrat";--e-global-typography-dsipeq-font-size:15px;--e-global-typography-dsipeq-font-weight:400;--e-global-typography-dsipeq-line-height:1.6em;--e-global-typography-dsilegal-font-family:"Montserrat";--e-global-typography-dsilegal-font-size:14px;--e-global-typography-dsilegal-font-weight:400;--e-global-typography-dsilegal-line-height:1.6em;--e-global-typography-dsiboton-font-family:"Montserrat";--e-global-typography-dsiboton-font-size:14px;--e-global-typography-dsiboton-font-weight:700;--e-global-typography-dsiboton-text-transform:uppercase;--e-global-typography-dsiboton-line-height:1.2em;--e-global-typography-dsiboton-letter-spacing:0.06em;--e-global-typography-dsicifra-font-family:"Montserrat";--e-global-typography-dsicifra-font-size:44px;--e-global-typography-dsicifra-font-weight:800;--e-global-typography-dsicifra-line-height:1.1em;background-color:#FFFFFF;color:#3D434C;font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#6EC1E4;font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;line-height:1.2em;letter-spacing:0.06em;color:#FFFFFF;border-radius:50px 50px 50px 50px;padding:16px 30px 16px 30px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#3E9FD8;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#2A7DBF;}.elementor-kit-6 a:hover{color:#0B0B0B;}.elementor-kit-6 h1{color:#0B0B0B;font-family:"Montserrat", Sans-serif;font-size:44px;font-weight:700;line-height:1.15em;}.elementor-kit-6 h2{color:#0B0B0B;font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:700;line-height:1.2em;}.elementor-kit-6 h3{color:#0B0B0B;font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:700;line-height:1.3em;}.elementor-kit-6 h4{color:#0B0B0B;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;line-height:1.4em;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{background-color:#FFFFFF;border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:14px;--e-global-typography-dsih1-font-size:36px;--e-global-typography-dsih2-font-size:28px;--e-global-typography-dsih3-font-size:20px;--e-global-typography-dsih4-font-size:18px;--e-global-typography-dsikick-font-size:13px;--e-global-typography-dsilead-font-size:18px;--e-global-typography-dsitexto-font-size:17px;--e-global-typography-dsidest-font-size:17px;--e-global-typography-dsipeq-font-size:15px;--e-global-typography-dsilegal-font-size:14px;--e-global-typography-dsiboton-font-size:14px;--e-global-typography-dsicifra-font-size:38px;font-size:17px;}.elementor-kit-6 h1{font-size:36px;}.elementor-kit-6 h2{font-size:28px;}.elementor-kit-6 h3{font-size:20px;}.elementor-kit-6 h4{font-size:18px;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;--e-global-typography-dsih1-font-size:30px;--e-global-typography-dsih2-font-size:26px;--e-global-typography-dsih3-font-size:18px;--e-global-typography-dsih4-font-size:17px;--e-global-typography-dsikick-font-size:13px;--e-global-typography-dsilead-font-size:17px;--e-global-typography-dsitexto-font-size:16px;--e-global-typography-dsidest-font-size:16px;--e-global-typography-dsipeq-font-size:15px;--e-global-typography-dsilegal-font-size:13px;--e-global-typography-dsiboton-font-size:14px;--e-global-typography-dsicifra-font-size:34px;font-size:16px;}.elementor-kit-6 h1{font-size:30px;}.elementor-kit-6 h2{font-size:26px;}.elementor-kit-6 h3{font-size:18px;}.elementor-kit-6 h4{font-size:17px;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Escala tipográfica (generada desde DSI_TIPO en lib.php) */
:root { --dsi-h1: 44px; --dsi-h2: 32px; --dsi-h3: 20px; --dsi-h4: 18px; --dsi-kick: 13px; --dsi-lead: 19px; --dsi-texto: 17px; --dsi-dest: 17px; --dsi-peq: 15px; --dsi-legal: 14px; --dsi-boton: 14px; --dsi-cifra: 44px; }
@media (max-width: 1024px) { :root { --dsi-h1: 36px; --dsi-h2: 28px; --dsi-h3: 20px; --dsi-h4: 18px; --dsi-kick: 13px; --dsi-lead: 18px; --dsi-texto: 17px; --dsi-dest: 17px; --dsi-peq: 15px; --dsi-legal: 14px; --dsi-boton: 14px; --dsi-cifra: 38px; } }
@media (max-width: 767px) { :root { --dsi-h1: 30px; --dsi-h2: 26px; --dsi-h3: 18px; --dsi-h4: 17px; --dsi-kick: 13px; --dsi-lead: 17px; --dsi-texto: 16px; --dsi-dest: 16px; --dsi-peq: 15px; --dsi-legal: 13px; --dsi-boton: 14px; --dsi-cifra: 34px; } }

/* =====================================================================
   DS-Informática · estilos globales
   Basados en la web actual: barra celeste, cabecera y pie negros,
   botones en píldora celeste, rayita celeste bajo los títulos.
   ===================================================================== */

/* ---------- Botones: píldora celeste con degradado azul ---------- */
.elementor-button,
.elementor-form .elementor-button {
	background-color: #6EC1E4 !important;
	background-image: linear-gradient(100deg, #6EC1E4 0%, #3E9FD8 55%, #2A7DBF 100%);
	background-size: 160% 100%;
	background-position: 0% 50%;
	color: #FFFFFF !important;
	border: 0;
	border-radius: 50px !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	box-shadow: 0 8px 18px -10px rgba(42, 125, 191, .8);
	transition: background-position .4s ease, transform .2s ease, box-shadow .2s ease;
}
.elementor-button:hover,
.elementor-button:focus-visible {
	background-position: 100% 50%;
	transform: translateY(-2px);
	box-shadow: 0 12px 24px -10px rgba(42, 125, 191, .9);
}
.elementor-button:focus-visible { outline: 3px solid #0C193B; outline-offset: 3px; }
/* Mismo tamaño de botón en toda la web (escala DSI_TIPO: Botones) */
.elementor-button, .elementor-form .elementor-button {
	font-family: "Montserrat", sans-serif !important; font-size: var(--dsi-boton) !important; font-weight: 700 !important;
	line-height: 1.2 !important; padding: 16px 30px !important;
}
@media (max-width: 767px) {
	.elementor-button, .elementor-form .elementor-button { padding: 16px 22px !important; letter-spacing: .04em; }
	.dsi-cta-articulo a.dsi-cta-boton, .dsi-cta-descarga a.dsi-cta-descarga-boton { padding: 16px 22px; letter-spacing: .04em; }
}
.elementor-button .elementor-button-icon svg { fill: currentColor; }

/* Botón con borde (secundario): clase "dsi-btn-borde" */
.dsi-btn-borde .elementor-button {
	background: transparent !important;
	box-shadow: inset 0 0 0 2px #6EC1E4;
	color: #FFFFFF !important;
}
.dsi-btn-borde .elementor-button:hover { background: rgba(110, 193, 228, .15) !important; }
.dsi-btn-borde.dsi-oscuro .elementor-button { color: #0B0B0B !important; }

/* ---------- Títulos con la rayita celeste (como en la web actual) ---------- */
.dsi-raya .elementor-heading-title::after {
	content: "";
	display: block;
	width: 90px;
	height: 3px;
	margin-top: 16px;
	border-radius: 3px;
	background: #6EC1E4;
}
.dsi-raya.dsi-centro .elementor-heading-title::after { margin-left: auto; margin-right: auto; }

/* ---------- Cabecera ---------- */
.dsi-topbar a, .dsi-topbar .elementor-icon-list-text { color: #FFFFFF !important; }
.dsi-header-main.elementor-sticky--effects { box-shadow: 0 10px 30px -14px rgba(0, 0, 0, .6); }
.dsi-nav .elementor-nav-menu--main .elementor-item { letter-spacing: .01em; }
.dsi-nav .elementor-nav-menu--dropdown { border-top: 3px solid #6EC1E4; }
.dsi-nav .elementor-menu-toggle { border-radius: 10px; }
.dsi-llamanos .elementor-button { padding: 12px 22px !important; font-size: 13px !important; }

/* ---------- Cifras sobre la cabecera ---------- */
.dsi-cifra {
	border: 2px solid #6EC1E4 !important;
	box-shadow: 0 18px 40px -22px rgba(12, 25, 59, .55);
	transition: transform .25s ease;
}
.dsi-cifra:hover { transform: translateY(-4px); }

/* ---------- Botones de servicio (tarjetas con borde e icono) ---------- */
.dsi-servicio {
	box-shadow: 0 14px 30px -26px rgba(42, 125, 191, .6);
	transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease, background-color .25s ease;
	position: relative;
}
.dsi-servicio:hover {
	border-color: #6EC1E4 !important;
	background-color: #F2FAFE !important;
	transform: translateY(-3px);
	box-shadow: 0 16px 30px -20px rgba(42, 125, 191, .7);
}
.dsi-servicio a.dsi-cubre::after { content: ""; position: absolute; inset: 0; }

/* ---------- Soluciones (fotos de producto) ---------- */
.dsi-solucion { border-radius: 16px; overflow: hidden; transition: transform .3s ease; }
.dsi-solucion:hover { transform: translateY(-4px); }

/* ---------- Valores ---------- */
.dsi-cita .elementor-heading-title { font-style: normal; }
.dsi-valores ul { padding-left: 1.1em; margin: 0; }
.dsi-valores li { margin-bottom: .7em; }
.dsi-valores li::marker { color: #6EC1E4; }
.dsi-valores strong { color: #0B0B0B; }

/* ---------- Fotos pendientes de sustituir por fotos propias ---------- */
.dsi-foto-pendiente { position: relative; }

/* ---------- Clientes ---------- */
.dsi-clientes .elementor-widget-image { display: flex; align-items: center; justify-content: center; }
.dsi-clientes img { width: 150px; height: 84px; max-width: 100%; object-fit: contain; border-radius: 10px; }
.dsi-clientes > .elementor-widget-image { width: 150px; flex: 0 0 150px; }

/* ---------- Formularios (fondo negro, campos en píldora) ---------- */
.dsi-form-negro .elementor-field-group .elementor-field-textual,
.dsi-form-negro .elementor-field-group select {
	border-radius: 24px !important;
	min-height: 46px;
	padding-left: 18px !important;
}
.dsi-form-negro .elementor-field-group textarea.elementor-field-textual { border-radius: 18px !important; }
.dsi-form-negro .elementor-field-type-acceptance label,
.dsi-form-negro .elementor-field-subgroup label,
.dsi-form-negro .elementor-field-option label { color: #3D434C !important; font-size: var(--dsi-legal); }
.dsi-form-negro .elementor-field-type-acceptance a { color: #2A7DBF; }
.elementor-field-group .elementor-field-textual:focus { box-shadow: 0 0 0 3px rgba(110, 193, 228, .45); }

/* ---------- Pie ---------- */
.dsi-lema .elementor-heading-title span { color: #6EC1E4; }

/* ---------- Botón flotante de WhatsApp ---------- */
.dsi-whatsapp {
	position: fixed; right: 20px; bottom: 20px; z-index: 999;
	display: flex; align-items: center; gap: 10px;
	padding: 12px 18px 12px 14px; border-radius: 40px;
	color: #FFFFFF !important; font-weight: 600; font-size: 15px;
	background: linear-gradient(120deg, #128C4B, #25D366);
	box-shadow: 0 12px 28px -10px rgba(18, 140, 75, .7);
	transition: transform .2s ease;
}
.dsi-whatsapp:hover { transform: translateY(-3px); }

/* ---------- Responsive: nada debe desbordar en móvil ---------- */
html, body { overflow-x: clip; }
img, svg, video, iframe { max-width: 100%; }
.elementor-widget-text-editor, .elementor-heading-title, .elementor-icon-list-text {
	overflow-wrap: break-word; word-break: normal; hyphens: manual;
}
.dsi-map iframe { width: 100%; border-radius: 16px; }

@media (max-width: 767px) {
	.elementor-button { white-space: normal; text-align: center; }
	.dsi-btn-bloque .elementor-button { width: 100%; }
	.dsi-btn-bloque .elementor-button-content-wrapper { justify-content: center; }
	.elementor-field-group { width: 100% !important; max-width: 100% !important; }
	.dsi-clientes img { width: 92px; height: 58px; }
	.dsi-clientes > .elementor-widget-image { width: 92px; flex: 0 0 92px; }
	.dsi-whatsapp { padding: 14px; right: 14px; bottom: 14px; }
	.dsi-whatsapp span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.elementor-button, .dsi-servicio, .dsi-solucion, .dsi-cifra { transition: none; }
	.elementor-button:hover, .dsi-servicio:hover, .dsi-solucion:hover, .dsi-cifra:hover { transform: none; }
}

/* ---------- Servicios en negro (híbrido página Servicios + web actual) ---------- */
.dsi-serv-negro { position: relative; transition: border-color .25s ease, transform .25s ease, background-color .25s ease; }
.dsi-serv-negro { box-shadow: 0 14px 30px -26px rgba(42, 125, 191, .6); }
.dsi-serv-negro:hover { border-color: #6EC1E4 !important; background-color: #FFFFFF !important; transform: translateY(-4px); box-shadow: 0 20px 36px -22px rgba(42, 125, 191, .55); }
.dsi-serv-negro a.dsi-cubre { color: inherit; }
.dsi-serv-negro a.dsi-cubre::after { content: ""; position: absolute; inset: 0; }
/* Toda la tarjeta es pulsable: el enlace del título se estira sobre la tarjeta entera (los widgets no deben ser su referencia) */
.dsi-serv-negro .elementor-widget, .dsi-serv-negro .elementor-widget-container, .dsi-serv-negro .elementor-heading-title { position: static; }
.dsi-serv-negro a.dsi-cubre::after { z-index: 2; border-radius: inherit; }
.dsi-serv-negro a.dsi-cubre:focus-visible::after { outline: 3px solid #2A7DBF; outline-offset: 3px; border-radius: 20px; }
.dsi-serv-negro .elementor-heading-title a:not(.dsi-cubre) { color: inherit; text-decoration: none; transition: letter-spacing .25s ease; }
.dsi-serv-negro:hover .elementor-heading-title a:not(.dsi-cubre) { letter-spacing: .12em; text-decoration: underline; text-underline-offset: 4px; }
.dsi-servicio { position: relative; }

/* ---------- Pasos numerados ---------- */
.dsi-paso-num .elementor-heading-title {
	display: inline-flex; align-items: center; justify-content: center;
	width: 56px; height: 56px; border-radius: 50%;
	background: linear-gradient(135deg, #6EC1E4, #2A7DBF);
	box-shadow: 0 10px 20px -10px rgba(42, 125, 191, .9);
}

/* ---------- Franja azul: ventajas centradas ---------- */
.dsi-checks-centro .elementor-icon-list-items { justify-content: center; }
@media (max-width: 767px) {
	.dsi-checks-centro .elementor-icon-list-items.elementor-inline-items { flex-direction: column; align-items: center; }
}

/* ---------- Estilo claro ---------- */
/* Botón blanco sobre la franja azul */
.dsi-btn-blanco .elementor-button { background: #FFFFFF !important; color: #2A7DBF !important; box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .35); }
.dsi-btn-blanco .elementor-button:hover { color: #0B0B0B !important; }
/* Cabecera con foto. Tablet: velo blanco completo para leer bien el texto.
   Móvil: el texto va encima de la foto, que se ve nítida bajo un velo azul marino de la marca, con el título y el texto en blanco.
   La tarjeta del formulario conserva sus colores. */
@media (min-width: 768px) and (max-width: 1024px) {
	.dsi-hero-claro::before { background-image: none !important; background-color: rgba(255, 255, 255, .88) !important; opacity: 1 !important; }
}
@media (max-width: 767px) {
	/* En móvil la foto se recorta: se centra en su lado derecho, que es donde está el protagonista */
	.e-con.dsi-hero-claro { background-position: 80% center !important; }
	.dsi-hero-claro::before {
		background-color: transparent !important; opacity: 1 !important;
		background-image: linear-gradient(180deg, rgba(12, 25, 59, .58) 0%, rgba(12, 25, 59, .42) 55%, rgba(12, 25, 59, .60) 100%) !important;
	}
	.dsi-hero-claro h1.elementor-heading-title,
	.dsi-hero-claro .elementor-widget-text-editor:not(.dsi-form-corto *),
	.dsi-hero-claro .elementor-widget-text-editor:not(.dsi-form-corto *) strong,
	.dsi-hero-claro .dsi-sellos .elementor-icon-list-text { color: #FFFFFF !important; }
	.dsi-hero-claro .dsi-sellos .elementor-icon-list-icon svg { fill: #6EC1E4 !important; }
	.dsi-hero-claro .dsi-btn-borde.dsi-oscuro .elementor-button { color: #FFFFFF !important; border-color: rgba(255, 255, 255, .7) !important; }
	.dsi-hero-claro h1.elementor-heading-title { text-shadow: 0 2px 16px rgba(12, 25, 59, .7); }
	.dsi-hero-claro .elementor-widget-text-editor:not(.dsi-form-corto *), .dsi-hero-claro .dsi-sellos { text-shadow: 0 1px 10px rgba(12, 25, 59, .85); }
}
/* Cabecera de la web en blanco */
.dsi-header-main { border-bottom: 1px solid #E3E7ED; }
.dsi-header-main.elementor-sticky--effects { box-shadow: 0 10px 30px -18px rgba(12, 25, 59, .35); }
/* Pie claro */
.dsi-pie a:hover { color: #2A7DBF !important; }

/* Fichas claras: foto arriba, texto debajo */
.dsi-ficha { box-shadow: 0 14px 30px -26px rgba(42, 125, 191, .6); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.dsi-ficha:hover { transform: translateY(-4px); border-color: #6EC1E4 !important; box-shadow: 0 20px 36px -22px rgba(42, 125, 191, .55); }
@media (max-width: 767px) {
	.dsi-ficha { --flex-direction: row !important; flex-direction: row !important; --align-items: stretch !important; align-items: stretch !important; --flex-wrap: nowrap !important; flex-wrap: nowrap !important; }
	.dsi-ficha > .e-con:first-child { --width: 112px !important; width: 112px !important; min-width: 112px; max-width: 112px; --min-height: 100% !important; min-height: 100% !important; flex-shrink: 0; }
	.dsi-ficha > .e-con:last-child { --width: auto !important; width: auto !important; flex: 1 1 auto; }
	.dsi-ficha > .e-con:last-child { --padding-top: 16px; --padding-bottom: 16px; --padding-left: 16px; --padding-right: 16px; padding: 16px !important; }
}

/* =====================================================================
   Blog (estilo claro)
   ===================================================================== */
.dsi-migas, .dsi-migas a { font-size: var(--dsi-legal); color: #5B6475; }
.dsi-migas a:hover { color: #2A7DBF; }
.dsi-articulo h2 { font-size: var(--dsi-h2); line-height: 1.2; font-weight: 700; color: #0B0B0B; margin: 1.8em 0 .6em; }
.dsi-articulo h2::after { content: ""; display: block; width: 70px; height: 3px; margin-top: 12px; border-radius: 3px; background: #6EC1E4; }
.dsi-articulo h3 { font-size: var(--dsi-h3); line-height: 1.3; font-weight: 700; color: #0B0B0B; margin: 1.4em 0 .4em; }
.dsi-articulo p, .dsi-articulo li { color: #3D434C; }
.dsi-articulo strong { color: #0B0B0B; }
.dsi-articulo a { color: #2A7DBF; text-decoration: underline; text-underline-offset: 3px; }
.dsi-articulo ul, .dsi-articulo ol { padding-left: 1.3em; margin-bottom: 1.2em; }
.dsi-articulo li { margin-bottom: .5em; }
.dsi-articulo li::marker { color: #2A7DBF; font-weight: 700; }
.dsi-articulo .dsi-entradilla { font-size: var(--dsi-lead); line-height: 1.6; color: #0B0B0B; border-left: 4px solid #6EC1E4; padding-left: 18px; }
.dsi-articulo .dsi-formula { background: #F2FAFE; border: 1px solid #DCEAF3; border-radius: 14px; padding: 16px 20px; text-align: center; }
.dsi-articulo .dsi-tabla { margin: 1.5em 0; overflow-x: auto; }
.dsi-articulo .dsi-tabla table { width: 100%; border-collapse: collapse; font-size: var(--dsi-peq); min-width: 560px; }
.dsi-articulo .dsi-tabla th { background: #6EC1E4; color: #FFFFFF; text-align: left; padding: 10px 12px; }
.dsi-articulo .dsi-tabla td, .dsi-articulo .dsi-tabla th { border: 0 !important; }
.dsi-articulo .dsi-tabla td { padding: 10px 12px; border-bottom: 1px solid #E3E7ED !important; }
.dsi-articulo .dsi-tabla table { border: 1px solid #DCEAF3; border-radius: 14px; overflow: hidden; }
.dsi-articulo .dsi-tabla thead { border: 0 !important; }
.dsi-articulo .dsi-tabla tr:nth-child(even) td { background: #F7FBFE; }
.dsi-articulo .dsi-tabla tr:last-child td { background: #F2FAFE; }
.dsi-cta-articulo { margin-top: 2.2em; padding: 28px; border-radius: 20px; text-align: center; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
.dsi-cta-articulo p { color: #FFFFFF !important; margin: 0 0 12px; }
.dsi-cta-articulo .dsi-cta-titulo { font-size: var(--dsi-h3); line-height: 1.3; font-weight: 700; }
.dsi-articulo .dsi-cta-articulo a.dsi-cta-boton {
	display: inline-block; margin-top: 6px; padding: 16px 30px; border-radius: 50px; background: #FFFFFF; color: #2A7DBF;
	font-weight: 700; font-size: var(--dsi-boton); line-height: 1.2; letter-spacing: .06em; text-transform: uppercase; text-decoration: none;
}
@media (max-width: 767px) {
}

/* Tabla del escandallo en móvil: cada ingrediente como una ficha */
@media (max-width: 767px) {
	.dsi-articulo .dsi-tabla-escandallo { overflow: visible; }
	.dsi-articulo .dsi-tabla-escandallo table { min-width: 0; }
	.dsi-articulo .dsi-tabla-escandallo thead { display: none; }
	.dsi-articulo .dsi-tabla-escandallo table, .dsi-articulo .dsi-tabla-escandallo tbody,
	.dsi-articulo .dsi-tabla-escandallo tr, .dsi-articulo .dsi-tabla-escandallo td { display: block; width: 100%; }
	.dsi-articulo .dsi-tabla-escandallo tr { margin-bottom: 12px; border: 1px solid #DCEAF3; border-radius: 14px; overflow: hidden; background: #FFFFFF; }
	.dsi-articulo .dsi-tabla-escandallo td { display: flex; justify-content: space-between; gap: 12px; border: 0 !important; border-bottom: 1px solid #EEF3F7 !important; background: #FFFFFF !important; text-align: right; }
	.dsi-articulo .dsi-tabla-escandallo td:first-child { background: #F2FAFE !important; font-weight: 700; color: #0B0B0B; text-align: left; }
	.dsi-articulo .dsi-tabla-escandallo td:empty, .dsi-articulo .dsi-tabla-escandallo td:last-child { border-bottom: 0; }
	.dsi-articulo .dsi-tabla-escandallo td:empty { display: none; }
	.dsi-articulo .dsi-tabla-escandallo td:nth-child(2)::before { content: "Cantidad"; }
	.dsi-articulo .dsi-tabla-escandallo td:nth-child(3)::before { content: "Precio de compra"; }
	.dsi-articulo .dsi-tabla-escandallo td:nth-child(4)::before { content: "Coste en la ración"; }
	.dsi-articulo .dsi-tabla-escandallo td::before { color: #5B6475; font-weight: 600; text-align: left; }
	.dsi-articulo .dsi-tabla-escandallo tr:last-child td:nth-child(4)::before { content: "Total"; }
}

/* Recuadro de descarga del lead magnet dentro de los artículos */
.dsi-cta-descarga { margin: 2em 0; padding: 26px 28px; border-radius: 20px; background: #F2FAFE; border: 1px solid #DCEAF3; border-left: 5px solid #6EC1E4; }
.dsi-cta-descarga p { margin: 0 0 10px; }
.dsi-cta-descarga .dsi-cta-descarga-titulo { font-size: var(--dsi-h3); line-height: 1.3; font-weight: 700; color: #0B0B0B !important; }
.dsi-articulo .dsi-cta-descarga a.dsi-cta-descarga-boton {
	display: inline-block; margin-top: 4px; padding: 16px 30px; border-radius: 50px; color: #FFFFFF;
	background: linear-gradient(100deg, #6EC1E4, #2A7DBF); font-weight: 700; font-size: var(--dsi-boton); line-height: 1.2; letter-spacing: .06em; text-transform: uppercase; text-decoration: none;
}
.dsi-vista-excel img { border: 1px solid #DCEAF3; }

/* Tablas que se apilan en el móvil (cada fila como una ficha, con el título de la columna en cada dato) */
@media (max-width: 767px) {
	.dsi-articulo .dsi-tabla-fichas { overflow: visible; }
	.dsi-articulo .dsi-tabla-fichas table { min-width: 0; border: 0; }
	.dsi-articulo .dsi-tabla-fichas thead { display: none; }
	.dsi-articulo .dsi-tabla-fichas table, .dsi-articulo .dsi-tabla-fichas tbody,
	.dsi-articulo .dsi-tabla-fichas tr, .dsi-articulo .dsi-tabla-fichas td { display: block; width: 100%; }
	.dsi-articulo .dsi-tabla-fichas tr { margin-bottom: 12px; border: 1px solid #DCEAF3; border-radius: 14px; overflow: hidden; background: #FFFFFF; }
	.dsi-articulo .dsi-tabla-fichas td { background: #FFFFFF !important; border-bottom: 1px solid #EEF3F7 !important; text-align: right; }
	.dsi-articulo .dsi-tabla-fichas td::after { content: ""; display: table; clear: both; }
	.dsi-articulo .dsi-tabla-fichas td::before { content: attr(data-label); float: left; margin-right: 14px; max-width: 48%; color: #5B6475; font-weight: 600; text-align: left; }
	.dsi-articulo .dsi-tabla-fichas td:first-child { display: block; background: #F2FAFE !important; font-weight: 700; color: #0B0B0B; text-align: left; }
	.dsi-articulo .dsi-tabla-fichas td:first-child::before { content: none; float: none; }
	.dsi-articulo .dsi-tabla-fichas td:last-child { border-bottom: 0 !important; }
	.dsi-articulo .dsi-tabla-lista td { text-align: left; }
	.dsi-articulo .dsi-tabla-lista td::before { float: none; display: block; max-width: none; margin: 0 0 2px; font-size: var(--dsi-legal); }
}

/* Imágenes dentro de los artículos */
.dsi-articulo .dsi-figura { margin: 1.8em 0; }
.dsi-articulo .dsi-figura img { width: 100%; height: auto; border-radius: 16px; border: 1px solid #DCEAF3; box-shadow: 0 20px 44px -30px rgba(42,125,191,.55); }
.dsi-articulo .dsi-figura figcaption { margin-top: 10px; font-size: var(--dsi-legal); color: #5B6475; text-align: center; }

/* Iconos de marca en los artículos (Font Awesome Free 6 · CC BY 4.0): pictograma blanco en círculo celeste→azul */
.dsi-ico { display: inline-flex; align-items: center; justify-content: center; width: 1.6em; height: 1.6em; margin-right: .45em; border-radius: 50%; vertical-align: -0.38em; background: linear-gradient(135deg, #6EC1E4, #2A7DBF); flex: 0 0 auto; }
.dsi-ico::before { content: ""; width: 58%; height: 58%; background: #FFFFFF; -webkit-mask: var(--dsi-ico) center / contain no-repeat; mask: var(--dsi-ico) center / contain no-repeat; }
.dsi-ico-estrella { --dsi-ico: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBkPSJNMzE2LjkgMThDMzExLjYgNyAzMDAuNCAwIDI4OC4xIDBzLTIzLjQgNy0yOC44IDE4TDE5NSAxNTAuMyA1MS40IDE3MS41Yy0xMiAxLjgtMjIgMTAuMi0yNS43IDIxLjdzLS43IDI0LjIgNy45IDMyLjdMMTM3LjggMzI5IDExMy4yIDQ3NC43Yy0yIDEyIDMgMjQuMiAxMi45IDMxLjNzMjMgOCAzMy44IDIuM2wxMjguMy02OC41IDEyOC4zIDY4LjVjMTAuOCA1LjcgMjMuOSA0LjkgMzMuOC0yLjNzMTQuOS0xOS4zIDEyLjktMzEuM0w0MzguNSAzMjkgNTQyLjcgMjI1LjljOC42LTguNSAxMS43LTIxLjIgNy45LTMyLjdzLTEzLjctMTkuOS0yNS43LTIxLjdMMzgxLjIgMTUwLjMgMzE2LjkgMTh6Ii8+PC9zdmc+"); }
.dsi-ico-vaca { --dsi-ico: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48cGF0aCBkPSJNOTYgMjI0djMyVjQxNmMwIDE3LjcgMTQuMyAzMiAzMiAzMmgzMmMxNy43IDAgMzItMTQuMyAzMi0zMlYzMjcuOGM5LjkgNi42IDIwLjYgMTIgMzIgMTYuMVYzNjhjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNlYzNTEuMWM1LjMgLjYgMTAuNiAuOSAxNiAuOXMxMC43LS4zIDE2LS45VjM2OGMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2VjM0My44YzExLjQtNCAyMi4xLTkuNCAzMi0xNi4xVjQxNmMwIDE3LjcgMTQuMyAzMiAzMiAzMmgzMmMxNy43IDAgMzItMTQuMyAzMi0zMlYyNTZsMzIgMzJ2NDkuNWMwIDkuNSAyLjggMTguNyA4LjEgMjYuNkw1MzAgNDI3YzguOCAxMy4xIDIzLjUgMjEgMzkuMyAyMWMyMi41IDAgNDEuOS0xNS45IDQ2LjMtMzhsMjAuMy0xMDEuNmMyLjYtMTMtLjMtMjYuNS04LTM3LjNsLTMuOS01LjVWMTg0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0djE0LjRsLTUyLjktNzQuMUM0OTYgODYuNSA0NTIuNCA2NCA0MDUuOSA2NEgyNzIgMjU2IDE5MiAxNDRDNzcuNyA2NCAyNCAxMTcuNyAyNCAxODR2NTRDOS40IDI0OS44IDAgMjY3LjggMCAyODh2MTcuNmMwIDggNi40IDE0LjQgMTQuNCAxNC40QzQ2LjIgMzIwIDcyIDI5NC4yIDcyIDI2Mi40VjI1NiAyMjQgMTg0YzAtMjQuMyAxMi4xLTQ1LjggMzAuNS01OC45Qzk4LjMgMTM1LjkgOTYgMTQ3LjcgOTYgMTYwdjY0ek01NjAgMzM2YTE2IDE2IDAgMSAxIDMyIDAgMTYgMTYgMCAxIDEgLTMyIDB6TTE2Ni42IDE2Ni42Yy00LjItNC4yLTYuNi0xMC02LjYtMTZjMC0xMi41IDEwLjEtMjIuNiAyMi42LTIyLjZIMzYxLjRjMTIuNSAwIDIyLjYgMTAuMSAyMi42IDIyLjZjMCA2LTIuNCAxMS44LTYuNiAxNmwtMjMuNCAyMy40QzMzMi4yIDIxMS44IDMwMi43IDIyNCAyNzIgMjI0cy02MC4yLTEyLjItODEuOS0zMy45bC0yMy40LTIzLjR6Ii8+PC9zdmc+"); }
.dsi-ico-puzzle { --dsi-ico: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBkPSJNMTkyIDEwNC44YzAtOS4yLTUuOC0xNy4zLTEzLjItMjIuOEMxNjcuMiA3My4zIDE2MCA2MS4zIDE2MCA0OGMwLTI2LjUgMjguNy00OCA2NC00OHM2NCAyMS41IDY0IDQ4YzAgMTMuMy03LjIgMjUuMy0xOC44IDM0Yy03LjQgNS41LTEzLjIgMTMuNi0xMy4yIDIyLjhjMCAxMi44IDEwLjQgMjMuMiAyMy4yIDIzLjJIMzM2YzI2LjUgMCA0OCAyMS41IDQ4IDQ4djU2LjhjMCAxMi44IDEwLjQgMjMuMiAyMy4yIDIzLjJjOS4yIDAgMTcuMy01LjggMjIuOC0xMy4yYzguNy0xMS42IDIwLjctMTguOCAzNC0xOC44YzI2LjUgMCA0OCAyOC43IDQ4IDY0cy0yMS41IDY0LTQ4IDY0Yy0xMy4zIDAtMjUuMy03LjItMzQtMTguOGMtNS41LTcuNC0xMy42LTEzLjItMjIuOC0xMy4yYy0xMi44IDAtMjMuMiAxMC40LTIzLjIgMjMuMlY0NjRjMCAyNi41LTIxLjUgNDgtNDggNDhIMjc5LjJjLTEyLjggMC0yMy4yLTEwLjQtMjMuMi0yMy4yYzAtOS4yIDUuOC0xNy4zIDEzLjItMjIuOGMxMS42LTguNyAxOC44LTIwLjcgMTguOC0zNGMwLTI2LjUtMjguNy00OC02NC00OHMtNjQgMjEuNS02NCA0OGMwIDEzLjMgNy4yIDI1LjMgMTguOCAzNGM3LjQgNS41IDEzLjIgMTMuNiAxMy4yIDIyLjhjMCAxMi44LTEwLjQgMjMuMi0yMy4yIDIzLjJINDhjLTI2LjUgMC00OC0yMS41LTQ4LTQ4VjM0My4yQzAgMzMwLjQgMTAuNCAzMjAgMjMuMiAzMjBjOS4yIDAgMTcuMyA1LjggMjIuOCAxMy4yQzU0LjcgMzQ0LjggNjYuNyAzNTIgODAgMzUyYzI2LjUgMCA0OC0yOC43IDQ4LTY0cy0yMS41LTY0LTQ4LTY0Yy0xMy4zIDAtMjUuMyA3LjItMzQgMTguOEM0MC41IDI1MC4yIDMyLjQgMjU2IDIzLjIgMjU2QzEwLjQgMjU2IDAgMjQ1LjYgMCAyMzIuOFYxNzZjMC0yNi41IDIxLjUtNDggNDgtNDhIMTY4LjhjMTIuOCAwIDIzLjItMTAuNCAyMy4yLTIzLjJ6Ii8+PC9zdmc+"); }
.dsi-ico-perro { --dsi-ico: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBkPSJNMzA5LjYgMTU4LjVMMzMyLjcgMTkuOEMzMzQuNiA4LjQgMzQ0LjUgMCAzNTYuMSAwYzcuNSAwIDE0LjUgMy41IDE5IDkuNUwzOTIgMzJoNTIuMWMxMi43IDAgMjQuOSA1LjEgMzMuOSAxNC4xTDQ5NiA2NGg1NmMxMy4zIDAgMjQgMTAuNyAyNCAyNHYyNGMwIDQ0LjItMzUuOCA4MC04MCA4MEg0NjQgNDQ4IDQyNi43bC01LjEgMzAuNS0xMTItNjR6TTQxNiAyNTYuMUw0MTYgNDgwYzAgMTcuNy0xNC4zIDMyLTMyIDMySDM1MmMtMTcuNyAwLTMyLTE0LjMtMzItMzJWMzY0LjhjLTI0IDEyLjMtNTEuMiAxOS4yLTgwIDE5LjJzLTU2LTYuOS04MC0xOS4yVjQ4MGMwIDE3LjctMTQuMyAzMi0zMiAzMkg5NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJWMjQ5LjhjLTI4LjgtMTAuOS01MS40LTM1LjMtNTkuMi02Ni41TDEgMTY3LjhjLTQuMy0xNy4xIDYuMS0zNC41IDIzLjMtMzguOHMzNC41IDYuMSAzOC44IDIzLjNsMy45IDE1LjVDNzAuNSAxODIgODMuMyAxOTIgOTggMTkyaDMwIDE2SDMwMy44TDQxNiAyNTYuMXpNNDY0IDgwYTE2IDE2IDAgMSAwIC0zMiAwIDE2IDE2IDAgMSAwIDMyIDB6Ii8+PC9zdmc+"); }
.dsi-articulo h3 .dsi-ico { font-size: .95em; }

/* Resumen al inicio de los artículos (respuesta directa para buscadores y asistentes de IA) */
.dsi-articulo .dsi-resumen { margin: 1.6em 0 2em; padding: 22px 26px; border-radius: 18px; background: #F2FAFE; border: 1px solid #DCEAF3; }
.dsi-articulo .dsi-resumen .dsi-resumen-titulo { margin: 0 0 8px; font-weight: 700; color: #2A7DBF; font-size: var(--dsi-kick); letter-spacing: .12em; text-transform: uppercase; }
.dsi-articulo .dsi-resumen ul { margin: 0; }
.dsi-articulo .dsi-resumen li { margin-bottom: .35em; }
/* Autoría y fecha de actualización */
.dsi-articulo .dsi-autor { margin-top: 2.4em; padding: 20px 24px; border-radius: 16px; border: 1px solid #DCEAF3; border-left: 5px solid #6EC1E4; background: #FFFFFF; }
.dsi-articulo .dsi-autor p { margin: 0 0 6px; font-size: var(--dsi-peq); }
.dsi-articulo .dsi-autor .dsi-autor-titulo { font-weight: 700; color: #0B0B0B; }
.dsi-articulo .dsi-autor .dsi-autor-fecha { margin: 0; font-size: var(--dsi-legal); color: #5B6475; }
.dsi-articulo .dsi-fuentes li { font-size: var(--dsi-peq); }

/* Iconos de marca en el desplegable de Servicios (Font Awesome, los mismos de la página Servicios) */
.dsi-nav .dsi-mi > a { display: flex; align-items: center; gap: 12px; }
.dsi-nav .dsi-mi > a::before { content: ""; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background-image: var(--mi-blanco), linear-gradient(135deg, #6EC1E4, #2A7DBF); background-repeat: no-repeat; background-position: center; background-size: 15px 15px, cover; box-shadow: 0 6px 14px -8px rgba(42,125,191,.8); transition: background-color .2s; }
.dsi-nav .dsi-mi > a:hover::before, .dsi-nav .dsi-mi > a:focus::before, .dsi-nav .dsi-mi > a.elementor-item-active::before { background-image: var(--mi-azul), linear-gradient(#FFFFFF, #FFFFFF); }
.dsi-nav .elementor-nav-menu--main .sub-menu { min-width: 300px; }
.dsi-mi-tpv-de-hoteleria-cadiz { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MTYgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMjA3LjkgMTUuMmMuOCA0LjcgMTYuMSA5NC41IDE2LjEgMTI4LjggMCA1Mi4zLTI3LjggODkuNi02OC45IDEwNC42TDE2OCA0ODYuN2MuNyAxMy43LTEwLjIgMjUuMy0yNCAyNS4zSDgwYy0xMy43IDAtMjQuNy0xMS41LTI0LTI1LjNsMTIuOS0yMzguMUMyNy43IDIzMy42IDAgMTk2LjIgMCAxNDQgMCAxMDkuNiAxNS4zIDE5LjkgMTYuMSAxNS4yIDE5LjMtNS4xIDYxLjQtNS40IDY0IDE2LjN2MTQxLjJjMS4zIDMuNCAxNS4xIDMuMiAxNiAwIDEuNC0yNS4zIDcuOS0xMzkuMiA4LTE0MS44IDMuMy0yMC44IDQ0LjctMjAuOCA0Ny45IDAgLjIgMi43IDYuNiAxMTYuNSA4IDE0MS44LjkgMy4yIDE0LjggMy40IDE2IDBWMTYuM2MyLjYtMjEuNiA0NC44LTIxLjQgNDgtMS4xem0xMTkuMiAyODUuN2wtMTUgMTg1LjFjLTEuMiAxNCA5LjkgMjYgMjMuOSAyNmg1NmMxMy4zIDAgMjQtMTAuNyAyNC0yNFYyNGMwLTEzLjItMTAuNy0yNC0yNC0yNC04Mi41IDAtMjIxLjQgMTc4LjUtNjQuOSAzMDAuOXoiLz48L3N2Zz4="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MTYgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNMjA3LjkgMTUuMmMuOCA0LjcgMTYuMSA5NC41IDE2LjEgMTI4LjggMCA1Mi4zLTI3LjggODkuNi02OC45IDEwNC42TDE2OCA0ODYuN2MuNyAxMy43LTEwLjIgMjUuMy0yNCAyNS4zSDgwYy0xMy43IDAtMjQuNy0xMS41LTI0LTI1LjNsMTIuOS0yMzguMUMyNy43IDIzMy42IDAgMTk2LjIgMCAxNDQgMCAxMDkuNiAxNS4zIDE5LjkgMTYuMSAxNS4yIDE5LjMtNS4xIDYxLjQtNS40IDY0IDE2LjN2MTQxLjJjMS4zIDMuNCAxNS4xIDMuMiAxNiAwIDEuNC0yNS4zIDcuOS0xMzkuMiA4LTE0MS44IDMuMy0yMC44IDQ0LjctMjAuOCA0Ny45IDAgLjIgMi43IDYuNiAxMTYuNSA4IDE0MS44LjkgMy4yIDE0LjggMy40IDE2IDBWMTYuM2MyLjYtMjEuNiA0NC44LTIxLjQgNDgtMS4xem0xMTkuMiAyODUuN2wtMTUgMTg1LjFjLTEuMiAxNCA5LjkgMjYgMjMuOSAyNmg1NmMxMy4zIDAgMjQtMTAuNyAyNC0yNFYyNGMwLTEzLjItMTAuNy0yNC0yNC0yNC04Mi41IDAtMjIxLjQgMTc4LjUtNjQuOSAzMDAuOXoiLz48L3N2Zz4="); }
.dsi-mi-tpv-retail-comercio { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNTc2IDIxNnYxNmMwIDEzLjI1NS0xMC43NDUgMjQtMjQgMjRoLThsLTI2LjExMyAxODIuNzg4QzUxNC41MDkgNDYyLjQzNSA0OTQuMjU3IDQ4MCA0NzAuMzcgNDgwSDEwNS42M2MtMjMuODg3IDAtNDQuMTM5LTE3LjU2NS00Ny41MTgtNDEuMjEyTDMyIDI1NmgtOGMtMTMuMjU1IDAtMjQtMTAuNzQ1LTI0LTI0di0xNmMwLTEzLjI1NSAxMC43NDUtMjQgMjQtMjRoNjcuMzQxbDEwNi43OC0xNDYuODIxYzEwLjM5NS0xNC4yOTIgMzAuNDA3LTE3LjQ1MyA0NC43MDEtNy4wNTggMTQuMjkzIDEwLjM5NSAxNy40NTMgMzAuNDA4IDcuMDU4IDQ0LjcwMUwxNzAuNDc3IDE5MmgyMzUuMDQ2TDMyNi4xMiA4Mi44MjFjLTEwLjM5NS0xNC4yOTItNy4yMzQtMzQuMzA2IDcuMDU5LTQ0LjcwMSAxNC4yOTEtMTAuMzk1IDM0LjMwNi03LjIzNSA0NC43MDEgNy4wNThMNDg0LjY1OSAxOTJINTUyYzEzLjI1NSAwIDI0IDEwLjc0NSAyNCAyNHpNMzEyIDM5MlYyODBjMC0xMy4yNTUtMTAuNzQ1LTI0LTI0LTI0cy0yNCAxMC43NDUtMjQgMjR2MTEyYzAgMTMuMjU1IDEwLjc0NSAyNCAyNCAyNHMyNC0xMC43NDUgMjQtMjR6bTExMiAwVjI4MGMwLTEzLjI1NS0xMC43NDUtMjQtMjQtMjRzLTI0IDEwLjc0NS0yNCAyNHYxMTJjMCAxMy4yNTUgMTAuNzQ1IDI0IDI0IDI0czI0LTEwLjc0NSAyNC0yNHptLTIyNCAwVjI4MGMwLTEzLjI1NS0xMC43NDUtMjQtMjQtMjRzLTI0IDEwLjc0NS0yNCAyNHYxMTJjMCAxMy4yNTUgMTAuNzQ1IDI0IDI0IDI0czI0LTEwLjc0NSAyNC0yNHoiLz48L3N2Zz4="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNTc2IDIxNnYxNmMwIDEzLjI1NS0xMC43NDUgMjQtMjQgMjRoLThsLTI2LjExMyAxODIuNzg4QzUxNC41MDkgNDYyLjQzNSA0OTQuMjU3IDQ4MCA0NzAuMzcgNDgwSDEwNS42M2MtMjMuODg3IDAtNDQuMTM5LTE3LjU2NS00Ny41MTgtNDEuMjEyTDMyIDI1NmgtOGMtMTMuMjU1IDAtMjQtMTAuNzQ1LTI0LTI0di0xNmMwLTEzLjI1NSAxMC43NDUtMjQgMjQtMjRoNjcuMzQxbDEwNi43OC0xNDYuODIxYzEwLjM5NS0xNC4yOTIgMzAuNDA3LTE3LjQ1MyA0NC43MDEtNy4wNTggMTQuMjkzIDEwLjM5NSAxNy40NTMgMzAuNDA4IDcuMDU4IDQ0LjcwMUwxNzAuNDc3IDE5MmgyMzUuMDQ2TDMyNi4xMiA4Mi44MjFjLTEwLjM5NS0xNC4yOTItNy4yMzQtMzQuMzA2IDcuMDU5LTQ0LjcwMSAxNC4yOTEtMTAuMzk1IDM0LjMwNi03LjIzNSA0NC43MDEgNy4wNThMNDg0LjY1OSAxOTJINTUyYzEzLjI1NSAwIDI0IDEwLjc0NSAyNCAyNHpNMzEyIDM5MlYyODBjMC0xMy4yNTUtMTAuNzQ1LTI0LTI0LTI0cy0yNCAxMC43NDUtMjQgMjR2MTEyYzAgMTMuMjU1IDEwLjc0NSAyNCAyNCAyNHMyNC0xMC43NDUgMjQtMjR6bTExMiAwVjI4MGMwLTEzLjI1NS0xMC43NDUtMjQtMjQtMjRzLTI0IDEwLjc0NS0yNCAyNHYxMTJjMCAxMy4yNTUgMTAuNzQ1IDI0IDI0IDI0czI0LTEwLjc0NSAyNC0yNHptLTIyNCAwVjI4MGMwLTEzLjI1NS0xMC43NDUtMjQtMjQtMjRzLTI0IDEwLjc0NS0yNCAyNHYxMTJjMCAxMy4yNTUgMTAuNzQ1IDI0IDI0IDI0czI0LTEwLjc0NSAyNC0yNHoiLz48L3N2Zz4="); }
.dsi-mi-adaptacion-verifactu-cadiz { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzODQgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMjg4IDI1Nkg5NnY2NGgxOTJ2LTY0em04OS0xNTFMMjc5LjEgN2MtNC41LTQuNS0xMC42LTctMTctN0gyNTZ2MTI4aDEyOHYtNi4xYzAtNi4zLTIuNS0xMi40LTctMTYuOXptLTE1MyAzMVYwSDI0QzEwLjcgMCAwIDEwLjcgMCAyNHY0NjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRoMzM2YzEzLjMgMCAyNC0xMC43IDI0LTI0VjE2MEgyNDhjLTEzLjIgMC0yNC0xMC44LTI0LTI0ek02NCA3MmMwLTQuNDIgMy41OC04IDgtOGg4MGM0LjQyIDAgOCAzLjU4IDggOHYxNmMwIDQuNDItMy41OCA4LTggOEg3MmMtNC40MiAwLTgtMy41OC04LThWNzJ6bTAgNjRjMC00LjQyIDMuNTgtOCA4LThoODBjNC40MiAwIDggMy41OCA4IDh2MTZjMCA0LjQyLTMuNTggOC04IDhINzJjLTQuNDIgMC04LTMuNTgtOC04di0xNnptMjU2IDMwNGMwIDQuNDItMy41OCA4LTggOGgtODBjLTQuNDIgMC04LTMuNTgtOC04di0xNmMwLTQuNDIgMy41OC04IDgtOGg4MGM0LjQyIDAgOCAzLjU4IDggOHYxNnptMC0yMDB2OTZjMCA4Ljg0LTcuMTYgMTYtMTYgMTZIODBjLTguODQgMC0xNi03LjE2LTE2LTE2di05NmMwLTguODQgNy4xNi0xNiAxNi0xNmgyMjRjOC44NCAwIDE2IDcuMTYgMTYgMTZ6Ii8+PC9zdmc+"); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzODQgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNMjg4IDI1Nkg5NnY2NGgxOTJ2LTY0em04OS0xNTFMMjc5LjEgN2MtNC41LTQuNS0xMC42LTctMTctN0gyNTZ2MTI4aDEyOHYtNi4xYzAtNi4zLTIuNS0xMi40LTctMTYuOXptLTE1MyAzMVYwSDI0QzEwLjcgMCAwIDEwLjcgMCAyNHY0NjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRoMzM2YzEzLjMgMCAyNC0xMC43IDI0LTI0VjE2MEgyNDhjLTEzLjIgMC0yNC0xMC44LTI0LTI0ek02NCA3MmMwLTQuNDIgMy41OC04IDgtOGg4MGM0LjQyIDAgOCAzLjU4IDggOHYxNmMwIDQuNDItMy41OCA4LTggOEg3MmMtNC40MiAwLTgtMy41OC04LThWNzJ6bTAgNjRjMC00LjQyIDMuNTgtOCA4LThoODBjNC40MiAwIDggMy41OCA4IDh2MTZjMCA0LjQyLTMuNTggOC04IDhINzJjLTQuNDIgMC04LTMuNTgtOC04di0xNnptMjU2IDMwNGMwIDQuNDItMy41OCA4LTggOGgtODBjLTQuNDIgMC04LTMuNTgtOC04di0xNmMwLTQuNDIgMy41OC04IDgtOGg4MGM0LjQyIDAgOCAzLjU4IDggOHYxNnptMC0yMDB2OTZjMCA4Ljg0LTcuMTYgMTYtMTYgMTZIODBjLTguODQgMC0xNi03LjE2LTE2LTE2di05NmMwLTguODQgNy4xNi0xNiAxNi0xNmgyMjRjOC44NCAwIDE2IDcuMTYgMTYgMTZ6Ii8+PC9zdmc+"); }
.dsi-mi-servidores { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNDgwIDE2MEgzMmMtMTcuNjczIDAtMzItMTQuMzI3LTMyLTMyVjY0YzAtMTcuNjczIDE0LjMyNy0zMiAzMi0zMmg0NDhjMTcuNjczIDAgMzIgMTQuMzI3IDMyIDMydjY0YzAgMTcuNjczLTE0LjMyNyAzMi0zMiAzMnptLTQ4LTg4Yy0xMy4yNTUgMC0yNCAxMC43NDUtMjQgMjRzMTAuNzQ1IDI0IDI0IDI0IDI0LTEwLjc0NSAyNC0yNC0xMC43NDUtMjQtMjQtMjR6bS02NCAwYy0xMy4yNTUgMC0yNCAxMC43NDUtMjQgMjRzMTAuNzQ1IDI0IDI0IDI0IDI0LTEwLjc0NSAyNC0yNC0xMC43NDUtMjQtMjQtMjR6bTExMiAyNDhIMzJjLTE3LjY3MyAwLTMyLTE0LjMyNy0zMi0zMnYtNjRjMC0xNy42NzMgMTQuMzI3LTMyIDMyLTMyaDQ0OGMxNy42NzMgMCAzMiAxNC4zMjcgMzIgMzJ2NjRjMCAxNy42NzMtMTQuMzI3IDMyLTMyIDMyem0tNDgtODhjLTEzLjI1NSAwLTI0IDEwLjc0NS0yNCAyNHMxMC43NDUgMjQgMjQgMjQgMjQtMTAuNzQ1IDI0LTI0LTEwLjc0NS0yNC0yNC0yNHptLTY0IDBjLTEzLjI1NSAwLTI0IDEwLjc0NS0yNCAyNHMxMC43NDUgMjQgMjQgMjQgMjQtMTAuNzQ1IDI0LTI0LTEwLjc0NS0yNC0yNC0yNHptMTEyIDI0OEgzMmMtMTcuNjczIDAtMzItMTQuMzI3LTMyLTMydi02NGMwLTE3LjY3MyAxNC4zMjctMzIgMzItMzJoNDQ4YzE3LjY3MyAwIDMyIDE0LjMyNyAzMiAzMnY2NGMwIDE3LjY3My0xNC4zMjcgMzItMzIgMzJ6bS00OC04OGMtMTMuMjU1IDAtMjQgMTAuNzQ1LTI0IDI0czEwLjc0NSAyNCAyNCAyNCAyNC0xMC43NDUgMjQtMjQtMTAuNzQ1LTI0LTI0LTI0em0tNjQgMGMtMTMuMjU1IDAtMjQgMTAuNzQ1LTI0IDI0czEwLjc0NSAyNCAyNCAyNCAyNC0xMC43NDUgMjQtMjQtMTAuNzQ1LTI0LTI0LTI0eiIvPjwvc3ZnPg=="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNDgwIDE2MEgzMmMtMTcuNjczIDAtMzItMTQuMzI3LTMyLTMyVjY0YzAtMTcuNjczIDE0LjMyNy0zMiAzMi0zMmg0NDhjMTcuNjczIDAgMzIgMTQuMzI3IDMyIDMydjY0YzAgMTcuNjczLTE0LjMyNyAzMi0zMiAzMnptLTQ4LTg4Yy0xMy4yNTUgMC0yNCAxMC43NDUtMjQgMjRzMTAuNzQ1IDI0IDI0IDI0IDI0LTEwLjc0NSAyNC0yNC0xMC43NDUtMjQtMjQtMjR6bS02NCAwYy0xMy4yNTUgMC0yNCAxMC43NDUtMjQgMjRzMTAuNzQ1IDI0IDI0IDI0IDI0LTEwLjc0NSAyNC0yNC0xMC43NDUtMjQtMjQtMjR6bTExMiAyNDhIMzJjLTE3LjY3MyAwLTMyLTE0LjMyNy0zMi0zMnYtNjRjMC0xNy42NzMgMTQuMzI3LTMyIDMyLTMyaDQ0OGMxNy42NzMgMCAzMiAxNC4zMjcgMzIgMzJ2NjRjMCAxNy42NzMtMTQuMzI3IDMyLTMyIDMyem0tNDgtODhjLTEzLjI1NSAwLTI0IDEwLjc0NS0yNCAyNHMxMC43NDUgMjQgMjQgMjQgMjQtMTAuNzQ1IDI0LTI0LTEwLjc0NS0yNC0yNC0yNHptLTY0IDBjLTEzLjI1NSAwLTI0IDEwLjc0NS0yNCAyNHMxMC43NDUgMjQgMjQgMjQgMjQtMTAuNzQ1IDI0LTI0LTEwLjc0NS0yNC0yNC0yNHptMTEyIDI0OEgzMmMtMTcuNjczIDAtMzItMTQuMzI3LTMyLTMydi02NGMwLTE3LjY3MyAxNC4zMjctMzIgMzItMzJoNDQ4YzE3LjY3MyAwIDMyIDE0LjMyNyAzMiAzMnY2NGMwIDE3LjY3My0xNC4zMjcgMzItMzIgMzJ6bS00OC04OGMtMTMuMjU1IDAtMjQgMTAuNzQ1LTI0IDI0czEwLjc0NSAyNCAyNCAyNCAyNC0xMC43NDUgMjQtMjQtMTAuNzQ1LTI0LTI0LTI0em0tNjQgMGMtMTMuMjU1IDAtMjQgMTAuNzQ1LTI0IDI0czEwLjc0NSAyNCAyNCAyNCAyNC0xMC43NDUgMjQtMjQtMTAuNzQ1LTI0LTI0LTI0eiIvPjwvc3ZnPg=="); }
.dsi-mi-mantenimiento-informatico-empresas { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNjEwLjUgMzczLjNjMi42LTE0LjEgMi42LTI4LjUgMC00Mi42bDI1LjgtMTQuOWMzLTEuNyA0LjMtNS4yIDMuMy04LjUtNi43LTIxLjYtMTguMi00MS4yLTMzLjItNTcuNC0yLjMtMi41LTYtMy4xLTktMS40bC0yNS44IDE0LjljLTEwLjktOS4zLTIzLjQtMTYuNS0zNi45LTIxLjN2LTI5LjhjMC0zLjQtMi40LTYuNC01LjctNy4xLTIyLjMtNS00NS00LjgtNjYuMiAwLTMuMy43LTUuNyAzLjctNS43IDcuMXYyOS44Yy0xMy41IDQuOC0yNiAxMi0zNi45IDIxLjNsLTI1LjgtMTQuOWMtMi45LTEuNy02LjctMS4xLTkgMS40LTE1IDE2LjItMjYuNSAzNS44LTMzLjIgNTcuNC0xIDMuMy40IDYuOCAzLjMgOC41bDI1LjggMTQuOWMtMi42IDE0LjEtMi42IDI4LjUgMCA0Mi42bC0yNS44IDE0LjljLTMgMS43LTQuMyA1LjItMy4zIDguNSA2LjcgMjEuNiAxOC4yIDQxLjEgMzMuMiA1Ny40IDIuMyAyLjUgNiAzLjEgOSAxLjRsMjUuOC0xNC45YzEwLjkgOS4zIDIzLjQgMTYuNSAzNi45IDIxLjN2MjkuOGMwIDMuNCAyLjQgNi40IDUuNyA3LjEgMjIuMyA1IDQ1IDQuOCA2Ni4yIDAgMy4zLS43IDUuNy0zLjcgNS43LTcuMXYtMjkuOGMxMy41LTQuOCAyNi0xMiAzNi45LTIxLjNsMjUuOCAxNC45YzIuOSAxLjcgNi43IDEuMSA5LTEuNCAxNS0xNi4yIDI2LjUtMzUuOCAzMy4yLTU3LjQgMS0zLjMtLjQtNi44LTMuMy04LjVsLTI1LjgtMTQuOXpNNDk2IDQwMC41Yy0yNi44IDAtNDguNS0yMS44LTQ4LjUtNDguNXMyMS44LTQ4LjUgNDguNS00OC41IDQ4LjUgMjEuOCA0OC41IDQ4LjUtMjEuNyA0OC41LTQ4LjUgNDguNXpNMjI0IDI1NmM3MC43IDAgMTI4LTU3LjMgMTI4LTEyOFMyOTQuNyAwIDIyNCAwIDk2IDU3LjMgOTYgMTI4czU3LjMgMTI4IDEyOCAxMjh6bTIwMS4yIDIyNi41Yy0yLjMtMS4yLTQuNi0yLjYtNi44LTMuOWwtNy45IDQuNmMtNiAzLjQtMTIuOCA1LjMtMTkuNiA1LjMtMTAuOSAwLTIxLjQtNC42LTI4LjktMTIuNi0xOC4zLTE5LjgtMzIuMy00My45LTQwLjItNjkuNi01LjUtMTcuNyAxLjktMzYuNCAxNy45LTQ1LjdsNy45LTQuNmMtLjEtMi42LS4xLTUuMiAwLTcuOGwtNy45LTQuNmMtMTYtOS4yLTIzLjQtMjgtMTcuOS00NS43LjktMi45IDIuMi01LjggMy4yLTguNy0zLjgtLjMtNy41LTEuMi0xMS40LTEuMmgtMTYuN2MtMjIuMiAxMC4yLTQ2LjkgMTYtNzIuOSAxNnMtNTAuNi01LjgtNzIuOS0xNmgtMTYuN0M2MC4yIDI4OCAwIDM0OC4yIDAgNDIyLjRWNDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4aDM1MmMxMC4xIDAgMTkuNS0zLjIgMjcuMi04LjUtMS4yLTMuOC0yLTcuNy0yLTExLjh2LTkuMnoiLz48L3N2Zz4="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNjEwLjUgMzczLjNjMi42LTE0LjEgMi42LTI4LjUgMC00Mi42bDI1LjgtMTQuOWMzLTEuNyA0LjMtNS4yIDMuMy04LjUtNi43LTIxLjYtMTguMi00MS4yLTMzLjItNTcuNC0yLjMtMi41LTYtMy4xLTktMS40bC0yNS44IDE0LjljLTEwLjktOS4zLTIzLjQtMTYuNS0zNi45LTIxLjN2LTI5LjhjMC0zLjQtMi40LTYuNC01LjctNy4xLTIyLjMtNS00NS00LjgtNjYuMiAwLTMuMy43LTUuNyAzLjctNS43IDcuMXYyOS44Yy0xMy41IDQuOC0yNiAxMi0zNi45IDIxLjNsLTI1LjgtMTQuOWMtMi45LTEuNy02LjctMS4xLTkgMS40LTE1IDE2LjItMjYuNSAzNS44LTMzLjIgNTcuNC0xIDMuMy40IDYuOCAzLjMgOC41bDI1LjggMTQuOWMtMi42IDE0LjEtMi42IDI4LjUgMCA0Mi42bC0yNS44IDE0LjljLTMgMS43LTQuMyA1LjItMy4zIDguNSA2LjcgMjEuNiAxOC4yIDQxLjEgMzMuMiA1Ny40IDIuMyAyLjUgNiAzLjEgOSAxLjRsMjUuOC0xNC45YzEwLjkgOS4zIDIzLjQgMTYuNSAzNi45IDIxLjN2MjkuOGMwIDMuNCAyLjQgNi40IDUuNyA3LjEgMjIuMyA1IDQ1IDQuOCA2Ni4yIDAgMy4zLS43IDUuNy0zLjcgNS43LTcuMXYtMjkuOGMxMy41LTQuOCAyNi0xMiAzNi45LTIxLjNsMjUuOCAxNC45YzIuOSAxLjcgNi43IDEuMSA5LTEuNCAxNS0xNi4yIDI2LjUtMzUuOCAzMy4yLTU3LjQgMS0zLjMtLjQtNi44LTMuMy04LjVsLTI1LjgtMTQuOXpNNDk2IDQwMC41Yy0yNi44IDAtNDguNS0yMS44LTQ4LjUtNDguNXMyMS44LTQ4LjUgNDguNS00OC41IDQ4LjUgMjEuOCA0OC41IDQ4LjUtMjEuNyA0OC41LTQ4LjUgNDguNXpNMjI0IDI1NmM3MC43IDAgMTI4LTU3LjMgMTI4LTEyOFMyOTQuNyAwIDIyNCAwIDk2IDU3LjMgOTYgMTI4czU3LjMgMTI4IDEyOCAxMjh6bTIwMS4yIDIyNi41Yy0yLjMtMS4yLTQuNi0yLjYtNi44LTMuOWwtNy45IDQuNmMtNiAzLjQtMTIuOCA1LjMtMTkuNiA1LjMtMTAuOSAwLTIxLjQtNC42LTI4LjktMTIuNi0xOC4zLTE5LjgtMzIuMy00My45LTQwLjItNjkuNi01LjUtMTcuNyAxLjktMzYuNCAxNy45LTQ1LjdsNy45LTQuNmMtLjEtMi42LS4xLTUuMiAwLTcuOGwtNy45LTQuNmMtMTYtOS4yLTIzLjQtMjgtMTcuOS00NS43LjktMi45IDIuMi01LjggMy4yLTguNy0zLjgtLjMtNy41LTEuMi0xMS40LTEuMmgtMTYuN2MtMjIuMiAxMC4yLTQ2LjkgMTYtNzIuOSAxNnMtNTAuNi01LjgtNzIuOS0xNmgtMTYuN0M2MC4yIDI4OCAwIDM0OC4yIDAgNDIyLjRWNDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4aDM1MmMxMC4xIDAgMTkuNS0zLjIgMjcuMi04LjUtMS4yLTMuOC0yLTcuNy0yLTExLjh2LTkuMnoiLz48L3N2Zz4="); }
.dsi-mi-software-de-gestion { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMzMyLjggMzIwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44VjE3Mi44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djEzNC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHptOTYgMGgzOC40YzYuNCAwIDEyLjgtNi40IDEyLjgtMTIuOFY3Ni44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djIzMC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHptLTI4OCAwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44di03MC40YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djcwLjRjMCA2LjQgNi40IDEyLjggMTIuOCAxMi44em05NiAwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44VjEwOC44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djE5OC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHpNNDk2IDM4NEg2NFY4MGMwLTguODQtNy4xNi0xNi0xNi0xNkgxNkM3LjE2IDY0IDAgNzEuMTYgMCA4MHYzMzZjMCAxNy42NyAxNC4zMyAzMiAzMiAzMmg0NjRjOC44NCAwIDE2LTcuMTYgMTYtMTZ2LTMyYzAtOC44NC03LjE2LTE2LTE2LTE2eiIvPjwvc3ZnPg=="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNMzMyLjggMzIwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44VjE3Mi44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djEzNC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHptOTYgMGgzOC40YzYuNCAwIDEyLjgtNi40IDEyLjgtMTIuOFY3Ni44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djIzMC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHptLTI4OCAwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44di03MC40YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djcwLjRjMCA2LjQgNi40IDEyLjggMTIuOCAxMi44em05NiAwaDM4LjRjNi40IDAgMTIuOC02LjQgMTIuOC0xMi44VjEwOC44YzAtNi40LTYuNC0xMi44LTEyLjgtMTIuOGgtMzguNGMtNi40IDAtMTIuOCA2LjQtMTIuOCAxMi44djE5OC40YzAgNi40IDYuNCAxMi44IDEyLjggMTIuOHpNNDk2IDM4NEg2NFY4MGMwLTguODQtNy4xNi0xNi0xNi0xNkgxNkM3LjE2IDY0IDAgNzEuMTYgMCA4MHYzMzZjMCAxNy42NyAxNC4zMyAzMiAzMiAzMmg0NjRjOC44NCAwIDE2LTcuMTYgMTYtMTZ2LTMyYzAtOC44NC03LjE2LTE2LTE2LTE2eiIvPjwvc3ZnPg=="); }
.dsi-mi-cajon-inteligente-cadiz { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNTExLjEgMzc4LjhsLTI2LjctMTYwYy0yLjYtMTUuNC0xNS45LTI2LjctMzEuNi0yNi43SDIwOHYtNjRoOTZjOC44IDAgMTYtNy4yIDE2LTE2VjE2YzAtOC44LTcuMi0xNi0xNi0xNkg0OGMtOC44IDAtMTYgNy4yLTE2IDE2djk2YzAgOC44IDcuMiAxNiAxNiAxNmg5NnY2NEg1OS4xYy0xNS42IDAtMjkgMTEuMy0zMS42IDI2LjdMLjggMzc4LjdjLS42IDMuNS0uOSA3LS45IDEwLjVWNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyaDQ0OGMxNy43IDAgMzItMTQuMyAzMi0zMnYtOTAuN2MuMS0zLjUtLjItNy0uOC0xMC41ek0yODAgMjQ4YzAtOC44IDcuMi0xNiAxNi0xNmgxNmM4LjggMCAxNiA3LjIgMTYgMTZ2MTZjMCA4LjgtNy4yIDE2LTE2IDE2aC0xNmMtOC44IDAtMTYtNy4yLTE2LTE2di0xNnptLTMyIDY0aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNnptLTMyLTgwYzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNmgxNnpNODAgODBWNDhoMTkydjMySDgwem00MCAyMDBoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNmgxNmM4LjggMCAxNiA3LjIgMTYgMTZ2MTZjMCA4LjgtNy4yIDE2LTE2IDE2em0xNiA2NHYtMTZjMC04LjggNy4yLTE2IDE2LTE2aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ6bTIxNiAxMTJjMCA0LjQtMy42IDgtOCA4SDE2OGMtNC40IDAtOC0zLjYtOC04di0xNmMwLTQuNCAzLjYtOCA4LThoMTc2YzQuNCAwIDggMy42IDggOHYxNnptMjQtMTEyYzAgOC44LTcuMiAxNi0xNiAxNmgtMTZjLTguOCAwLTE2LTcuMi0xNi0xNnYtMTZjMC04LjggNy4yLTE2IDE2LTE2aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNnptNDgtODBjMCA4LjgtNy4yIDE2LTE2IDE2aC0xNmMtOC44IDAtMTYtNy4yLTE2LTE2di0xNmMwLTguOCA3LjItMTYgMTYtMTZoMTZjOC44IDAgMTYgNy4yIDE2IDE2djE2eiIvPjwvc3ZnPg=="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNTExLjEgMzc4LjhsLTI2LjctMTYwYy0yLjYtMTUuNC0xNS45LTI2LjctMzEuNi0yNi43SDIwOHYtNjRoOTZjOC44IDAgMTYtNy4yIDE2LTE2VjE2YzAtOC44LTcuMi0xNi0xNi0xNkg0OGMtOC44IDAtMTYgNy4yLTE2IDE2djk2YzAgOC44IDcuMiAxNiAxNiAxNmg5NnY2NEg1OS4xYy0xNS42IDAtMjkgMTEuMy0zMS42IDI2LjdMLjggMzc4LjdjLS42IDMuNS0uOSA3LS45IDEwLjVWNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyaDQ0OGMxNy43IDAgMzItMTQuMyAzMi0zMnYtOTAuN2MuMS0zLjUtLjItNy0uOC0xMC41ek0yODAgMjQ4YzAtOC44IDcuMi0xNiAxNi0xNmgxNmM4LjggMCAxNiA3LjIgMTYgMTZ2MTZjMCA4LjgtNy4yIDE2LTE2IDE2aC0xNmMtOC44IDAtMTYtNy4yLTE2LTE2di0xNnptLTMyIDY0aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNnptLTMyLTgwYzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNmgxNnpNODAgODBWNDhoMTkydjMySDgwem00MCAyMDBoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ2LTE2YzAtOC44IDcuMi0xNiAxNi0xNmgxNmM4LjggMCAxNiA3LjIgMTYgMTZ2MTZjMCA4LjgtNy4yIDE2LTE2IDE2em0xNiA2NHYtMTZjMC04LjggNy4yLTE2IDE2LTE2aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNmMwIDguOC03LjIgMTYtMTYgMTZoLTE2Yy04LjggMC0xNi03LjItMTYtMTZ6bTIxNiAxMTJjMCA0LjQtMy42IDgtOCA4SDE2OGMtNC40IDAtOC0zLjYtOC04di0xNmMwLTQuNCAzLjYtOCA4LThoMTc2YzQuNCAwIDggMy42IDggOHYxNnptMjQtMTEyYzAgOC44LTcuMiAxNi0xNiAxNmgtMTZjLTguOCAwLTE2LTcuMi0xNi0xNnYtMTZjMC04LjggNy4yLTE2IDE2LTE2aDE2YzguOCAwIDE2IDcuMiAxNiAxNnYxNnptNDgtODBjMCA4LjgtNy4yIDE2LTE2IDE2aC0xNmMtOC44IDAtMTYtNy4yLTE2LTE2di0xNmMwLTguOCA3LjItMTYgMTYtMTZoMTZjOC44IDAgMTYgNy4yIDE2IDE2djE2eiIvPjwvc3ZnPg=="); }
.dsi-mi-stockagile-tpv-comercio { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNDk3Ljk0MSAyMjUuOTQxTDI4Ni4wNTkgMTQuMDU5QTQ4IDQ4IDAgMCAwIDI1Mi4xMTggMEg0OEMyMS40OSAwIDAgMjEuNDkgMCA0OHYyMDQuMTE4YTQ4IDQ4IDAgMCAwIDE0LjA1OSAzMy45NDFsMjExLjg4MiAyMTEuODgyYzE4Ljc0NCAxOC43NDUgNDkuMTM2IDE4Ljc0NiA2Ny44ODIgMGwyMDQuMTE4LTIwNC4xMThjMTguNzQ1LTE4Ljc0NSAxOC43NDUtNDkuMTM3IDAtNjcuODgyek0xMTIgMTYwYy0yNi41MSAwLTQ4LTIxLjQ5LTQ4LTQ4czIxLjQ5LTQ4IDQ4LTQ4IDQ4IDIxLjQ5IDQ4IDQ4LTIxLjQ5IDQ4LTQ4IDQ4em01MTMuOTQxIDEzMy44MjNMNDIxLjgyMyA0OTcuOTQxYy0xOC43NDUgMTguNzQ1LTQ5LjEzNyAxOC43NDUtNjcuODgyIDBsLS4zNi0uMzZMNTI3LjY0IDMyMy41MjJjMTYuOTk5LTE2Ljk5OSAyNi4zNi0zOS42IDI2LjM2LTYzLjY0cy05LjM2Mi00Ni42NDEtMjYuMzYtNjMuNjRMMzMxLjM5NyAwaDQ4LjcyMWE0OCA0OCAwIDAgMSAzMy45NDEgMTQuMDU5bDIxMS44ODIgMjExLjg4MmMxOC43NDUgMTguNzQ1IDE4Ljc0NSA0OS4xMzcgMCA2Ny44ODJ6Ii8+PC9zdmc+"); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNDk3Ljk0MSAyMjUuOTQxTDI4Ni4wNTkgMTQuMDU5QTQ4IDQ4IDAgMCAwIDI1Mi4xMTggMEg0OEMyMS40OSAwIDAgMjEuNDkgMCA0OHYyMDQuMTE4YTQ4IDQ4IDAgMCAwIDE0LjA1OSAzMy45NDFsMjExLjg4MiAyMTEuODgyYzE4Ljc0NCAxOC43NDUgNDkuMTM2IDE4Ljc0NiA2Ny44ODIgMGwyMDQuMTE4LTIwNC4xMThjMTguNzQ1LTE4Ljc0NSAxOC43NDUtNDkuMTM3IDAtNjcuODgyek0xMTIgMTYwYy0yNi41MSAwLTQ4LTIxLjQ5LTQ4LTQ4czIxLjQ5LTQ4IDQ4LTQ4IDQ4IDIxLjQ5IDQ4IDQ4LTIxLjQ5IDQ4LTQ4IDQ4em01MTMuOTQxIDEzMy44MjNMNDIxLjgyMyA0OTcuOTQxYy0xOC43NDUgMTguNzQ1LTQ5LjEzNyAxOC43NDUtNjcuODgyIDBsLS4zNi0uMzZMNTI3LjY0IDMyMy41MjJjMTYuOTk5LTE2Ljk5OSAyNi4zNi0zOS42IDI2LjM2LTYzLjY0cy05LjM2Mi00Ni42NDEtMjYuMzYtNjMuNjRMMzMxLjM5NyAwaDQ4LjcyMWE0OCA0OCAwIDAgMSAzMy45NDEgMTQuMDU5bDIxMS44ODIgMjExLjg4MmMxOC43NDUgMTguNzQ1IDE4Ljc0NSA0OS4xMzcgMCA2Ny44ODJ6Ii8+PC9zdmc+"); }
.dsi-mi-dstnet-software-tpv-hosteleria { --mi-blanco: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNNTI4IDBINDhDMjEuNSAwIDAgMjEuNSAwIDQ4djMyMGMwIDI2LjUgMjEuNSA0OCA0OCA0OGgxOTJsLTE2IDQ4aC03MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGgyNzJjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRoLTcybC0xNi00OGgxOTJjMjYuNSAwIDQ4LTIxLjUgNDgtNDhWNDhjMC0yNi41LTIxLjUtNDgtNDgtNDh6bS0xNiAzNTJINjRWNjRoNDQ4djI4OHoiLz48L3N2Zz4="); --mi-azul: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBmaWxsPSIjMkE3REJGIiBkPSJNNTI4IDBINDhDMjEuNSAwIDAgMjEuNSAwIDQ4djMyMGMwIDI2LjUgMjEuNSA0OCA0OCA0OGgxOTJsLTE2IDQ4aC03MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGgyNzJjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRoLTcybC0xNi00OGgxOTJjMjYuNSAwIDQ4LTIxLjUgNDgtNDhWNDhjMC0yNi41LTIxLjUtNDgtNDgtNDh6bS0xNiAzNTJINjRWNjRoNDQ4djI4OHoiLz48L3N2Zz4="); }

/* Línea del tiempo interactiva del proceso (linea-tiempo.js) */
.dsi-tl { position: relative; width: 100%; max-width: 1100px; margin: 8px auto 0; }
.dsi-tl .dsi-tl-paso[hidden] { display: none !important; }
.dsi-tl-nav, .dsi-tl-controles, .dsi-tl-riel, .dsi-tl-relleno { display: none; }
.dsi-tl .dsi-tl-ico .elementor-icon-wrapper { display: flex; line-height: 0; }
.dsi-tl .dsi-tl-ico .elementor-icon {
	display: flex !important; align-items: center; justify-content: center; box-sizing: border-box;
	width: 72px; height: 72px; padding: 0 !important; border-radius: 50%; line-height: 0; flex: 0 0 auto;
	background: linear-gradient(135deg, #6EC1E4, #2A7DBF) !important; box-shadow: 0 14px 28px -16px rgba(42,125,191,.8);
}
.dsi-tl .dsi-tl-ico .elementor-icon svg, .dsi-tl .dsi-tl-ico .elementor-icon i { width: 28px; height: 28px; font-size: 28px; line-height: 1; display: block; fill: #FFFFFF; color: #FFFFFF; }
.dsi-tl .dsi-tl-num .elementor-heading-title { color: #6EC1E4; font-size: var(--dsi-kick); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dsi-tl .dsi-tl-titulo .elementor-heading-title { color: #0B0B0B; }
.dsi-tl .dsi-tl-texto { color: #3D434C; }
.dsi-tl .dsi-tl-texto p { margin: 0 0 12px; }
.dsi-tl .dsi-tl-texto ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.dsi-tl .dsi-tl-texto li { position: relative; padding-left: 32px; color: #0B0B0B; font-weight: 500; }
.dsi-tl .dsi-tl-texto li::before {
	content: ""; position: absolute; left: 0; top: 2px; width: 22px; height: 22px; border-radius: 50%;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M6 12.5l4 4 8-9'/></svg>") center / 14px no-repeat, linear-gradient(135deg, #6EC1E4, #2A7DBF);
}

/* ---------- Escritorio: línea horizontal ---------- */
.dsi-tl.is-escritorio .dsi-tl-nav { display: grid; grid-template-columns: repeat(var(--n), 1fr); position: relative; margin: 0 0 30px; padding-top: 16px; }
.dsi-tl-pista { position: absolute; top: 50px; left: calc(50% / var(--n)); right: calc(50% / var(--n)); height: 4px; margin-top: -2px; border-radius: 4px; background: #DCEAF3; overflow: hidden; }
.dsi-tl-barra { position: absolute; inset: 0; transform-origin: left center; transform: scaleX(var(--progreso, 0)); background: linear-gradient(90deg, #6EC1E4, #2A7DBF); transition: transform .9s cubic-bezier(.65, 0, .35, 1); }
.dsi-tl:not(.is-visible) .dsi-tl-barra { transform: scaleX(0); }
.dsi-tl .dsi-tl-nodo {
	all: unset; box-sizing: border-box; position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 14px;
	padding: 0 6px; text-align: center; cursor: pointer; -webkit-tap-highlight-color: transparent;
	transition: opacity .55s ease, transform .55s cubic-bezier(.2, .8, .2, 1); transition-delay: calc(var(--i) * 110ms);
}
.dsi-tl:not(.is-visible) .dsi-tl-nodo { opacity: 0; transform: translateY(16px) scale(.9); }
.dsi-tl-circulo {
	position: relative; width: 68px; height: 68px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
	box-sizing: border-box; flex: 0 0 auto; background: #FFFFFF; background-origin: border-box; border: 3px solid #DCEAF3; color: #6EC1E4; font-size: 24px; line-height: 0; box-shadow: 0 10px 24px -16px rgba(42,125,191,.7);
	transition: background .35s, border-color .35s, color .35s, transform .35s cubic-bezier(.2, .8, .2, 1);
}
.dsi-tl-circulo > svg, .dsi-tl-circulo > i { width: 24px; height: 24px; font-size: 24px; line-height: 1; display: block; fill: currentColor; }
.dsi-tl-nodo:hover .dsi-tl-circulo { border-color: #6EC1E4; transform: translateY(-4px); }
.dsi-tl-nodo.is-hecho .dsi-tl-circulo, .dsi-tl-nodo.is-activo .dsi-tl-circulo { background: linear-gradient(135deg, #6EC1E4, #2A7DBF) border-box; border-color: transparent; color: #FFFFFF; }
.dsi-tl-nodo.is-activo .dsi-tl-circulo { transform: scale(1.14); animation: dsi-tl-pulso 2.4s ease-out infinite; }
.dsi-tl-nodo:focus-visible .dsi-tl-circulo { outline: 3px solid #2A7DBF; outline-offset: 5px; }
@keyframes dsi-tl-pulso { 0% { box-shadow: 0 0 0 0 rgba(110,193,228,.6); } 70% { box-shadow: 0 0 0 18px rgba(110,193,228,0); } 100% { box-shadow: 0 0 0 0 rgba(110,193,228,0); } }
.dsi-tl-etiqueta { display: flex; flex-direction: column; gap: 3px; }
.dsi-tl-etq-num { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6EC1E4; }
.dsi-tl-etq-titulo { font-size: var(--dsi-legal); font-weight: 600; line-height: 1.3; color: #5B6475; transition: color .3s; }
.dsi-tl-nodo.is-activo .dsi-tl-etq-titulo, .dsi-tl-nodo:hover .dsi-tl-etq-titulo { color: #0B0B0B; }
.dsi-tl-nodo.is-activo .dsi-tl-etq-num { color: #2A7DBF; }

/* Panel con el detalle del paso activo */
.dsi-tl.is-escritorio .dsi-tl-paso:not([hidden]) {
	display: grid !important; grid-template-columns: 72px 1fr; column-gap: 28px; row-gap: 4px; align-items: start;
	width: 100%; max-width: 880px; margin: 0 auto; padding: 36px 40px; border-radius: 24px;
	background: #FFFFFF; border: 1px solid #DCEAF3; box-shadow: 0 34px 70px -44px rgba(42,125,191,.6);
}
.dsi-tl.is-escritorio .dsi-tl-paso > .dsi-tl-ico { grid-row: 1 / span 3; }
.dsi-tl.is-escritorio .dsi-tl-paso > :not(.dsi-tl-ico) { grid-column: 2; }
.dsi-tl.is-escritorio .dsi-tl-texto ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.dsi-tl-paso.is-entrando { animation: dsi-tl-entra .55s cubic-bezier(.2, .8, .2, 1) both; }
.dsi-tl-paso.is-entrando .dsi-tl-ico { animation: dsi-tl-icono .6s cubic-bezier(.34, 1.56, .64, 1) both; }
.dsi-tl-paso.is-entrando .dsi-tl-texto li { animation: dsi-tl-entra .5s cubic-bezier(.2, .8, .2, 1) both; }
.dsi-tl-paso.is-entrando .dsi-tl-texto li:nth-child(1) { animation-delay: .15s; }
.dsi-tl-paso.is-entrando .dsi-tl-texto li:nth-child(2) { animation-delay: .25s; }
.dsi-tl-paso.is-entrando .dsi-tl-texto li:nth-child(3) { animation-delay: .35s; }
.dsi-tl-paso.is-entrando .dsi-tl-texto li:nth-child(4) { animation-delay: .45s; }
@keyframes dsi-tl-entra { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes dsi-tl-icono { from { opacity: 0; transform: scale(.5) rotate(-20deg); } to { opacity: 1; transform: none; } }
.dsi-tl.is-escritorio .dsi-tl-controles { display: flex; justify-content: center; align-items: center; gap: 18px; margin-top: 24px; }
.dsi-tl .dsi-tl-flecha {
	all: unset; box-sizing: border-box; width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
	background: #FFFFFF; border: 2px solid #DCEAF3; color: #2A7DBF; font-size: 20px; font-weight: 700; cursor: pointer; transition: all .25s;
}
.dsi-tl .dsi-tl-flecha:hover, .dsi-tl .dsi-tl-flecha:focus-visible { background: linear-gradient(135deg, #6EC1E4, #2A7DBF); border-color: transparent; color: #FFFFFF; transform: translateY(-2px); }
.dsi-tl-contador { min-width: 56px; text-align: center; font-size: var(--dsi-legal); font-weight: 700; color: #5B6475; letter-spacing: .06em; }

/* ---------- Móvil: línea vertical que se rellena al hacer scroll ---------- */
.dsi-tl.is-movil .dsi-tl-riel, .dsi-tl.is-movil .dsi-tl-relleno {
	display: block; position: absolute; left: var(--lx, 33px); top: var(--ly, 0); width: 4px; height: var(--lh, 100%); border-radius: 4px; z-index: 0;
}
.dsi-tl.is-movil .dsi-tl-riel { background: #DCEAF3; }
.dsi-tl.is-movil .dsi-tl-relleno {
	transform-origin: top center; transform: scaleY(var(--scroll, 0)); background: linear-gradient(#6EC1E4, #2A7DBF); transition: transform .15s linear;
}
.dsi-tl.is-movil .dsi-tl-paso:not([hidden]) {
	display: grid !important; grid-template-columns: 62px 1fr; column-gap: 14px; row-gap: 2px; align-items: start;
	position: relative; z-index: 1; padding: 0 0 30px; cursor: pointer; -webkit-tap-highlight-color: transparent;
	transition: opacity .6s ease, transform .6s cubic-bezier(.2, .8, .2, 1);
}
.dsi-tl.is-movil .dsi-tl-paso:last-of-type { padding-bottom: 0; }
.dsi-tl.is-movil .dsi-tl-paso:not(.is-dentro) { opacity: 0; transform: translateX(-18px); }
.dsi-tl.is-movil .dsi-tl-paso > .dsi-tl-ico { grid-row: 1 / span 3; }
.dsi-tl.is-movil .dsi-tl-paso > :not(.dsi-tl-ico) { grid-column: 2; }
.dsi-tl.is-movil .dsi-tl-ico .elementor-icon { width: 62px; height: 62px; }
.dsi-tl.is-movil .dsi-tl-ico .elementor-icon svg, .dsi-tl.is-movil .dsi-tl-ico .elementor-icon i { width: 24px; height: 24px; font-size: 24px; }
.dsi-tl.is-movil .dsi-tl-titulo .elementor-heading-title { display: flex; justify-content: space-between; gap: 10px; }
.dsi-tl.is-movil .dsi-tl-titulo .elementor-heading-title::after {
	content: "+"; flex: 0 0 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
	background: #FFFFFF; border: 2px solid #DCEAF3; color: #2A7DBF; font-size: 17px; line-height: 1; transition: transform .3s;
}
.dsi-tl.is-movil .dsi-tl-paso.is-abierto .dsi-tl-titulo .elementor-heading-title::after { transform: rotate(45deg); }
.dsi-tl.is-movil .dsi-tl-texto p { margin-bottom: 0; }
.dsi-tl.is-movil .dsi-tl-texto ul { max-height: 0; overflow: hidden; opacity: 0; transition: max-height .45s ease, opacity .35s ease, margin .35s ease; }
.dsi-tl.is-movil .dsi-tl-paso.is-abierto .dsi-tl-texto ul { max-height: 320px; opacity: 1; margin-top: 12px; }

/* Móviles muy estrechos: icono y título algo más pequeños para que quepan palabras largas */
@media (max-width: 380px) {
	.dsi-tl.is-movil .dsi-tl-paso:not([hidden]) { grid-template-columns: 52px 1fr; column-gap: 10px; }
	.dsi-tl.is-movil .dsi-tl-ico .elementor-icon { width: 52px; height: 52px; }
	.dsi-tl.is-movil .dsi-tl-ico .elementor-icon svg, .dsi-tl.is-movil .dsi-tl-ico .elementor-icon i { width: 20px; height: 20px; font-size: 20px; }
}

/* Los nodos y flechas son <button>: anulamos los estilos de botón del kit de Elementor */
.dsi-tl .dsi-tl-nodo, .dsi-tl .dsi-tl-nodo:hover, .dsi-tl .dsi-tl-nodo:focus, .dsi-tl .dsi-tl-nodo:active {
	background: transparent !important; color: inherit !important; border: 0 !important; box-shadow: none !important; outline: none;
	padding: 0 6px !important; border-radius: 0 !important; font: inherit; text-transform: none !important; letter-spacing: normal !important;
}
.dsi-tl .dsi-tl-flecha, .dsi-tl .dsi-tl-flecha:focus { background: #FFFFFF !important; border: 2px solid #DCEAF3 !important; color: #2A7DBF !important; padding: 0 !important; box-shadow: none !important; border-radius: 50% !important; }
.dsi-tl .dsi-tl-flecha:hover, .dsi-tl .dsi-tl-flecha:focus-visible { background: linear-gradient(135deg, #6EC1E4, #2A7DBF) !important; border-color: transparent !important; color: #FFFFFF !important; }

@media (prefers-reduced-motion: reduce) {
	.dsi-tl *, .dsi-tl { animation: none !important; transition: none !important; }
}

/* Tarjetas del blog: título y extracto con la escala tipográfica */
.elementor-posts .elementor-post__title, .elementor-posts .elementor-post__title a { font-size: var(--dsi-h3) !important; line-height: 1.3 !important; font-weight: 700 !important; }
.elementor-posts .elementor-post__excerpt p { font-size: var(--dsi-peq) !important; line-height: 1.6 !important; }
.elementor-posts .elementor-post__read-more { font-size: 13px !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase; }

/* Etiqueta «El más elegido» de los planes */
.dsi-badge .elementor-heading-title {
	display: inline-block; padding: 6px 14px; border-radius: 50px; background: #6EC1E4; color: #FFFFFF !important;
	font-size: var(--dsi-kick) !important; font-weight: 700 !important; letter-spacing: .12em; text-transform: uppercase; line-height: 1.4 !important;
}

/* Páginas legales (privacidad, aviso legal): contenido legal con el diseño de la web */
.dsi-legal h2 { font-size: var(--dsi-h3); line-height: 1.3; margin: 2.2em 0 .7em; scroll-margin-top: 130px; }
.dsi-legal h2::after { width: 56px; margin-top: 10px; }
.dsi-legal h2:first-child { margin-top: 0; }
.dsi-legal h3 { font-size: var(--dsi-h4); line-height: 1.4; margin: 1.6em 0 .5em; }
.dsi-legal p:last-child, .dsi-legal ul:last-child { margin-bottom: 0; }
.dsi-legal a { overflow-wrap: anywhere; }
/* La columna de texto ocupa solo el espacio que deja el icono o el índice */
.e-con.dsi-legal-contenido { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; --width: auto !important; }
.e-con.dsi-legal-indice { flex: 0 0 260px !important; width: 260px !important; --width: 260px !important; }
@media (max-width: 1024px) { .e-con.dsi-legal-indice { flex-basis: auto !important; width: 100% !important; --width: 100% !important; } .e-con.dsi-legal-contenido { width: 100% !important; --width: 100% !important; flex-basis: auto !important; } }
/* Ficha con los datos del titular */
.dsi-legal .dsi-legal-ficha { margin: 1.2em 0 1.4em; padding: 22px 26px; border-radius: 18px; background: #F2FAFE; border: 1px solid #DCEAF3; }
.dsi-legal .dsi-legal-ficha p { display: grid; grid-template-columns: 170px 1fr; gap: 12px; margin: 0; padding: 9px 0; border-bottom: 1px solid #DCEAF3; color: #0B0B0B; font-weight: 500; }
.dsi-legal .dsi-legal-ficha p:last-child { border-bottom: 0; }
.dsi-legal .dsi-legal-ficha p span { color: #5B6475; font-weight: 600; }
.dsi-legal .dsi-legal-ficha .dsi-legal-ficha-titulo { display: block; padding: 14px 0 6px; border: 0; color: #2A7DBF; font-size: var(--dsi-kick); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dsi-legal .dsi-legal-ficha .dsi-legal-ficha-titulo:first-child { padding-top: 0; }
@media (max-width: 767px) { .dsi-legal .dsi-legal-ficha p { grid-template-columns: 1fr; gap: 2px; } }
/* Índice fijo con los apartados (privacidad y aviso legal) */
.dsi-legal-indice { position: sticky; top: 120px; padding: 22px 24px; border-radius: 18px; background: #F2FAFE; border: 1px solid #DCEAF3; }
.dsi-legal-indice .dsi-legal-indice-titulo { margin: 0 0 10px; color: #2A7DBF; font-size: var(--dsi-kick); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dsi-legal-indice ol { margin: 0; padding-left: 1.3em; display: grid; gap: 8px; }
.dsi-legal-indice li { font-size: var(--dsi-peq); line-height: 1.4; }
.dsi-legal-indice li::marker { color: #6EC1E4; font-weight: 700; }
.dsi-legal-indice a { color: #3D434C; text-decoration: none; }
.dsi-legal-indice a:hover { color: #2A7DBF; text-decoration: underline; }
@media (max-width: 1024px) { .dsi-legal-indice { position: static; } }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Al saltar a una sección con ancla (#incluye, #formulario, #proceso…), la cabecera fija no tapa su inicio */
.e-con[id] { scroll-margin-top: 90px; }

/* Funciones extra del software (TPV hostelería): fichas compactas con icono de marca */
.dsi-extra { padding: 18px 18px; background: #FFFFFF; border: 1px solid #DCEAF3; border-radius: 16px; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.dsi-extra:hover { transform: translateY(-3px); border-color: #6EC1E4; box-shadow: 0 18px 32px -24px rgba(42,125,191,.6); }
.dsi-extra .elementor-icon { background: linear-gradient(135deg, #6EC1E4, #2A7DBF) !important; display: flex !important; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0 !important; line-height: 0; }
.dsi-extra .elementor-icon svg, .dsi-extra .elementor-icon i { width: 18px; height: 18px; font-size: 18px; fill: #FFFFFF; color: #FFFFFF; }
.e-con.dsi-extra-txt { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; --width: auto !important; }
.dsi-extra .elementor-widget-text-editor p { margin: 0; }

/* Columna de lectura de los artículos: 860 px y centrada */
.e-con.dsi-col-lectura { margin-left: auto !important; margin-right: auto !important; }


/* ---------- Conversión: sellos, formulario corto, dudas, reseñas y «Qué pasa después» ---------- */
.dsi-sellos .elementor-icon-list-items { row-gap: 8px; }
.dsi-sellos .elementor-icon-list-item { font-size: 14px; font-weight: 600; }
.dsi-form-corto { flex: 0 0 auto; }
.dsi-form-corto-titulo .elementor-heading-title { font-size: 21px; font-weight: 700; line-height: 1.25; }
.dsi-form-corto .elementor-field-type-acceptance label { font-size: 13px !important; }
@media (max-width: 1024px) { .e-con.dsi-form-corto { max-width: 560px; } }

.dsi-despues ol { list-style: none; margin: 0; padding: 0; counter-reset: paso; display: grid; gap: 14px; }
.dsi-despues li { counter-increment: paso; position: relative; padding-left: 46px; min-height: 32px; display: flex; align-items: center; }
.dsi-despues li::before {
	content: counter(paso); position: absolute; left: 0; top: 50%; transform: translateY(-50%);
	width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center;
	color: #FFFFFF; font-weight: 700; font-size: 15px; background: linear-gradient(135deg, #6EC1E4, #2A7DBF);
}

.dsi-objeciones .dsi-servicio { height: 100%; }
.dsi-resena { height: 100%; }
.dsi-resena-autor .elementor-heading-title { font-size: 15px; font-weight: 700; line-height: 1.4; }
.dsi-resena-autor span { font-weight: 400; color: #5B6475; }
.dsi-resena-frases ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.e-con.dsi-nota-txt { width: auto; }
.dsi-nota .elementor-widget-text-editor p { margin: 0; }

/* Barra fija de contacto en móvil (sustituye al botón flotante de WhatsApp) */
.dsi-barra-movil { display: none; }
@media (max-width: 767px) {
	.dsi-whatsapp { display: none; }
	.dsi-barra-movil {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; display: grid; grid-template-columns: 1fr 1fr 1.5fr; gap: 8px;
		padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: #FFFFFF; border-top: 1px solid #DCEAF3;
		box-shadow: 0 -10px 24px -16px rgba(12, 25, 59, .45);
	}
	.dsi-barra-movil a {
		display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 0 8px; border-radius: 24px;
		font-size: 13px; font-weight: 700; color: #0B0B0B; background: #F2FAFE; border: 1px solid #DCEAF3; text-decoration: none;
	}
	.dsi-barra-movil a svg { width: 17px; height: 17px; flex: none; color: #2A7DBF; }
	.dsi-barra-movil a.dsi-barra-cta { color: #FFFFFF; border: 0; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
	.dsi-barra-movil a.dsi-barra-cta svg { color: #FFFFFF; }
	body { padding-bottom: calc(61px + env(safe-area-inset-bottom)); }
}

/* ---------- «Nuestros valores»: tarjetas numeradas con icono ---------- */
.dsi-valor { position: relative; height: 100%; overflow: hidden; }
.dsi-valor::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, #6EC1E4, #2A7DBF); transform: scaleX(0); transform-origin: left; transition: transform .35s ease; }
.dsi-valor:hover::after { transform: scaleX(1); }
.dsi-valor .elementor-icon { background: linear-gradient(135deg, #6EC1E4, #2A7DBF) !important; transition: transform .35s ease; }
.dsi-valor:hover .elementor-icon { transform: rotate(-8deg) scale(1.08); }
.dsi-valor-num { position: absolute !important; top: 14px; right: 20px; width: auto !important; }
.dsi-valor-num .elementor-heading-title { font-size: 44px !important; font-weight: 800 !important; line-height: 1 !important; color: #DCEEF8 !important; }
.dsi-valores-foto img { width: 100%; max-height: 300px; object-fit: cover; }
@media (prefers-reduced-motion: reduce) { .dsi-valor::after, .dsi-valor .elementor-icon { transition: none; } }

/* ---------- Blog: accesos a las categorías ---------- */
.dsi-blog-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 6px; }
.dsi-blog-nav a { padding: 9px 18px; border-radius: 24px; background: #FFFFFF; border: 1px solid #CFE3F0; color: #0B0B0B; font-size: 14px; font-weight: 600; text-decoration: none; transition: background .2s ease, color .2s ease, border-color .2s ease; }
.dsi-blog-nav a:hover { color: #FFFFFF; border-color: transparent; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
.dsi-blog-cat:not(:has(article)) { display: none !important; }

/* ---------- Zona de servicio ---------- */
.dsi-zona { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.dsi-zona li { padding: 10px 18px 10px 38px; border-radius: 24px; background: #FFFFFF; border: 1px solid #CFE3F0; font-size: 15px; font-weight: 600; color: #0B0B0B; position: relative; }
.dsi-zona li::before { content: ""; position: absolute; left: 16px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: linear-gradient(135deg, #6EC1E4, #2A7DBF); }

/* ---------- Sello de partner de DSTnet ---------- */
.e-con.dsi-partner { width: auto; max-width: 720px; margin-inline: auto; box-shadow: 0 14px 30px -26px rgba(42, 125, 191, .6); }
.e-con.dsi-partner-txt { width: auto; flex: 1 1 auto; }
.dsi-partner img { width: 170px; height: auto; }

/* ---------- Cajones inteligentes: tarjetas de marca ---------- */
.dsi-marca-foto img { width: 100%; max-height: 240px; object-fit: contain; }
.dsi-marca-logo img { width: 150px; height: 56px; object-fit: contain; object-position: left center; }
.dsi-marcas-logos img { width: auto; height: 48px; border-radius: 8px; }
.dsi-marcas-logos .elementor-widget-image { width: auto; }

/* ---------- Partners y marcas ---------- */
.dsi-partner-tarjeta img { width: auto; height: 64px; max-width: min(190px, 100%); object-fit: contain; border-radius: 8px; }
.dsi-partner-nota .elementor-heading-title { display: inline-block; padding: 5px 14px; border-radius: 20px; font-size: 13px; font-weight: 700; color: #FFFFFF; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
.dsi-partners { max-width: 1100px; margin-inline: auto; }

/* ---------- Proyectos ---------- */
.dsi-proy-logo img { width: 100%; max-width: 320px; max-height: 190px; object-fit: contain; }
.dsi-dato-valor .elementor-heading-title { font-size: 17px; font-weight: 700; line-height: 1.3; }
.dsi-dato { box-shadow: 0 14px 30px -24px rgba(42, 125, 191, .6); }
/* Etiquetas del proyecto */
.dsi-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.dsi-chips li { padding: 7px 14px; border-radius: 20px; background: #FFFFFF; border: 1px solid #CFE3F0; font-size: 13px; font-weight: 600; color: #0B0B0B; }
/* Foto ancha con rótulo superpuesto */
.e-con.dsi-proy-franja { position: relative; }
.e-con.dsi-proy-rotulo { position: absolute; left: 28px; bottom: 28px; width: auto; max-width: 320px; box-shadow: 0 18px 40px -18px rgba(12, 25, 59, .55); z-index: 2; }
.dsi-proy-cifra .elementor-heading-title { font-size: 38px !important; font-weight: 800 !important; line-height: 1 !important; }
@media (max-width: 767px) { .e-con.dsi-proy-rotulo { position: relative; left: auto; bottom: auto; margin: -34px 14px 0; max-width: none; } }
/* Antes y ahora */
.dsi-comp { position: relative; height: 100%; }
.e-con.dsi-antes { background: #FBFCFD !important; }
.dsi-antes h3.elementor-heading-title { color: #5B6475 !important; }
.e-con.dsi-ahora { border-color: #6EC1E4 !important; box-shadow: 0 24px 50px -30px rgba(42, 125, 191, .7); }
.dsi-ahora::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; border-radius: 20px 20px 0 0; background: linear-gradient(90deg, #6EC1E4, #2A7DBF); }
/* Esquema «locales → oficina central»: líneas de puntos que fluyen hacia el servidor, que late */
@keyframes dsi-flujo { to { background-position: 24px 0; } }
@keyframes dsi-flujo-v { to { background-position: 0 24px; } }
@keyframes dsi-onda { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .6); } 100% { box-shadow: 0 0 0 18px rgba(255, 255, 255, 0); } }
.dsi-esquema-local { position: relative; box-shadow: 0 14px 30px -26px rgba(42, 125, 191, .6); z-index: 1; }
.dsi-esquema-local p { margin: 0; }
.e-con.dsi-esquema-enlace { position: relative; align-self: stretch; }
.dsi-esquema-enlace::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 3px; margin-top: -1.5px; background: repeating-linear-gradient(90deg, #2A7DBF 0 12px, transparent 12px 24px); animation: dsi-flujo .9s linear infinite; }
.dsi-esquema-enlace .elementor-widget-heading { position: relative; z-index: 1; }
.dsi-esquema-enlace .elementor-heading-title { display: inline-block; padding: 8px 16px; border-radius: 20px; background: #FFFFFF; border: 1px solid #CFE3F0; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: #2A7DBF; }
.e-con.dsi-esquema-central { background: linear-gradient(135deg, #6EC1E4, #2A7DBF) !important; box-shadow: 0 24px 50px -24px rgba(42, 125, 191, .7); }
.dsi-esquema-central .elementor-icon-list-icon svg { fill: #FFFFFF !important; }
.dsi-esquema-servidor .elementor-icon { animation: dsi-onda 1.8s ease-out infinite; }
@media (min-width: 1025px) {
	/* Cada local tira su propia línea hasta la barra vertical que las reúne */
	.e-con.dsi-esquema-locales { padding-right: 46px; }
	.dsi-esquema-local::after { content: ""; position: absolute; left: 100%; top: 50%; width: 46px; height: 3px; margin-top: -1.5px; background: repeating-linear-gradient(90deg, #2A7DBF 0 12px, transparent 12px 24px); animation: dsi-flujo .9s linear infinite; }
	.dsi-esquema-enlace::after { content: ""; position: absolute; left: 0; top: 14%; bottom: 14%; width: 3px; margin-left: -1.5px; background: #2A7DBF; border-radius: 3px; opacity: .4; }
}
@media (max-width: 1024px) {
	.e-con.dsi-esquema-enlace { min-height: 84px; }
	.dsi-esquema-enlace::before { left: 50%; right: auto; top: 0; bottom: 0; width: 3px; height: auto; margin: 0 0 0 -1.5px; background: repeating-linear-gradient(180deg, #2A7DBF 0 12px, transparent 12px 24px); animation: dsi-flujo-v .9s linear infinite; }
}
@media (prefers-reduced-motion: reduce) { .dsi-esquema-enlace::before, .dsi-esquema-local::after, .dsi-esquema-servidor .elementor-icon { animation: none; } }
.dsi-galeria img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 18px; }

/* Proyectos: fotos, huecos de foto y logotipo del cliente */
.dsi-proy-foto img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 22px; box-shadow: 0 24px 50px -28px rgba(12, 25, 59, .55); }
.dsi-proy-foto.dsi-proy-ancha img { aspect-ratio: 21 / 9; }
.dsi-proy-foto.dsi-proy-cuadrada img { aspect-ratio: 1 / 1; }
.e-con.dsi-proy-hueco { aspect-ratio: 4 / 3; border: 2px dashed #9CCFEA; border-radius: 22px; background: #F2FAFE; }
.e-con.dsi-proy-hueco.dsi-proy-ancha { aspect-ratio: 21 / 9; }
.e-con.dsi-proy-chip { width: auto; align-self: flex-start; box-shadow: 0 10px 24px -18px rgba(42, 125, 191, .7); }
.dsi-proy-chip img { height: 46px; width: auto; max-width: 200px; object-fit: contain; }
.dsi-proy-tarjeta .dsi-proy-foto img { aspect-ratio: 16 / 9; border-radius: 16px; box-shadow: none; }
@media (max-width: 767px) { .dsi-proy-foto.dsi-proy-ancha img, .e-con.dsi-proy-hueco.dsi-proy-ancha { aspect-ratio: 16 / 9; } }
.e-con.dsi-proyectos:has(> .e-con:only-child) { max-width: 720px; margin-inline: auto; }

/* ---------- Stockagile: precio destacado ---------- */
.dsi-stk-cifra .elementor-heading-title { font-size: 20px; font-weight: 600; line-height: 1.2; }
.dsi-stk-cifra strong { font-size: 46px; font-weight: 800; }

/* ---------- Usabilidad en móvil: zonas táctiles y letra mínima ---------- */
.elementor-field-type-acceptance input[type="checkbox"] { width: 20px !important; height: 20px !important; accent-color: #2A7DBF; flex: none; }
.elementor-field-type-acceptance .elementor-field-subgroup { align-items: center; }
.elementor-field-type-acceptance label { padding: 6px 0; display: inline-block; }
.dsi-migas a, .dsi-legal-indice a { display: inline-block; padding: 6px 0; }
.elementor-post__read-more { display: inline-block; padding: 8px 0; }
.elementor-post__meta-data, .elementor-post-date, .dsi-tl-num .elementor-heading-title { font-size: 13px !important; }

/* «Configurar cookies» del pie: solo cuando hay herramientas de medición activas */
body:not(.dsi-medicion-activa) .dsi-menu-cookies { display: none !important; }

/* ---------- Landing del 25 aniversario ---------- */
.e-con.dsi-ani-sello { aspect-ratio: 1 / 1; max-width: 340px; width: 100%; margin-inline: auto; border-radius: 50%; background: linear-gradient(135deg, #6EC1E4, #2A7DBF 55%, #0C193B) !important; box-shadow: 0 30px 70px -30px rgba(12, 25, 59, .7), inset 0 0 0 10px rgba(255, 255, 255, .18); gap: 0 !important; }
.dsi-ani-num .elementor-heading-title { font-size: 150px !important; font-weight: 800 !important; line-height: .9 !important; color: #FFFFFF !important; letter-spacing: -.04em; }
.dsi-ani-anos .elementor-heading-title { font-size: 30px !important; font-weight: 700 !important; color: #FFFFFF !important; text-transform: uppercase; letter-spacing: .3em; }
.dsi-ani-desde .elementor-heading-title { font-size: 14px !important; font-weight: 700 !important; color: #2A7DBF !important; letter-spacing: .12em; text-transform: uppercase; }
@media (max-width: 767px) { .e-con.dsi-ani-sello { max-width: 220px; } .dsi-ani-num .elementor-heading-title { font-size: 96px !important; } .dsi-ani-anos .elementor-heading-title { font-size: 22px !important; } }
.dsi-ani-cuenta { display: flex; gap: 10px; margin-top: 6px; }
.dsi-ani-cuenta[hidden] { display: none; }
.dsi-ani-cuenta span { display: flex; flex-direction: column; align-items: center; min-width: 64px; padding: 10px 8px; border-radius: 14px; background: #FFFFFF; border: 1px solid #DCEAF3; font-size: 12px; font-weight: 600; color: #5B6475; text-transform: uppercase; letter-spacing: .08em; }
.dsi-ani-cuenta strong { font-size: 26px; font-weight: 800; color: #2A7DBF; letter-spacing: 0; }
.dsi-ani-filtros { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.dsi-ani-filtros button { all: unset; cursor: pointer; padding: 10px 18px; border-radius: 24px; background: #FFFFFF; border: 1px solid #CFE3F0; font-size: 14px; font-weight: 600; color: #0B0B0B; }
.dsi-ani-filtros button[aria-pressed="true"] { color: #FFFFFF; border-color: transparent; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
.dsi-ani-filtros button:focus-visible { outline: 3px solid #0C193B; outline-offset: 2px; }
.e-con.dsi-ani-programa { max-width: 940px; margin-inline: auto; width: 100%; }
.dsi-ani-tema .elementor-heading-title { display: inline-block; padding: 5px 12px; border-radius: 20px; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .08em; text-transform: uppercase; color: #FFFFFF !important; background: linear-gradient(120deg, #6EC1E4, #2A7DBF); }
.dsi-ani-hora .elementor-heading-title { font-size: 15px !important; font-weight: 700 !important; color: #0B0B0B !important; }
.dsi-ani-apuntar .elementor-button { padding: 11px 18px !important; font-size: 13px !important; }
.dsi-ani-hito .elementor-heading-title { font-size: 40px !important; font-weight: 800 !important; line-height: 1 !important; color: #2A7DBF !important; }
.elementor-field-type-checkbox .elementor-field-subgroup { display: grid; gap: 8px; }
.elementor-field-type-checkbox .elementor-field-option { display: flex; align-items: center; gap: 10px; }
.elementor-field-type-checkbox input[type="checkbox"] { width: 20px; height: 20px; accent-color: #2A7DBF; flex: none; }
.elementor-field-type-checkbox .elementor-field-label { font-weight: 700; color: #0B0B0B; margin-bottom: 4px; }

.dsi-ani-logo img { width: 100%; max-width: 440px; height: auto; filter: drop-shadow(0 18px 30px rgba(12, 25, 59, .18)); }
@media (max-width: 767px) { .dsi-ani-logo img { max-width: 280px; } }
.dsi-cab-25 { margin-right: auto; padding-left: 18px; border-left: 1px solid #DCEAF3; }
.dsi-ani-banda img { width: 100%; height: auto; }

@media (max-width: 767px) { .dsi-cab-reservar .elementor-button { padding: 10px 16px !important; font-size: 12px !important; } .dsi-cab-25 { padding-left: 12px; } }
@media (max-width: 380px) { .dsi-cab-25 { display: none !important; } }

/* =====================================================================================
   ANIMACIONES DE LA WEB (se editan aquí: Elementor → Ajustes del sitio → CSS personalizado)
   Solo usan «transform», «opacity» y «clip-path», que no recalculan la maquetación: no afectan a la velocidad de carga.
   Se activan cuando el elemento entra en pantalla (clase «is-in», la pone el script de la plantilla de cabecera).
   Si el visitante tiene desactivadas las animaciones en su dispositivo, no se aplica ninguna.
   Clases (Avanzado → Clases CSS de cada elemento):
     dsi-rv dsi-rv-titulo   título que sube y subrayado celeste que se dibuja
     dsi-rv dsi-rv-sube     texto o bloque que sube con suavidad
     dsi-rv dsi-rv-tarjeta  tarjeta que sube y crece; su icono «salta» después (van escalonadas)
     dsi-rv dsi-rv-foto     foto que se descubre como una cortina mientras se aleja el zoom
     dsi-rv dsi-rv-lista    lista cuyos puntos entran uno a uno
     dsi-rv dsi-rv-flota    tarjeta destacada (formulario) que aparece flotando
     dsi-cuenta             cifra que cuenta hasta su valor
   ===================================================================================== */
:root { --dsi-curva: cubic-bezier(.2, .7, .2, 1); --dsi-rebote: cubic-bezier(.34, 1.56, .64, 1); }

/* Estado inicial (solo si las animaciones están activas) */
html.dsi-anim .dsi-rv:not(.is-listo) { transition: opacity .7s var(--dsi-curva), transform .8s var(--dsi-curva), clip-path 1.1s var(--dsi-curva); }
html.dsi-anim .dsi-rv-sube:not(.is-in),
html.dsi-anim .dsi-rv-titulo:not(.is-in) { opacity: 0; transform: translateY(26px); }
html.dsi-anim .dsi-rv-tarjeta:not(.is-in) { opacity: 0; transform: translateY(38px) scale(.94); }
html.dsi-anim .dsi-rv-flota:not(.is-in) { opacity: 0; transform: translateY(34px) scale(.96); }

/* Título: el subrayado celeste se dibuja después de aparecer el texto */
html.dsi-anim .dsi-rv-titulo.dsi-raya .elementor-heading-title::after { transform: scaleX(0); transform-origin: left center; transition: transform .7s var(--dsi-curva) .35s; }
html.dsi-anim .dsi-rv-titulo.dsi-raya.dsi-centro .elementor-heading-title::after { transform-origin: center; }
html.dsi-anim .dsi-rv-titulo.dsi-raya.is-in .elementor-heading-title::after { transform: scaleX(1); }

/* Tarjeta: el icono salta con rebote cuando la tarjeta ya está en su sitio */
@keyframes dsi-salto { from { transform: scale(.3) rotate(-25deg); opacity: 0; } to { transform: none; opacity: 1; } }
html.dsi-anim .dsi-rv-tarjeta:not(.is-in) .elementor-icon { opacity: 0; }
html.dsi-anim .dsi-rv-tarjeta.is-in:not(.is-listo) .elementor-icon { animation: dsi-salto .7s var(--dsi-rebote) .3s backwards; }

/* Foto: cortina que se abre de izquierda a derecha mientras la imagen se aleja (el recorte va en la imagen, no en la columna) */
html.dsi-anim .dsi-rv-foto > .elementor-widget-image { clip-path: inset(0 0 0 0 round 22px); transition: clip-path 1.1s var(--dsi-curva); }
html.dsi-anim .dsi-rv-foto:not(.is-in) > .elementor-widget-image { clip-path: inset(0 100% 0 0 round 22px); }
html.dsi-anim .dsi-rv-foto:not(.is-listo) img { transition: transform 1.4s var(--dsi-curva); }
html.dsi-anim .dsi-rv-foto:not(.is-in) img { transform: scale(1.18); }

/* Lista: los puntos entran uno a uno y la marca salta */
html.dsi-anim .dsi-rv-lista .elementor-icon-list-item { transition: opacity .5s var(--dsi-curva), transform .6s var(--dsi-curva); }
html.dsi-anim .dsi-rv-lista:not(.is-in) .elementor-icon-list-item { opacity: 0; transform: translateX(-18px); }
html.dsi-anim .dsi-rv-lista.is-in .elementor-icon-list-item:nth-child(2) { transition-delay: .09s; }
html.dsi-anim .dsi-rv-lista.is-in .elementor-icon-list-item:nth-child(3) { transition-delay: .18s; }
html.dsi-anim .dsi-rv-lista.is-in .elementor-icon-list-item:nth-child(4) { transition-delay: .27s; }
html.dsi-anim .dsi-rv-lista.is-in .elementor-icon-list-item:nth-child(5) { transition-delay: .36s; }
html.dsi-anim .dsi-rv-lista.is-in .elementor-icon-list-item:nth-child(n+6) { transition-delay: .45s; }
html.dsi-anim .dsi-rv-lista.is-in:not(.is-listo) .elementor-icon-list-icon { animation: dsi-salto .6s var(--dsi-rebote) .25s backwards; }

/* «Qué pasa después»: los números aparecen uno tras otro */
html.dsi-anim .dsi-despues.dsi-rv:not(.is-in) li { opacity: 0; transform: translateY(14px); }
html.dsi-anim .dsi-despues.dsi-rv li { transition: opacity .5s var(--dsi-curva), transform .6s var(--dsi-curva); }
html.dsi-anim .dsi-despues.dsi-rv.is-in li:nth-child(2) { transition-delay: .18s; }
html.dsi-anim .dsi-despues.dsi-rv.is-in li:nth-child(3) { transition-delay: .36s; }

/* Botones: destello que cruza el botón al pasar el cursor */
.elementor-button { position: relative; overflow: hidden; }
.elementor-button::before {
	content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 45%; pointer-events: none;
	background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .45), transparent); transform: skewX(-20deg);
}
.elementor-button:hover::before { left: 120%; transition: left .7s var(--dsi-curva); }
.elementor-button .elementor-button-icon { transition: transform .3s var(--dsi-curva); }
.elementor-button:hover .elementor-button-icon { transform: translateX(4px); }

/* Tarjetas: línea celeste que se dibuja en la base al pasar el cursor */
.dsi-servicio, .dsi-resena, .dsi-ficha { position: relative; overflow: hidden; }
.dsi-servicio::before, .dsi-serv-negro::before, .dsi-resena::before, .dsi-ficha::before {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; z-index: 1; border-radius: 0 0 18px 18px;
	background: linear-gradient(90deg, #6EC1E4, #2A7DBF); transform: scaleX(0); transform-origin: left; transition: transform .4s var(--dsi-curva);
}
.dsi-servicio:hover::before, .dsi-serv-negro:hover::before, .dsi-resena:hover::before, .dsi-ficha:hover::before { transform: scaleX(1); }
.dsi-valor::after { display: none; }
.dsi-servicio .elementor-icon, .dsi-serv-negro .elementor-icon { transition: transform .35s var(--dsi-rebote); }
.dsi-servicio:hover .elementor-icon, .dsi-serv-negro:hover .elementor-icon { transform: rotate(-8deg) scale(1.1); }
.dsi-resena { transition: transform .25s ease, box-shadow .25s ease; }
.dsi-resena:hover { transform: translateY(-4px); box-shadow: 0 20px 36px -22px rgba(42, 125, 191, .55); }

/* Logos de clientes: carrusel continuo. La fila (con la lista duplicada) se desplaza la mitad de su ancho y vuelve a empezar
   sin corte. Se detiene al pasar el cursor. Para cambiar la velocidad, modifica los segundos de «animation». */
@keyframes dsi-marquesina { to { transform: translateX(-50%); } }
.e-con.dsi-marquesina { overflow: hidden; width: 100%; -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent); mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent); }
.e-con.dsi-pista { display: flex !important; flex-wrap: nowrap !important; width: max-content !important; max-width: none !important; gap: 0 56px !important; padding-right: 56px !important; animation: dsi-marquesina 70s linear infinite; }
.dsi-marquesina:hover .dsi-pista { animation-play-state: paused; }
.dsi-clientes img { transition: transform .35s var(--dsi-curva); }
.dsi-clientes img:hover { transform: scale(1.1); }
@media (max-width: 767px) { .e-con.dsi-pista { gap: 0 34px !important; padding-right: 34px !important; animation-duration: 55s; } }

/* Barra de progreso de lectura en lo alto de la página (navegadores compatibles; sin script) */
@supports (animation-timeline: scroll()) {
	@keyframes dsi-progreso { from { transform: scaleX(0); } to { transform: scaleX(1); } }
	body::before {
		content: ""; position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 1000; pointer-events: none;
		background: linear-gradient(90deg, #6EC1E4, #2A7DBF); transform-origin: left; animation: dsi-progreso linear; animation-timeline: scroll(root);
	}
}

.dsi-oculto { display: none !important; }
@media (prefers-reduced-motion: reduce) {
	.elementor-button::before, body::before { display: none; }
	.e-con.dsi-pista { animation: none; }
	.e-con.dsi-marquesina { overflow-x: auto; }
}

/* Reseñas en móvil: carrusel que se desliza con el dedo (sin script). Se ve asomar la siguiente tarjeta para invitar a deslizar. */
@media (max-width: 767px) {
	.e-con.dsi-desliza {
		display: flex !important; flex-wrap: nowrap !important; flex-direction: row !important; gap: 14px !important;
		overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain;
		margin-inline: -18px; padding: 4px 18px 14px; width: calc(100% + 36px) !important; max-width: none !important; scroll-padding-inline: 18px;
		scrollbar-width: none;
	}
	.dsi-desliza::-webkit-scrollbar { display: none; }
	.dsi-desliza > .e-con { flex: 0 0 84% !important; width: 84% !important; max-width: 84% !important; scroll-snap-align: start; height: auto; }
	/* Dentro del carrusel las tarjetas ya están visibles: aparecen sin esperar a deslizar */
	html.dsi-anim .dsi-desliza > .dsi-rv:not(.is-in) { opacity: 1; transform: none; }
	html.dsi-anim .dsi-desliza > .dsi-rv:not(.is-in) .elementor-icon { opacity: 1; }
}

/* «Ver más»: el contenido se despliega y se recoge con suavidad. En el editor de Elementor se ve siempre abierto. */
body:not(.elementor-editor-active) .e-con.dsi-vermas-caja { display: grid !important; grid-template-rows: 0fr; transition: grid-template-rows .55s var(--dsi-curva); }
body:not(.elementor-editor-active) .e-con.dsi-vermas-caja.is-abierto { grid-template-rows: 1fr; }
body:not(.elementor-editor-active) .dsi-vermas-caja > .dsi-vermas-dentro { overflow: hidden; min-height: 0; flex-wrap: nowrap !important; visibility: hidden; transition: visibility 0s .55s; }
body:not(.elementor-editor-active) .dsi-vermas-caja.is-abierto > .dsi-vermas-dentro { visibility: visible; transition: none; padding-top: 4px; }
.dsi-vermas-boton .elementor-button-icon { transition: transform .35s var(--dsi-curva); }
.dsi-vermas-boton a[aria-expanded="true"] .elementor-button-icon { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { .e-con.dsi-vermas-caja { transition: none !important; } }/* End custom CSS */