PNG  IHDRQgAMA a cHRMz&u0`:pQ<bKGDgmIDATxwUﹻ& ^CX(J I@ "% (** BX +*i"]j(IH{~R)[~>h{}gy)I$Ij .I$I$ʊy@}x.: $I$Ii}VZPC)I$IF ^0ʐJ$I$Q^}{"r=OzI$gRZeC.IOvH eKX $IMpxsk.쒷/&r[޳<v| .I~)@$updYRa$I |M.e JaֶpSYR6j>h%IRز if&uJ)M$I vLi=H;7UJ,],X$I1AҒJ$ XY XzI@GNҥRT)E@;]K*Mw;#5_wOn~\ DC&$(A5 RRFkvIR}l!RytRl;~^ǷJj اy뷦BZJr&ӥ8Pjw~vnv X^(I;4R=P[3]J,]ȏ~:3?[ a&e)`e*P[4]T=Cq6R[ ~ޤrXR Հg(t_HZ-Hg M$ãmL5R uk*`%C-E6/%[t X.{8P9Z.vkXŐKjgKZHg(aK9ڦmKjѺm_ \#$5,)-  61eJ,5m| r'= &ڡd%-]J on Xm|{ RҞe $eڧY XYrԮ-a7RK6h>n$5AVڴi*ֆK)mѦtmr1p| q:흺,)Oi*ֺK)ܬ֦K-5r3>0ԔHjJئEZj,%re~/z%jVMڸmrt)3]J,T K֦OvԒgii*bKiNO~%PW0=dii2tJ9Jݕ{7"I P9JKTbu,%r"6RKU}Ij2HKZXJ,妝 XYrP ެ24c%i^IK|.H,%rb:XRl1X4Pe/`x&P8Pj28Mzsx2r\zRPz4J}yP[g=L) .Q[6RjWgp FIH*-`IMRaK9TXcq*I y[jE>cw%gLRԕiFCj-ďa`#e~I j,%r,)?[gp FI˨mnWX#>mʔ XA DZf9,nKҲzIZXJ,L#kiPz4JZF,I,`61%2s $,VOϚ2/UFJfy7K> X+6 STXIeJILzMfKm LRaK9%|4p9LwJI!`NsiazĔ)%- XMq>pk$-$Q2x#N ؎-QR}ᶦHZډ)J,l#i@yn3LN`;nڔ XuX5pF)m|^0(>BHF9(cզEerJI rg7 4I@z0\JIi䵙RR0s;$s6eJ,`n 䂦0a)S)A 1eJ,堌#635RIgpNHuTH_SԕqVe ` &S)>p;S$魁eKIuX`I4춒o}`m$1":PI<[v9^\pTJjriRŭ P{#{R2,`)e-`mgj~1ϣLKam7&U\j/3mJ,`F;M'䱀 .KR#)yhTq;pcK9(q!w?uRR,n.yw*UXj#\]ɱ(qv2=RqfB#iJmmL<]Y͙#$5 uTU7ӦXR+q,`I}qL'`6Kͷ6r,]0S$- [RKR3oiRE|nӦXR.(i:LDLTJjY%o:)6rxzҒqTJjh㞦I.$YR.ʼnGZ\ֿf:%55 I˼!6dKxm4E"mG_ s? .e*?LRfK9%q#uh$)i3ULRfK9yxm܌bj84$i1U^@Wbm4uJ,ҪA>_Ij?1v32[gLRD96oTaR׿N7%L2 NT,`)7&ƝL*꽙yp_$M2#AS,`)7$rkTA29_Iye"|/0t)$n XT2`YJ;6Jx".e<`$) PI$5V4]29SRI>~=@j]lp2`K9Jaai^" Ԋ29ORI%:XV5]JmN9]H;1UC39NI%Xe78t)a;Oi Ҙ>Xt"~G>_mn:%|~ޅ_+]$o)@ǀ{hgN;IK6G&rp)T2i୦KJuv*T=TOSV>(~D>dm,I*Ɛ:R#ۙNI%D>G.n$o;+#RR!.eU˽TRI28t)1LWϚ>IJa3oFbu&:tJ*(F7y0ZR ^p'Ii L24x| XRI%ۄ>S1]Jy[zL$adB7.eh4%%누>WETf+3IR:I3Xה)3אOۦSRO'ٺ)S}"qOr[B7ϙ.edG)^ETR"RtRݜh0}LFVӦDB^k_JDj\=LS(Iv─aTeZ%eUAM-0;~˃@i|l @S4y72>sX-vA}ϛBI!ݎߨWl*)3{'Y|iSlEڻ(5KtSI$Uv02,~ԩ~x;P4ցCrO%tyn425:KMlD ^4JRxSهF_}شJTS6uj+ﷸk$eZO%G*^V2u3EMj3k%)okI]dT)URKDS 7~m@TJR~荪fT"֛L \sM -0T KfJz+nإKr L&j()[E&I ߴ>e FW_kJR|!O:5/2跌3T-'|zX ryp0JS ~^F>-2< `*%ZFP)bSn"L :)+pʷf(pO3TMW$~>@~ū:TAIsV1}S2<%ޟM?@iT ,Eūoz%i~g|`wS(]oȤ8)$ ntu`өe`6yPl IzMI{ʣzʨ )IZ2= ld:5+請M$-ї;U>_gsY$ÁN5WzWfIZ)-yuXIfp~S*IZdt;t>KūKR|$#LcԀ+2\;kJ`]YǔM1B)UbG"IRߊ<xܾӔJ0Z='Y嵤 Leveg)$znV-º^3Ւof#0Tfk^Zs[*I꯳3{)ˬW4Ւ4 OdpbZRS|*I 55#"&-IvT&/윚Ye:i$ 9{LkuRe[I~_\ؠ%>GL$iY8 9ܕ"S`kS.IlC;Ҏ4x&>u_0JLr<J2(^$5L s=MgV ~,Iju> 7r2)^=G$1:3G< `J3~&IR% 6Tx/rIj3O< ʔ&#f_yXJiގNSz; Tx(i8%#4 ~AS+IjerIUrIj362v885+IjAhK__5X%nV%Iͳ-y|7XV2v4fzo_68"S/I-qbf; LkF)KSM$ Ms>K WNV}^`-큧32ŒVؙGdu,^^m%6~Nn&͓3ŒVZMsRpfEW%IwdǀLm[7W&bIRL@Q|)* i ImsIMmKmyV`i$G+R 0tV'!V)֏28vU7͒vHꦼtxꗞT ;S}7Mf+fIRHNZUkUx5SAJㄌ9MqμAIRi|j5)o*^'<$TwI1hEU^c_j?Е$%d`z cyf,XO IJnTgA UXRD }{H}^S,P5V2\Xx`pZ|Yk:$e ~ @nWL.j+ϝYb퇪bZ BVu)u/IJ_ 1[p.p60bC >|X91P:N\!5qUB}5a5ja `ubcVxYt1N0Zzl4]7­gKj]?4ϻ *[bg$)+À*x쳀ogO$~,5 زUS9 lq3+5mgw@np1sso Ӻ=|N6 /g(Wv7U;zωM=wk,0uTg_`_P`uz?2yI!b`kĸSo+Qx%!\οe|އԁKS-s6pu_(ֿ$i++T8=eY; צP+phxWQv*|p1. ά. XRkIQYP,drZ | B%wP|S5`~́@i޾ E;Չaw{o'Q?%iL{u D?N1BD!owPHReFZ* k_-~{E9b-~P`fE{AܶBJAFO wx6Rox5 K5=WwehS8 (JClJ~ p+Fi;ŗo+:bD#g(C"wA^ r.F8L;dzdIHUX݆ϞXg )IFqem%I4dj&ppT{'{HOx( Rk6^C٫O.)3:s(۳(Z?~ٻ89zmT"PLtw䥈5&b<8GZ-Y&K?e8,`I6e(֍xb83 `rzXj)F=l($Ij 2*(F?h(/9ik:I`m#p3MgLaKjc/U#n5S# m(^)=y=đx8ŬI[U]~SцA4p$-F i(R,7Cx;X=cI>{Km\ o(Tv2vx2qiiDJN,Ҏ!1f 5quBj1!8 rDFd(!WQl,gSkL1Bxg''՞^ǘ;pQ P(c_ IRujg(Wz bs#P­rz> k c&nB=q+ؔXn#r5)co*Ũ+G?7< |PQӣ'G`uOd>%Mctz# Ԫڞ&7CaQ~N'-P.W`Oedp03C!IZcIAMPUۀ5J<\u~+{9(FbbyAeBhOSܳ1 bÈT#ŠyDžs,`5}DC-`̞%r&ڙa87QWWp6e7 Rϫ/oY ꇅ Nܶըtc!LA T7V4Jsū I-0Pxz7QNF_iZgúWkG83 0eWr9 X]㾮݁#Jˢ C}0=3ݱtBi]_ &{{[/o[~ \q鯜00٩|cD3=4B_b RYb$óBRsf&lLX#M*C_L܄:gx)WΘsGSbuL rF$9';\4Ɍq'n[%p.Q`u hNb`eCQyQ|l_C>Lb꟟3hSb #xNxSs^ 88|Mz)}:](vbۢamŖ࿥ 0)Q7@0=?^k(*J}3ibkFn HjB׻NO z x}7p 0tfDX.lwgȔhԾŲ }6g E |LkLZteu+=q\Iv0쮑)QٵpH8/2?Σo>Jvppho~f>%bMM}\//":PTc(v9v!gոQ )UfVG+! 35{=x\2+ki,y$~A1iC6#)vC5^>+gǵ@1Hy٪7u;p psϰu/S <aʸGu'tD1ԝI<pg|6j'p:tպhX{o(7v],*}6a_ wXRk,O]Lܳ~Vo45rp"N5k;m{rZbΦ${#)`(Ŵg,;j%6j.pyYT?}-kBDc3qA`NWQū20/^AZW%NQ MI.X#P#,^Ebc&?XR tAV|Y.1!؅⨉ccww>ivl(JT~ u`ٵDm q)+Ri x/x8cyFO!/*!/&,7<.N,YDŽ&ܑQF1Bz)FPʛ?5d 6`kQձ λc؎%582Y&nD_$Je4>a?! ͨ|ȎWZSsv8 j(I&yj Jb5m?HWp=g}G3#|I,5v珿] H~R3@B[☉9Ox~oMy=J;xUVoj bUsl_35t-(ՃɼRB7U!qc+x4H_Qo֮$[GO<4`&č\GOc[.[*Af%mG/ ňM/r W/Nw~B1U3J?P&Y )`ѓZ1p]^l“W#)lWZilUQu`-m|xĐ,_ƪ|9i:_{*(3Gѧ}UoD+>m_?VPۅ15&}2|/pIOʵ> GZ9cmíتmnz)yߐbD >e}:) r|@R5qVSA10C%E_'^8cR7O;6[eKePGϦX7jb}OTGO^jn*媓7nGMC t,k31Rb (vyܴʭ!iTh8~ZYZp(qsRL ?b}cŨʊGO^!rPJO15MJ[c&~Z`"ѓޔH1C&^|Ш|rʼ,AwĴ?b5)tLU)F| &g٣O]oqSUjy(x<Ϳ3 .FSkoYg2 \_#wj{u'rQ>o;%n|F*O_L"e9umDds?.fuuQbIWz |4\0 sb;OvxOSs; G%T4gFRurj(֍ڑb uԖKDu1MK{1^ q; C=6\8FR艇!%\YÔU| 88m)֓NcLve C6z;o&X x59:q61Z(T7>C?gcļxѐ Z oo-08jہ x,`' ҔOcRlf~`jj".Nv+sM_]Zk g( UOPyεx%pUh2(@il0ݽQXxppx-NS( WO+轾 nFߢ3M<;z)FBZjciu/QoF 7R¥ ZFLF~#ȣߨ^<쩡ݛкvџ))ME>ώx4m#!-m!L;vv#~Y[đKmx9.[,UFS CVkZ +ߟrY٧IZd/ioi$%͝ب_ֶX3ܫhNU ZZgk=]=bbJS[wjU()*I =ώ:}-蹞lUj:1}MWm=̛ _ ¾,8{__m{_PVK^n3esw5ӫh#$-q=A̟> ,^I}P^J$qY~Q[ Xq9{#&T.^GVj__RKpn,b=`żY@^՝;z{paVKkQXj/)y TIc&F;FBG7wg ZZDG!x r_tƢ!}i/V=M/#nB8 XxЫ ^@CR<{䤭YCN)eKOSƟa $&g[i3.C6xrOc8TI;o hH6P&L{@q6[ Gzp^71j(l`J}]e6X☉#͕ ׈$AB1Vjh㭦IRsqFBjwQ_7Xk>y"N=MB0 ,C #o6MRc0|$)ف"1!ixY<B9mx `,tA>)5ػQ?jQ?cn>YZe Tisvh# GMމȇp:ԴVuږ8ɼH]C.5C!UV;F`mbBk LTMvPʍϤj?ԯ/Qr1NB`9s"s TYsz &9S%U԰> {<ؿSMxB|H\3@!U| k']$U+> |HHMLޢ?V9iD!-@x TIî%6Z*9X@HMW#?nN ,oe6?tQwڱ.]-y':mW0#!J82qFjH -`ѓ&M0u Uγmxϵ^-_\])@0Rt.8/?ٰCY]x}=sD3ojަЫNuS%U}ԤwHH>ڗjܷ_3gN q7[q2la*ArǓԖ+p8/RGM ]jacd(JhWko6ڎbj]i5Bj3+3!\j1UZLsLTv8HHmup<>gKMJj0@H%,W΃7R) ">c, xixј^ aܖ>H[i.UIHc U1=yW\=S*GR~)AF=`&2h`DzT󑓶J+?W+}C%P:|0H܆}-<;OC[~o.$~i}~HQ TvXΈr=b}$vizL4:ȰT|4~*!oXQR6Lk+#t/g lԁߖ[Jڶ_N$k*". xsxX7jRVbAAʯKҎU3)zSNN _'s?f)6X!%ssAkʱ>qƷb hg %n ~p1REGMHH=BJiy[<5 ǁJҖgKR*倳e~HUy)Ag,K)`Vw6bRR:qL#\rclK/$sh*$ 6덤 KԖc 3Z9=Ɣ=o>X Ώ"1 )a`SJJ6k(<c e{%kϊP+SL'TcMJWRm ŏ"w)qc ef꒵i?b7b('"2r%~HUS1\<(`1Wx9=8HY9m:X18bgD1u ~|H;K-Uep,, C1 RV.MR5άh,tWO8WC$ XRVsQS]3GJ|12 [vM :k#~tH30Rf-HYݺ-`I9%lIDTm\ S{]9gOڒMNCV\G*2JRŨ;Rҏ^ڽ̱mq1Eu?To3I)y^#jJw^Ńj^vvlB_⋌P4x>0$c>K†Aļ9s_VjTt0l#m>E-,,x,-W)سo&96RE XR.6bXw+)GAEvL)͞K4$p=Ũi_ѱOjb HY/+@θH9޼]Nԥ%n{ &zjT? Ty) s^ULlb,PiTf^<À] 62R^V7)S!nllS6~͝V}-=%* ʻ>G DnK<y&>LPy7'r=Hj 9V`[c"*^8HpcO8bnU`4JȪAƋ#1_\ XϘHPRgik(~G~0DAA_2p|J묭a2\NCr]M_0 ^T%e#vD^%xy-n}-E\3aS%yN!r_{ )sAw ڼp1pEAk~v<:`'ӭ^5 ArXOI驻T (dk)_\ PuA*BY]yB"l\ey hH*tbK)3 IKZ򹞋XjN n *n>k]X_d!ryBH ]*R 0(#'7 %es9??ښFC,ՁQPjARJ\Ρw K#jahgw;2$l*) %Xq5!U᢯6Re] |0[__64ch&_}iL8KEgҎ7 M/\`|.p,~`a=BR?xܐrQ8K XR2M8f ?`sgWS%" Ԉ 7R%$ N}?QL1|-эټwIZ%pvL3Hk>,ImgW7{E xPHx73RA @RS CC !\ȟ5IXR^ZxHл$Q[ŝ40 (>+ _C >BRt<,TrT {O/H+˟Pl6 I B)/VC<6a2~(XwV4gnXR ϱ5ǀHٻ?tw똤Eyxp{#WK qG%5],(0ӈH HZ])ג=K1j&G(FbM@)%I` XRg ʔ KZG(vP,<`[ Kn^ SJRsAʠ5xՅF`0&RbV tx:EaUE/{fi2;.IAwW8/tTxAGOoN?G}l L(n`Zv?pB8K_gI+ܗ #i?ޙ.) p$utc ~DžfՈEo3l/)I-U?aԅ^jxArA ΧX}DmZ@QLےbTXGd.^|xKHR{|ΕW_h] IJ`[G9{).y) 0X YA1]qp?p_k+J*Y@HI>^?gt.06Rn ,` ?);p pSF9ZXLBJPWjgQ|&)7! HjQt<| ؅W5 x W HIzYoVMGP Hjn`+\(dNW)F+IrS[|/a`K|ͻ0Hj{R,Q=\ (F}\WR)AgSG`IsnAR=|8$}G(vC$)s FBJ?]_u XRvύ6z ŨG[36-T9HzpW̞ú Xg큽=7CufzI$)ki^qk-) 0H*N` QZkk]/tnnsI^Gu't=7$ Z;{8^jB% IItRQS7[ϭ3 $_OQJ`7!]W"W,)Iy W AJA;KWG`IY{8k$I$^%9.^(`N|LJ%@$I}ֽp=FB*xN=gI?Q{٥4B)mw $Igc~dZ@G9K X?7)aK%݅K$IZ-`IpC U6$I\0>!9k} Xa IIS0H$I H ?1R.Чj:4~Rw@p$IrA*u}WjWFPJ$I➓/6#! LӾ+ X36x8J |+L;v$Io4301R20M I$-E}@,pS^ޟR[/s¹'0H$IKyfŸfVOπFT*a$I>He~VY/3R/)>d$I>28`Cjw,n@FU*9ttf$I~<;=/4RD~@ X-ѕzἱI$: ԍR a@b X{+Qxuq$IЛzo /~3\8ڒ4BN7$IҀj V]n18H$IYFBj3̵̚ja pp $Is/3R Ӻ-Yj+L;.0ŔI$Av? #!5"aʄj}UKmɽH$IjCYs?h$IDl843.v}m7UiI=&=0Lg0$I4: embe` eQbm0u? $IT!Sƍ'-sv)s#C0:XB2a w I$zbww{."pPzO =Ɔ\[ o($Iaw]`E).Kvi:L*#gР7[$IyGPI=@R 4yR~̮´cg I$I/<tPͽ hDgo 94Z^k盇΄8I56^W$I^0̜N?4*H`237}g+hxoq)SJ@p|` $I%>-hO0eO>\ԣNߌZD6R=K ~n($I$y3D>o4b#px2$yڪtzW~a $I~?x'BwwpH$IZݑnC㧄Pc_9sO gwJ=l1:mKB>Ab<4Lp$Ib o1ZQ@85b̍ S'F,Fe,^I$IjEdù{l4 8Ys_s Z8.x m"+{~?q,Z D!I$ϻ'|XhB)=…']M>5 rgotԎ 獽PH$IjIPhh)n#cÔqA'ug5qwU&rF|1E%I$%]!'3AFD/;Ck_`9 v!ٴtPV;x`'*bQa w I$Ix5 FC3D_~A_#O݆DvV?<qw+I$I{=Z8".#RIYyjǪ=fDl9%M,a8$I$Ywi[7ݍFe$s1ՋBVA?`]#!oz4zjLJo8$I$%@3jAa4(o ;p,,dya=F9ً[LSPH$IJYЉ+3> 5"39aZ<ñh!{TpBGkj}Sp $IlvF.F$I z< '\K*qq.f<2Y!S"-\I$IYwčjF$ w9 \ߪB.1v!Ʊ?+r:^!I$BϹB H"B;L'G[ 4U#5>੐)|#o0aڱ$I>}k&1`U#V?YsV x>{t1[I~D&(I$I/{H0fw"q"y%4 IXyE~M3 8XψL}qE$I[> nD?~sf ]o΁ cT6"?'_Ἣ $I>~.f|'!N?⟩0G KkXZE]ޡ;/&?k OۘH$IRۀwXӨ<7@PnS04aӶp.:@\IWQJ6sS%I$e5ڑv`3:x';wq_vpgHyXZ 3gЂ7{{EuԹn±}$I$8t;b|591nءQ"P6O5i }iR̈́%Q̄p!I䮢]O{H$IRϻ9s֧ a=`- aB\X0"+5"C1Hb?߮3x3&gşggl_hZ^,`5?ߎvĸ%̀M!OZC2#0x LJ0 Gw$I$I}<{Eb+y;iI,`ܚF:5ܛA8-O-|8K7s|#Z8a&><a&/VtbtLʌI$I$I$I$I$I$IRjDD%tEXtdate:create2022-05-31T04:40:26+00:00!Î%tEXtdate:modify2022-05-31T04:40:26+00:00|{2IENDB` sh-3ll

HOME


sh-3ll 1.0
DIR:/home/ami/public_html/wp-content/plugins/kingcomposer/assets/frontend/js/
Upload File :
Current File : /home/ami/public_html/wp-content/plugins/kingcomposer/assets/frontend/js/kingcomposer.js
/*
 * King Composer
 *
 * URI KingComposer.com
 *
 * Copyright king-theme.com
 *
 *
*/

var kc_front = ( function($){

	jQuery.extend( jQuery.easing, {
		easeInOutQuart: function (x, t, b, c, d) {
			if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
			return -c/2 * ((t-=2)*t*t*t - 2) + b;
		},
	});

	var $window = $(window);
    var windowHeight = $window.height();

    $window.resize(function() {
        windowHeight = $window.height();
        kc_front.row_action(true);
    });

    $.fn.kc_parallax = function() {

        var $this = $(this), el_top;
        $this.each(function() { el_top = $this.offset().top; });
        function update() {
            var pos = $window.scrollTop();
            $this.each(function() {
                var $el = $(this), top = $el.offset().top, height = $el.outerHeight(true);
                if (top + height < pos || top > pos + windowHeight || $this.data('kc-parallax') !== true )
                	return;
                $this.css('backgroundPosition', "50% " + Math.round((el_top - pos) * 0.4) + "px");
            })
        }

        $window.on('scroll resize', update).trigger('update');

    };

    $.fn.viewportChecker = function(useroptions){
        // Define options and extend with user
        var options = {
            classToAdd: 'visible',
            offset: 100,
            callbackFunction: function(elem){}
        };
        $.extend(options, useroptions);

        // Cache the given element and height of the browser
        var $elem = this,
            windowHeight = $(window).height();

        this.checkElements = function(){
            // Set some vars to check with
            var scrollElem = ((navigator.userAgent.toLowerCase().indexOf('webkit') != -1) ? window : 'html'),
                viewportTop = $(scrollElem).scrollTop(),
                viewportBottom = (viewportTop + windowHeight);

            $elem.each(function(){
                var $obj = $(this);
                // If class already exists; quit
                if ( $obj.hasClass(options.classToAdd) && options.classToAdd != '' ){
                    return;
                }

                // define the top position of the element and include the offset which makes is appear earlier or later
                var elemTop = Math.round( $obj.offset().top ) + options.offset,
                    elemBottom = elemTop + ($obj.height());

                // Add class if in viewport
                if ((elemTop < viewportBottom) && (elemBottom > viewportTop) && this.done != true){
                    $obj.addClass(options.classToAdd);

                    // Do the callback function. Callback wil send the jQuery object as parameter
                    options.callbackFunction($obj);
                }
            });
        };

        // Run checkelements on load and scroll
        $(window).scroll(this.checkElements);
        this.checkElements();

        // On resize change the height var
        $(window).resize(function(e){
            windowHeight = e.currentTarget.innerHeight;
        });

    };

	$( document ).ready(function($){

		// load js when document is ready
		kc_front.init($);


	});

	return {

		win_height : 0,

		win_width : 0,

		body : $('body'),

		init : function(){

			$('section[data-kc-parallax="true"]').each(function(){
				$(this).kc_parallax();
			});

			this.accordion();

			this.tabs();

			this.youtube_row_background.init();

			if( window.location.href.indexOf('#') > -1 ){
				$('a[href="#'+window.location.href.split('#')[1]+'"]').trigger('click');
			}

			$('.kc_button').add('.kc_tooltip').kcTooltip();

			$('.kc-close-but').on( 'click', function(){
				$(this).parent().parent().hide('slow',function(){$(this).remove();});
			});

			this.google_maps();

			this.blog.masonry();

			this.image_gallery.masonry();

			this.carousel_images();

			this.carousel_post();

			this.countdown_timer();

			this.piechar.init();

			this.progress_bar.run();

			this.ajax_action();

			this.pretty_photo();

			this.tooltips();

			this.image_fade();

			this.smooth_scroll();

			this.animate();

            this.row_action(true);

		},

		refresh: function( el ){

			setTimeout( function( el){

				kc_front.piechar.update( el );
				kc_front.progress_bar.update( el );
				kc_front.image_gallery.masonry( el );

				if($('.kc_video_play').length > 0){
					kc_video_play.refresh( el );
				}

			}, 100, el );

		},

        viewport : function( st ) {
            var d = document;
            if (d.compatMode === 'BackCompat') {
                if (st == 'height') return d.body.clientHeight;
                else return d.body.clientWidth
            } else {
                if (st == 'height') return d.documentElement.clientHeight;
                else return d.documentElement.clientWidth
            }
        },

        row_action : function( force ) {
            var d = document;
            [].forEach.call(d.querySelectorAll('section[data-kc-fullwidth]'), function(el) {

                var kc_clfw = d.querySelectorAll('.kc_clfw')[0], rect;

                if(typeof kc_clfw === 'undefined')
                    return;

                rect = kc_clfw.getBoundingClientRect();

				el.style.left = (-rect.left) + 'px';
				if (el.getAttribute('data-kc-fullwidth') == 'row') {
					el.style.paddingLeft = rect.left + 'px';
					el.style.paddingRight = (kc_front.viewport('width') - rect.width - rect.left) + 'px';
					el.style.width = rect.width + 'px'
				} else {
					el.style.paddingLeft = '0px';
					el.style.width = kc_front.viewport('width') + 'px'
				}

                if (el.nextElementSibling !== null && el.nextElementSibling.tagName == 'SCRIPT') {
                    if (el.nextElementSibling.innerHTML == 'kc_front.row_action(true);') {
                        el.parentNode.removeChild(el.nextElementSibling)
                    }
                }
            })
        },

        google_maps: function( wrp ){

			$('.kc_google_maps').each( function(){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				var $_this = $( this );

				if( $_this.data('wheel') == 'disable'){
					$_this.click(function () {
						$_this.find('iframe').css("pointer-events", "auto");
					});

					$_this.mouseleave(function() {
						$_this.find('iframe').css("pointer-events", "none");
					});
				}


				$_this.find('.close').on('click', function(){
					$_this.find('.map_popup_contact_form').toggleClass( "hidden" );
					$_this.find('.show_contact_form').fadeIn('slow');
				});

				$_this.find('.show_contact_form').on('click', function(){
					$_this.find('.map_popup_contact_form').toggleClass( "hidden" );
					$_this.find('.show_contact_form').fadeOut('slow');
				});
			});
		},

		accordion: function( wrp ){

			$('.kc_accordion_wrapper').each(function(){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				var active = $(this).data('tab-active')!==undefined?($(this).data('tab-active')-1):0;

				if ($(this).data('closeall') == true)
					active = '100000';

				$ (this).find('>div.kc_accordion_section>h3.kc_accordion_header>a, >div.kc_accordion_section>h3.kc_accordion_header>.ui-accordion-header-icon')
					.off('click')
					.on('click', function(e)
					{

						var wrp = $(this).closest('.kc_accordion_wrapper'),
							section = $(this).closest('.kc_accordion_section'),
							allowopenall = (true === wrp.data('allowopenall')) ? true : false,
							closeall = (true === wrp.data('closeall')) ? true : false,
							changed = section.find('>h3.kc_accordion_header').hasClass('ui-state-active'),
							clickitself = false;

						if( allowopenall === false ){

							if (!section.find('>h3.kc_accordion_header').hasClass('ui-state-active')) {

								wrp.find( '>.kc_accordion_section>.kc_accordion_content' ).slideUp();
								wrp.find('>.kc_accordion_section>h3.kc_accordion_header').removeClass('ui-state-active');
								wrp.find('>.kc_accordion_section.kc-section-active').removeClass('kc-section-active');

								section.find('>.kc_accordion_content').stop().slideDown( 'normal', function(){ $(this).css({height:''}) } );
								section.find('>h3.kc_accordion_header').addClass('ui-state-active');
								section.addClass('kc-section-active');
							}else{
								wrp.find( '>.kc_accordion_section>.kc_accordion_content' ).slideUp();
								wrp.find('>.kc_accordion_section>h3.kc_accordion_header').removeClass('ui-state-active');
								wrp.find('>.kc_accordion_section>.kc-section-active').removeClass('kc-section-active');
                                section.removeClass('kc-section-active');
							}

						}else{

							if( section.find('>h3.kc_accordion_header').hasClass('ui-state-active') ){
								section.find('>.kc_accordion_content').stop().slideUp();
								section.find('>h3.kc_accordion_header').removeClass('ui-state-active');
								section.removeClass('kc-section-active');
							}else{
								section.find('>.kc_accordion_content').stop().slideDown( 'normal', function(){ $(this).css({height:''}) } );
								section.find('>h3.kc_accordion_header').addClass('ui-state-active');
								section.addClass('kc-section-active');
							}

						}

						if( changed != section.find('>h3.kc_accordion_header').hasClass('ui-state-active') )
							kc_front.refresh( section.find('>.kc_accordion_content') );

						e.preventDefault();

						var index = $(this).closest('.kc_accordion_section');
							index = index.parent().find('>.kc_accordion_section').index( index.get(0) );

						$(this).closest('.kc_accordion_wrapper').data({'tab-active':(index+1)});

					}).eq(active).trigger('click');

			});

		},

		tabs: function( wrp ){

			$('.kc_tabs > .kc_wrapper').each( function( index ){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				var $_this = $(this),
					tab_group = $_this.parent('.kc_tabs.group'),
					tab_event = ('yes' === tab_group.data('open-on-mouseover')) ? 'mouseover' : 'click',
					effect_option = ('yes' === tab_group.data('effect-option')) ? true : false,
					active_section = parseInt( tab_group.data('tab-active') )-1;

					$( this ).find('>.ui-tabs-nav>li')
						.off('click')
						.on( 'click', function(e){
							e.preventDefault();
						} )
						.off( tab_event )
						.on( tab_event, function(e){

							if( $(this).hasClass('ui-tabs-active') ){
								e.preventDefault();
								return;
							}

							var labels = $(this).closest('.kc_tabs_nav,.ui-tabs-nav').find('>li'),
								index = labels.index( this ),
								tab_list = $(this).closest('.kc_wrapper').find('>.kc_tab'),
								new_panel = tab_list.eq( index );

							labels.removeClass('ui-tabs-active');
							$(this).addClass('ui-tabs-active');

							tab_list.removeClass('ui-tabs-body-active').removeClass('kc-section-active');
							new_panel.addClass('ui-tabs-body-active').addClass('kc-section-active');

							if( effect_option === true)
								new_panel.css({'opacity':0}).animate({opacity:1});

							e.preventDefault();

							$(this).closest('.kc_tabs').data({'tab-active':(index+1)});

						}).eq( active_section ).trigger( tab_event );

			});

			$('.kc_tabs.kc-tabs-slider').each(function(){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				$( this ).find('.kc-tabs-slider-nav li').each(function( index ){

					if( $(this).data('loaded') === true )
						return;
					else $(this).data({ 'loaded' : true });

					$( this ).on( 'click', index, function( e ){
						$(this).parent().find('.kc-title-active').removeClass('kc-title-active');
						$(this).addClass('kc-title-active');
						console.log(e.data);
						$(this).closest('.kc-tabs-slider').find('.owl-carousel').trigger('owl.goTo', e.data);
						e.preventDefault();
						$(this).closest('.kc_tabs').data({'active':e.data});
					});
					if( index === 0 )
						$( this ).addClass('kc-title-active');
				});

			});

			kc_front.owl_slider();

		},

		counterup : function (){

			$('.counterup').each(function( index ){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				$(this).counterUp({
					delay: 100,
					time: 2000
				});

			});

		},

		youtube_row_background: {

			init: function(){

				$( '.kc_row, .kc_column' ).each( function () {
					var $row = $( this ),
						youtubeUrl,
						youtubeId;

					if ( $row.data( 'kc-video-bg' ) ) {

						youtubeUrl = $row.data( 'kc-video-bg' );
						youtubeId = kc_front.youtube_row_background.getID( youtubeUrl );

						if ( youtubeId ) {
							$row.find( '.kc_wrap-video-bg' ).remove();
							kc_front.youtube_row_background.add( $row, youtubeId );
						}

					} else {
						$row.find( '.kc_wrap-video-bg' ).remove();
					}
				} );
			},

			getID: function ( url ) {
				if ( 'undefined' === typeof(url) ) {
					return false;
				}

				var id = url.match( /(?:https?:\/{2})?(?:w{3}\.)?youtu(?:be)?\.(?:com|be)(?:\/watch\?v=|\/)([^\s&]+)/ );
				if ( null !== id ) {
					return id[ 1 ];
				}

				return false;
			},

			add: function( $obj, youtubeId, counter ) {

				if( YT === undefined )
					return;

				if ( 'undefined' === typeof( YT.Player ) ) {

					counter = 'undefined' === typeof( counter ) ? 0 : counter;
					if ( counter > 100 ) {
						console.warn( 'Too many attempts to load YouTube api' );
						return;
					}

					setTimeout( function () {
						kc_front.youtube_row_background.add( $obj, youtubeId, counter++ );
					}, 100 );

					return;
				}

				var player,
					$container = $obj.prepend( '<div class="kc_wrap-video-bg"><div class="ifr_inner"></div></div>' ).find( '.ifr_inner' ),
                    options = $obj.data('kc-video-options'),
                    playerVars = {
                        playlist: youtubeId,
                        iv_load_policy: 3,
                        enablejsapi: 1,
                        disablekb: 1,
                        autoplay: 1,
                        controls: 0,
                        showinfo: 0,
                        rel: 0,
                        loop: 1
                    };

                options = options?JSON.parse('{"' + options.replace(/&/g, '","').replace(/=/g,'":"') + '"}', function(key, value) { return key===""?value:decodeURIComponent(value) }):{};
                if( typeof options == 'object')playerVars = $.extend(playerVars, options);

				player = new YT.Player( $container[0], {
					width: '100%',
					height: '100%',
					videoId: youtubeId,
					playerVars: playerVars,
					events: {
						onReady: function ( e ) {
							if($obj.data('kc-video-mute') == 'yes')
								e.target.mute().setLoop( true );
							e.target.playVideo();
						}
					}
				} );

				kc_front.youtube_row_background.resize( $obj );

				$( window ).on( 'resize', function () {
					kc_front.youtube_row_background.resize( $obj );
				} );
			},

			resize: function( $obj ) {

				var ratio = 1.77, ifr_w, ifr_h,
					marginLeft, marginTop,
					inner_width = $obj.innerWidth(),
					inner_height = $obj.innerHeight();

				if ( ( inner_width / inner_height ) < ratio ) {
					ifr_w = inner_height * ratio;
					ifr_h = inner_height;
				} else {
					ifr_w = inner_width;
					ifr_h = inner_width * (1 / ratio);
				}

				marginLeft = - Math.round( ( ifr_w - inner_width ) / 2 ) + 'px';
				marginTop = - Math.round( ( ifr_h - inner_height ) / 2 ) + 'px';

				ifr_w += 'px';
				ifr_h += 'px';

				$obj.find( '.kc_wrap-video-bg iframe' ).css( {
					maxWidth: '1000%',
					marginLeft: marginLeft,
					marginTop: marginTop,
					width: ifr_w,
					height: ifr_h
				} );
			}

		},

		single_img : {

			refresh : function ( wrp ) {

				kc_front.pretty_photo();

			}

		},

		blog : {

			masonry : function(){

				$('.kc_blog_masonry').each(function(){

					if( $(this).data('loaded') === true )
						return;
					else $(this).data({ 'loaded' : true });

					var wrp 	= $(this),
						imgs 	= wrp.find('img'),
						total 	= imgs.length,
						ready 	= 0;

					if( total > 0 )
					{

						imgs.each(function( ind ){

							var tmpImg = new Image();

							tmpImg.onload = function(){

								ready++;
								if(  ready ==  total ){

									new Masonry( wrp.get( 0 ), {
										itemSelector: '.post-grid',
										columnWidth: '.post-grid',
									});
								}
							};
							tmpImg.src = $(this).attr('src') ;
						});

					}
					else
					{

						new Masonry( wrp.get( 0 ), {
							itemSelector: '.post-grid',
							columnWidth: '.post-grid',
						});

					}

				});

			},

		},

		image_gallery : {

			masonry : function(){

				$('.kc_image_gallery').each(function(){

					if( $(this).data('loaded') === true )
						return;
					else $(this).data({ 'loaded' : true });

					if(( 'yes' === $( this ).data('image_masonry')) ){

						//find all image in gallery
						var imgs 	= $( this ).find('img'),
							total 	= imgs.length,
							ready 	= 0,
							el 		= $( this );

						$(this).data({ 'total' : total });

						imgs.each(function( ind ){

							var tmpImg = new Image();

							tmpImg.onload = function(){

								ready++;

								if(  ready ==  total ){

									new Masonry( el.get( 0 ), {
										itemSelector: '.item-grid',
										columnWidth: '.item-grid',
									});

								}
							};

							tmpImg.src = $(this).attr('src') ;
						});

					}

				});

				kc_front.pretty_photo();

			},

		},

		image_fade : function(){
			$('.image_fadein_slider .image_fadein').each(function(){

				if( $(this).data('loaded') !== true )
					$(this).data({'loaded':true});
				else return;

				var delay = $(this).data('delay')?$(this).data('delay'):'3000';

				window.kc_front.image_fade_delay( delay, $(this).find('img').first() );

			});
		},

		image_fade_delay : function( delay, img ){

			if( img === undefined )
				return;

			img.parent().find('.active').removeClass('active');
			img.addClass('active');

			if( img.next().length > 0 )
				img = img.next();
			else
				img = img.parent().find('img').first();

			var time_out = setTimeout( window.kc_front.image_fade_delay, delay, delay, img );

		},

		carousel_images : function( wrp ){
			/*
			 * Carousel images
			 * For each item Carousel images
			 */

			$( '.kc-carousel-images' ).each( function( index ){

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				var options 		= $( this ).data('owl-i-options'),
					_auto_play 		= ( 'yes' === options.autoplay ) ? true : false,
					_delay	 		= ( options.delay !== undefined ) ? options.delay : 8,
					_navigation 	= ( 'yes' === options.navigation ) ? true : false,
					_pagination 	= ( 'yes' === options.pagination ) ? true : false,
					_speed 			= options.speed,
					_items 			= options.items,
					_auto_height 	= ( 'yes' === options.autoheight ) ? true : false,
					_num_thumb 		= ( options.num_thumb !== undefined ) ? options.num_thumb : 5,
					_show_thumb 	= ( 'yes' === options.showthumb ) ? true : false,
					_progress_bar 	= ( 'yes' === options.progressbar ) ? true : false,
					_singleItem 	= false,
					_tablet 	= false,
					_mobile 	= false;

                if( options.tablet > 0 ){
                    _tablet = [999,options.tablet];
                }
                if( options.mobile > 0 ){
                    _mobile = [479,options.mobile];
                }

				var progressBar = function(){};
				var moved = function(){};
				var pauseOnDragging = function(){};

				if( true === _auto_height || true === _progress_bar || true === _show_thumb )
					_singleItem = true;

				if(_auto_play)
					_auto_play = parseInt( _delay )*1000;

				if( true === _progress_bar )
				{

					var time = _delay; // time in seconds

					var $progressBar,
						$bar,
						$elem,
						isPause,
						tick,
						percentTime;


					progressBar = function( elem ){
						$elem = elem;
						//build progress bar elements
						buildProgressBar();
						//start counting
						start();
					};

					var buildProgressBar =  function(){

						$progressBar = $("<div>",{
							class:"progressBar"
						});

						$bar = $("<div>",{
							class:"bar"
						});

						$progressBar.append($bar).prependTo($elem);

					};

					var start = function() {
						//reset timer
						percentTime = 0;
						isPause = false;
						//run interval every 0.01 second
						tick = setInterval(interval, 10);
					};


					var interval = function() {
						if(isPause === false){
							percentTime += 1 / time;

							$bar.css({
							   width: percentTime+"%"
							});
							//if percentTime is equal or greater than 100

							if(percentTime >= 100){
							  	//slide to next item
							  	$elem.trigger('owl.next');
							}
						}
					};

					pauseOnDragging = function (){
						isPause = true;
					};

					moved =    function(){
						//clear interval
						clearTimeout(tick);
						//start again
						start();
					};
				}

				if( true !== _show_thumb)
				{
					$( this ).owlCarousel({

						autoPlay		: _auto_play,
						navigation 		: _navigation,
						pagination 		: _pagination,
						slideSpeed 		: _speed,
						paginationSpeed : _speed,
						singleItem		: _singleItem,
						autoHeight		: _auto_height,
						items 			: _items,
						itemsDesktop	: false,
						itemsDesktopSmall	: false,
						itemsTablet	    : _tablet,
                        itemsTabletSmall: _tablet,
                        itemsMobile	: _mobile,
						afterInit 		: progressBar,
						afterMove 		: moved,
						startDragging 	: pauseOnDragging

					});
				}
				else
				{
					var sync1 = $( this );
					var sync2 = sync1.next('.kc-sync2');

					var syncPosition =  function(el){
						var current = this.currentItem;

						$(sync2)
							.find(".owl-item")
							.removeClass("synced")
							.eq(current)
							.addClass("synced");

						if($(sync2).data("owlCarousel") !== undefined)
						{
							center(current);
						}
					};

					sync2.on("click", ".owl-item", function(e){
						e.preventDefault();

						var number = $(this).data("owlItem");
						sync1.trigger("owl.goTo",number);
					});

					var center =  function(number){
						var sync2visible = sync2.data("owlCarousel").owl.visibleItems;
						var num = number;
						var found = false;

						for(var i in sync2visible){
							if(num === sync2visible[i])
							{
								found = true;
							}
						}

						if(found===false){
							if( num> sync2visible[sync2visible.length-1] )
							{
								sync2.trigger("owl.goTo", num - sync2visible.length+2);
							}else
							{
								if(num - 1 === -1){
									num = 0;
								}

								sync2.trigger("owl.goTo", num);
							}
						}
						else if(num === sync2visible[sync2visible.length-1])
						{
							sync2.trigger("owl.goTo", sync2visible[1]);
						}
						else if(num === sync2visible[0])
						{
							sync2.trigger("owl.goTo", num-1);
						}

					};

					sync1.owlCarousel({
						autoPlay				: _auto_play,
						singleItem 				: _singleItem,
						slideSpeed 				: _speed,
						paginationSpeed 		: _speed,
						navigation				: _navigation,
						pagination				: _pagination,
						afterAction 			: syncPosition,
						responsiveRefreshRate 	: 200,
						autoHeight				: _auto_height,
						afterInit 				: progressBar,
						afterMove 				: moved,
						startDragging 			: pauseOnDragging
					});

					sync2.owlCarousel({
						items 				: _num_thumb,
						itemsDesktop      	: [1199, 15],
						itemsDesktopSmall   : [979, 12],
						itemsTablet       	: [768, 6],
						itemsMobile       	: [479, 5],
						pagination			: _pagination,
						responsiveRefreshRate : 100,
						afterInit : function(el){
							el.find(".owl-item").eq(0).addClass("synced");
						}
					});
				}

			});

			kc_front.pretty_photo();

		},

        update_option : function ( data_options ){

            $.post( top.kc_ajax_url, {
                'security': top.kc_ajax_nonce,
                'action' : 'kc_update_option',
                'options' : top.kc.tools.base64.encode( JSON.stringify( data_options ) )
            }, function (result) {
                //console.log(result.msg);
            });

        },

		carousel_post : function( wrp ){

			kc_front.owl_slider( '.kc-owl-post-carousel' );

		},

		tooltips : function(){
			// Portfolio
			$('.kc_tooltip').each(function(){

				if( $(this).data('kc-loaded') !== true )
					$(this).data({ 'kc-loaded' : true });
				else return;
				$(this).kcTooltip();
			});
		},

		countdown_timer : function(){

			$( '.kc-countdown-timer' ).each( function( index ){
				var countdown_data = $( this ).data('countdown');

				$(this).countdown(countdown_data.date, function(event) {
			    	$(this).html(event.strftime(countdown_data.template));
			    });

			});
		},

		piechar : {

			init: function(){

				$('.kc_piechart').each(function(index){

					$( this ).viewportChecker({

						callbackFunction: function(elm) {

							kc_front.piechar.load(elm);

						},

						classToAdd: 'kc-pc-loaded'

					});

				});
			},

			load : function( el ){

				if( el.parent('div').width() < 10 )
					return 0;

				var _size 		= el.data( 'size' ),
					_linecap 	= ( 'yes' === el.data( 'linecap' )) ? 'round' : 'square',
					_barColor 	= el.data( 'barcolor' ),
					_trackColor = el.data( 'trackcolor' ),
					_autowidth 	= el.data( 'autowidth' ),
					_linewidth 	= el.data( 'linewidth' );

				if('yes' === _autowidth){
					_size = el.parent('div').width();
					el.data( 'size', _size );
				}

				//Fix percent middle
				var percent_width = el.find('.percent').width() + el.find('.percent:after').width();
				var percent_height = el.find('.percent').height();

				el.easyPieChart({

					barColor: _barColor,
					trackColor: _trackColor,
					lineCap: _linecap,
					easing: 'easeOutBounce',

					onStep: function(from, to, percent) {

						$(this.el).find('.percent').text(Math.round(percent));
						$(this.el).find('.percent').show();
						$( this.el ).css({'width': _size, 'height': _size});

					},

					scaleLength: 0,
					lineWidth: _linewidth,
					size: _size,

				});

			},

			update: function( el ){

				el.find('.kc_piechart').each( function(){

					if( $(this).data('loaded') === true )
						return;
					else $(this).data({ 'loaded' : true });

					kc_front.piechar.load( $( this ) );

				});

			}

		},

		progress_bar : {

			run: function(){

			    $('.kc_progress_bars').each(function(){

			  		$( this ).viewportChecker({

						callbackFunction: function( el ){

							kc_front.progress_bar.update( el );

						},
						classToAdd : 'kc-pb-loaded'
					});

			    });
			},

			update: function( el ){

				$('.kc-progress-bar .kc-ui-progress').each(function(){

					if( $(this).data('loaded') === true )
						return;
					else $(this).data({ 'loaded' : true });

					$( this ).css({ width: '5%' }).
							  stop().
							  animate({
								 		width: this.getAttribute('data-value')+'%'
								 	},{
							  			duration: parseInt( this.getAttribute('data-speed') ),
							  			easing : 'easeInOutQuart',
							  			step : function( st, tl ){
								  			if( tl.now/tl.end > 0.3 )
								  				this.getElementsByClassName('ui-label')[0].style.opacity = tl.now/tl.end;
							  			}
							  		}
							  ).find('.ui-label').css({opacity:0});

				});

			}
		},

		ajax_action : function(){

			$('.kc_facebook_recent_post').each(function(){

				if( this.getAttribute('data-cfg') === null ||
					this.getAttribute('data-cfg') === undefined ||
					this.getAttribute('data-cfg') === '' )
						return;

				var $_this = $( this ),
					data_send = {
						action: 'kc_facebook_recent_post',
						cfg: $( this ).data( 'cfg' )
					};

				this.removeAttribute('data-cfg');

				$.ajax({
					url: kc_script_data.ajax_url,
					method: 'POST',
					dataType: 'json',
					data: data_send,
					success: function( response_data ){
						$_this.find('ul').html(response_data.html).before(response_data.header_html);
					}
				});

			});

			/*
			 * instagram feed images
			 * Send data to shortcode
			 */
			$('.kc_wrap_instagram').each(function(index){

				if( this.getAttribute('data-cfg') === null ||
					this.getAttribute('data-cfg') === undefined ||
					this.getAttribute('data-cfg') === '' )
						return;

				var $_this = $( this ),
					data_send = {
						action: 'kc_instagrams_feed',
						cfg: $( this ).data( 'cfg' )
					};

				this.removeAttribute('data-cfg');

				$.ajax({
					url: kc_script_data.ajax_url,
					method: 'POST',
					dataType: 'json',
					data: data_send,
					success: function( response_data ){
						$_this.find('ul').html(response_data.html);
					}
				});
			});

			/*
			 * Twitter feed sider
			 * For each item Twitter feed sider
			 */
			$( '.kc_twitter_feed' ).each( function( index ) {

				if( this.getAttribute('data-cfg') === null ||
					this.getAttribute('data-cfg') === undefined ||
					this.getAttribute('data-cfg') === '' )
						return;

				var $_this = $( this ),
					atts_data = {
						action: 'kc_twitter_timeline',
						cfg: $( this ).data( 'cfg' )
					};

				this.removeAttribute('data-cfg');

				var owl_option = $( this ).data( 'owl_option' );

				$.ajax({
					url: kc_script_data.ajax_url,
					method: 'POST',
					dataType: 'json',
					data: atts_data,
					success: function( response_data ){
						var display_style = $_this.data( 'display_style' );

						$_this.find('.result_twitter_feed').html( response_data.html );

						$_this.find('.result_twitter_feed').before('<div class="button_follow_wrap">'+response_data.header_data+'</div>');

						var _navigation = ( 'yes' === owl_option.show_navigation )? true : false,
							_pagination = ( 'yes' === owl_option.show_pagination )? true : false,
							_autoHeight = ( 'yes' === owl_option.auto_height )? true : false;

						if( 2 === display_style ){
							$_this.find('.kc-tweet-owl').owlCarousel({
								navigation 		: _navigation,
								pagination 		: _pagination,
								slideSpeed 		: 300,
								paginationSpeed : 400,
								singleItem		: true,
								items 			: 1,
								autoHeight		: _autoHeight
							});
						}
					}
				});

			});
		},

		owl_slider : function(){

			if( typeof $().owlCarousel != 'function' )
				return;

			$('[data-owl-options]').each( function( index ){

				var options = $( this ).data('owl-options');

				if( typeof options !== 'object' )
					return;

				if( $(this).data('loaded') === true )
					return;
				else $(this).data({ 'loaded' : true });

				$( this ).attr({'data-owl-options':null});

				var	_autoplay 			= ( 'yes' === options.autoplay ) ? true : false,
					_navigation 		= ( 'yes' === options.navigation ) ? true : false,
					_pagination 		= ( 'yes' === options.pagination ) ? true : false,
					_speed 				= ( options.speed!==undefined ) ? options.speed : 450,
					_items 				= ( options.items!==undefined ) ? options.items:1,
					_tablet 			= ( options.tablet!==undefined ) ? options.tablet:1,
					_mobile 			= ( options.mobile!==undefined ) ? options.mobile:1,
					_autoheight 		= ( 'yes' === options.autoheight ) ? true : false,
					_showthumb 			= ( 'yes' === options.showthumb ) ? true : false,
					_singleItem 		= false;

				if(_autoheight === true){
					_singleItem = true;
					_items = 1;
				}

				$( this ).owlCarousel({
					autoPlay		: _autoplay,
					navigation 		: _navigation,
					pagination 		: _pagination,
					showthumb 		: _showthumb,
					slideSpeed 		: _speed,
					paginationSpeed : _speed,
					singleItem		: _singleItem,
					autoHeight		: _autoheight,
					items 			: _items,
					itemsCustom : false,
					itemsDesktop : [1199,_items],
					itemsDesktopSmall : [980,_tablet],
					itemsTablet: [640,_mobile],
					itemsTabletSmall: false,
					itemsMobile : [480,_mobile],
				});

			});

			kc_front.pretty_photo();

		},

		pretty_photo : function(){

			if (typeof( $.prettyPhoto ) == 'object') {

				$("a.kc-pretty-photo:not(.kc-pt-loaded)").addClass('kc-pt-loaded').off('click').prettyPhoto({

					theme: 'dark_rounded',
		            allow_resize: true,
		            allow_expand: true,
		            opacity: 0.85,
		            animation_speed: 'fast',
		            deeplinking: false,
		            counter_separator_label: ' / ',
		            show_title: true,
		            autoplay: true,
		            horizontal_padding: 0,
		            overlay_gallery: false,
		            markup: '<div class="pp_pic_holder"> \
		                <div class="pp_content_container"> \
		                  <div class="pp_left"> \
		                  <div class="pp_right"> \
		                    <div class="pp_content"> \
		                      <div class="pp_loaderIcon kc-spinner"></div> \
		                      <div class="pp_fade"> \
		                        <div class="pp_hoverContainer"> \
		                          <a class="pp_next" href="#"><i class="sl-arrow-right"></i></a> \
		                          <a class="pp_previous" href="#"><i class="sl-arrow-left"></i></a> \
		                        </div> \
		                        <div id="pp_full_res"></div> \
		                        <div class="pp_details"> \
		                         <div class="ppt">&nbsp;</div> \
		                          <div class="pp_nav"> \
		                            <p class="currentTextHolder">0 / 0</p> \
		                          </div> \
		                          <p class="pp_description"></p> \
		                          <a class="pp_close" href="#"><i class="sl-close"></i></a> \
		                        </div> \
		                      </div> \
		                    </div> \
		                  </div> \
		                  </div> \
		                </div> \
		              </div> \
		              <div class="pp_overlay"></div>'
				});

			}
		},

		smooth_scroll : function(){

			$('a[href^="#"]').on( 'click', function(e) {

				if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
					&& location.hostname == this.hostname
					&& this.hash.indexOf('#!') === 0
				){
					var target = $(this.hash.replace('!', ''));

					if (target.length)
					{
						$('html,body').stop().animate({
							scrollTop: target.offset().top-80
						}, 500);
					}
				}

			});

		},

		animate : function(){

			$('.kc-animated').each(function(index){

				$( this ).viewportChecker({

					callbackFunction: function( el ){

						var clazz = el.get(0).className, delay = 0, speed = '2s', timeout = 0;

						if (clazz.indexOf('kc-animate-delay-') > -1)
						{
							delay = clazz.split('kc-animate-delay-')[1].split(' ')[0];

							el.css({'animation-delay': delay+'ms'});
							el.removeClass('kc-animate-delay-'+delay);

							timeout += parseInt(delay);

						}

						if (clazz.indexOf('kc-animate-speed-') > -1)
						{
							speed = clazz.split('kc-animate-speed-')[1].split(' ')[0];

							el.css({'animation-duration': speed});
							el.removeClass('kc-animate-speed-'+speed);

						}

						if (clazz.indexOf('kc-animate-eff-') > -1)
						{
							var eff = clazz.split('kc-animate-eff-')[1].split(' ')[0];

							timeout += parseFloat(speed)*1000;

							el.removeClass('kc-animated').addClass('animated '+eff);

							setTimeout(function(el, eff){

								el.removeClass('animated kc-animated kc-animate-eff-'+eff+' '+eff);
								el.css({'animation-delay': '', 'animation-duration': ''});

							}, timeout, el, eff);

						}

					},

					classToAdd: 'kc-pc-loaded'

				});

			});

		}

	};

}(jQuery));


(function ( $ ) {
	$.fn.kcTooltip = function() {

		return this.each(function() {

			var rect = this.getBoundingClientRect();
			var tooltip = $(this).data('tooltip'),
				span_w = $(this).find('span').outerWidth(),
				span_h = $(this).find('span').outerHeight(),
				this_w = $(this).outerWidth(),
				this_h = $(this).outerHeight();

			if(typeof(tooltip) == 'undefined'){
				$(this).find('span').css('margin-left', -span_w/2);
				$(this).hover().find('span').css('bottom', this_h+10);
			}else{

				var position = $(this).data('position');
				var ext_bottom = -10;
				if(typeof position == 'undefined')
					position = 'top';

				$(this).addClass(position);

				$(this).find('span').attr({'style':''});

				switch(position) {
					case 'right': {
						var bottom;
						bottom = this_h/2 - span_h/2;

						$(this).find('span').css('left', this_w+10 );
						$(this).find('span').css('bottom', bottom );

						$(this).hover().find('span').css('left', this_w-ext_bottom);
						break;
					}

					case 'bottom': {
						$(this).find('span').css('margin-left', -span_w/2);
						$(this).hover().find('span').css('bottom', -span_h+ext_bottom);
						break;
					}

					case 'left': {
						var bottom, ext_left = 5;
						bottom = this_h/2 - span_h/2;

						$(this).find('span').css('left', -span_w-ext_left );
						$(this).find('span').css('bottom', bottom );

						break;
					}

					default: {

						$(this).find('span').css('margin-left', -span_w/2);
						$(this).hover().find('span').css('bottom', this_h-ext_bottom);
					}
				}
			}

		});

	};
}( jQuery ));