.limo-blob {
    border-radius: var(--br1, 60%) var(--br2, 40%) var(--br3, 30%) var(--br4, 70%);
    filter: drop-shadow(
        var(--shadow-x, 0px)
        var(--shadow-y, 10px)
        var(--shadow-blur, 30px)
        var(--shadow-color, transparent)
    );
}

.limo-blob[data-blob-type="gradient"][data-blob-preset="preset_1"] {
    background: linear-gradient(45deg, #ff6b6b, #feca57);
}

.limo-blob[data-blob-type="gradient"][data-blob-preset="preset_2"] {
    background: linear-gradient(135deg, #667eea, #764ba2);
}

.limo-blob[data-blob-type="gradient"][data-blob-preset="preset_3"] {
    background: linear-gradient(45deg, #22d3ee, #3b82f6);
}

.limo-blob[data-blob-type="gradient"][data-blob-preset="preset_4"] {
    background: linear-gradient(135deg, #ec4899, #a855f7);
}

.limo-blob[data-blob-type="gradient"][data-blob-preset="preset_5"] {
    background: linear-gradient(45deg, #fbbf24, #f59e0b);
}

.limo-blob.animating {
    animation: limoBlobMorph var(--anim-speed, 8s) linear infinite alternate;
}

.limo-blob.animate-on-hover {
    animation: limoBlobMorph var(--anim-speed, 8s) linear infinite alternate;
}

.limo-blob.animate-on-hover:hover {
    animation-play-state: running;
}


@keyframes limoBlobMorph {
    0% {
        border-radius: var(--br1, 60%) var(--br2, 40%) var(--br3, 30%) var(--br4, 70%);
    }
    25% {
        border-radius: var(--br2, 40%) var(--br3, 30%) var(--br4, 70%) var(--br5, 60%);
    }
    50% {
        border-radius: var(--br3, 30%) var(--br4, 70%) var(--br5, 60%) var(--br1, 60%);
    }
    75% {
        border-radius: var(--br4, 70%) var(--br5, 60%) var(--br1, 60%) var(--br2, 40%);
    }
    100% {
        border-radius: var(--br5, 60%) var(--br1, 60%) var(--br2, 40%) var(--br3, 30%);
    }
}



/* ====================================
   Limo Short Utility v3.0 – تمام کلاس‌ها با نقطه
   ==================================== */

/* ==================== Reset & Base ==================== */
.r_   { list-style: none; padding: 0; margin: 0 }
.r_ li { list-style: none; margin: 0; padding: 0 }
.lk_  { text-decoration: none; color: inherit; transition: all .3s }
.cl_  { content: ''; display: table; clear: both }
.hb_  { margin: 0; padding: 0; font-weight: inherit; line-height: 1.3 }

/* ==================== Flex ==================== */
.f_   { display: flex }
.dif  { display: inline-flex }
.fr_  { flex-direction: row }
.fc_  { flex-direction: column }
.fw_  { flex-wrap: wrap }
.fn_  { flex-wrap: nowrap }
.cc_  { align-items: center; justify-content: center }
.bb_  { align-items: center; justify-content: space-between }
.aa_  { align-items: center; justify-content: space-around }
.ss_  { align-items: center; justify-content: flex-start }
.ee_  { align-items: center; justify-content: flex-end }
.st_  { align-items: stretch }
.gp1_ { gap: 8px }
.gp2_ { gap: 12px }
.gp3_ { gap: 16px }
.gp4_ { gap: 24px }

/* ==================== Grid ==================== */
.gr_  { display: grid; gap: 16px }
.gr2_ { grid-template-columns: repeat(2, 1fr) }
.gr3_ { grid-template-columns: repeat(3, 1fr) }
.gra_ { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) }

/* ==================== Text & Align ==================== */
.tl_  { text-align: left }
.tc_  { text-align: center }
.tr_  { text-align: right }
.tj_  { text-align: justify }
.vt_  { vertical-align: top }
.vm_  { vertical-align: middle }
.vb_  { vertical-align: bottom }
.as_  { align-self: flex-start }
.ac_  { align-self: center }
.ae_  { align-self: flex-end }
.ax_  { align-self: stretch }

/* ==================== Spacing ==================== */
.z_   { margin: 0; padding: 0 }
.m0_  { margin: 0 }
.p0_  { padding: 0 }
.m1_  { margin: 8px }
.m2_  { margin: 12px }
.m3_  { margin: 16px }
.m4_  { margin: 24px }
.p1_  { padding: 8px }
.p2_  { padding: 12px }
.p3_  { padding: 16px }
.p4_  { padding: 24px }
.mt1_ { margin-top: 8px }
.mt2_ { margin-top: 16px }
.mt3_ { margin-top: 24px }
.mt4_ { margin-top: 32px }
.mb1_ { margin-bottom: 8px }
.mb2_ { margin-bottom: 16px }
.mb3_ { margin-bottom: 24px }
.mb4_ { margin-bottom: 32px }
.ml1_ { margin-left: 8px }
.ml2_ { margin-left: 16px }
.ml3_ { margin-left: 24px }
.mr1_ { margin-right: 8px }
.mr2_ { margin-right: 16px }
.mr3_ { margin-right: 24px }

/* ==================== Display & Sizing ==================== */
.db_  { display: block }
.dib_ { display: inline-block }
.di_  { display: inline }
.dn_  { display: none }
.dv_  { display: var(--d, flex) }
.dfa  { flex: 0 0 auto }
.w_   { width: 100% }
.h_   { height: 100% }
.mw_  { max-width: 100% }
.mh_  { max-height: 100% }
.mnh_ { min-height: 1.4em }
.a_   { width: auto; height: auto }
.wih_ {width: inherit;}
.wfc_ {width: fit-content;}

/* ==================== Overflow & Scroll ==================== */
.oh_  { overflow: hidden }
.ov_  { overflow: visible }
.oa_  { overflow: auto }
.os_  { overflow: scroll }
.sm_  { scroll-behavior: smooth }

/* ==================== Cursor ==================== */
.pt_  { cursor: pointer }
.wa_  { cursor: wait }
.no_  { cursor: not-allowed }

/* ==================== Image ==================== */
.im_  { max-width: 100%; height: auto; display: block; object-fit: cover }
.imc_ { object-fit: contain }

/* ==================== Shadow ==================== */
.sh0_ { box-shadow: none }
.sh1_ { box-shadow: 0 2px 8px rgba(0,0,0,.08) }
.sh2_ { box-shadow: 0 4px 16px rgba(0,0,0,.1) }
.sh3_ { box-shadow: 0 8px 24px rgba(0,0,0,.12) }
.sh4_ { box-shadow: 0 12px 32px rgba(0,0,0,.15) }

/* ==================== Radius ==================== */
.r4_  { border-radius: 4px }
.r8_  { border-radius: 8px }
.r12_ { border-radius: 12px }
.r16_ { border-radius: 16px }
.r24_ { border-radius: 24px }
.r50_ { border-radius: 50% }

/* ==================== Typography ==================== */
.b_   { font-weight: 700 }
.nr_  { font-weight: 400 }
.tsm_ { font-size: 0.875rem }
.tmd_ { font-size: 1rem }
.tlg_ { font-size: 1.125rem }
.txl_ { font-size: 1.25rem }
.t2x_ { font-size: 1.5rem }
.t3x_ { font-size: 1.6rem }
.lh1_ { line-height: 1 }
.lh13_{ line-height: 1.3 }
.lh15_{ line-height: 1.5 }
.lh16_{ line-height: 1.6 }
.ts1_ { text-shadow: 0 1px 3px rgba(0,0,0,.18) }
.ts2_ { text-shadow: 0 3px 15px rgba(0,0,0,.4) }
.ts3_ { text-shadow: 0 6px 24px rgba(0,0,0,.45) }
.tsn_ { text-shadow: none }

/* ==================== Transition & Transform ==================== */
.td_  { transition: all 0.3s ease }
.trf_ { transition: all 0.15s ease }
.trs_ { transition: all 0.5s ease }
.li_  { transform: translateY(-8px) }
.scl_ { transform: scale(1.05) }

/* ==================== Background ==================== */
.b0_  { background: transparent }
.b1_  { background: #fff }
.b2_  { background: #f8f9fa }
.bn_  { background-repeat: no-repeat }
.br_  { background-repeat: repeat }
.bx_  { background-repeat: repeat-x }
.by_  { background-repeat: repeat-y }
.bk_  { background-size: contain }
.cv_  { background-size: cover }
.ba_  { background-size: auto }
.ct_  { background-position: center }
.tp_  { background-position: top }
.bt_  { background-position: bottom }
.lt_  { background-position: left }
.rt_  { background-position: right }
.fx_  { background-attachment: fixed }
.sc_  { background-attachment: scroll }

/* ==================== Misc ==================== */
.fnn_ { filter: none }
.anp_ { animation-play-state: running }
.ans_ { animation-play-state: paused }
.zi2_  { z-index: 2 }
.zi10_ { z-index: 10 }
.zi100_{ z-index: 100 }
.psr_  { position: relative }
.psa_  { position: absolute }
.cff   { color: #fff }
.c00   { color: #000 }
.wsn   { white-space: nowrap }
.op0   { opacity: 0 }
.op1   { opacity: 1 }
.iis   { inset-inline-start: 0 }
.tp50  { top: 50% }
.try   { transform: translateY(-50%) }
.aic_  { align-items: center }
.mnh45_{ min-height: 45px }
.peau { pointer-events: auto; }
.peni { pointer-events: none; }
.zi1  { z-index: 1; }

  /* --- ویجت تپایان Limo Short Utility v--- */



  /* --- ویجت تیتر پیشرفته--- */
.limo-heading-item::before,
.limo-heading-item i,
.limo-heading-item svg {
    transition: all 0.3s ease;
}
.limo-heading-item::before {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    text-align: center;
}

  /* --- ویجت تیتر انیمیشنی--- */
.limo-slider {
    --limo-glow-color: #38bdf8;
    --limo-cursor-color: #38bdf8;
    --limo-duration: 600ms;
    --limo-blur-amount: 12px;
    --limo-fixed-before-gap: 8px;
    --limo-fixed-after-gap: 8px;}
.limo-slider-fixed-before { margin-inline-end: var(--limo-fixed-before-gap) }
.limo-slider-fixed-after  { margin-inline-start: var(--limo-fixed-after-gap) }
.limo-slider-internal .slider-text {  transition:
        opacity var(--limo-duration) ease,
        transform var(--limo-duration) ease,
        filter var(--limo-duration) ease,
        clip-path var(--limo-duration) ease;
    will-change: transform, opacity, filter, clip-path}

.limo-slider-internal .slider-text.active { opacity: 1 }










/* =========================================================
   LIMO GLOBAL TOOLTIP
========================================================= */

/* ===== پایه ===== */

.has-limo-gtooltip {
    position: relative;
}

/* جلوگیری از وسط افتادن اشتباه روی ویجت‌های متنی */
.elementor-widget-heading .has-limo-gtooltip,
.elementor-widget-text-editor .has-limo-gtooltip,
.elementor-widget-button .has-limo-gtooltip,
.elementor-icon-list-text.has-limo-gtooltip {
    width: fit-content;
    display: inline-block;
}

/* ===== Tooltip ===== */

.has-limo-gtooltip::after {
    content: attr(data-tooltip);

    position: absolute;
    z-index: 99999;

    background: #222;
    color: #fff;

    padding: 10px 14px;
    border-radius: 6px;

    font-size: 13.5px;
    line-height: 1.6;
    text-align: center;

    white-space: nowrap;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.25);

    transition:
        opacity .35s cubic-bezier(0.23,1,0.32,1),
        transform .35s cubic-bezier(0.23,1,0.32,1),
        filter .3s ease;

    will-change: transform, opacity;
}

/* ===== Arrow ===== */

.has-limo-gtooltip::before {
    content: '';

    position: absolute;
    z-index: 99998;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    border-style: solid;

    transition:
        opacity .35s cubic-bezier(0.23,1,0.32,1),
        transform .35s cubic-bezier(0.23,1,0.32,1);
}

/* ===== Hover ===== */

.has-limo-gtooltip:hover::after,
.has-limo-gtooltip:hover::before {
    opacity: 1;
    visibility: visible;
}

/* =========================================================
   POSITION : TOP
========================================================= */

[data-tooltip-pos="top"]::after {
    bottom: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%);
}

[data-tooltip-pos="top"]::before {
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);

    border-width: 8px 8px 0 8px;
    border-color: #222 transparent transparent transparent;
}

/* =========================================================
   POSITION : BOTTOM
========================================================= */

[data-tooltip-pos="bottom"]::after {
    top: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%);
}

[data-tooltip-pos="bottom"]::before {
    top: 100%;
    left: 50%;
    transform: translateX(-50%);

    border-width: 0 8px 8px 8px;
    border-color: transparent transparent #222 transparent;
}

/* =========================================================
   POSITION : LEFT
========================================================= */

[data-tooltip-pos="left"]::after {
    right: calc(100% + 12px);
    top: 50%;
    transform: translateY(-50%);
}

[data-tooltip-pos="left"]::before {
    right: 100%;
    top: 50%;
    transform: translateY(-50%);

    border-width: 8px 0 8px 8px;
    border-color: transparent transparent transparent #222;
}

/* =========================================================
   POSITION : RIGHT
========================================================= */

[data-tooltip-pos="right"]::after {
    left: calc(100% + 12px);
    top: 50%;
    transform: translateY(-50%);
}

[data-tooltip-pos="right"]::before {
    left: 100%;
    top: 50%;
    transform: translateY(-50%);

    border-width: 8px 8px 8px 0;
    border-color: transparent #222 transparent transparent;
}

/* =========================================================
   ANIMATION : SCALE
========================================================= */

/* TOP */

[data-tooltip-anim="fade-scale"][data-tooltip-pos="top"]::after {
    transform: translateX(-50%) scale(.6);
}

[data-tooltip-anim="fade-scale"][data-tooltip-pos="top"]:hover::after {
    transform: translateX(-50%) scale(1);
}

/* BOTTOM */

[data-tooltip-anim="fade-scale"][data-tooltip-pos="bottom"]::after {
    transform: translateX(-50%) scale(.6);
}

[data-tooltip-anim="fade-scale"][data-tooltip-pos="bottom"]:hover::after {
    transform: translateX(-50%) scale(1);
}

/* LEFT */

[data-tooltip-anim="fade-scale"][data-tooltip-pos="left"]::after {
    transform: translateY(-50%) scale(.6);
}

[data-tooltip-anim="fade-scale"][data-tooltip-pos="left"]:hover::after {
    transform: translateY(-50%) scale(1);
}

/* RIGHT */

[data-tooltip-anim="fade-scale"][data-tooltip-pos="right"]::after {
    transform: translateY(-50%) scale(.6);
}

[data-tooltip-anim="fade-scale"][data-tooltip-pos="right"]:hover::after {
    transform: translateY(-50%) scale(1);
}

/* =========================================================
   ANIMATION : BLUR
========================================================= */

[data-tooltip-anim="fade-blur"]::after {
    filter: blur(8px);
}

[data-tooltip-anim="fade-blur"]:hover::after {
    filter: blur(0);
}

/* =========================================================
   MULTILINE SUPPORT
========================================================= */

.has-limo-gtooltip.tooltip-multiline::after {
    white-space: normal;
    min-width: 180px;
    max-width: 320px;
}

/* =========================================================
   MOBILE FIX
========================================================= */

@media (max-width: 767px) {

    .has-limo-gtooltip::after {
        font-size: 12px;
        padding: 8px 12px;
        max-width: 240px;
        white-space: normal;
    }

}