/* ======== Icon with Text Widget Styles ========
===============================================*/

.yydev-add-icon.elementor-icon-wrapper {
    display: inline-block;
}

/* Full width layout adjustments */
.yydev-add-icon.widget-display-full {
    display: block !important;
    width: 100%;
}

.yydev-add-icon.widget-display-full .icon-link-wrapper,
.yydev-add-icon.widget-display-full .icon-content-wrapper {
    width: 100%;
    justify-content: flex-start;
}

/* Inline layout adjustments */
.yydev-add-icon.widget-display-inline {
    display: inline-block;
}

.yydev-add-icon .icon-link-wrapper,
.yydev-add-icon .icon-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: inherit;
}

/* Layout Directions */
.yydev-add-icon .icon-link-wrapper.layout-row,
.yydev-add-icon .icon-content-wrapper.layout-row {
    flex-direction: row;
}

.yydev-add-icon .icon-link-wrapper.layout-row-reverse,
.yydev-add-icon .icon-content-wrapper.layout-row-reverse {
    flex-direction: row-reverse;
}

.yydev-add-icon .icon-link-wrapper.layout-column,
.yydev-add-icon .icon-content-wrapper.layout-column {
    flex-direction: column;
}

.yydev-add-icon .icon-link-wrapper.layout-column-reverse,
.yydev-add-icon .icon-content-wrapper.layout-column-reverse {
    flex-direction: column-reverse;
}

.yydev-add-icon .icon-link-wrapper.layout-single,
.yydev-add-icon .icon-content-wrapper.layout-single {
    display: inline-flex;
}

.yydev-add-icon .elementor-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-style: solid;
    transition: all 0.3s;
    flex-shrink: 0;
}

.yydev-add-icon .elementor-icon i,
.yydev-add-icon .elementor-icon svg,
.yydev-add-icon .elementor-icon img {
    transition: transform 0.3s;
}

.yydev-add-icon.elementor-view-stacked .elementor-icon {
    background-color: #818a91;
    color: #fff;
}

.yydev-add-icon.elementor-view-framed .elementor-icon {
    color: #818a91;
    border-color: #818a91;
    background-color: transparent;
}

.yydev-add-icon.elementor-shape-square .elementor-icon {
    border-radius: 0;
}

.yydev-add-icon.elementor-shape-circle .elementor-icon {
    border-radius: 50%;
}

.yydev-add-icon .icon-text-content {
    display: inline-block;
    flex-grow: 1;
}

/* Link hover effects for entire section */
.yydev-add-icon .icon-link-wrapper {
    transition: all 0.3s ease;
}

.yydev-add-icon .icon-link-wrapper:hover {
    text-decoration: none;
}

/* Remove default margin from icon spacing when no text */
.yydev-add-icon .layout-single .elementor-icon {
    margin: 0 !important;
}

/* Responsive text adjustments */
@media (max-width: 767px) {
    .yydev-add-icon .icon-text-content {
        white-space: normal;
    }
}

/* ======== Forced 100% Layout Style ======== */

.yydev-add-icon.elementor-icon-wrapper:has(.yydev-forced-full),
.yydev-add-icon.elementor-icon-wrapper:has(.yydev-forced-full-img) {
    display: block !important;
    width: 100% !important;
}

.yydev-add-icon .icon-link-wrapper:has(.yydev-forced-full),
.yydev-add-icon .icon-content-wrapper:has(.yydev-forced-full),
.yydev-add-icon .icon-link-wrapper:has(.yydev-forced-full-img),
.yydev-add-icon .icon-content-wrapper:has(.yydev-forced-full-img) {
    display: block !important;
    width: 100% !important;
}

.yydev-add-icon .elementor-icon:has(.yydev-forced-full),
.yydev-add-icon .yydev-forced-full,
.yydev-add-icon .yydev-forced-full svg,
.yydev-add-icon img.yydev-forced-full-img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}