/* -------------------------------------------
    Icon Box
---------------------------------------------- */

@if use_component(icon-box) {
.icon-box {
    .icon-box-title {
        margin: 0 0 .7rem;
        text-transform: uppercase;
        font-size: font-size(1.5rem);
        line-height: 1.6;
    }
    p {
        margin: 0;
        font-size: font-size(1.4rem);
        line-height: 1.72;
        color: #666;
    }
    i::before {
        margin: 0;  
    }

    .icon-box-content {
        text-align: center;
    }
}

.icon-box-icon-wrapper {
	display: inline-block;
	margin-bottom: 2.4rem;
}

.icon-box-icon {
    display: inline-block;
	// margin-bottom: 2.4rem;
	transition: all .3s;
    font: {
        size: 3.5rem;
        weight: 600;
    }
    line-height: 0;
    color: #222;
}

.icon-box-side {
    display: flex;
    align-items: center;
    justify-content: center;
    .icon-box-icon-wrapper {
        margin-#{$right}: 1.5rem;
        margin-bottom: 0;
    }
    .icon-box-content {
        text-align: #{$left};
        & + .icon-box-icon-wrapper {
            margin-#{$left}: 1.5rem;
            margin-#{$right}: 0;
        }
    }
    .icon-box-title {
        margin: 0;
	}
	
}

.icon-border {
    .icon-box-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 5.1rem;  
        height: 5.1rem;
        border-radius: 50%;
        border: 1px solid #9e9e9e;
        font-size: 2.4rem;
    }
    svg {
        height: 2.4rem;
    }
}

.icon-inversed {
    .icon-box-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 5.1rem;  
        height: 5.1rem;
        border-radius: 50%;
        background-color: var(--rio-primary-color, #27c);
        color: #fff;
        font-size: 2.4rem;
    }
    svg {
        height: 2.4rem;
        fill: white;
    }
}

.icon-solid {
    .icon-box-icon {
        font-size: 4.8rem;
        color: var(--rio-primary-color, #27c);
    }
    svg {
        height: 6rem;
        fill: var(--rio-primary-color, #27c);
    }

    &.icon-box-side {
        align-items: flex-start;
    }
}

.icon-box-tiny {
    .icon-box-icon {
        margin: side-values(0 1rem 0 0);
        font-size: 2.4rem;
    }
    svg {
         height: 2.8rem;
         width: 2.8rem;
    }
    .icon-box-title {
        margin-bottom: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    }
}

.infobox-anim {
	.elementor-icon-box-icon {
		display: inline-block;
		line-height: 0;
	}

	&.elementor-shape-circle .elementor-icon-box-icon {
		border-radius: 50%;
	}

	&:hover {
		&.infobox-anim-pushup {
			.elementor-icon, .icon-box-icon {
				transform: translateY(-10px);
			}
		}
		&.infobox-anim-pushdown {
			.elementor-icon, .icon-box-icon {
				transform: translateY(10px);
			}
		}
		&.infobox-anim-pushleft {
			.elementor-icon, .icon-box-icon {
				transform: translateX(-10px);
			}
		}
		&.infobox-anim-pushright {
			.elementor-icon, .icon-box-icon {
				transform: translateX(10px);
			}
		}
	}
}

.stacked .icon-box-icon {
	background-color: var(--rio-primary-color, #27c);
	color: #fff;
	width: 60px;
	height: 60px;
}

.framed .icon-box-icon {
	border: 1px solid var(--rio-primary-color, #27c);
	color: var(--rio-primary-color, #27c);
	width: 60px;
	height: 60px;
}

.circle .icon-box-icon {
	border-radius: 50%;
}

.icon-box-right .icon-box-icon-wrapper {
	margin-right: 0;
	margin-left: 1.5rem;
}

//elementor info box
.elementor-widget-riode_widget_infobox .elementor-icon-box-wrapper {
    text-align: center;
}

.elementor-widget-riode_widget_infobox .elementor-icon-box-title a {
    color: inherit
}

.elementor-widget-riode_widget_infobox .elementor-icon-box-content {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.elementor-widget-riode_widget_infobox .elementor-icon-box-description {
    margin: 0
}
//responsive
@media (min-width: 768px) {
	.elementor-widget-riode_widget_infobox.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-riode_widget_infobox.elementor-position-right .elementor-icon-box-wrapper {
        display: flex
    }

    .elementor-widget-riode_widget_infobox.elementor-position-left .elementor-icon-box-icon,.elementor-widget-riode_widget_infobox.elementor-position-right .elementor-icon-box-icon {
        display: inline-flex;
        flex: 0 0 auto
    }

    .elementor-widget-riode_widget_infobox.elementor-position-right .elementor-icon-box-wrapper {
        text-align: right;
        flex-direction: row-reverse
    }

    .elementor-widget-riode_widget_infobox.elementor-position-left .elementor-icon-box-wrapper {
        text-align: left;
        flex-direction: row
    }

    .elementor-widget-riode_widget_infobox.elementor-position-top .elementor-icon-box-img {
        margin: auto
    }

    .elementor-widget-riode_widget_infobox.elementor-vertical-align-top .elementor-icon-box-wrapper {
        align-items: flex-start;
    }

    .elementor-widget-riode_widget_infobox.elementor-vertical-align-middle .elementor-icon-box-wrapper {
        align-items: center
    }

    .elementor-widget-riode_widget_infobox.elementor-vertical-align-bottom .elementor-icon-box-wrapper {
        align-items: flex-end
    }
}
@include mq( md,max ) {
	.elementor-widget-riode_widget_infobox .elementor-icon-box-icon {
        margin-left:auto!important;
        margin-right: auto!important;
        margin-bottom: 15px
    }
}