/* Epic Widgets · ld_icon_box (CSS propio, autocontenido) */
.elementor-widget-ld_icon_box > .elementor-widget-container{margin-bottom:30px}
.elementor-widget-ld_icon_box .iconbox{display:flex;position:relative;flex-grow:1;transition:box-shadow .3s ease,background-color .3s ease}
.elementor-widget-ld_icon_box .iconbox-default{flex-direction:column}
.elementor-widget-ld_icon_box .iconbox-inline{flex-wrap:wrap;align-items:center}
.elementor-widget-ld_icon_box .iconbox-side{align-items:flex-start}
.elementor-widget-ld_icon_box .iconbox-side.align-items-center{align-items:center}
.elementor-widget-ld_icon_box .iconbox.flex-row-reverse{flex-direction:row-reverse}
.elementor-widget-ld_icon_box .iconbox-inline.justify-content-end{justify-content:flex-end}
.elementor-widget-ld_icon_box.elementor-align-left .iconbox-default{align-items:flex-start}
.elementor-widget-ld_icon_box.elementor-align-center .iconbox-default{align-items:center}
.elementor-widget-ld_icon_box.elementor-align-right .iconbox-default{align-items:flex-end}
.elementor-widget-ld_icon_box.elementor-align-center > .elementor-widget-container{display:flex;flex-wrap:wrap;justify-content:center}
.elementor-widget-ld_icon_box.elementor-align-center .iconbox-inline,
.elementor-widget-ld_icon_box.elementor-align-center .iconbox-side{flex-grow:0}

/* Icono */
.elementor-widget-ld_icon_box .iconbox-icon-wrap{flex-shrink:0;line-height:0}
.elementor-widget-ld_icon_box .iconbox-icon-container{display:inline-flex;align-items:center;justify-content:center;font-size:24px;line-height:1em;color:var(--e-global-color-primary,currentColor);border:0 solid #eef0f4;transition:color .3s,background-color .3s,border-color .3s,box-shadow .3s}
.elementor-widget-ld_icon_box .iconbox-icon-container i{font-size:1em;display:inline-block}
.elementor-widget-ld_icon_box .iconbox-icon-container > svg{display:inline-block;width:1em;height:auto;max-height:1em;fill:currentColor}
.elementor-widget-ld_icon_box .iconbox-icon-container > svg *{transition:fill .3s,stroke .3s}
.elementor-widget-ld_icon_box .iconbox-icon-container > img{display:block;height:auto;max-width:none}
.elementor-widget-ld_icon_box .iconbox-default .iconbox-icon-container{margin-bottom:24px}
.elementor-widget-ld_icon_box .iconbox-inline .iconbox-icon-wrap,
.elementor-widget-ld_icon_box .iconbox-side .iconbox-icon-wrap{margin-inline-end:15px}

/* Formas */
.elementor-widget-ld_icon_box .iconbox-icon-shaped .iconbox-icon-container{position:relative;z-index:1;overflow:hidden;width:100px;height:100px;font-size:40px;background-color:var(--e-global-color-primary,#184341);color:#fff}
.elementor-widget-ld_icon_box .iconbox-circle .iconbox-icon-container{border-radius:50%}
.elementor-widget-ld_icon_box .iconbox-lozenge .iconbox-icon-container{border-radius:30%}
.elementor-widget-ld_icon_box .iconbox-icon-shaped .iconbox-icon-container > svg{max-height:none}

/* Título y texto */
.elementor-widget-ld_icon_box .lqd-iconbox-heading{margin:0 0 .7em;font-size:24px;line-height:1.2em;transition:color .3s}
.elementor-widget-ld_icon_box .iconbox-inline .lqd-iconbox-heading{display:inline-flex;flex:1;align-items:center;justify-content:inherit;margin-bottom:0}
.elementor-widget-ld_icon_box .iconbox-inline .contents{flex-basis:100%}
.elementor-widget-ld_icon_box.elementor-align-center .iconbox-inline .contents{text-align:start}
.elementor-widget-ld_icon_box .iconbox-side .contents{flex:1;min-width:0}
.elementor-widget-ld_icon_box .iconbox p,
.elementor-widget-ld_icon_box .iconbox-text{margin:0;transition:color .3s}

/* Flecha del título al hover */
.elementor-widget-ld_icon_box .iconbox-heading-arrow-onhover .lqd-iconbox-heading svg{height:1em;width:auto;vertical-align:middle;opacity:0;transform:translateX(0);transition:opacity .45s cubic-bezier(.23,1,.32,1),transform .45s cubic-bezier(.23,1,.32,1)}
.elementor-widget-ld_icon_box:hover .iconbox-heading-arrow-onhover .lqd-iconbox-heading svg{opacity:1;transform:translateX(.5em)}

/* Etiqueta */
.elementor-widget-ld_icon_box .iconbox-label{position:absolute;top:0;inset-inline-end:0;z-index:2;display:inline-block;padding:6px 12px;border-radius:50em;background:#eef3f9;color:#000;font-size:10px;font-weight:700;line-height:1.5em;letter-spacing:.1em;text-transform:uppercase}
.elementor-widget-ld_icon_box .contents .iconbox-label{position:relative;top:auto;inset-inline-end:auto;margin-bottom:2em}

/* Enlace de toda la caja */
.elementor-widget-ld_icon_box .iconbox-overlay-link{position:absolute;inset:0;z-index:2}

/* Botón */
.elementor-widget-ld_icon_box .iconbox .btn{--icon-font-size:1em;display:inline-flex;align-items:center;gap:.5em;margin-top:1.5em;position:relative;text-decoration:none;white-space:nowrap;line-height:1.2;transition:color .3s,background-color .3s,border-color .3s;align-self:flex-start}
.elementor-widget-ld_icon_box.elementor-align-center .iconbox .btn{align-self:center}
.elementor-widget-ld_icon_box.elementor-align-right .iconbox .btn{align-self:flex-end}
.elementor-widget-ld_icon_box .iconbox-inline .btn{flex-basis:auto}
.elementor-widget-ld_icon_box .btn-solid{padding:1em 2.1em;border-radius:4px;background-color:var(--e-global-color-primary,#184341);color:#fff}
.elementor-widget-ld_icon_box .btn-naked{padding:0;background:none;border:0;color:var(--e-global-color-primary,currentColor)}
.elementor-widget-ld_icon_box .btn-underlined{padding:0 0 .25em;background:none;border:0;border-bottom:1px solid currentColor}
.elementor-widget-ld_icon_box .btn-icon{display:inline-flex;font-size:var(--icon-font-size);line-height:1}
.elementor-widget-ld_icon_box .btn-icon svg{width:1em;height:1em;fill:currentColor}
.elementor-widget-ld_icon_box .btn-icon-left .btn-icon{order:-1}
/* Reveal: el icono aparece deslizándose al pasar el cursor */
.elementor-widget-ld_icon_box .btn-hover-reveal .btn-icon{opacity:0;transform:translateX(-.5em);transition:opacity .25s,transform .5s cubic-bezier(0,.71,.4,1)}
.elementor-widget-ld_icon_box .btn-hover-reveal.btn-icon-left .btn-icon{transform:translateX(.5em)}
.elementor-widget-ld_icon_box .btn-hover-reveal:hover .btn-icon,
.elementor-widget-ld_icon_box .btn-hover-reveal:focus-visible .btn-icon{opacity:1;transform:translateX(0)}

/* Escala al hover (enable_scale_animation) */
.lqd-iconbox-scale > .elementor-widget-container,
.lqd-iconbox-scale-yes > .elementor-widget-container{transition:transform .85s cubic-bezier(.23,1,.32,1),background .3s,border .3s,border-radius .3s,box-shadow .3s}
.lqd-iconbox-scale:hover > .elementor-widget-container,
.lqd-iconbox-scale-yes:hover > .elementor-widget-container{transform:scale(1.1)}

@media (prefers-reduced-motion:reduce){
	.lqd-iconbox-scale:hover > .elementor-widget-container,
	.lqd-iconbox-scale-yes:hover > .elementor-widget-container{transform:none}
	.elementor-widget-ld_icon_box .btn-hover-reveal .btn-icon,
	.elementor-widget-ld_icon_box .iconbox-heading-arrow-onhover .lqd-iconbox-heading svg{transition:none}
}

/* Side: título sin texto */
.elementor-widget-ld_icon_box .iconbox-side > .lqd-iconbox-heading:last-child{margin-bottom:0}
.elementor-widget-ld_icon_box.elementor-align-center .iconbox-side .contents{text-align:start}

/* Iconos enlazados (i_linked): línea vertical entre cajas apiladas */
.elementor-widget-ld_icon_box .iconbox.z-index-2{z-index:2}
.elementor-widget-ld_icon_box .iconbox-icon-linked .iconbox-icon-wrap{position:relative}
.elementor-widget-ld_icon_box .iconbox-icon-linked .iconbox-icon-wrap.align-items-center{display:flex;align-items:center}
.elementor-widget-ld_icon_box .iconbox-icon-linked .iconbox-icon-wrap::before{content:"";position:absolute;top:0;left:50%;z-index:-1;width:1px;height:170%;background-color:var(--epic-ib-link-color,#e9e9e9);transform:translateX(-50%)}
.elementor-widget-ld_icon_box .iconbox-icon-linked .iconbox-icon-wrap.align-items-center::before{top:50%;height:150%}
.elementor-widget-ld_icon_box:last-child .iconbox-icon-linked .iconbox-icon-wrap::before{display:none}

/* Icono con degradado (enable_gradient_icon): el fondo del <i> recortado al glifo */
.elementor-widget-ld_icon_box .iconbox-icon-gradient .iconbox-icon-container i{-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;line-height:1.15em}

/* Alineación responsive del layout "icono arriba" */
@media (max-width:1024px){
	.elementor-widget-ld_icon_box.elementor-tablet-align-left .iconbox-default{align-items:flex-start}
	.elementor-widget-ld_icon_box.elementor-tablet-align-center .iconbox-default{align-items:center}
	.elementor-widget-ld_icon_box.elementor-tablet-align-right .iconbox-default{align-items:flex-end}
}
@media (max-width:767px){
	.elementor-widget-ld_icon_box.elementor-mobile-align-left .iconbox-default{align-items:flex-start}
	.elementor-widget-ld_icon_box.elementor-mobile-align-center .iconbox-default{align-items:center}
	.elementor-widget-ld_icon_box.elementor-mobile-align-right .iconbox-default{align-items:flex-end}
}
/* Glifos de icon-compat hechos con mask: toman el degradado del <i> */
.elementor-widget-ld_icon_box .iconbox-icon-gradient .iconbox-icon-container i.lqd-icn-ess::before{background-color:transparent;background-image:inherit;-webkit-background-clip:border-box!important;background-clip:border-box!important}
