/* ==========================================================================
   Fordesco Infografía — widget de Elementor y shortcode [fordesco_infografia]
   Responsive por ancho del CONTENEDOR (container queries): se adapta sola a la
   columna donde se inserte. Todo escala con --fdi-scale (control "Escala").
   Casillas: s1 arriba-izq · s2 arriba-der · s3 centro-izq · s4 centro-der ·
             s5 abajo-izq · s6 abajo-der
   ========================================================================== */

@font-face{font-family:"FDI Fira";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/fira-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"FDI Fira";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/fira-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"FDI Fira";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/fira-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"FDI Fira";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/fira-sans-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"FDI Fira";font-style:italic;font-weight:700;font-display:swap;src:url(../fonts/fira-sans-latin-700-italic.woff2) format("woff2")}
@font-face{font-family:"FDI Caveat";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/caveat-latin-700-normal.woff2) format("woff2")}

.fdi{
	--fdi-azul:#0066B3;
	--fdi-magenta:#D81B60;
	--fdi-verde:#7CB342;
	--fdi-naranja:#F57C00;
	--fdi-marino:#0B3B60;
	--fdi-titulo:#14284B;
	--fdi-texto:#1F2A37;

	--fdi-scale:1;
	width:100%;
	max-width:1400px;
	margin-left:auto;margin-right:auto;
	overflow:hidden;
	overflow:clip;
	font-family:"FDI Fira","Fira Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	color:var(--fdi-texto);
	line-height:1.45;
	text-align:left;
}
/* El widget necesita un ancho definido: en los contenedores de Elementor en
   columna con salto de línea (móvil), sin él la altura se calcula como si el
   bloque midiera 0 px de ancho y queda un hueco enorme debajo. */
.elementor-widget.elementor-widget-fordesco_infografia,
.elementor-widget:has(.fdi){width:100%}

.fdi *,.fdi *::before,.fdi *::after{box-sizing:border-box}
.fdi svg{display:block}

/* Contenedor de medida: su ancho es el real dividido por la escala, así el
   diseño se comporta como a tamaño completo y luego se reduce en proporción. */
.fdi .fdi__q{
	container-type:inline-size;
	container-name:fdi;
	width:calc(100% / var(--fdi-scale));
}
.fdi .fdi__inner{
	width:calc(100% * var(--fdi-scale));
	--fdi-gap:calc(clamp(14px,2cqi,28px) * var(--fdi-scale));
	--fdi-d:calc(clamp(200px,24cqi,360px) * var(--fdi-scale));   /* diámetro del círculo */
	--fdi-pad:calc(clamp(18px,2.2cqi,30px) * var(--fdi-scale));
	--fdi-radius:calc(clamp(16px,1.8cqi,26px) * var(--fdi-scale));
	margin:0;
	font-size:calc(clamp(14px,1.22cqi,17px) * var(--fdi-scale));
	overflow:hidden;
	padding:6px 4px 0;
}

.fdi .fdi-c-azul{color:var(--fdi-azul)}
.fdi .fdi-c-magenta{color:var(--fdi-magenta)}
.fdi .fdi-c-verde{color:#3F8F3A}
.fdi .fdi-c-naranja{color:var(--fdi-naranja)}

/* ---------- Cabecera ---------- */
.fdi .fdi__title{
	margin:0 0 calc(clamp(22px,3.4cqi,44px) * var(--fdi-scale));
	padding:0;
	font-family:inherit;
	font-size:calc(clamp(24px,3.5cqi,50px) * var(--fdi-scale));
	font-weight:700;
	font-style:italic;
	line-height:1.25;
	letter-spacing:-.01em;
	text-align:center;
	text-transform:none;
	text-wrap:balance;
	color:var(--fdi-titulo);
}
.fdi .fdi-subrayado{
	display:inline-block;white-space:nowrap;padding-bottom:.22em;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 16' preserveAspectRatio='none'%3E%3Cpath d='M4 12C80 5 200 2 296 5' fill='none' stroke='%23F5A623' stroke-width='5' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") no-repeat 50% 100%/100% .34em;
}

/* ---------- Cuerpo: móvil primero (1 columna) ---------- */
.fdi .fdi__body{
	display:grid;
	grid-template-columns:minmax(0,1fr);
	gap:var(--fdi-gap);
	position:relative;
}

/* ---------- Tarjetas ---------- */
.fdi .fdi-card{
	--fdi-accent:#3B7FC4;
	position:relative;
	display:flex;
	flex-direction:column;
	gap:var(--fdi-pad);
	margin:0;
	padding:var(--fdi-pad);
	border-radius:var(--fdi-radius);
	background:var(--fdi-card-bg,#f4f6f8);
	min-width:0;
	transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
}
.fdi .fdi-card__main{
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	column-gap:1.15em;
	row-gap:.6em;
	align-items:center;
	align-content:center;
	flex:1 1 auto;
	min-width:0;
}
.fdi .fdi-card__icon{
	grid-column:1;grid-row:1;
	display:block;
	width:var(--fdi-icon-size,3.6em);
	color:var(--fdi-icon-color,var(--fdi-titulo));
	line-height:1;
}
.fdi .fdi-card__icon svg{width:100%;height:auto;stroke-width:1.5}
.fdi .fdi-card__icon i{display:block;font-size:calc(var(--fdi-icon-size,3.6em) * .82);line-height:1;text-align:center}
.fdi .fdi-ico svg{fill:currentColor}              /* iconos elegidos en Elementor */
.fdi .fdi-card__title{
	grid-column:2;grid-row:1;
	margin:0;padding:0;
	font-family:inherit;
	font-size:1.5em;
	font-weight:600;
	line-height:1.2;
	letter-spacing:0;
	text-transform:none;
	color:var(--fdi-titulo);
}
.fdi .fdi-card__body{grid-column:1 / -1;min-width:0}

/* Posición del icono */
.fdi .fdi-ip-top .fdi-card__main{grid-template-columns:minmax(0,1fr)}
.fdi .fdi-ip-top .fdi-card__icon{grid-column:1;grid-row:auto}
.fdi .fdi-ip-top .fdi-card__title{grid-column:1;grid-row:auto}
.fdi .fdi-ip-right .fdi-card__main{grid-template-columns:minmax(0,1fr) auto}
.fdi .fdi-ip-right .fdi-card__icon{grid-column:2}
.fdi .fdi-ip-right .fdi-card__title{grid-column:1}

/* Texto enriquecido */
.fdi .fdi-rich{font-size:1em;line-height:1.45;color:inherit}
.fdi .fdi-rich p{margin:0 0 .7em;padding:0;font-size:1em;line-height:1.45}
.fdi .fdi-rich > :last-child{margin-bottom:0}
.fdi .fdi-rich strong,.fdi .fdi-rich b{font-weight:600}
.fdi .fdi-rich a{color:inherit;text-decoration:underline;position:relative;z-index:4}
.fdi .fdi-rich ul,.fdi .fdi-rich ol{list-style:none;margin:.7em 0;padding:0}
.fdi .fdi-rich li{position:relative;margin:0 0 .45em;padding:0 0 0 1.8em;list-style:none;line-height:1.35}
.fdi .fdi-rich li:last-child{margin-bottom:0}
.fdi .fdi-rich li::marker{content:none}
.fdi .fdi-rich li::before{
	content:"";position:absolute;left:0;top:.08em;
	width:1.2em;height:1.2em;border-radius:50%;
	background:var(--fdi-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat 50% 50%/68%;
}
.fdi .fdi-list-dot .fdi-rich li{padding-left:1.4em}
.fdi .fdi-list-dot .fdi-rich li::before{left:.15em;top:.42em;width:.5em;height:.5em;background:var(--fdi-accent)}

/* Bloque lateral (divisor): en móvil y tablet va debajo con línea horizontal */
.fdi .fdi-card__aside{
	flex:0 0 auto;
	padding-top:var(--fdi-pad);
	border-top:2px solid color-mix(in srgb,var(--fdi-titulo) 75%,transparent);
	min-width:0;
}
.fdi .fdi-card__aside.fdi-rich{font-size:.94em}

.fdi .fdi-sectores{display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:.6em .9em}
.fdi .fdi-sectores span{display:block;width:2.7em;line-height:1}
.fdi .fdi-sectores svg{width:100%;height:auto;stroke-width:1.4}
.fdi .fdi-sectores i{display:block;font-size:2.2em;text-align:center}

.fdi .fdi-escalera{display:flex;justify-content:center;align-items:center}
.fdi .fdi-escalera svg{width:8.6em;height:auto;fill:none;stroke-linecap:round;stroke-linejoin:round}
.fdi .fdi-escalera img{display:block;width:8.6em;max-width:100%;height:auto;margin:0;border:0;border-radius:0;box-shadow:none}
.fdi .fdi-escalera__steps{stroke:var(--fdi-titulo);stroke-width:4}
.fdi .fdi-escalera__flag{fill:#3FA04A;stroke:#3FA04A;stroke-width:2}
.fdi .fdi-escalera__people{stroke:var(--fdi-titulo);stroke-width:4}
.fdi .fdi-escalera__people circle{fill:var(--fdi-titulo);stroke:none}

/* ---------- Enlace de tarjeta ---------- */
.fdi .fdi-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.fdi a.fdi-card__link{position:static;display:block;margin:0;padding:0;border:0;background:none;box-shadow:none;text-decoration:none;outline:0}
.fdi a.fdi-card__link::after{content:"";position:absolute;inset:0;z-index:3;border-radius:var(--fdi-radius);cursor:pointer}
.fdi a.fdi-card__link:focus-visible::after{outline:3px solid var(--fdi-azul);outline-offset:3px}
.fdi .fdi-card--link .fdi-card__title::after{
	content:"\2192";display:inline-block;margin-left:.4em;
	font-weight:500;opacity:.45;transition:transform .25s ease,opacity .25s ease;
}
.fdi .fdi-card--link:hover .fdi-card__title::after,.fdi .fdi-card--link:focus-within .fdi-card__title::after{transform:translateX(5px);opacity:1}

/* ---------- Efectos hover ---------- */
.fdi .fdi-hv-lift:hover,.fdi .fdi-hv-lift:focus-within{transform:translateY(-5px);box-shadow:0 12px 28px rgba(20,40,75,.16);z-index:1}
.fdi .fdi-hv-scale:hover,.fdi .fdi-hv-scale:focus-within{transform:scale(1.025);box-shadow:0 10px 26px rgba(20,40,75,.14);z-index:1}
.fdi .fdi-hv-glow:hover,.fdi .fdi-hv-glow:focus-within{box-shadow:0 0 0 3px var(--fdi-accent),0 0 26px color-mix(in srgb,var(--fdi-accent) 55%,transparent)}

/* ---------- Círculo central ---------- */
.fdi .fdi-circle{
	order:-1;
	position:relative;
	justify-self:center;
	width:var(--fdi-d);
	aspect-ratio:1;
	margin:4px 0;
	border-radius:50%;
	background:#fff;
	box-shadow:0 0 0 calc(var(--fdi-d) * .035) #fff,0 10px 34px rgba(20,40,75,.16);
	display:grid;place-items:center;
	z-index:2;
	pointer-events:none;
	left:var(--fdi-cx,0px);top:var(--fdi-cy,0px);   /* ajuste manual de posición */
}
.fdi .fdi-circle__arcs{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.fdi .fdi-arc{fill:none;stroke-width:4;stroke-linecap:round;stroke-dasharray:52 308;transition:stroke-width .25s ease}
.fdi img.fdi-circle__logo{
	position:relative;display:block;
	width:82%;height:auto;max-width:none;max-height:82%;object-fit:contain;
	margin:0;padding:0;border:0;border-radius:0;box-shadow:none;
}
/* Zona sensible de cada arco (invisible, más ancha que el trazo) */
.fdi .fdi-hit{fill:none;stroke:transparent;stroke-width:20;stroke-dasharray:58 302;pointer-events:stroke;cursor:pointer}

/* Al pasar por un arco: zoom en su rectángulo */
.fdi .fdi__body:has(.fdi-hit--s1:hover) .fdi-card--s1,
.fdi .fdi__body:has(.fdi-hit--s2:hover) .fdi-card--s2,
.fdi .fdi__body:has(.fdi-hit--s3:hover) .fdi-card--s3,
.fdi .fdi__body:has(.fdi-hit--s4:hover) .fdi-card--s4,
.fdi .fdi__body:has(.fdi-hit--s5:hover) .fdi-card--s5,
.fdi .fdi__body:has(.fdi-hit--s6:hover) .fdi-card--s6,
.fdi .fdi-card.is-zoom{
	transform:scale(min(var(--fdi-zoom,1.07),var(--fdi-zoom-cap,1.03)));   /* en 1 columna el zoom se limita para no salirse */
	box-shadow:0 0 0 3px var(--fdi-accent),0 16px 36px rgba(20,40,75,.2);
	z-index:1;
}
.fdi .fdi__body:has(.fdi-hit--s1:hover) .fdi-arc--s1,
.fdi .fdi__body:has(.fdi-hit--s2:hover) .fdi-arc--s2,
.fdi .fdi__body:has(.fdi-hit--s3:hover) .fdi-arc--s3,
.fdi .fdi__body:has(.fdi-hit--s4:hover) .fdi-arc--s4,
.fdi .fdi__body:has(.fdi-hit--s5:hover) .fdi-arc--s5,
.fdi .fdi__body:has(.fdi-hit--s6:hover) .fdi-arc--s6,
.fdi .fdi-arc.is-zoom{stroke-width:10}

/* Al pasar por una tarjeta se resalta su arco */
.fdi .fdi__body:has(.fdi-card--s1:hover) .fdi-arc--s1,
.fdi .fdi__body:has(.fdi-card--s2:hover) .fdi-arc--s2,
.fdi .fdi__body:has(.fdi-card--s3:hover) .fdi-arc--s3,
.fdi .fdi__body:has(.fdi-card--s4:hover) .fdi-arc--s4,
.fdi .fdi__body:has(.fdi-card--s5:hover) .fdi-arc--s5,
.fdi .fdi__body:has(.fdi-card--s6:hover) .fdi-arc--s6{stroke-width:9}

/* ==========================================================================
   Animación de entrada. La clase .fdi--anim la pone el script: sin JS,
   o con "reducir movimiento" activado, todo se ve estático.
   ========================================================================== */
.fdi.fdi--anim .fdi-circle{opacity:0;transform:scale(.55);transition:opacity .5s ease,transform .7s cubic-bezier(.2,1.3,.4,1)}
.fdi.fdi--anim.is-in .fdi-circle{opacity:1;transform:none}
.fdi.fdi--anim .fdi-circle__logo{opacity:0;transform:scale(.7);clip-path:circle(0% at 50% 45%);transition:opacity .5s ease .35s,transform .8s cubic-bezier(.2,1,.3,1) .35s,clip-path .9s ease .35s}
.fdi.fdi--anim.is-in .fdi-circle__logo{opacity:1;transform:none;clip-path:circle(80% at 50% 45%)}
.fdi.fdi--anim .fdi-arc{opacity:0;stroke-dasharray:0 360;transition:stroke-dasharray .55s ease calc(.75s + var(--i) * .13s),opacity .2s linear calc(.75s + var(--i) * .13s),stroke-width .25s ease}
.fdi.fdi--anim.is-in .fdi-arc{opacity:1;stroke-dasharray:52 308}

.fdi.fdi--anim .fdi-card:not(.is-done){transition:opacity calc(var(--fdi-dur,750ms) * .75) ease,transform var(--fdi-dur,750ms) cubic-bezier(.2,.9,.25,1),box-shadow .25s ease}
.fdi.fdi--anim .fdi-card:not(.is-in){opacity:0;pointer-events:none}
.fdi.fdi--anim .fdi-fx-none:not(.is-done){transition:none}
.fdi.fdi--anim .fdi-fx-grow:not(.is-in){transform:translateY(-26px) scale(.94);transform-origin:50% 0}
.fdi.fdi--anim .fdi-fx-slide-left:not(.is-in){transform:translateX(-70px)}
.fdi.fdi--anim .fdi-fx-slide-right:not(.is-in){transform:translateX(70px)}
.fdi.fdi--anim .fdi-fx-slide-up:not(.is-in){transform:translateY(60px)}
.fdi.fdi--anim .fdi-fx-slide-down:not(.is-in){transform:translateY(-60px)}
.fdi.fdi--anim .fdi-fx-zoom:not(.is-in){transform:scale(.55)}
.fdi.fdi--anim .fdi-fx-flip:not(.is-in){transform:perspective(1000px) rotateY(88deg)}
.fdi.fdi--anim .fdi-fx-flip:not(.is-done){transform-origin:50% 50%;backface-visibility:hidden}
.fdi.fdi--anim .fdi-fx-bounce:not(.is-in){transform:scale(.5)}
.fdi.fdi--anim .fdi-fx-bounce:not(.is-done){transition-timing-function:ease,cubic-bezier(.34,1.7,.5,1),ease}

/* Pulso del arco cuando sale su tarjeta */
@keyframes fdi-pulse{0%{stroke-width:4}35%{stroke-width:11}100%{stroke-width:4}}
.fdi.fdi--anim .fdi__body:has(.fdi-card--s1.is-in) .fdi-arc--s1,
.fdi.fdi--anim .fdi__body:has(.fdi-card--s2.is-in) .fdi-arc--s2,
.fdi.fdi--anim .fdi__body:has(.fdi-card--s3.is-in) .fdi-arc--s3,
.fdi.fdi--anim .fdi__body:has(.fdi-card--s4.is-in) .fdi-arc--s4,
.fdi.fdi--anim .fdi__body:has(.fdi-card--s5.is-in) .fdi-arc--s5,
.fdi.fdi--anim .fdi__body:has(.fdi-card--s6.is-in) .fdi-arc--s6{animation:fdi-pulse .7s ease 1}

/* ---------- Pilares + banner ---------- */
.fdi .fdi__footer{
	display:flex;flex-direction:column;
	gap:var(--fdi-gap);
	margin-top:calc(clamp(20px,2.6cqi,34px) * var(--fdi-scale));
	position:relative;z-index:1;
}
.fdi .fdi-pillars{
	list-style:none;margin:0;padding:0;
	display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
	gap:1em .8em;
}
.fdi .fdi-pillar{
	display:flex;align-items:center;gap:.55em;
	margin:0;padding:0;list-style:none;min-width:0;
	font-size:.9em;font-weight:500;line-height:1.25;color:var(--fdi-titulo);
}
.fdi .fdi-pillar::before,.fdi .fdi-pillar::marker{content:none}
.fdi .fdi-pillar__text{min-width:0;overflow-wrap:break-word;text-wrap:balance}
.fdi .fdi-pillar__icon{
	flex:0 0 auto;
	display:grid;place-items:center;
	width:3.3em;aspect-ratio:1;
	border-radius:50%;
	background:var(--fdi-pillar,#0066B3);
	color:#fff;line-height:1;
}
.fdi .fdi-pillar__icon svg{width:1.7em;height:1.7em;stroke-width:2}
.fdi .fdi-pillar__icon i{font-size:1.5em}
.fdi .fdi-pillar__icon--fill svg{fill:currentColor}

.fdi .fdi-banner{
	margin:0;
	padding:.5em 1.1em .62em;
	border-radius:var(--fdi-radius) var(--fdi-radius) 0 0;
	background:var(--fdi-marino);
	color:#fff;
	font-family:"FDI Caveat","Caveat","Segoe Script","Brush Script MT",cursive;
	font-size:calc(clamp(24px,2.5cqi,36px) * var(--fdi-scale));
	font-weight:700;
	line-height:1.15;
	text-align:center;
}
.fdi .fdi-banner span{
	display:inline-block;padding-bottom:.12em;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 12' preserveAspectRatio='none'%3E%3Cpath d='M4 8C90 3 210 3 296 6' fill='none' stroke='%23F5A623' stroke-width='2.5' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") no-repeat 50% 100%/100% .3em;
}

/* ---------- Ola ---------- */
.fdi .fdi-wave{width:100%;height:calc(clamp(46px,8cqi,120px) * var(--fdi-scale));margin-top:-1px}

/* ==========================================================================
   TABLET — contenedor ≥ 640px: 2 columnas, círculo arriba centrado
   ========================================================================== */
@container fdi (min-width:640px){
	.fdi .fdi__body{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fdi .fdi-circle{grid-column:1 / -1}
	/* El zoom crece hacia el centro para no salirse por los bordes */
	.fdi .fdi__inner{--fdi-zoom-cap:9}
	.fdi:not(.fdi--anim) .fdi-card--s1,.fdi:not(.fdi--anim) .fdi-card--s3,.fdi:not(.fdi--anim) .fdi-card--s5,
	.fdi .fdi-card--s1.is-done,.fdi .fdi-card--s3.is-done,.fdi .fdi-card--s5.is-done{transform-origin:0 50%}
	.fdi:not(.fdi--anim) .fdi-card--s2,.fdi:not(.fdi--anim) .fdi-card--s4,.fdi:not(.fdi--anim) .fdi-card--s6,
	.fdi .fdi-card--s2.is-done,.fdi .fdi-card--s4.is-done,.fdi .fdi-card--s6.is-done{transform-origin:100% 50%}
	.fdi .fdi-card--s1,.fdi .fdi-card--s3,.fdi .fdi-card--s5{grid-column:1}
	.fdi .fdi-card--s2,.fdi .fdi-card--s4,.fdi .fdi-card--s6{grid-column:2}
	.fdi .fdi-card--s1,.fdi .fdi-card--s2{grid-row:2}
	.fdi .fdi-card--s3,.fdi .fdi-card--s4{grid-row:3}
	.fdi .fdi-card--s5,.fdi .fdi-card--s6{grid-row:4}
	.fdi .fdi-pillars{display:flex;flex-wrap:wrap;gap:.9em 0}
	.fdi .fdi-pillar{flex:1 1 0;gap:.7em;padding:0 1em;font-size:.95em}
	.fdi .fdi-pillar + .fdi-pillar{border-left:2px solid #CBD3DD}
	.fdi .fdi-pillar:first-child{padding-left:0}
}

/* ==========================================================================
   ESCRITORIO — contenedor ≥ 1024px: círculo superpuesto en el centro
   ========================================================================== */
@container fdi (min-width:1024px){
	/* Círculo centrado respecto a los 6 rectángulos: filas 1 y 3 iguales y el
	   círculo en el centro de la fila 2 (que nunca es más baja que él). */
	.fdi .fdi__body{grid-template-rows:1fr minmax(calc(var(--fdi-d) * .94),auto) 1fr}
	.fdi .fdi-card--s1,.fdi .fdi-card--s2{grid-row:1}
	.fdi .fdi-card--s3,.fdi .fdi-card--s4{grid-row:2}
	.fdi .fdi-card--s5,.fdi .fdi-card--s6{grid-row:3}
	.fdi .fdi-circle{order:0;grid-column:1 / -1;grid-row:1 / span 3;place-self:center;margin:0}

	/* Zona de seguridad: el texto nunca queda bajo el círculo */
	.fdi .fdi-card--s3{padding-right:calc(var(--fdi-d) * .5 + 6px)}
	.fdi .fdi-card--s4{padding-left:calc(var(--fdi-d) * .5 + 6px)}

	/* Variante "entre las dos primeras filas" (diseño original) */
	.fdi.fdi--circle-top .fdi__body{grid-template-rows:minmax(calc(var(--fdi-d) * .5),auto) minmax(calc(var(--fdi-d) * .62),auto) auto}
	.fdi.fdi--circle-top .fdi-circle{grid-row:1 / span 2}
	.fdi.fdi--circle-top .fdi-card--s1{margin-right:calc(var(--fdi-d) * .3);padding-right:calc(var(--fdi-d) * .16)}
	.fdi.fdi--circle-top .fdi-card--s2{margin-left:calc(var(--fdi-d) * .3);padding-left:calc(var(--fdi-d) * .16)}

	/* Icono a la izquierda con el texto sangrado bajo el título */
	.fdi .fdi-ip-left .fdi-card__main{align-items:start}
	.fdi .fdi-ip-left .fdi-card__icon{grid-row:1 / span 2;align-self:start}
	.fdi .fdi-ip-left .fdi-card__body{grid-column:2}

	/* Divisor vertical interno */
	.fdi .fdi-card--aside{flex-direction:row;align-items:stretch}
	.fdi .fdi-card--aside .fdi-card__aside{
		padding-top:0;border-top:0;
		padding-left:var(--fdi-pad);
		border-left:2px solid color-mix(in srgb,var(--fdi-titulo) 75%,transparent);
		display:flex;flex-direction:column;justify-content:center;
	}
	.fdi .fdi-card--aside-text .fdi-card__main{flex:1 1 46%}
	.fdi .fdi-card--aside-text .fdi-card__aside{flex:1 1 54%}
	.fdi .fdi-card--aside .fdi-sectores{
		display:grid;grid-template-columns:repeat(2,auto);
		gap:.7em .6em;align-content:center;justify-content:center;
	}
	.fdi .fdi-sectores--6 span:nth-child(1){grid-area:1 / 1}
	.fdi .fdi-sectores--6 span:nth-child(2){grid-area:2 / 1}
	.fdi .fdi-sectores--6 span:nth-child(3){grid-area:3 / 1}
	.fdi .fdi-sectores--6 span:nth-child(4){grid-area:3 / 2}
	.fdi .fdi-sectores--6 span:nth-child(5){grid-area:4 / 1}
	.fdi .fdi-sectores--6 span:nth-child(6){grid-area:4 / 2}

	/* "Crecer desde su arco": cada tarjeta nace del lado del círculo */
	.fdi.fdi--anim .fdi-fx-grow:not(.is-in){transform:scale(.25)}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s1:not(.is-done){transform-origin:100% 100%}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s2:not(.is-done){transform-origin:0 100%}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s3:not(.is-done){transform-origin:100% 50%}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s4:not(.is-done){transform-origin:0 50%}
	.fdi.fdi--anim.fdi--circle-top .fdi-fx-grow.fdi-card--s3:not(.is-done){transform-origin:100% 25%}
	.fdi.fdi--anim.fdi--circle-top .fdi-fx-grow.fdi-card--s4:not(.is-done){transform-origin:0 25%}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s5:not(.is-done){transform-origin:100% 0}
	.fdi.fdi--anim .fdi-fx-grow.fdi-card--s6:not(.is-done){transform-origin:0 0}

	/* Pilares en línea + banner a la derecha */
	.fdi .fdi__footer{flex-direction:row;align-items:flex-end;justify-content:space-between;padding-left:calc(clamp(8px,2cqi,32px) * var(--fdi-scale))}
	.fdi .fdi-pillars{flex:1 1 auto;flex-wrap:nowrap;align-items:center;padding-bottom:.9em}
	.fdi .fdi-pillar{flex:0 1 auto}
	.fdi .fdi-banner{flex:0 0 auto;border-radius:var(--fdi-radius) 0 0 0;padding:.6em 1.4em .75em 1.2em;white-space:nowrap}
}

/* Móviles muy estrechos: pilares en 1 columna */
@container fdi (max-width:340px){
	.fdi .fdi-pillars{grid-template-columns:minmax(0,1fr)}
}

/* Respaldo para navegadores sin container queries (anteriores a 2023) */
@supports not (container-type:inline-size){
	.fdi .fdi__q,.fdi .fdi__inner{width:100%}
	.fdi .fdi__inner{--fdi-gap:20px;--fdi-d:240px;--fdi-pad:22px;--fdi-radius:20px;font-size:15px}
	.fdi .fdi__title{font-size:clamp(24px,4vw,44px)}
	.fdi .fdi-banner{font-size:28px}
	.fdi .fdi-wave{height:70px}
	@media (min-width:700px){
		.fdi .fdi__body{grid-template-columns:repeat(2,minmax(0,1fr))}
		.fdi .fdi-circle{grid-column:1 / -1}
	}
}

@media (prefers-reduced-motion:reduce){
	.fdi .fdi-card,.fdi .fdi-arc,.fdi .fdi-circle,.fdi .fdi-circle__logo{transition:none!important;animation:none!important}
}
@media print{
	.fdi .fdi-card,.fdi .fdi-banner,.fdi .fdi-pillar__icon,.fdi .fdi-rich li::before{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
