.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-580 .elementor-element.elementor-element-f3a619d{background-color:var( --e-global-color-accent );margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 5px 0px 05px;border-radius:10px 10px 10px 10px;text-align:center;}.elementor-580 .elementor-element.elementor-element-f3a619d.elementor-element{--align-self:center;}.elementor-580 .elementor-element.elementor-element-f3a619d .elementor-heading-title{font-family:"morabba";font-size:20px;color:var( --e-global-color-primary );}.elementor-580 .elementor-element.elementor-element-40103f5{text-align:center;}.elementor-580 .elementor-element.elementor-element-40103f5 .elementor-heading-title{font-family:"morabba";font-size:30px;color:var( --e-global-color-secondary );}.elementor-580 .elementor-element.elementor-element-628e681{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;text-align:center;}.elementor-580 .elementor-element.elementor-element-628e681.elementor-element{--align-self:center;}.elementor-580 .elementor-element.elementor-element-628e681 .elementor-heading-title{font-family:"danafn";font-size:18px;font-weight:normal;line-height:24px;color:#6B6B6B;}.elementor-580 .elementor-element.elementor-element-936d0dc{--display:flex;}.elementor-580 .elementor-element.elementor-element-a01cffe{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-580 .elementor-element.elementor-element-a9e407f{--display:flex;}.elementor-580 .elementor-element.elementor-element-a9e407f.e-con{--align-self:center;}@media(min-width:768px){.elementor-580 .elementor-element.elementor-element-a9e407f{--width:95%;}}@media(max-width:767px){.elementor-580 .elementor-element.elementor-element-f3a619d{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-580 .elementor-element.elementor-element-f3a619d .elementor-heading-title{font-size:18px;}.elementor-580 .elementor-element.elementor-element-40103f5{width:var( --container-widget-width, 100% );max-width:100%;margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-580 .elementor-element.elementor-element-40103f5.elementor-element{--align-self:center;}.elementor-580 .elementor-element.elementor-element-40103f5 .elementor-heading-title{font-size:22px;line-height:1.3em;}.elementor-580 .elementor-element.elementor-element-628e681{width:var( --container-widget-width, 100% );max-width:100%;margin:3px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-580 .elementor-element.elementor-element-628e681.elementor-element{--align-self:center;}.elementor-580 .elementor-element.elementor-element-628e681 .elementor-heading-title{font-size:16px;line-height:1.4em;}.elementor-580 .elementor-element.elementor-element-936d0dc{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-580 .elementor-element.elementor-element-a01cffe{margin:40px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-580 .elementor-element.elementor-element-a9e407f{--margin-top:-40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-a01cffe *//*==================================
ZOOMA FILTER V4
==================================*/

.zooma-filter-wrap{

display:flex;
justify-content:center;
align-items:center;
gap:10px;
flex-wrap:wrap;

margin:0 auto 55px;

}

/*==============================
BUTTON
==============================*/

.zooma-filter-item{

font-family:"Morabba",sans-serif !important;

font-size:17px !important;

font-weight:600 !important;

line-height:1.2;

padding:10px 18px;

border-radius:999px;

background:#ffffff !important;

color:#162033 !important;

border:2px solid #162033 !important;

cursor:pointer;

outline:none;

white-space:nowrap;

transition:all .35s cubic-bezier(.22,1,.36,1);

box-shadow:0 6px 18px rgba(15,23,42,.05);

position:relative;

overflow:hidden;

}

/*==============================
HOVER
==============================*/

.zooma-filter-item:hover{

background:#ffffff !important;

color:#2A5CFF !important;

border-color:#2A5CFF !important;

transform:translateY(-3px);

box-shadow:
0 14px 28px rgba(42,92,255,.15);

}

/*==============================
ACTIVE
==============================*/

.zooma-filter-item.active{

background:linear-gradient(
135deg,
#2A5CFF,
#5B8DFF
) !important;

color:#ffffff !important;

border-color:#2A5CFF !important;

box-shadow:
0 16px 32px rgba(42,92,255,.22);

}

/*==============================
SHINE
==============================*/

.zooma-filter-item::after{

content:"";

position:absolute;

top:0;
left:-120%;

width:55%;
height:100%;

background:linear-gradient(
120deg,
transparent,
rgba(255,255,255,.45),
transparent);

transform:skewX(-25deg);

pointer-events:none;

}

.zooma-filter-item:hover::after{

animation:zoomaFilterShine .8s;

}

@keyframes zoomaFilterShine{

100%{

left:180%;

}

}

/*==============================
TABLET
==============================*/

@media(max-width:1024px){

.zooma-filter-wrap{

gap:8px;

}

.zooma-filter-item{

font-size:16px !important;

padding:9px 16px;

}

}

/*==============================
MOBILE
==============================*/

@media(max-width:767px){

.zooma-filter-wrap{

justify-content:flex-start;

flex-wrap:nowrap;

overflow-x:auto;

padding-bottom:10px;

scrollbar-width:none;

-webkit-overflow-scrolling:touch;

}

.zooma-filter-wrap::-webkit-scrollbar{

display:none;

}

.zooma-filter-item{

flex:0 0 auto;

font-size:15px !important;

padding:9px 16px;

}

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2c76623 *//*======================================
ZOOMA PORTFOLIO GRID
======================================*/

.zooma-portfolio-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:42px;

margin:0 auto;

width:100%;

}

/* Tablet */

@media(max-width:1024px){

.zooma-portfolio-grid{

grid-template-columns:repeat(2,1fr);

gap:30px;

}

}

/* Mobile */

@media(max-width:767px){

.zooma-portfolio-grid{

grid-template-columns:1fr;

gap:26px;

}

}

/*======================================
CARD
======================================*/

.zooma-portfolio-card{

display:flex;

flex-direction:column;

text-decoration:none;

gap:18px;

transition:.45s cubic-bezier(.22,1,.36,1);

position:relative;

}

/* روی کل کارت موس بره */

.zooma-portfolio-card:hover{

transform:translateY(-10px);

}
/*======================================
IMAGE WRAPPER
======================================*/

.zooma-portfolio-thumb{

position:relative;

overflow:hidden;

border-radius:34px;

background:#F8FAFC;

border:2px solid transparent;

transition:
all .45s cubic-bezier(.22,1,.36,1);

}

/* تصویر */

.zooma-portfolio-thumb img{

display:block;

width:100%;

height:300px;

object-fit:cover;

transition:
transform .9s cubic-bezier(.22,1,.36,1);

}

/*======================================
OVERLAY
======================================*/

.zooma-overlay{

position:absolute;

inset:0;

display:flex;

align-items:center;

justify-content:center;

background:

linear-gradient(

180deg,

rgba(42,92,255,.05),

rgba(42,92,255,.20)

);

opacity:0;

transition:.45s;

backdrop-filter:blur(1px);

}

/*======================================
BUTTON
======================================*/

.zooma-view{

font-family:"Morabba",sans-serif !important;

font-size:20px;

padding:12px 26px;

border-radius:999px;

background:#ffffff;

color:#2A5CFF;

font-weight:700;

transform:translateY(20px);

transition:.45s;

box-shadow:

0 10px 35px rgba(0,0,0,.12);

}

/*======================================
SHINE EFFECT
======================================*/

.zooma-portfolio-thumb::before{

content:"";

position:absolute;

top:0;

left:-130%;

width:45%;

height:100%;

background:

linear-gradient(

120deg,

transparent,

rgba(255,255,255,.65),

transparent);

transform:skewX(-25deg);

z-index:3;

pointer-events:none;

}

/*======================================
HOVER
======================================*/

.zooma-portfolio-card:hover .zooma-portfolio-thumb{

border-color:#2A5CFF;

box-shadow:

0 24px 70px rgba(42,92,255,.18);

}

.zooma-portfolio-card:hover .zooma-portfolio-thumb img{

transform:scale(1.08);

}

.zooma-portfolio-card:hover .zooma-overlay{

opacity:1;

}

.zooma-portfolio-card:hover .zooma-view{

transform:translateY(0);

}

.zooma-portfolio-card:hover .zooma-portfolio-thumb::before{

animation:zoomaShine 1s forwards;

}

@keyframes zoomaShine{

100%{

left:180%;

}

}

/*======================================
MOBILE
======================================*/

@media(max-width:767px){

.zooma-portfolio-thumb{

border-radius:28px;

}

.zooma-portfolio-thumb img{

height:240px;

}

}
/*======================================
CONTENT
======================================*/

.zooma-content{

display:flex;

flex-direction:column;

gap:10px;

padding:0 6px;

}

/*======================================
TITLE
======================================*/

.zooma-title{

font-family:"Morabba",sans-serif !important;

font-size:28px;

font-weight:700;

line-height:1.5;

color:#162033;

margin:0;

transition:.35s;

position:relative;

display:inline-block;

}

/* خط زیر عنوان */

.zooma-title::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:3px;

background:#2A5CFF;

border-radius:50px;

transition:.45s cubic-bezier(.22,1,.36,1);

}

/*======================================
EXCERPT
======================================*/

.zooma-excerpt{

font-family:"Morabba",sans-serif !important;

font-size:18px;

font-weight:400;

line-height:2;

color:#6B7280;

margin:0;

display:-webkit-box;

-webkit-line-clamp:2;

-webkit-box-orient:vertical;

overflow:hidden;

transition:.35s;

}

/*======================================
HOVER
======================================*/

.zooma-portfolio-card:hover .zooma-title{

color:#2A5CFF;

transform:translateX(6px);

}

.zooma-portfolio-card:hover .zooma-title::after{

width:70%;

}

.zooma-portfolio-card:hover .zooma-excerpt{

color:#475569;

}

/*======================================
RESPONSIVE
======================================*/

@media(max-width:767px){

.zooma-title{

font-size:24px;

}

.zooma-excerpt{

font-size:16px;

}

}
/*=========================================
AURORA LIGHT
=========================================*/

.zooma-portfolio-card{

position:relative;

isolation:isolate;

overflow:visible;

}

/* نور پشت کارت */

.zooma-portfolio-card::before{

content:"";

position:absolute;

inset:-18px;

border-radius:44px;

background:

radial-gradient(

circle at 50% 50%,

rgba(42,92,255,.28),

transparent 70%

);

opacity:0;

transform:scale(.82);

filter:blur(35px);

transition:

opacity .45s,

transform .55s;

z-index:-1;

pointer-events:none;

}

/*=========================================
FLOAT
=========================================*/

.zooma-portfolio-card:hover{

transform:

translateY(-14px)

rotateX(2deg)

scale(1.01);

}

/*=========================================
LIGHT ON HOVER
=========================================*/

.zooma-portfolio-card:hover::before{

opacity:1;

transform:scale(1);

animation:

zoomaGlow 3s linear infinite;

}

/*=========================================
Animation
=========================================*/

@keyframes zoomaGlow{

0%{

background-position:0% 50%;

}

50%{

background-position:100% 50%;

}

100%{

background-position:0% 50%;

}

}

/*=========================================
Shadow
=========================================*/

.zooma-portfolio-card:hover{

filter:

drop-shadow(0 28px 55px rgba(42,92,255,.18));

}
/*==========================================
3D CARD
==========================================*/

.zooma-portfolio-card{

transform-style:preserve-3d;

perspective:1400px;

will-change:transform;

transition:

transform .18s linear,

filter .35s;

}

.zooma-portfolio-thumb{

transform:translateZ(0);

transition:.25s;

}

.zooma-content{

transform:translateZ(40px);

transition:.25s;

}

.zooma-portfolio-card:hover .zooma-content{

transform:translateZ(55px);

}

.zooma-portfolio-card:hover .zooma-portfolio-thumb{

transform:translateZ(20px);

}
/*=========================================
ZOOMA V1 FINAL PREMIUM
=========================================*/

/* کارت */

.zooma-portfolio-card{

border-radius:40px;

overflow:visible;

position:relative;

}

/* Noise Texture */

.zooma-portfolio-card::after{

content:"";

position:absolute;

inset:0;

border-radius:40px;

pointer-events:none;

opacity:.025;

mix-blend-mode:soft-light;

background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");

}

/*=========================================
LIQUID BORDER
=========================================*/

.zooma-portfolio-thumb{

position:relative;

}

.zooma-portfolio-thumb::after{

content:"";

position:absolute;

inset:-2px;

border-radius:34px;

padding:2px;

background:

linear-gradient(

135deg,

#2A5CFF,

#4A8CFF,

#8FB8FF,

#2A5CFF);

background-size:300% 300%;

opacity:0;

transition:.45s;

animation:LiquidBorder 6s linear infinite;

-webkit-mask:

linear-gradient(#fff 0 0) content-box,

linear-gradient(#fff 0 0);

-webkit-mask-composite:xor;

mask-composite:exclude;

pointer-events:none;

}

.zooma-portfolio-card:hover .zooma-portfolio-thumb::after{

opacity:1;

}

@keyframes LiquidBorder{

0%{

background-position:0% 50%;

}

50%{

background-position:100% 50%;

}

100%{

background-position:0% 50%;

}

}

/*=========================================
GLASS BUTTON
=========================================*/

.zooma-view{

backdrop-filter:blur(18px);

background:rgba(255,255,255,.92);

border:1px solid rgba(255,255,255,.5);

box-shadow:

0 12px 35px rgba(0,0,0,.10);

}

/*=========================================
EXTRA GLOW
=========================================*/

.zooma-portfolio-card:hover{

filter:

drop-shadow(0 18px 60px rgba(42,92,255,.15));

}

/*=========================================
SMOOTH
=========================================*/

*{

-webkit-font-smoothing:antialiased;

-moz-osx-font-smoothing:grayscale;

}
/*=========================================
ZOOMA SPOTLIGHT
=========================================*/

.zooma-portfolio-card{

position:relative;

overflow:hidden;

cursor:pointer;

}

.zooma-portfolio-card::before{

content:"";

position:absolute;

width:280px;

height:280px;

border-radius:50%;

background:

radial-gradient(circle,

rgba(42,92,255,.22),

rgba(42,92,255,.10),

transparent 75%);

pointer-events:none;

opacity:0;

transform:translate(-50%,-50%);

transition:

opacity .35s;

z-index:2;

filter:blur(10px);

}

.zooma-portfolio-card:hover::before{

opacity:1;

}
.zooma-portfolio-card::before{

left:var(--spotLeft);

top:var(--spotTop);

}
/* Placeholder */

.zooma-no-image{

width:100%;

height:300px;

border-radius:34px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(
135deg,
#EEF4FF,
#F8FAFF
);

color:#2A5CFF;

font-family:"Morabba",sans-serif !important;

font-size:30px;

font-weight:700;

letter-spacing:1px;

}

/* ارتفاع ثابت */

.zooma-portfolio-thumb{

height:300px;

}

.zooma-portfolio-thumb img{

width:100%;

height:100%;

object-fit:cover;

}
.zooma-no-image{

width:100%;

height:100%;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#EEF4FF,#F8FAFC);

border-radius:34px;

}

.zooma-no-image-content{

display:flex;

flex-direction:column;

align-items:center;

gap:10px;

}

.zooma-no-image-logo{

font-family:"Morabba",sans-serif !important;

font-size:34px;

font-weight:700;

color:#2A5CFF;

}

.zooma-no-image small{

font-family:"Morabba",sans-serif !important;

font-size:18px;

color:#94A3B8;

}
/*==========================
Center Content
==========================*/

.zooma-content{

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

text-align:center;

gap:12px;

padding:8px 12px 0;

}

.zooma-title{

width:100%;

text-align:center;

margin:0 auto;

font-family:"Morabba",sans-serif !important;

}

.zooma-title::after{

left:50% !important;

transform:translateX(-50%);

}

.zooma-portfolio-card:hover .zooma-title::after{

width:90px;

}

.zooma-excerpt{

width:100%;

text-align:center;

margin:0 auto;

font-family:"Morabba",sans-serif !important;

line-height:2;

max-width:90%;

}
.zooma-portfolio-grid{
    transition: opacity .25s ease;
}

.zooma-portfolio-grid.loading{
    pointer-events: none;
    filter: blur(1px);
    opacity: .35;
}
/*==========================
PORTFOLIO SKELETON
==========================*/

.zooma-portfolio-grid.loading{

opacity:1!important;

filter:none!important;

pointer-events:none;

}

.zooma-skeleton{

border-radius:32px;

overflow:hidden;

background:#fff;

display:flex;

flex-direction:column;

gap:18px;

}

.zooma-skeleton-thumb{

height:260px;

border-radius:28px;

background:linear-gradient(
90deg,
#edf2f7 25%,
#f8fafc 50%,
#edf2f7 75%
);

background-size:400% 100%;

animation:zoomaSkeleton 1.2s infinite;

}

.zooma-skeleton-title{

height:22px;

width:70%;

margin:auto;

border-radius:100px;

background:linear-gradient(
90deg,
#edf2f7 25%,
#f8fafc 50%,
#edf2f7 75%
);

background-size:400% 100%;

animation:zoomaSkeleton 1.2s infinite;

}

.zooma-skeleton-text{

height:15px;

width:88%;

margin:auto;

border-radius:100px;

background:linear-gradient(
90deg,
#edf2f7 25%,
#f8fafc 50%,
#edf2f7 75%
);

background-size:400% 100%;

animation:zoomaSkeleton 1.2s infinite;

}

.zooma-skeleton-text:last-child{

width:60%;

}

@keyframes zoomaSkeleton{

0%{

background-position:100% 0;

}

100%{

background-position:-100% 0;

}

}/* End custom CSS */