Vz>=*KkqkmpD=vVB67_^5D%|$V< zxa7c8w0+@d{e)v-?|yMcZ4aUNfd|VW-1mLm#C3Cg>>L7Vb59&}#cX zTJ;>H=l>}0g3>)>y5)8F@D@JInSSl)KE=fc@;i6lo6s%&`pY8ydMBj!BR>Sa&(b=0 z7W8bo8T6UK)z|1_eAu 6i8oU@PeJ`tRX4ApK9lJJ4v&Ufqw$ z>z$)3Jvh!H{Vl!zU9XO1x&A`Nw;p~DPq#2TXzy_d-lh2qpta|}YIKeXiIHZKpr35h zzqPv5Knx0?C_@y|ZVveJTYdl6n4konf&H+zh1o}Y&qFC>tNw0`trp@L;uG5K3E8e+ zbG014fE};}j>8(*4NdjuBd#rjY}S96@qG#}zzNWOum`?`m*6OzuKIt+=bAGsZ^*Ix zO^|9b&?L0}k2FJHL%tlN?WFY|#yvY8eSh;Tq h-a{KuGW7>R9+tttu zY@b2OxTL=$RKj{#+rp^L#ZU}MeTQQ?hjbx)1}&n04bQ3QuB#f;rjGB=>YR4 wU zgkU^X EOXiq`l+{3M=bE$BY!sB1qUJBc>Hp$UA>3y4ZePjJNW)j z-&<{2)WyvEcJRBA*_6KyQGC$5ZGE5C18hG{^1;8JymT*s1K{gRmzVB+px+dC2X{>R z-g_O)gq<)9+Jak0zn`gqHz0}+hp4ablq37VHE#bpE`|B9AJXac%cWcO?*w1B-Vt2^ zJ3#wJd$ (GJRkCCPeY!UFvI3J{OX7`L}_8p1j7b@k@vF_!`sYwLavR zd~^G>x;Ik31#X0Vr%oQnBSAhq4&Q`SK4{%E#fM6+I|tk`r8<^wtyitvsJa($jqVe- zUFp6YHo#9|EOZ37j(aR0M!}Ck-`89XZNRP5jr?u!7DO4NVwBcgDj&|Gd@k&TC~ayV zyc>ModKS`t|0qcJIH;%Fu0zhb`gGg@ZUF1UH#qivuw#Ckb5X{un58i*hN+F)p($ 5TfYmX1n#zHt3T(4u~FNU=s-Q%GU+&aFTCg=Tj$;*c^ zpuI(V>lNUy2OGPiJhQmE@1xBg;A)cYi(m~%_XNn8Zr?Eaa>t@$?WtqI`fxeNz7J8J z-41j8{ZIyOU($UctcL9{5jufe#~*IS@_xVM<%433e0UTTdvtHQ 8WpKDeLVq)H!Iy6x|Di#bke-|s(L^8Pr 67b1Oi)r@(2W+xMTbTTM2V597i5pxC7~uJePz>YmDRNmy>L^_xF!^1cr8 z@ e7Yn4p42K$g=%1x^PQYLrqz2^E6VR0vK}p(ZFcxhIpPe{;igg<;*H;kCA{ zq{?4q!mI4nO-hF`WZH>=(w0E~w}n(HP2$h$vO2A9s~}NP2Q?>ixz ZmGr7RdBESNHK-dki z7(4_*QwaW+m>9vEUy@J?_=ov6*7^ zEc#X_tHU}|Y{Yo-=VEJ7$1&xF1)~dW@NB+UcPcg}=lJTDwlE^RSD@M|mL2XbAFpp> zrEE!m>im2?r!`UsxUyPaKDHe`>{2mJPxxkce`_U)1_B|GucgsKAn07crG{Fo6r>s*rinr@ESXZFD|JiD zZ)whZcSeuKzhVf%(uBkEYq;`p3_$?{O*Qk*?QSWrj)B)B2$NNl+giw @(VSj3_u#(_TJ6b~&0QKkHO5?nK;R5=XUyydB(Xic zwa3-2^#1*@^Qc48`WTS)MSJd#wp`cg?lTz{@UpEuF7&1);Kd1LA}t|&Ndx|TILR-a zhj>BXjY|CKoZ<~S?JW~=&>Q-cPFa>5NeAHT8C z!5K2m(*lkKSx>Git8Jv9=38L&P$`Hr?daK m&Ms3=G-roI6AW zpXq#C`jrGp`0g>*Hzb~95vm2{3ho-w^9nGhkJoUW`Oii<(s2IE199~GJLCYK1OP9Q zeeGAyggBPK_tqv105-E|1IOkGX4)ePeQa?}h~c`yF@Md;NLVmBH>6cgn)Q*cmP_Yf z1+za*74$S1mP#%Odsg-&cmM5Z?1)|n!WMOvnU=&|z$3}OL8%#3h1cfDr$ka^k8e<| zew2|E-Y}+--hK)hd)&J&E(EK6WzOO{ u;$#9+WY$o|iY|4i-`* z6;Fvj!+CH*rLd-%=T84DDu>Z2>Kv+95oj?i0{kVDr^61F07YjrYoC@N6(H1DYoW9J zl7*QgG@Z{EZt@KZ-gVGOEvI`TV$K&~R=o?-6#NE$JJ3`2hXayp6X1sx%&*AB^sHx^ zB6#R>W=?ey*)-Z0tC+I%m6egiJ)+!IWyIL4f>172j#%t}PapyVCLNd2Ot=qk#QeO# zmitk8C3A_)iwnWF3WgbMBH9txcg|+3xwTW}*$~zUP;ps|ml#4H-#bsWMh_v)yK- 7-En;98Z;Zi;r@~3-Y zx)nxGCdLSB&B(B*^+jd{d7rIpqrOtR9=Tb*;E*+>keJxXLOr=v@M44pN=uoM;EH}; zfI8Q;V6BrIGGV{Pnce7O!@o?216Gvh$*<{lIQiU4zdN(q)?jnb4#TqY m$_AIkMX`wuV~3^Y5!&tvX>=`hH X!OSU7&KgH=!EBHx#Tu&c!W2Q8!2*Q(U(THZBkO;>6N5sjW zMw&)%+1S4KG5R^j5wc7YW5q#jP@?#=`aA?zNbVbNuneAu&wS7!yPo(?Kod=N$$DlG zivY?m?8s)Rx4u(8n3=>m!a!Ako?OCP9lF^i?Z%W)1gRm38)JCMLR2Nkbn2hb-B~&d zJ(-hM<@DOQ0vXZ^gS~8-GF3LjU8@~OW+K)SX1TkT(4s?^Dd4^Q$21m!>DfPhlOLrB zaiqaPF)W{qEw9UBj`zYK#tE@pO35Omkx&)$&iSiZq8x0c57B1`L=pT%bi#UnSOg>b z*L-=k?t;?^GMr6T>}{a#wA9Cz8}{zHp6|?Dr^PdTY-q?&|1owSY4Ga(Ycs64Vr{CO z4fQiAvh31labW_-E*#VlDY&nTB{nE$QGETa%6B?ql2>|-P_G#g$5_*Dp|mNyg_kFj z9I`kQ>$lr3w!jjF`Y;K#^afVB-mV9P>|MGZ^9ctuYf LCgRc!VO<7oX#$E#ZyB%gvjN|6Y2G8Ot!IQ;sB(kC&^gt~gSN_Y}Eg7MW_xXWiu z=a-yoz}Rpe$s%lnK;(g*nZS&qLHgO 3A=?Mkqd+aX; zY&W#AdG$hvC&IG*t_2T>ypBu?us}I>(5a;uTTh$Hla}v-E66684ucMHnSp8DoU# ztI$a1<6LPh9rqlmbjqTci?7ake1pWkO{&4X$0g+qo~gX!0xz8F{fk`CSR)qM%Xb z5>!(G+C6J9WPIqrOo_z;&@06!jhirVX-S$M_uJ@@2zW%Y=(f^VvzSEtS$K4n{G49p zS0+Zm`Ec?29ka9WhzLdtqs^dmcaCGKMp*8h+AgQRh{7Xm-hV6K7wpOLHodI7gXoWb zr~g~cr=Ho0&+IkU*(pm~MnnktgBM q9Kk5Af z=VuwOEGyVXQ_m6Q@R=!paf)_S-<_qs=-S6#J{FX=PP9d|N?Zh^P(;t?gJ>omyNhqh zz1vUg=_teSQ6Hug8(B#MSbIg`$+Wg2=OtNwmi|X9#N4}$ddOran~>PSv#8*3I5UWy z?M3c{>Eqzb`xV2@E6@^_T1vRe3_D(W#-!R^1u2d{>#^Y&t$PSNR{GFK^AsvDO7|6l z)cDO%P(=ud2R@3O!`=!6*BG8> %yz5&DykqYAffan!I}-7KfCKc{)+y9B;0CS5L~^r20pm0Xrt zy~J@t4onr(*ZOncg@0O~Zc;0i?le5mw63`!#VzUAtgeC8z8-+js)|N0g!X;^QGD&+ zugci8EG;L$t(ubqj2?Q}Ud_sD_M1UvYFW}+cl|L`w#m$FyaE`jle#Ze<`wc~#{Jvm zf8HcpTqHMqvydCzfGq;ID7Sxbq>5#}p+wI(SRq%mme3~6!~o~w7vN*2Tl&BIZ~J{0 z+&(q-$cWaXj!C)xFsc*(NABgk7YWUvy=fv%&k_eM&I;_N>^t*$=>~Rfu3VC_A2nRi zMQ|DnT|-F%M))fPJ_ai I~Se)q)1FERl2LB_2IY@XTbw c$Lw&n94!)7WS4T{UqY7C8xL{E zH_n~CSuZHQqws}fR;SaZWpDnF7l^#Vre+BQcDvCH=dbnm7#qn+FFe2R)|X1#=be^_ zh|o84b*2|>H-!J@O%~CPNA{lCzFb^EAFW04_LGn*JYWnhI+@ykC1FCEmVup=WTfMq z931uPqIxAv$>)qY29Icu?hm2r$dMD7I&trE&Q0a7 }{O?7x;6e z@Sg&~b%dQ)Ak(fOl0c-t=Eyv}OBmYqo{3HxJ@sStd4lKjpo4&&?t1$xjkDVY!Z!Tc zhK`6c5O1+8y4wlV4eqbd$Hm*Q*SsnPGfI%e=UIYGNdd%yPG@Tl2R0<0XV2 z(l65=bU1I)va)wwEGefqNGzCwPhj2LZv=iuHTkX##lCsNzG)c+kDfo?`yjra(B0E| zS~{7O`?jf@D^`$FW}~(LUMv|h CVk;zV6liS{R z>tCw_vZpkIH=VwYr^w!^y8_~QB42SRzb)}M8 pdetWu_BXI!b2M};_mos`P}7h1IfhKmO`hoUIXLb-=FDEBlK zLmL#3ZLq}b2lWb|^tQk$@aw@Z61ab7(Lf(lof)S@ tSE(3;bm;?46yDKT KQo_qZx>jU%m?DS8|F*I-!`-?U~*T+i=q)-y(y0~{{1@jE$DC| z 5FK&uJw4mz^)H5BKn=5D^et5*x?RY{owi=idS{P44 zkmid`P-O=x{I&9vizSd28lCD@8`K+5N$U%_#ESCr%7E?f|J(*NY0z>Nl%!-)7g{pN z&@t4i!+$-1gzZ0X{`&!>jsHpKp;9DHFR{NP57jlB*Z=yL%~!NV?pN}^PP |~>^|S|_**LbPvHE$;hi5|F9Pf5PXzj-Ds=1T zywX;;RSygQothl4(TuCh3wn#76QK|Tmim}Rn0Bh;I=wvJGmYE~ekUgXT1Cw4!+PP( zjo&mNClcKL-f~`b>DijUUc2*t{8!Q}JBx7s`ENTkAZfsy;N4Aq4nKBIJZ5vxRxik- z%b5=B;gD&%_setjSm1}ibv&7FBIC`2w#QYhP5C)-uey&`oN7QcU)psk4T(nEq3)-> z*M57Wd0IZmPaepRR#W*tJM;MhbpED_M%*0(B&`cW2lGfxr`Oo`o3r#ctTJmp@6e!` z6Ek&rK6z&=a&lRFzc!mwJ=MM5K>3xW{=Oa7NuKd@cr50hCq9nA1zf5#0=0noSQ4Jc zKYlEYVA;yk#*9`$0TDoc27!P?_<#2RGV%ZX^j{Bv5(FgEz<$&RC)yzV1|vXSdA~KF z0ql2VZK@&v`{BRs|GyCN-}a|s K|J>KOJ1M>NnH)wOSFZ?9jxT;_{_A{i<)(W6`M&|Sf2+$_g>}YjIww;9 zOb#~He6DzTzcK$mn47uVIZ^rV|B1Mo>+~zt&0jcEKR@FvSl$_VE+$V0w3b-ma_n!b z_KeSrKVgG#s2e9nRC%(aYJQOi=slk1T}+UExGSOEi{;=`d@m!&M};qI9RB?F{}bH0 z|C$6_Ii#WY=E?t`;g*x@XqLSD@^&f&D%HiunTOmKDOIZ|BAy{72;{O<-6K>>QjwEI zKJ={YesHt-@GccZiV>*JyR5g)QvoA#V&}OkyDATWBpUTy&1>ZjGE*`!lMc<4`#O*{ zlolY26zzZgQ~3R^Lh5?QFIimqH2JguFeHX<_3og2X%hwu8Z}T1jFIhET@Odokhvk4 zu=(c=QBSOdyJrTT-^9^h?~pEO2o5@^8@K@qI*>&wkzsv`Rho@S+6&vOpKI*b&s7NA ze#!}8cuK$YVTtP2q8f<@z8A=ub9n9pE@9U5`@kn^#jHvU$aBG~Q_nPS|GV`U^4d0~ z7C9_sFF;@WWBuWued~(s=2PGs+hC;Jds>XE=Xq)@VUnT|YzdeCd3qK5Td#=)fc}YG z#h|1#n-yW~xoZE-Rya9jzWCf`de ^npju z({9reU)f|#l`%w-q3CPda%8mUjWS7i38id>T&4r)vwOL{rfg1~HZt&I!nj76+@}Hh zh?o<{`3EYzSGP0V5HnPiluo{T*;E^_gXWaK9h}(uE%7afG7VMr|2J>M7KDckD*9h< zJa%*Zjm?^Gs5#vcz@G4W{M-Ba^~Yh;a)T~*{Y~7^>(CQWse-4VV7ywFips_P8y&Z2 z6Z|u^)Bo|}z1tr-Cf0lRR~xL10&|LaxInE#?8xI7h|vy(V?QVD_jYc6KKyPuE;^^2 zA|orA1_^QCOyo%`)}mDsvw|51_T0dL5LcuhBR2U @HPX_RGJm|e |pr7ckcKPGI`Kz#?|a0SUHbtYgnQf3(ljApoO>1{+cpYBW5sYl3VZyNyRkfMTH zze-mlgUIGbWciJKk JC_mvJUJevPN@_jURgQF5|y{byEeFH~-A^J(oGF(!mcHK7zL zy~{gO*Gxn@Ki=)!^m2aV@%Tf=!Q(?uzf*MnLfzLs%~6yhNxijJw_ffmr}@r}si1yw z8qnMyPUS3!mg^c1piJ2+&~8o6$hDX9uNkwB^!ZOd6_XEJsdLwJd5t|AfiZor_1Bg@ z2FuctqRE%{gbt&f%@ q-ItALTGR?yl-YjZw{e#!f`}D%sRe z*b#BsG3BrLJIOnsq>N`{{o6-|J4d(@T4#`(cXVZJEiQY@h6G-%=UDub{pj`>$DbGb zSF&ij{(issOks*)#@w=#1~?yBrtPMGMDQ3hVF=OiKM~vqNi7(k@u(}Rx7Lm?`@Et0 z9g$5@Aeb0#+xQ~n XL?(tUXZ+p0(- oZb7eBbOSUm5y zH^Mz|$=HU!@FxAuPDX2)B$8>eX@7UENm*&r>z_{Gj<4V$fkARpT>p+uKZIGA-U0jD z`YL_88@SGJ3PtxcY0P(uum5i9u+qPaa-B*ceUMhTR&_(HPyx5PdZu{2X@6;V7 aEe4BCcj9DPUi zE(J!A6H2mu>=Kt%m}F%=(+HEhKl6hRH#YOvo9(~Gp>uWQ3>BvYchb3vMf2%ru@(5` zA5Iy+;tpMU`%tTXAa8iES^DAn|24T;INCLN;)bW=ghZutd(5E_BwEBzLc)Zv_}t># zifcD}T?U@o2M6sf?IlPEHa7*N9{Rnw4QI>2yn5zE6XN0JHj#n}oUxEHD`W4I;8n5u zxAD>%q{BI%aAVQAZ$)u5wRTNKxF#0#b5$xD6b6RV2O!dWMUQ?B1U>lkd(ZT|hNiAK zgJ^sz2*x#b2q>ftw9NJg;`qyA!lgY31cKV$_LPgs^M7Bj#35EO_ _+nIVn$rWGQ77%9g!-Q^3JN#y`~*T=zM$#jBF~)QRJJ$dH0I0~`LWAHhL_ zVdyu?uCg-ewx3l!lg9=$-iz8tVB0|;p1CWXJehVpM4zF^rK9wrR?J?Y%*&VQ>eXI< z{Z^!t32U*esTCl1e~{#BO-s*&G^tFz-)k)3TV7t?Sk>fVlCE{QySJ8br@8UIwm5@! zJpZS`{v}A}6)y^9GxTtv%z}BO%If6#Ad^kY?XBI9KfjW=>8~c1QBEg;UdjmEWcB6k z< bWTNQjMXP}B+q8Ox$0 zDxLh&ftl9qafH6NO hQFI=$UAH5E`KF!v|l8il>u>c;j#RIUkKHB^? zI6<|d;m>q*Qj&{odQkJmX4I+V=v)zcE?m6U9uiB)bQ;a%2djX+tsnTit1084@WS7q zgLSEbKD4b(N`Upzd=<#@=ey4fJ}z=3 cmtETUyGGRpDCwQlP rns5 zL#Qt(>??|zxa*$DF~f%1NYprMCXq+991$vBz5M`YKoQV6Mfa>w^k}axxYAWuGbKL7 zy6G1 L+?C%36#>CPH#qZeu(Hz^U2(Epe%h=4BX=W|vO?4vbzBbAjm>LFB@o#@ zvGF@trHy@NiDFBxk}u)|gjhOXoTRHY|Kp&iS5&>x>f*)-Pt^v&MoG7+$iwM6D3 =&{L%7vxdVy!u5uItJAEW= zZfj^mk!|tWOP@8p&5DbkSzUYJthZ7d>iS2-P*^y1VTW*+>8 vL%*4&F(no2TYg!?RSuZQcq<`!gImB^G zMXUZ14%^j~uu|_4E{Rk3(jaVwA+S&9MwAJz;qY^;kBGDj3ZeW;ud8h~ZDd TenCJ5|YH52lwR{t~MDK%xArW zg-0EaOCRYbprgD``yN}4Sf{@}@_o#$Bb0NF3}5(LzW#JhcPHvtkFZX%?Axp&E(O~5 z&HLyPHK^*Njno$Imp3HE@#dawwT-{ANe_RAw!y-W!9X?M=o8B_ae%(#^|?>D+!xa$ z7k$@Wee&@%vTcgVdvqHoxMJwW#h0Iam05!uS$nIlF=2rI#fa7v9 Xu+qnCr?x_8gbwCe(_%C-NN&L({eD;?VcCGi?G5%6_iB1Ytu>-S8-@% z)VRun@XZ2LtuZ?D+?w^GaM>x}Df!FO-7d7h2BSY*4( I_%mC=gYv~t@STdeUinU0%dX h{px&13S}Qk)=7D zQupA%sTLW4n(4xPrfc=!#^+Z8mh5N?u-7rL*cdspAmkb%T5&Qi*9LX*30FWi7(lq_ z&MROYJJM&c#*fm@6d183Qv0Q8D8=j_IRe!{7sZ9P#PSJwp%rD@N^6Z>Cq`CwOwkBK z{IkWJM41+?Fi!WIZ?m%9+1+c2*%LZBOZ57dWfn^CBsWR_u9lH&V?rKdx8Qx3u4Zv^ zC$T@ggN-iWDol+9jZzCeMJtxeI~ryF(cKLL^!m C-(`4Q6KFRJ2=6XU6nN?kwcJlSKtkcZ8||h+b}5M5OzyQv 98IrOwYfLF2^#OUYxdHX-VqBc&4j|bK-Ad zQ%uoQ=xZ0?-dEzC9qY>^oeDE {sG*yfTay^-Kicex`sO+L5kjo}-%^lkp zFAm0BXML1z@TrxC%;K+$_|{$dm@pK1Oz~_CQZXs<+gwBxmh
I31NG5=*Yuf2_QYRPzeLmG;WyU2>o8C z!72f=A+`NLvmwC;1|n?vMe$zKE!HOzha8y~=~+QdM4%}(P^H_=y<%P=hko!@)|c1z zmAGkU^6>3Dy&`c4run! C3 z!maBuDjzVu;u?d-Hs7Ll*j|y(Aed`8;N=9P9uMxHV+5ChQ>CR3%YlkAvz?jv+Y&rp zgWFT}yhB!2r8_^IA?p+hL 8<&Zj})I+|1>u5_ecFZ3|4?4Rk>;EG(KnU`C)& zAX((%*@mbRRd*?WlS)D;$ZyAv$;DRt+Mtw<^9q2el*=4Wyq1Qbb#?*huv7dBPb^jx zZ_~~K!ZmIGf4C6YJf;-;{1<^ZqGQ4 YF+E@ bj=7fu0fhEYti(~3GlP|d{pI;6)XG9n+H^5Gej_+ zKxxlGsMdqTow)S?ur@gFlr@x-D+HB#;xgOa4ig9MLa jy1^O0>?M2Sz^io2WP7YbxXT*R>ds>Zv&oHRlGVcB#2B1T; z$pKtL#AFd0X+_`)7T*CAP3t7RKI#jRxFt{QR?5{ptE4Au*h}z!?mpdG;Qu zmc?R-fnZDq6dd!A?F~MX1q Hv-DC;Kji%i`4@V&m1YPk?vy6aQm8_Dx;4fyu@ z8f+Z~#^TU+VfiGUz}b~&Y)9&B5u%eiSzUZSUphhi+XJ9F9gdRwToF70EEb>=wjty? z6^SU4|JGkSl96W)eqKD`qu!w~k@5AkITZu6t{xDX4=*KRE0 UHMDEpiQ9&rR|7K#$#*qcjV{i0kuI{D+3!4 zV}PB}HjYVcT3M9+wj*qyqX`CzSuelRf?ghIw}@HD&&Cq;Jel#sI$_fhfT*~Ll{;6( z|EMpd41xXOXr`mFY{~>k&FPHpRz7{ +=pl5=4spCNWKLAO-2&w=8 literal 0 HcmV?d00001 diff --git a/docs/img/logo.ico b/docs/img/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..21df180d7c7e07a35393b45c63d696b59a4ddb55 GIT binary patch literal 16958 zcmds hA>&BO3t<_w zWcPZ`u?F{)>!LgeX22#`4ol%Km=DIJBu))>uVKySIw%hWb>9suU^Il*5#$%cJ#bLR zA<-1t)IA;4eGME7aWB6bhb3Sf=D}bnv1! j5m54MH{Gq< 4trplRZO zFS)Ppr0z0Mx7ywVxs7^^$qSGt t*X)PDht!z}PD>5(|({ZLl-RPY>A_i<3-3uV`_dtN2FF)K;N z;d*d?$lEmz%fUFzgoed|w)4IRP&WnCy$X(p+-3xI%i%fbZrV))tD#&RMpM56jKd7@ ztSRxOi|O3y?Ytez>b@A%eI1+tC4Eso3Y?$MLcP WxkF9dbF4$J8tPQB+-ExJ7`+(Y`o1@KF#CJwu>_na98B^oJvhIq~x2mA4CDzS+; z `s+h}GN^kkoCM``Uq$^ks5GhjF_-}zbjSRQD>mUzT#dse@DNlJ2hZATU?fCa zarKN|1;)WW%|2$q_dwlmfUxyC6c)iVP-zO?GkKuueVAv`{>{gE`)l&m#Nj#YSHK9! z+cXXvVQCwVZE7=w@ A72KSOm)3X>Z2jh^=Ysbg= zz64y;(VyDwqtf&r3^&7UsQY^uZH8ZQb?v&B{RXOu!;{#Lf@nv7-RE-sW2k!tx=QNa z0&}3l?-A;vpGIAc!)36)IOwC8{tn|I{OL^pvDo|-I!m_q1k8g*>vq1Tdy?gJ4y(m8 zZ5sG474so qU`$LS+4UM>VCj8r@;hJ_sbCJ&t!~)zd?FK^lwZ&%gUvC z=>HiFzZKebN5(o(|9037`tdqE46U#S?g#I8m3;1W_$a6~(m%;aq(6~46GFeSIMDii zC;mOGhkt?NcsIB 4&vE=M5bLdYbuilM9RD6Y|1)3Q8}Ea1 z=~XJb`~CA3+E@WcL1<2|{w7%nz5}eSGq$-5{O=%XpOGIz{UUf7%B5QM`}-q^b{*rZ zp|d!IPd#x}_vhhh*k7tt{}>u^oK5Q9UosAkNpVl++7o)Ck9X7Gl~C#LiGN@_A@OlG zdH3TbusEq7Oy1vFd!W+fnYR>LAp9#{J8aZdR^;tbJ`z3)PeG;0ar8U%2nhc|zka9s zz3)5rba)i1iGzE;@f-%xPfc;ipQo(u1@JqlG^yLOcs?8fsZV}aSqIbLewYM)w@Ph{ zgWp;ogKFZi4g0HL7^LlWIr_OhW#{8(U@KIb)UEv$kn8q0!YObsxNjT+AAxVcS70LK zaTrLQ-(MbwYU1z=_U_3;VZU+6?^D)q{a1&2DoxH0<7M2^K126S)cZd6Nl3pXy^Zo2 zU>t6P4?(#&IB#l+gXiK9NPQ}oSGV)kd0VaS1w7+AN!wNT$?#?PHuxRUb2_z2^Ty#! zxC3s5)4*@Ksm&nDvtct- o-K(NW#izU zVH|FTQ^B>B+SR&tX{O8MURrJsQTO{Gbbp$B&AKaygL~$uz&+Hxw6i!|!M&|e&APz6 zL)u2oA{Yv3tb0*D3D&{}I1l n>=W(d!-EBM1FM$?F`%?EfxB)i81<(&t zo7~-omGgcn8wbxA<8UKP0M};fpK);Ce+u%ngNmilneOYkr|t`(Kcww8OlMaO=YCLj z@A1rW4_*)BA&-OSo@bZ)zq*&fa7Z;d-eX}ksQV&l8r^wZ@GbS-ym6Qe#=*VWv#DGh zhEbnCdjfUp-UJuJ04TA^`)`(V?k8pUCeI}ID)(y7syq&%?Rf630(D;k2aWDL{`el6 z;%XeugNTD?mvh|v$3f_xLjJI}`gk^P{-7!6Iw%_l&n(x4XV`V%`ko5^H@foyLR 9^IxnpFIV%_sXpVWP#q6$*~j-qu2)XrKoaxm`5icF~~K zD+XRLDBi}PcpHP(Vs)YSzDvp9-fj2#w%JZ>dp6oCG5%kn?WuUWrt2hJrk!5kwI29? zTPUZp(4In9=nUPVpxw|+>%LO&h-1Vx;_R@{VR4v>;}GLgG)Tvd7K-DD!9?q0ocE3U Fe*x7Ai&+2w literal 0 HcmV?d00001 diff --git a/docs/img/logo.png b/docs/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..db4a51fac53356a9e5129a3f3ad2471989b131c4 GIT binary patch literal 10705 zcma)iXIPU>7iMUZ(1g%YN`xq(Tj?lKAq1sFIs&4gi1gk;4B)E>5kpbw1d-l*l_H2V z=^X*-O$37UoxI=f_hYZUcK63zdGeIg=giD~&ObU@>dXv$3=jx}Sp#zm2Z2y!g0Toa z1@3H#vPOX)m=ng>6$0UgQwG(Oq+akAgxBr1k=s4T$8MgMF4hoLE60b{LK^m#Ppom) zmR8=*->j7&5R|#bEmb|Q(bWlUhcl)=yPFHs_YN|{o&2BeTii0rPy&SN-09wl;xj7K_k{BAXt=-9&**aP+NI&}t48)& zz0H~0GhEnPDxV5qhd^-Kmop%c8yG6eD9#*gedvEBo*{@pjdLzh8QpQNR7uQ_^jvvV zsbZ_e>=c(|Bu90YR2Wnh*wih(x*)E_2|g?A=TeFEJzU@2adv3s%wQ2B1!bN!9##_k z?OC52*|)R#ybrqF6wlF ~s?j0x$^&2I>+2esIqqL}g zD`pH QWV5mTlk zkFFO__L{kA92okJ3r}*f;% Cbo>w5=}CTBT(@&~vN%42KnfyRedx#0exJD }RHFEgS>&{?Gwu`VjskVgUnc{k-fnj$lleZ8hu<)yrQRWVd5 zA?APU$2PjWr}J}Sw?(FJ&_Pi@Z@l>{fX+sCrf2}VEQGO#c(q1u?-D;I;Do2&yp4C` zzt2&j8RT@tEw{9C$7}E1dL=f}5xcX73@F=j`KC^b=U}z4fxRi`(wU5P7~(SUw~$4u z{^S}v_eFS3R{~jsSCisiPEUBz6D4F X&y@h~YZXcmM$au<9kA5)MU?)K;S`QPfW3^ohdZ&GWu-Uv%m ziBdn3Dh5HXP*QFrSdSexP}6Q1YJ{%6U4%QBwI2;g&8SBto}e4cjC|}jy6>sX#KD{V z ?{aN7NcDr`d-isG=sFxIdI?kZmG zJqbuNGvC-yC|yYK)zx6dwds{d|M;F*zfoGVS7_!ZDEOPl+%amcouqWyEAouxHw7q4 zq$e9X(f-+;rxC$z6YTR^GUf)xlB<;H9C%m!h&zx8u%X(meojC~iJ=~41oyoDouU*f zrx*rI Q FgjfGBga;9d%h5Z<3HYWeY_Nh4RF*KDbJ z_J+p#m<^DcG-xNTvVb<>^%PIji+0ieFl4R-MbU1HZKw8lPG;iGSY6N*icU{4uS@Yq zzg*^a&W{-Uk&c3)8GL;>5xZGL6SS~w`l?(vmnNPg-WCt%OQwh_@+s!`fv(9nUmIvZ zn9~_pcJLhyRy4yuS)_0{A73M*<>XUQY%s7=uf+qbO)_zeq2^li4UBc#+ruz4PAui^ znQmE|SQ!#Cx;@uKH0Ajwh;BTG+KN80KuNYFJ=~dygX1M*pr|{^oLHL&KIwiQqA)bZ zQY58Xl-R@fbsLMa(x7mpFJapGZh(fpF)+d sSwfc)&A6LCc^pVHb)6r>ERQmP}KJRC1Sx8k122T8_LXx z&m@H>e7uV1ZmeOyrZlCO=zANaju$Gw6U) IOa7oPsUeC6c0c!*Cjy$Ua#}iyKqYJz<4E_kF z(eL|lW8+?=i$D=qpXH;k=OBqa55$G J>gFUuFx@QH$fSCJim?Bs} zus_kPpb_NJL@DM_2!5z7)oV0=+@MFv24cyEY(7b}$SXn4#G;k!rV?zpFJdY9Qv?QV zFe^^x=6Z;zr4ed6Gv$803A`?L1}VYJY !$y;-iQh;2EThp3DkaW_ zj8t`D$%J1E$Prl;U}BP;ZwZq8JcG&Wo~`$!Oban={<+-& znGTEQca7%Z(K6jUTSrnUUzUAdBl8jZjL0i8dHn{#1L)0famr69R!%Fuq*-zEqx>r` zoTGJUIM+`ZfiuM;8_Bas5*C%B3#(>to_Xp??ZNg>Sd POJF7aLgm{6-Da`@8y?#aWZ#o zi^qzOLj^QZNY%%cr@GlFU&IyVXSn_hc_~>s ujip@v9M}9H)Y|-S_+(ymGdB1RFYe~x z;ypBtd>L+OEp}qekv~8!s?yLsi$L)h&+hkicaRSC8*83Q5NS0;NwzSHuq5ADo-k)) z^Mj;m3=VnBzo(t7mWY55#TA$f* zI6hk-j#Ww@H+OXk`$ZspC}rf?)XdI*>;L0#Zwv`ejty_wQlr!T 7ORpbOY%R1dxON9>q3z@8=4{)jH%ydz=0 z@lR6$BbzCHv$pDPo6P2jL)oFyPr>Tp%3 X<18vlO=R)}Ke&UAA (@HFr ztd<1} Oq3o3)bW00b zTw*@JXbE+)RS4eJzm~leQB%*efzTfbJ9#Iwai!F8kZ+wU6>?L;O3^vuX>G~IG77i;q~z+sox=(CFs1mh-J{@p7b_jU`P{@X4|OV 3>1HaS z44=>b^hp@EVO4F-hTu#tWN$T4>)Wd07XEY1D_@qjk1fmLb^0qpRYHJhY|Od@Dk-K6 zSDhOk=ZVe=-t}pE(4Fg?%sgl{pN)fMI*1G3b&VlvYnrA@d+^Z)(fdp*aRK^+_JwY! ze>x1)S#c*ND#!H&(LegZYOrAd!px{DN~qXE90$$3o*#Kqu5$dkyTwX{0eOWGnXUsD ziFrjB-ETP-$@$tBO -BV#GWjVaPbDDg?awjbh zuO``{NR dzrfK>0K$gkV;mX4Bxb(ely$Xe_ypr^`#vS9V~G=)*t zH(nc^CF<8vp^$1g-y4|?TD%DZWsSVNIG^oOR}bcKgO>@|ts<_{)YfAcvX4Lfc$SJk zCBsaiS=_UiRsWqNo}XI-XhQnHRtj 6AyRz$-DoKIXO^#+HaRdow|OCM-B5fCJx z;zsO&%n#TX-lC`$lNjBlpI+4h2dlGN4xW VD>nf>3auL( (wl@}uoEgA1$@ z2(KQuM+pJGe~L@gE>K?j{8a*mhA|5T5@`{n$Bfx2NL7#WOC~O2&sTNfR_MScRK*X$ z)t;U`(~%B~i8=Hip224lR?mmIW;}nXCV5JJlowyKoLE>BAw2~CTZ%msuuvRwPfC&a z45K`s+sYI(6X <}s1nK|1o@&}Nvku?qYal^3C9@x;Y- zy6t@O6Y`$PjWq>M+kFV0<5kL+!kW2-??FzLxn92p_)jA4ulV!-aRrYq6)tZo#wrW0 zxZne`yEk&Z#(+B3UKJ`44ttfytIpl6K0dA8D{loB;>wwYNIDUHyD?O^i|(M$X6l z%n`9mWCDsVm`}0FWRQ#NN?J>Y*=6{21gQlU67A;mvy`cJz67u|z+#dgF*!;Qt7Lv4 z$`5D+7AlX-{NtmKcAKao(*hT=?bf4vE2a2nd>hATS#hGVp}jo2LKDRWd`;|)u-|W{ zRsJ_qLV)Q19pLl|p$v*Y{@3`Qe$jz0Ygi_IxCaSJ{LlOUmv{dkKE!ZEdlzaKtB7gQ zJT5R26xX7GqQ*IKk@C!OU!n+&QlSU`KLY)qnQW8&{cDT_BUimFPo`L(ka Aeo$Za>n2HaZ)~Ae_kJr&tnj#a%umD zhUUuCox+N_Cx)JfivEHbEBaKx*FgiA`o4wThu2v^Omr#V7gR4lydOxeSa_sdJG-!h ziFEB4I|aPey3~*qa_C_Hd|2I8)5!pSP5V?3A=owF5gK>zz}RAR)?^jN!~B`xP4X>z zU!O&$?WaGGhg>iUj<{G;sI%O7D{OrIv{(EB*>lI)fIM}YUMb=@A-||n7Hi0~%sRzB zc^(|?Dz6Z~R?sgch79l|vT8XjiuD-m=g-iBN%pR9jHhd@V#W>lmcYOtF2vnL&-` z2-5Q_bOLDum>kpM$(TWxLG52i%YTEZs@nhdjpvCRLBz$-dP-JBGu%Me8Ouq^bIQ>+ z`9r>vwzTrCE|;j^cn&Crmvd#4~`v!li6!MOqcRI4&|*mhRM`Ut0$gsDo `lhJ(|=|o$RH;? z$Y*4HLk?=~nOHL{Le04tE)g$qS?zD|JMY6#kYV+O1TCw}7FXORH8ej-47K{g#OGYP zsn>9E`RBmLVO@%~gtf*{L GbGr<`LIXfX$LZ!1 3kJi&wGwbFLyVug` z7Eq4t2)bm6XgiPK9`B4W*mZ5@F3N_)@eG1a$Z?|P9XT;k&S!ErgmUPH7(bJU-?y_S ziZKu7H&RaiL3aH`#us 3cVXJGP!{&& 8zx>310$?glqyf*YH5ao_~kwm5Nr%mQ~a zk7_+@+^sFAX@laFKW99ra A`Ub#wDKhjAJIe*X2+d}n#*zE|77>^dg(E;r8V zH9D{ZxDX?I;8&<3Fr0F7WdCzEJ~vW*WmbD-_Pt%ZB2$XKh4x^pHu-|$lZ+o96|C4o zq+)s|#6S0HVyJ5UiwD=x*Ukjyt=31<(0me~>uG-+7A#&Z#D5wZ$319kF?uq1-90tI z =sKn?2SY#55A)jR9~HGYjFtBUj1vg@hyF) zF+XQW&$xR(Q>I28Lq(J8bKG^rCh+WPudB&s8FH?WpMptFvyKYOSIsS`Q*kF(J9Om; z|C_*g<@o;=6Q=ydj=~l{m =6B#~xv~<*{rB5bd&2tMWD}D~5E3`cO{yC# vWMv 2k(Uhq+0;wX)8K!+k=$UxfCceJYBYG$4Ai$2xf%9i*pPeiG3p?F5}9LdR7{O#y1 z(dS);{!yLSI@_O*a#jygskW>eriLt=49OeP2?^KvuMJH1wax^#vY^{XxXVA rtF5^n7ohhb*|CFzWu*V`+v1nuz0;Y6K~#T@YZl01s^qk zasHmdTy)cuwZ3TM`%aXQ8I1YpthvI$y56Aap@=8<@ge=eyMlA1RNhCayrOq^{eL{@ zwQP8_X^6ggvpTxd$;O7$hB^B> } z{oc9dD!baY5Ker*U*d3B9p`*@ke<6@_KIlR(fcG#?ue7y7{q+odTEG$(-I^qg}F7v z&Y?dre%SROodgu^b(%7<9etQB&)<+^G9uyTllXV5zhFPxsty2|(OmY0{%}wwneWlx zPIxr=^mF~Y&UpQ@S~0ZP-3cyD$qeea`^b;FOcOHub$vsGHC7=+be=< IW8_F#M~Ls$yF7GOt#US6u$=4z>*>yIi-pjoJGFj)77ghEz8PTwGyq z#uryyEdb8=XCeL9Jvi;l^r$rhwOvNvwY+kpbELyE0>B-|?aT3B-!*oJd eWLZZgVk7uScBvRgfbf{aN zf}xu25V~+$
fkqOX}s)Cc#jJY#6vC_%hep2U8dH^YTOeJ0|LODASNxGG{+UQ-RqOw&P*YBV~ zc%(%i|Kmqcw9E!a(|fy5u;UQIXfNZFS{3u0NJl@l^E<;PsQ^P@UCM5;fHCK* ClyN9hE1_y( z(pw)D{>mHqDoQBs1$oAO=P3+%W&RUmzktz;pJF=~R@PK9T{Vx({kqPpYp^yaPc7u( zPnq)G)#N56w0R(2F$y@&*HVPA{I=f@&hB=F_(EN@umHb5*gZ+tDtmV;YUKcPoRct4 zGARd#QdOByHPIBd?;-wAO!K9M!tCG1kk7|cpo=sSD2wiQ4{_o7giq;dcOr9Co#ysJ zewBDyJhN=!((D7z(Tlq-mbK0lOhG+5@f+apTWK#dW?#6CiOc_BVhFcFbr@P+$J#Xa zbt*22EuNOIEvQ52%U83yvmbTi_p&mTxv;@M)wKb1S$N+_u5{*!%|@GwFaVQ|5*XiR zRK7f21h9j>tf#=>=f)BkCmDgRxnu30+0-@LJ^5s69fn!>*S9K$Ov_t(3uP>>mQF+o zY0LB9PQj}wjs6Tkz#OfwJf?Zv7T>>a?wBZbOFTscBeA>oqJje(Or(@4ntLZUN<`DC zw)!0Fk35b}R gU+^vJV_OBFE5KuC{^R zPH=_2-X+(^zFc)~6}7q 9ZG46s|%Etb!@tPWeOr8s2>>5w; z)0;*$5!jF`59*BR7rT6`_NC&XwHkxZ>{HkGaBwRhBJF0MQ{UcWfVcNKx!yz1n$SER zxSZ@ETfOGq=RB3z@2Lx@Z2mFQ>u-)b?YH zcuRt8Z7}ZKoA+R*mD8JOJ=nYELchZ9wy1j-pUsB1+}h-OvM}Qq_NV7m#}nT-FY1QE z@crxTgBN-{>)KaBL`!yGPS;44@8lJ3TuRzp@~)8-E}`1$RMDn)zw;HEIgw{^rf0T- zuy!{nv4pBt{p{CSnL_oHDKn;py}I5y=D55txpq&_4#KGaMSnx8H~SCIm5ZVc6dzXT znmiiLjw;Y)CGN_z*f)f$FkHHg=^T`d|56yjDcK_@sdE%AA IW;nsxYc@K=c1z+vU$U1+u zhiKnOo~{)cXY3pF*{>_1bl)63Wz{ijWI3+PPrEPqEW3-1l-9kk>C ZC@lEmoH?At7W(cH%97(k4er_$AYZO04BGwDh;y+P%#SB)ONo&Uu==NxZB!dZ%2_IThz+t!uGp{lIdo6 zR?gjkz45AXu-0oV&Hf8?c9sBuT--^cA*1g#pJzJF292Vu2=^E8ukO6)R~M{gS9?O? zq2ktkPb0UM@Os+0zv|JUuOISp-{z_$jo4t;s!bZ(t K^J+W+ zZ_@GlRpuL;A|$nnm*r6>W@C5yTek*P3?;1ICoUZDyG}`l5kCC9*@rzwst()I%Y$+v zLZ6i537`DZnfAMVOZiRiFN-hF39tS>Z_hjbUBIr1Mq7z2hRqC7$NadOq$h4?^U6&Z zD0q(K<2Q`HAnz&|0r_Om?o>4f=fmrLnDD>`L;A!mEu#)7|ErWELh$y5!~?kT1BrBE zk4?+e-BvuYNgyl~6aa&oqFsvp43Jl#C_%LBi|ygyEQ(pwP-79+#%SS~BzZb|`SR1N zV*>Trs^qUKpG(t*K6e|&W+xfF=H_V{OL$$I@q_NDD{zfhM?v =m#7&42TFfS MA;e4P>YfCx_FgLHKCDNh{QHr?~54W43nqc66*w86` zP@r#R$MGD}0Wh~F4Sx!n*)b4x0w3ymP2FpVP5TF!g5!=bkydrThAbuuSXz<QP7Y}Au@-~i@UZh zut@sh+@ibG+Fo4|m-0+ccR$Uhr|*k^3kIP3 )_bn@LUp{FSmdcPiS1VxPNqRzK)*PRN~DGig9FKo3syiR&tgZ@ilH8x#j*c zQ- =HF1Wa{aEyx9t@OatZl8B{sF2Nh1N25T zMVKDb#jI@jy!yOOqf+vaKIvtU53T|nSFf2HG44uLjUQy2*+iVJ)vA><7`&(PPvX`S zvVa%E=TQ~K4WCo}Ay;2QMSI>gK1c@zLd(}k0RQ7TSU@c_Bz?m#dWiAIeWWUOc fLQx%`h}K_A z@dMY|FBWK4DpLW(R}WMcT-NnVqE6mS0+bH|a*4=Bu45=DTELjWITno_zEz^V@ngm1 z5ZgZN$Ajl!F!0e}{a329qUi-@kMg&Am$sx+gwBIzCbbSn(ir=FPz)dlk=JkDsamax z>XaGY6{tVy^$}*yaDYeGUP$seMI<{3jvS~`aJQnb%CcLDzLeQT?eiJAdfwPWTJDbU z-Ub}B2gUuG$+T=yaq7Ez3Onq`hUbvs_2?I{Kw7WfKMk6Pd@R$i>5ez-`t)6dq8?l; zmAQ5G)*>!2R12UX^fn@XMfH-ul|bnReD@A9wnHqkQ*e{NZp! D3N3PB)|Bh=f2nxm)c@Y-(}wfah3C+ zb7{}!bjsV#`3(PsY?Za`uehPyhLvKQTfWgxiYAn}oZiTzeu>5&;B8^`+ToVUthgZd z+`r?_DN(=qWw$FW{=^8&f+nk7f n+M;{guiE!Z9hnK>iawUzu|d?zsD?t5 zUMW~F@Bsj7Tb_|X4DeX8@+GcnL(vRv qS` zfHH0CX~w5df(i^UXu-Xexo|VMNC`faJj`b~38VC0{ih!D^TzlEy2D8XQZ?&YZBaCs z2+0@d?tG3Zh~nWUdxE+T=)Aj DXT#-D$@QQats1-q z@W<3;-zjz=E9en)8x>Y46X>mjlSjuC3MaX#=)m*G_r7^Z*P+P!0AYvF_azRzN@NG- lhFofm=YR+qpNKa=#8ardJW?E-K|3Zy @@ -78,10 +85,3 @@ RackShift 使用、集成、借鉴的开源项目如下,在此致谢: - [MAAS](https://maas.io/):RackShift 参考了 MAAS 提供的裸金属服务器生命周期纳管思路; - [Digital Rebar](https://rackn.com/rebar/):RackShift 参考了 Digital Rebar 提供的操作方式和 UI 参考; - [Element](https://element.eleme.cn/#/):RackShift 使用 Element 提供的优秀前端组件库。 - -## 项目推荐 - -- [JumpServer 开源堡垒机](https://github.com/jumpserver/jumpserver) -- [MeterSphere 开源持续测试平台](https://github.com/metersphere/metersphere) -- [KubeOperator 开源容器平台](https://github.com/KubeOperator/KubeOperator) -- [RiskScanner 开源公有云安全合规扫描平台](https://github.com/RiskScanner/riskscanner) diff --git a/docs/installation/setup_by_fast.md b/docs/installation/setup_by_fast.md new file mode 100644 index 0000000..77e6eed --- /dev/null +++ b/docs/installation/setup_by_fast.md @@ -0,0 +1,104 @@ +# 安装文档 + +!!! info "说明" + 全新安装的 Linux(x64) + 需要连接 互联网 + 使用 root 用户执行 + +## 安装方式 + +!!! info "外置环境要求" + - 推荐使用外置 数据库, 方便日后扩展升级 + +| DB | Version | +| :------ | :------ | +| MySQL | >= 5.7 | +| MariaDB | >= 10.2 | + + +=== "自动部署" + !!! tip "" + ```sh + curl -sSL https://github.com/rackshift/rackshift/releases/download/{{ rackshift.version }}/quick_start.sh | bash + ``` + +=== "手动部署" + !!! tip "" + ```sh + cd /opt + wget https://github.com/rackshift/rackshift-installer/releases/download/{{ rackshift.version }}/rackshift-installer-{{ rackshift.version }}.tar.gz + tar -xf rackshift-installer-{{ rackshift.version }}.tar.gz + cd rackshift-installer-{{ rackshift.version }} + cat config-example.txt + ``` + + ???+ info "配置文件说明" + ```vim + # 以下设置如果为空系统会自动生成随机字符串填入 + + ## 安装配置, RACKSHIFT_IP 填写用作 PXE 的网卡 IP + DOCKER_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com + VOLUME_DIR=/opt/rackshift + DOCKER_DIR=/var/lib/docker + RACKSHIFT_IP= + + ## Compose 项目设置 + COMPOSE_PROJECT_NAME=rs + COMPOSE_HTTP_TIMEOUT=3600 + DOCKER_CLIENT_TIMEOUT=3600 + + ## MySQL 配置, USE_EXTERNAL_MYSQL=1 表示使用外置数据库, 请输入正确的 MySQL 信息 + USE_EXTERNAL_MYSQL=0 + DB_HOST=mysql + DB_PORT=3306 + DB_USER=root + DB_PASSWORD= + DB_NAME=rackshift + + ## Service 端口 + HTTP_PORT=80 + + # 额外的配置 + CURRENT_VERSION= + ``` + +=== "离线部署" + + | 下载地址 | 密码 | + | :----------------------------------------------------------------------------------------------------------------------------------------------------- | :--- | + | [百度云盘](https://pan.baidu.com/s/1P-R4U2zTw9xfsRshfEqd3A) | nmbz | + | [阿里云 OSS](https://fit2cloud2-offline-installer.oss-cn-beijing.aliyuncs.com/rackshift/rackshift-release-{{ rackshift.version }}-offline.zip) | | + + 下载完成后,上传到 linux 服务器 /opt 目录进行解压 + + !!! tip "" + ```bash + unzip rackshift-release-{{ rackshift.version }}-offline.zip + cd rackshift-release-{{ rackshift.version }}-offline + ./rsctl.sh install + ``` + +## 使用方式 + +- 安装目录 /opt/rackshift-installer-{{ rackshift.version }} +- 配置文件 /opt/rackshift/config/config.txt + +!!! tip "安装" + ```sh + ./rsctl.sh install + ``` + +!!! tip "启动" + ```sh + ./rsctl.sh start + ``` + +!!! tip "关闭" + ```sh + ./rsctl.sh down + ``` + +!!! tip "帮助" + ```sh + ./rsctl.sh -h + ``` diff --git a/docs/installation/upgrade/upgrade.md b/docs/installation/upgrade/upgrade.md new file mode 100644 index 0000000..2c15c66 --- /dev/null +++ b/docs/installation/upgrade/upgrade.md @@ -0,0 +1,96 @@ +# 升级文档 + +!!! warning "更新前请一定要做好备份工作" + +### 升级步骤 + +!!! tip "操作步骤" + ```sh + cd /opt + yum -y install wget + wget https://github.com/rackshift/rackshift-installer/releases/download/{{ rackshift.version }}/rackshift-installer-{{ rackshift.version }}.tar.gz + tar -xf rackshift-installer-{{ rackshift.version }}.tar.gz + cd rackshift-installer-{{ rackshift.version }} + ``` + ```sh + ./rsctl.sh upgrade + ``` + ```nginx hl_lines="1 30 63" + 是否将版本更新至 {{ rackshift.version }} ? (y/n) (默认为 n): y + + 1. 检查配置文件 + 配置文件位置: /opt/rackshift/config + /opt/rackshift/config/config.txt [ √ ] + 完成 + + 2. 备份配置文件 + 正在备份 /opt/rackshift/config/backup/config.txt.2021-06-30_16-21-51 + 完成 + + 3. 升级镜像文件 + x-lab/mysql:5.7.31 [ OK ] + x-lab/mongo:latest [ OK ] + x-lab/rabbitmq:management [ OK ] + x-lab/isc-dhcp-server:latest [ OK ] + x-lab/ipmitool:latest [ OK ] + x-lab/racadm-docker:latest [ OK ] + x-lab/rackshift-files:v1.0.0 [ OK ] + x-lab/on-dhcp-proxy:v1.0.0 [ OK ] + x-lab/on-http:v1.0.0 [ OK ] + x-lab/on-syslog:v1.0.0 [ OK ] + x-lab/rackshift-taskgraph:{{ rackshift.version }} [ OK ] + x-lab/on-tftp:v1.0.0 [ OK ] + x-lab/rackshift:{{ rackshift.version }} [ OK ] + x-lab/rackshift-proxy:v1.0.0 [ OK ] + x-lab/rackshift-plugins:{{ rackshift.version }} [ OK ] + + 4. 备份数据库 + 检测到 RackShift 正在运行, 是否需要关闭并继续升级? (y/n) (默认为 n): y + + Stopping rs_mongo_1 ... done + Stopping rs_rabbitmq_1 ... done + Stopping rs_files_1 ... done + Stopping rs_dhcp-proxy_1 ... done + Stopping rs_http_1 ... done + Stopping rs_syslog_1 ... done + Stopping rs_taskgraph_1 ... done + Stopping rs_tftp_1 ... done + Stopping rs_rackshift_1 ... done + Stopping rs_rackshift-proxy_1 ... done + Stopping rs_rackshift-plugins_1 ... done + Removing rs_mongo_1 ... done + Removing rs_rabbitmq_1 ... done + Removing rs_dhcp_1 ... done + Removing rs_files_1 ... done + Removing rs_dhcp-proxy_1 ... done + Removing rs_http_1 ... done + Removing rs_syslog_1 ... done + Removing rs_taskgraph_1 ... done + Removing rs_tftp_1 ... done + Removing rs_rackshift_1 ... done + Removing rs_rackshift-proxy_1 ... done + Removing rs_rackshift-plugins_1 ... done + Removing rs_ipmitool_1 ... done + Removing rs_racadm_1 ... done + + 正在备份... + mysqldump: [Warning] Using a password on the command line interface can be insecure. + [SUCCESS] 备份成功! 备份文件已存放至: /opt/rackshift/db_backup/rackshift-2021-03-19_08:32:39.sql + + 5. 清理镜像 + 是否需要清理旧版本镜像文件? (y/n) (默认为 n): y + + Untagged: x-lab/rackshift:v1.2.0 + Deleted: sha256:6a4fbff00b55e77362f3bd575fb28966583ee6698b33844e2a22d0049734e9bb + Deleted: sha256:40fc9ba04fd6acbcb946cbedd67f2f284f902c2f4a086bd1e7f3067c8e90987e + Deleted: sha256:acaf5e05c1e3868acda3884ab90319da3f3b817000e5f66d4ff1a462decbc5f9 + Deleted: sha256:8c95b890f1cec4874740a39a1a946618a6937c249aa45870cff1da64eea21ab5 + + 完成 + + 6. 升级成功, 可以重启程序了 + ./rsctl.sh start + ``` + ```sh + ./rsctl.sh start + ``` diff --git a/mkdocs.yml b/mkdocs.yml index 4594225..8fefb91 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,17 +1,40 @@ site_name: RackShift 文档 +site_url: 'https://docs.rackshift.io/' +site_description: 'RackShift 文档' +site_author: 'zhangdahai112' + +repo_name: 'GitHub Star' +repo_url: 'https://github.com/rackshift/rackshift-docs-static' +edit_uri: '' + theme: name: 'material' - logo: 'img/logo.png' - favicon: 'img/favicon.png' + logo: 'img/logo.ico' + favicon: 'img/facio.ico' language: 'zh' highlightjs: true + feature: + tabs: true hljs_languages: - yaml - django + palette: + accent: 'red' + features: + - search.suggest + - search.highlight + - search.share + - navigation.instant + - header.autohide + font: false custom_dir: 'theme' + nav: - - 介绍: index.md - - 快速开始: quick_start.md + - 总体介绍: index.md + - 安装配置: + - 快速安装: installation/setup_by_fast.md + - 升级文档: installation/upgrade/upgrade.md + - 系统架构: structure.md - 使用方法: - 准备工作: config.md - 发现物理机: discovery.md @@ -20,62 +43,75 @@ nav: - 安装 Ubuntu 18.04: ubuntu.md - 常用 ISO: iso.md - 使用插件: plugin.md - - 系统架构: structure.md - 网络结构: network.md - 深入内部: - 术语: theory.md - RackShift 对 RackHD 的扩展: extend.md - 故障排除: faq.md - # - 开发手册: dev.md - - 联系我们: about.md - + - 关于: + - 更新说明: about/changelog.md + - 联系我们: about/contact.md markdown_extensions: - admonition - - codehilite: - guess_lang: True - linenums: False - - toc: - permalink: True - - footnotes + - abbr - attr_list - def_list - - tables - - abbr - - md_in_html - - pymdownx.extra - - pymdownx.arithmatex + - footnotes + - meta + - toc: + permalink: ⚓︎ + - pymdownx.arithmatex: + generic: true - pymdownx.betterem: smart_enable: all - pymdownx.caret - pymdownx.critic - pymdownx.details - pymdownx.emoji: - emoji_generator: !!python/name:pymdownx.emoji.to_png + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:pymdownx.emoji.to_svg + options: + custom_icons: + - theme/.icons - pymdownx.inlinehilite - - pymdownx.magiclink + - pymdownx.keys + - pymdownx.superfences + - pymdownx.saneheaders + - pymdownx.magiclink: + repo_url_shortener: true + repo_url_shorthand: true - pymdownx.mark - pymdownx.smartsymbols - - pymdownx.superfences - - pymdownx.tasklist + - pymdownx.snippets: + check_paths: true + - pymdownx.tabbed + - pymdownx.tasklist: + custom_checkbox: true - pymdownx.tilde - - pymdownx.betterem - - pymdownx.superfences - - pymdownx.progressbar +extra: + rackshift: + version: v1.3.0 + search: + separator: '[\s\-\.]+' + language: 'zh' + Content-Encoding: gzip + generator: false + social: + - icon: fontawesome/brands/github + link: https://github.com/rackshift + - icon: fontawesome/solid/envelope + link: mailto:support@fit2cloud.com + - icon: fontawesome/brands/skype + link: tel://400-052-0755 + extra_css: - css/extra.css -copyright: Copyright © 2014-2020 杭州飞致云信息科技有限公司, All Rights Reserved. 京ICP备15023818号 - +copyright: Copyright © 2014-2021 杭州飞致云信息科技有限公司, All Rights Reserved. 京ICP备15023818号 +google_analytics: plugins: - - search -# - pdf-export: -# verbose: true -# media_type: print -# enabled_if_env: ENABLE_PDF_EXPORT2 - -extra: - version: - method: mike \ No newline at end of file + - search + - macros diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 538f54a..25a678b 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,6 @@ -mkdocs >= 1.1 -mkdocs-material -mdx_gh_links -markdown -lightgallery \ No newline at end of file +mkdocs>=1.1 +Pygments>=2.4 +markdown>=3.2 +mkdocs-material-extensions>=1.0 +pymdown-extensions>=7.0 +mkdocs-macros-plugin>=0.5 diff --git a/theme/css/f2c-header.css b/theme/css/f2c-header.css index 96fe656..255dc84 100644 --- a/theme/css/f2c-header.css +++ b/theme/css/f2c-header.css @@ -1,6 +1,10 @@ .sticky{position: fixed;top: 0;right: 0;left: 0;z-index: 10;} /*! CSS Used from: https://metersphere.io/css/bootstrap.min.css */ *,::after,::before{box-sizing:border-box;} +h4,h5{margin-top:0;margin-bottom:.5rem;} +p{margin-top:0;margin-bottom:1rem;} +img{vertical-align:middle;border-style:none;} +svg{overflow:hidden;vertical-align:middle;} button{border-radius:0;} button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color;} button{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;} @@ -8,26 +12,6 @@ button{overflow:visible;} button{text-transform:none;} [type=button],button{-webkit-appearance:button;} [type=button]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none;} -.fade{transition:opacity .15s linear;} -@media (prefers-reduced-motion:reduce){ -.fade{transition:none;} -} -.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem;} -.alert-dismissible{padding-right:4rem;} -.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit;} -.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5;} -.close:hover{color:#000;text-decoration:none;} -button.close{padding:0;background-color:transparent;border:0;} -.pr-4{padding-right:1.5rem!important;} -.text-center{text-align:center!important;} -@media print{ -*,::after,::before{text-shadow:none!important;box-shadow:none!important;} -a:not(.btn){text-decoration:underline;} -} -h4,h5{margin-top:0;margin-bottom:.5rem;} -p{margin-top:0;margin-bottom:1rem;} -img{vertical-align:middle;border-style:none;} -svg{overflow:hidden;vertical-align:middle;} h4,h5{margin-bottom:.5rem;font-weight:500;line-height:1.2;} h4{font-size:1.5rem;} h5{font-size:1.25rem;} @@ -166,35 +150,24 @@ p{line-height:1.6;} .explore-feature .icon{height:80px;width:80px;line-height:80px;-webkit-transition:all 0.5s ease;transition:all 0.5s ease;} .explore-feature:hover{-webkit-box-shadow:0 10px 25px rgba(60, 72, 88, 0.15)!important;box-shadow:0 10px 25px rgba(60, 72, 88, 0.15)!important;} .explore-feature:hover .icon{color:#2f55d4!important;} -.alert{padding:8px 15px;border-radius:6px;font-size:14px;} -.alert.alert-dismissible{padding-right:30px;} -.alert.alert-dismissible .close{top:-6px;right:-10px;font-size:16px!important;} /*! CSS Used from: https://metersphere.io/css/colors/default.css */ .explore-feature:hover .icon{color:#783887!important;} ::selection{background-color:rgba(255, 91, 105, 0.9);} /*! CSS Used from: https://metersphere.io/css/index.css */ -@media (max-width: 768px){ -.notice-phone{display:none!important;} -} -.btn-outline-release{padding:6px 12px;border:1px solid white;color:white;background-color:transparent;line-height:2.5;} -.alert-release{padding:8px 16px;border-radius:0px;font-size:14px;margin-bottom:0px;background-color:rgba(120, 56, 135);color:#ffffff;border-color:rgba(120, 56, 135);} p{font-family:-apple-system, BlinkMacSystemFont, "Neue Haas Grotesk Text Pro", "Arial Nova", "Segoe UI", "Helvetica Neue", ".PingFang SC", "PingFang SC", "Source Han Sans SC", "Noto Sans CJK SC", "Source Han Sans CN", "Noto Sans SC", "Source Han Sans TC", "Noto Sans CJK TC", "Hiragino Sans GB", sans-serif;} h4,h5{font-family:-apple-system, BlinkMacSystemFont, "Neue Haas Grotesk Text Pro", "Arial Nova", "Segoe UI", "Helvetica Neue", ".PingFang SC", "PingFang SC", "Source Han Sans SC", "Noto Sans CJK SC", "Source Han Sans CN", "Noto Sans SC", "Source Han Sans TC", "Noto Sans CJK TC", "Hiragino Sans GB", sans-serif;line-height:1.5;font-weight:300;margin-bottom:0;} .card{background:none;} @media (max-width: 768px){ -.notice-phone{display:none!important;} .mega-nav-sandbox .mega-nav-body{background-color:white;box-shadow:0 2px 16px rgba(79,99,122,0.2);color:black;margin:1em;padding:1em!important;} } .mega-nav-sandbox .mega-nav-body{background-color:white;box-shadow:0 2px 16px rgba(79,99,122,0.2);color:black;margin-top:1em;padding:1em;padding-left:100px;padding-right:100px;} .explore-feature .icon-size{height:30px;width:30px;line-height:30px;-webkit-transition:all 0.5s ease;transition:all 0.5s ease;} .explore-feature .product-text-color{color:#6c757d;} -.explore-feature:hover .bg-js{background-color:#2b937c;color:white!important;} +.explore-feature:hover .bg-js{background-color:#004a71;color:white!important;} .explore-feature:hover .bg-ms{background-color:#783887;color:white!important;} .explore-feature:hover .bg-ko{background-color:#fc6554;color:white!important;} .explore-feature:hover .bg-f2c{background-color:#00355d;color:white!important;} .card .header-card-body{padding:1rem!important;} -.alert-release{padding:4px 16px;border-radius:0px;font-size:14px;margin-bottom:0px;background-color:rgba(120, 56, 135);color:#ffffff;border-color:rgba(120, 56, 135);} -.btn-outline-release{padding:6px 12px;border:1px solid white;color:white;background-color:transparent;line-height:2.5;} /*! CSS Used fontfaces */ @font-face{font-family:'Nunito';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/nunito/v16/XRXW3I6Li01BKofAnsSUbOvISTs.woff2) format('woff2');unicode-range:U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;} @font-face{font-family:'Nunito';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/nunito/v16/XRXW3I6Li01BKofAnsSUZevISTs.woff2) format('woff2');unicode-range:U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;} @@ -217,32 +190,14 @@ h4,h5{font-family:-apple-system, BlinkMacSystemFont, "Neue Haas Grotesk Text Pro @font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/nunito/v16/XRXW3I6Li01BKofAjsOUb-vISTs.woff2) format('woff2');unicode-range:U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;} @font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/nunito/v16/XRXW3I6Li01BKofAjsOUYevI.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;} - -/*! CSS Used from: https://metersphere.io/css/bootstrap.min.css */ -*,::after,::before{box-sizing:border-box;} -section{display:block;} -p{margin-top:0;margin-bottom:1rem;} -a{color:#a4b1b2;text-decoration:none;background-color:transparent;} -a:hover{color:#a4b1b2;text-decoration:underline;} -.pr-1{padding-right:.25rem!important;} -@media print{ -*,::after,::before{text-shadow:none!important;box-shadow:none!important;} -a:not(.btn){text-decoration:underline;} -p{orphans:3;widows:3;} -} -/*! CSS Used from: https://metersphere.io/css/materialdesignicons.min.css */ -.mdi:before{display:inline-block;font:normal normal normal 24px/1 "Material Design Icons";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;} -.mdi-download::before{content:"\F01DA";} -/*! CSS Used from: https://metersphere.io/css/style.css */ -::-moz-selection{background:rgba(47, 85, 212, 0.9);color:#ffffff;} -::selection{background:rgba(47, 85, 212, 0.9);color:#ffffff;} -a{text-decoration:none!important;} -p{line-height:1.6;} -/*! CSS Used from: https://metersphere.io/css/colors/default.css */ -::selection{background-color:rgba(255, 91, 105, 0.9);} -/*! CSS Used from: https://metersphere.io/css/index.css */ -p{font-family:-apple-system, BlinkMacSystemFont, "Neue Haas Grotesk Text Pro", "Arial Nova", "Segoe UI", "Helvetica Neue", ".PingFang SC", "PingFang SC", "Source Han Sans SC", "Noto Sans CJK SC", "Source Han Sans CN", "Noto Sans SC", "Source Han Sans TC", "Noto Sans CJK TC", "Hiragino Sans GB", sans-serif;} -.footer-start-box{position:fixed;bottom:75px!important;right:30px!important;width:230px!important;height:45px!important;padding:13px;border-radius:20px;box-shadow:0 8px 16px 0 rgba(46,37,111,.32);background-image:linear-gradient(109deg,#783887,#7565ee);color:#fff;cursor:pointer;text-align:center;} +.footer-start-box{position:fixed;bottom:75px!important;right:30px!important;width:100px!important;height:45px!important;padding:13px;border-radius:20px;box-shadow:0 8px 16px 0 rgba(46,37,111,.32);background-image:linear-gradient(109deg,#004a71,#004a71);color:#fff;cursor:pointer;text-align:center;} .footer-start-title{font-weight:600;} -/*! CSS Used fontfaces */ -@font-face{font-family:"Material Design Icons";src:url("../fonts/materialdesignicons-webfont.woff2?v=5.3.45") format("woff2"),url("../fonts/materialdesignicons-webfont.woff?v=5.3.45") format("woff"),url("../fonts/materialdesignicons-webfont.ttf?v=5.3.45") format("truetype");font-weight:normal;font-style:normal;} \ No newline at end of file + +@-webkit-keyframes mdx-heart{0%,40%,80%,to{transform:scale(1)}20%,60%{transform:scale(1.15)}} +@keyframes mdx-heart{0%,40%,80%,to{transform:scale(1)}20%,60%{transform:scale(1.15)}} +.mdx-content__footer{margin-top:1rem;text-align:center} +.mdx-content__footer a{display:inline-block;color:#e91e63;transition:transform .25s cubic-bezier(.1,.7,.1,1),color 125ms} +.mdx-content__footer a:focus, +.mdx-content__footer a:hover{transform:scale(1.2)} +.mdx-content__footer hr{display:inline-block;width:2rem;margin:1em;vertical-align:middle;background-color:currentColor;border:none} +.mdx-heart{-webkit-animation:mdx-heart 1s infinite;animation:mdx-heart 1s infinite} diff --git a/theme/css/lightgallery.min.css b/theme/css/lightgallery.min.css index 104d68f..f730da7 100644 --- a/theme/css/lightgallery.min.css +++ b/theme/css/lightgallery.min.css @@ -1 +1 @@ -@font-face{font-family:lg;src:url(../fonts/lg.ttf?22t19m) format("truetype"),url(../fonts/lg.woff?22t19m) format("woff"),url(../fonts/lg.svg?22t19m#lg) format("svg");font-weight:400;font-style:normal;font-display:block}.lg-icon{font-family:lg!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lg-actions .lg-next,.lg-actions .lg-prev{border-radius:2px;color:#999;cursor:pointer;display:block;font-size:22px;margin-top:-10px;padding:8px 10px 9px;position:absolute;top:50%;z-index:1080;outline:0;border:none;background-color:transparent}.lg-actions .lg-next.disabled,.lg-actions .lg-prev.disabled{pointer-events:none;opacity:.5}.lg-actions .lg-next:hover,.lg-actions .lg-prev:hover{color:#FFF}.lg-actions .lg-next{right:20px}.lg-actions .lg-next:before{content:"\e095"}.lg-actions .lg-prev{left:20px}.lg-actions .lg-prev:after{content:"\e094"}@-webkit-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-moz-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-ms-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-webkit-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@-moz-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@-ms-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}.lg-outer.lg-right-end .lg-object{-webkit-animation:lg-right-end .3s;-o-animation:lg-right-end .3s;animation:lg-right-end .3s;position:relative}.lg-outer.lg-left-end .lg-object{-webkit-animation:lg-left-end .3s;-o-animation:lg-left-end .3s;animation:lg-left-end .3s;position:relative}.lg-toolbar{z-index:1082;left:0;position:absolute;top:0;width:100%;background-color:rgba(0,0,0,.45)}.lg-toolbar .lg-icon{color:#999;cursor:pointer;float:right;font-size:24px;height:47px;line-height:27px;padding:10px 0;text-align:center;width:50px;text-decoration:none!important;outline:0;background:0 0;border:none;box-shadow:none;-webkit-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.lg-toolbar .lg-icon:hover{color:#FFF}.lg-toolbar .lg-close:after{content:"\e070"}.lg-toolbar .lg-download:after{content:"\e0f2"}.lg-sub-html{background-color:rgba(0,0,0,.45);bottom:0;color:#EEE;font-size:16px;left:0;padding:10px 40px;position:fixed;right:0;text-align:center;z-index:1080}.lg-sub-html h4{margin:0;font-size:13px;font-weight:700}.lg-sub-html p{font-size:12px;margin:5px 0 0}#lg-counter{color:#999;display:inline-block;font-size:16px;padding-left:20px;padding-top:12px;vertical-align:middle}.lg-next,.lg-prev,.lg-toolbar{opacity:1;-webkit-transition:-webkit-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;-moz-transition:-moz-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;-o-transition:-o-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;transition:transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear}.lg-hide-items .lg-prev{opacity:0;-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}.lg-hide-items .lg-next{opacity:0;-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}.lg-hide-items .lg-toolbar{opacity:0;-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object{-webkit-transform:scale3d(.5,.5,.5);transform:scale3d(.5,.5,.5);opacity:0;-webkit-transition:-webkit-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-moz-transition:-moz-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-o-transition:-o-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;transition:transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-webkit-transform-origin:50% 50%;-moz-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%}body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object{-webkit-transform:scale3d(1,1,1);transform:scale3d(1,1,1);opacity:1}.lg-outer .lg-thumb-outer{background-color:#0D0A0A;bottom:0;position:absolute;width:100%;z-index:1080;max-height:350px;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1) 0s;-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1) 0s;-o-transition:-o-transform .25s cubic-bezier(0,0,.25,1) 0s;transition:transform .25s cubic-bezier(0,0,.25,1) 0s}.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb{-webkit-transition-duration:0s!important;transition-duration:0s!important}.lg-outer.lg-thumb-open .lg-thumb-outer{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.lg-outer .lg-thumb{padding:10px 0;height:100%;margin-bottom:-5px}.lg-outer .lg-thumb-item{cursor:pointer;float:left;overflow:hidden;height:100%;border:2px solid #FFF;border-radius:4px;margin-bottom:5px}@media (min-width:1025px){.lg-outer .lg-thumb-item{-webkit-transition:border-color .25s ease;-o-transition:border-color .25s ease;transition:border-color .25s ease}}.lg-outer .lg-thumb-item.active,.lg-outer .lg-thumb-item:hover{border-color:#a90707}.lg-outer .lg-thumb-item img{width:100%;height:100%;object-fit:cover}.lg-outer.lg-has-thumb .lg-item{padding-bottom:120px}.lg-outer.lg-can-toggle .lg-item{padding-bottom:0}.lg-outer.lg-pull-caption-up .lg-sub-html{-webkit-transition:bottom .25s ease;-o-transition:bottom .25s ease;transition:bottom .25s ease}.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html{bottom:100px}.lg-outer .lg-toggle-thumb{background-color:#0D0A0A;border-radius:2px 2px 0 0;color:#999;cursor:pointer;font-size:24px;height:39px;line-height:27px;padding:5px 0;position:absolute;right:20px;text-align:center;top:-39px;width:50px;outline:0;border:none}.lg-outer .lg-toggle-thumb:after{content:"\e1ff"}.lg-outer .lg-toggle-thumb:hover{color:#FFF}.lg-outer .lg-video-cont{display:inline-block;vertical-align:middle;max-width:1140px;max-height:100%;width:100%;padding:0 5px}.lg-outer .lg-video{width:100%;height:0;padding-bottom:56.25%;overflow:hidden;position:relative}.lg-outer .lg-video .lg-object{display:inline-block;position:absolute;top:0;left:0;width:100%!important;height:100%!important}.lg-outer .lg-video .lg-video-play{width:84px;height:59px;position:absolute;left:50%;top:50%;margin-left:-42px;margin-top:-30px;z-index:1080;cursor:pointer}.lg-outer .lg-has-vimeo .lg-video-play{background:url(../img/vimeo-play.png) no-repeat}.lg-outer .lg-has-vimeo:hover .lg-video-play{background:url(../img/vimeo-play.png) 0 -58px no-repeat}.lg-outer .lg-has-html5 .lg-video-play{background:url(../img/video-play.png) no-repeat;height:64px;margin-left:-32px;margin-top:-32px;width:64px;opacity:.8}.lg-outer .lg-has-html5:hover .lg-video-play{opacity:1}.lg-outer .lg-has-youtube .lg-video-play{background:url(../img/youtube-play.png) no-repeat}.lg-outer .lg-has-youtube:hover .lg-video-play{background:url(../img/youtube-play.png) 0 -60px no-repeat}.lg-outer .lg-video-object{width:100%!important;height:100%!important;position:absolute;top:0;left:0}.lg-outer .lg-has-video .lg-video-object{visibility:hidden}.lg-outer .lg-has-video.lg-video-playing .lg-object,.lg-outer .lg-has-video.lg-video-playing .lg-video-play{display:none}.lg-outer .lg-has-video.lg-video-playing .lg-video-object{visibility:visible}.lg-progress-bar{background-color:#333;height:5px;left:0;position:absolute;top:0;width:100%;z-index:1083;opacity:0;-webkit-transition:opacity 80ms ease 0s;-moz-transition:opacity 80ms ease 0s;-o-transition:opacity 80ms ease 0s;transition:opacity 80ms ease 0s}.lg-progress-bar .lg-progress{background-color:#a90707;height:5px;width:0}.lg-progress-bar.lg-start .lg-progress{width:100%}.lg-show-autoplay .lg-progress-bar{opacity:1}.lg-autoplay-button:after{content:"\e01d"}.lg-show-autoplay .lg-autoplay-button:after{content:"\e01a"}.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image,.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition-duration:0s;transition-duration:0s}.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition:-webkit-transform .3s cubic-bezier(0,0,.25,1) 0s;-moz-transition:-moz-transform .3s cubic-bezier(0,0,.25,1) 0s;-o-transition:-o-transform .3s cubic-bezier(0,0,.25,1) 0s;transition:transform .3s cubic-bezier(0,0,.25,1) 0s}.lg-outer.lg-use-left-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;-moz-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;-o-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s}.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image{-webkit-transform:scale3d(1,1,1);transform:scale3d(1,1,1);-webkit-transition:-webkit-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-moz-transition:-moz-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-o-transition:-o-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;transition:transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}#lg-zoom-in:after{content:"\e311"}#lg-actual-size{font-size:20px}#lg-actual-size:after{content:"\e033"}#lg-zoom-out{opacity:.5;pointer-events:none}#lg-zoom-out:after{content:"\e312"}.lg-zoomed #lg-zoom-out{opacity:1;pointer-events:auto}.lg-outer .lg-pager-outer{bottom:60px;left:0;position:absolute;right:0;text-align:center;z-index:1080;height:10px}.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont{overflow:visible}.lg-outer .lg-pager-cont{cursor:pointer;display:inline-block;overflow:hidden;position:relative;vertical-align:top;margin:0 5px}.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.lg-outer .lg-pager-cont.lg-pager-active .lg-pager{box-shadow:0 0 0 2px #fff inset}.lg-outer .lg-pager-thumb-cont{background-color:#fff;color:#FFF;bottom:100%;height:83px;left:0;margin-bottom:20px;margin-left:-60px;opacity:0;padding:5px;position:absolute;width:120px;border-radius:3px;-webkit-transition:opacity .15s ease 0s,-webkit-transform .15s ease 0s;-moz-transition:opacity .15s ease 0s,-moz-transform .15s ease 0s;-o-transition:opacity .15s ease 0s,-o-transform .15s ease 0s;transition:opacity .15s ease 0s,transform .15s ease 0s;-webkit-transform:translate3d(0,5px,0);transform:translate3d(0,5px,0)}.lg-outer .lg-pager-thumb-cont img{width:100%;height:100%}.lg-outer .lg-pager{background-color:rgba(255,255,255,.5);border-radius:50%;box-shadow:0 0 0 8px rgba(255,255,255,.7) inset;display:block;height:12px;-webkit-transition:box-shadow .3s ease 0s;-o-transition:box-shadow .3s ease 0s;transition:box-shadow .3s ease 0s;width:12px}.lg-outer .lg-pager:focus,.lg-outer .lg-pager:hover{box-shadow:0 0 0 8px #fff inset}.lg-outer .lg-caret{border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px dashed;bottom:-10px;display:inline-block;height:0;left:50%;margin-left:-5px;position:absolute;vertical-align:middle;width:0}.lg-fullscreen:after{content:"\e20c"}.lg-fullscreen-on .lg-fullscreen:after{content:"\e20d"}.lg-outer #lg-dropdown-overlay{background-color:rgba(0,0,0,.25);bottom:0;cursor:default;left:0;position:fixed;right:0;top:0;z-index:1081;opacity:0;visibility:hidden;-webkit-transition:visibility 0s linear .18s,opacity .18s linear 0s;-o-transition:visibility 0s linear .18s,opacity .18s linear 0s;transition:visibility 0s linear .18s,opacity .18s linear 0s}.lg-outer.lg-dropdown-active #lg-dropdown-overlay,.lg-outer.lg-dropdown-active .lg-dropdown{-webkit-transition-delay:0s;transition-delay:0s;-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1;visibility:visible}.lg-outer.lg-dropdown-active #lg-share{color:#FFF}.lg-outer .lg-dropdown{background-color:#fff;border-radius:2px;font-size:14px;list-style-type:none;margin:0;padding:10px 0;position:absolute;right:0;text-align:left;top:50px;opacity:0;visibility:hidden;-moz-transform:translate3d(0,5px,0);-o-transform:translate3d(0,5px,0);-ms-transform:translate3d(0,5px,0);-webkit-transform:translate3d(0,5px,0);transform:translate3d(0,5px,0);-webkit-transition:-webkit-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;-moz-transition:-moz-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;-o-transition:-o-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;transition:transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s}.lg-outer .lg-dropdown:after{content:"";display:block;height:0;width:0;position:absolute;border:8px solid transparent;border-bottom-color:#FFF;right:16px;top:-16px}.lg-outer .lg-dropdown>li:last-child{margin-bottom:0}.lg-outer .lg-dropdown>li:hover .lg-icon,.lg-outer .lg-dropdown>li:hover a{color:#333}.lg-outer .lg-dropdown a{color:#333;display:block;white-space:pre;padding:4px 12px;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px}.lg-outer .lg-dropdown a:hover{background-color:rgba(0,0,0,.07)}.lg-outer .lg-dropdown .lg-dropdown-text{display:inline-block;line-height:1;margin-top:-3px;vertical-align:middle}.lg-outer .lg-dropdown .lg-icon{color:#333;display:inline-block;float:none;font-size:20px;height:auto;line-height:1;margin-right:8px;padding:0;vertical-align:middle;width:auto}.lg-outer,.lg-outer .lg,.lg-outer .lg-inner{height:100%;width:100%}.lg-outer #lg-share{position:relative}.lg-outer #lg-share:after{content:"\e80d"}.lg-outer #lg-share-facebook .lg-icon{color:#3b5998}.lg-outer #lg-share-facebook .lg-icon:after{content:"\e904"}.lg-outer #lg-share-twitter .lg-icon{color:#00aced}.lg-outer #lg-share-twitter .lg-icon:after{content:"\e907"}.lg-outer #lg-share-googleplus .lg-icon{color:#dd4b39}.lg-outer #lg-share-googleplus .lg-icon:after{content:"\e905"}.lg-outer #lg-share-pinterest .lg-icon{color:#cb2027}.lg-outer #lg-share-pinterest .lg-icon:after{content:"\e906"}.lg-outer .lg-img-rotate{position:absolute;padding:0 5px;left:0;right:0;top:0;bottom:0;-webkit-transition:-webkit-transform .3s cubic-bezier(.32,0,.67,0) 0s;-moz-transition:-moz-transform .3s cubic-bezier(.32,0,.67,0) 0s;-o-transition:-o-transform .3s cubic-bezier(.32,0,.67,0) 0s;transition:transform .3s cubic-bezier(.32,0,.67,0) 0s}.lg-rotate-left:after{content:"\e900"}.lg-rotate-right:after{content:"\e901"}.lg-icon.lg-flip-hor,.lg-icon.lg-flip-ver{font-size:26px}.lg-flip-hor:after{content:"\e902"}.lg-flip-ver:after{content:"\e903"}.lg-group:after,.lg-group:before{display:table;content:"";line-height:0}.lg-group:after{clear:both}.lg-outer{position:fixed;top:0;left:0;z-index:1050;opacity:0;outline:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-outer *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lg-outer.lg-visible{opacity:1}.lg-outer.lg-css3 .lg-item.lg-current,.lg-outer.lg-css3 .lg-item.lg-next-slide,.lg-outer.lg-css3 .lg-item.lg-prev-slide{-webkit-transition-duration:inherit!important;transition-duration:inherit!important;-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important}.lg-outer.lg-css3.lg-dragging .lg-item.lg-current,.lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide,.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide{-webkit-transition-duration:0s!important;transition-duration:0s!important;opacity:1}.lg-outer.lg-grab img.lg-object{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lg-outer.lg-grabbing img.lg-object{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}.lg-outer .lg{position:relative;overflow:hidden;margin-left:auto;margin-right:auto;max-width:100%;max-height:100%}.lg-outer .lg-inner{position:absolute;left:0;top:0;white-space:nowrap}.lg-outer .lg-item{background:url(../img/loading.gif) center center no-repeat;display:none!important}.lg-outer.lg-css .lg-current,.lg-outer.lg-css3 .lg-current,.lg-outer.lg-css3 .lg-next-slide,.lg-outer.lg-css3 .lg-prev-slide{display:inline-block!important}.lg-outer .lg-img-wrap,.lg-outer .lg-item{display:inline-block;text-align:center;position:absolute;width:100%;height:100%}.lg-outer .lg-img-wrap:before,.lg-outer .lg-item:before{content:"";display:inline-block;height:50%;width:1px;margin-right:-1px}.lg-outer .lg-img-wrap{position:absolute;padding:0 5px;left:0;right:0;top:0;bottom:0}.lg-outer .lg-item.lg-complete{background-image:none}.lg-outer .lg-item.lg-current{z-index:1060}.lg-outer .lg-image{display:inline-block;vertical-align:middle;max-width:100%;max-height:100%;width:auto!important;height:auto!important}.lg-outer.lg-show-after-load .lg-item .lg-object,.lg-outer.lg-show-after-load .lg-item .lg-video-play{opacity:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object,.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play{opacity:1}.lg-outer .lg-empty-html,.lg-outer.lg-hide-download #lg-download{display:none}.lg-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1040;background-color:#000;opacity:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-backdrop.in{opacity:1}.lg-css3.lg-no-trans .lg-current,.lg-css3.lg-no-trans .lg-next-slide,.lg-css3.lg-no-trans .lg-prev-slide{-webkit-transition:none 0s ease 0s!important;-moz-transition:none 0s ease 0s!important;-o-transition:none 0s ease 0s!important;transition:none 0s ease 0s!important}.lg-css3.lg-use-css3 .lg-item,.lg-css3.lg-use-left .lg-item{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}.lg-css3.lg-fade .lg-item{opacity:0}.lg-css3.lg-fade .lg-item.lg-current{opacity:1}.lg-css3.lg-fade .lg-item.lg-current,.lg-css3.lg-fade .lg-item.lg-next-slide,.lg-css3.lg-fade .lg-item.lg-prev-slide{-webkit-transition:opacity .1s ease 0s;-moz-transition:opacity .1s ease 0s;-o-transition:opacity .1s ease 0s;transition:opacity .1s ease 0s}.lg-css3.lg-slide.lg-use-css3 .lg-item{opacity:0}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current,.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide,.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide{-webkit-transition:-webkit-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-moz-transition:-moz-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-o-transition:-o-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;transition:transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s}.lg-css3.lg-slide.lg-use-left .lg-item{opacity:0;position:absolute;left:0}.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide{left:-100%}.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide{left:100%}.lg-css3.lg-slide.lg-use-left .lg-item.lg-current{left:0;opacity:1}.lg-css3.lg-slide.lg-use-left .lg-item.lg-current,.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide,.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide{-webkit-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-moz-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-o-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s} \ No newline at end of file +@font-face{font-family:lg;src:url(../fonts/lg.ttf?22t19m) format("truetype"),url(../fonts/lg.woff?22t19m) format("woff"),url(../fonts/lg.svg?22t19m#lg) format("svg");font-weight:400;font-style:normal;font-display:block}.lg-icon{font-family:lg!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lg-actions .lg-next,.lg-actions .lg-prev{border-radius:2px;color:#999;cursor:pointer;display:block;font-size:22px;margin-top:-10px;padding:8px 10px 9px;position:absolute;top:50%;z-index:1080;outline:0;border:none;background-color:transparent}.lg-actions .lg-next.disabled,.lg-actions .lg-prev.disabled{pointer-events:none;opacity:.5}.lg-actions .lg-next:hover,.lg-actions .lg-prev:hover{color:#FFF}.lg-actions .lg-next{right:20px}.lg-actions .lg-next:before{content:"\e095"}.lg-actions .lg-prev{left:20px}.lg-actions .lg-prev:after{content:"\e094"}@-webkit-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-moz-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-ms-keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@keyframes lg-right-end{0%,100%{left:0}50%{left:-30px}}@-webkit-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@-moz-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@-ms-keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}@keyframes lg-left-end{0%,100%{left:0}50%{left:30px}}.lg-outer.lg-right-end .lg-object{-webkit-animation:lg-right-end .3s;-o-animation:lg-right-end .3s;animation:lg-right-end .3s;position:relative}.lg-outer.lg-left-end .lg-object{-webkit-animation:lg-left-end .3s;-o-animation:lg-left-end .3s;animation:lg-left-end .3s;position:relative}.lg-toolbar{z-index:1082;left:0;position:absolute;top:0;width:100%;background-color:rgba(0,0,0,.45)}.lg-toolbar .lg-icon{color:#999;cursor:pointer;float:right;font-size:24px;height:47px;line-height:27px;padding:10px 0;text-align:center;width:50px;text-decoration:none!important;outline:0;background:0 0;border:none;box-shadow:none;-webkit-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.lg-toolbar .lg-icon:hover{color:#FFF}.lg-toolbar .lg-close:after{content:"\e070"}.lg-toolbar .lg-download:after{content:"\e0f2"}.lg-sub-html{background-color:rgba(0,0,0,.45);bottom:0;color:#EEE;font-size:16px;left:0;padding:10px 40px;position:fixed;right:0;text-align:center;z-index:1080}.lg-sub-html h4{margin:0;font-size:13px;font-weight:700}.lg-sub-html p{font-size:12px;margin:5px 0 0}#lg-counter{color:#999;display:inline-block;font-size:16px;padding-left:20px;padding-top:12px;vertical-align:middle}.lg-next,.lg-prev,.lg-toolbar{opacity:1;-webkit-transition:-webkit-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;-moz-transition:-moz-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;-o-transition:-o-transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear;transition:transform .35s cubic-bezier(0,0,.25,1) 0s,opacity .35s cubic-bezier(0,0,.25,1) 0s,color .2s linear}.lg-hide-items .lg-prev{opacity:0;-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}.lg-hide-items .lg-next{opacity:0;-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}.lg-hide-items .lg-toolbar{opacity:0;-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object{-webkit-transform:scale3d(.5,.5,.5);transform:scale3d(.5,.5,.5);opacity:0;-webkit-transition:-webkit-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-moz-transition:-moz-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-o-transition:-o-transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;transition:transform 250ms cubic-bezier(0,0,.25,1) 0s,opacity 250ms cubic-bezier(0,0,.25,1)!important;-webkit-transform-origin:50% 50%;-moz-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%}body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object{-webkit-transform:scale3d(1,1,1);transform:scale3d(1,1,1);opacity:1}.lg-outer .lg-thumb-outer{background-color:#0D0A0A;bottom:0;position:absolute;width:100%;z-index:1080;max-height:350px;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1) 0s;-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1) 0s;-o-transition:-o-transform .25s cubic-bezier(0,0,.25,1) 0s;transition:transform .25s cubic-bezier(0,0,.25,1) 0s}.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb{-webkit-transition-duration:0s!important;transition-duration:0s!important}.lg-outer.lg-thumb-open .lg-thumb-outer{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.lg-outer .lg-thumb{padding:10px 0;height:100%;margin-bottom:-5px}.lg-outer .lg-thumb-item{cursor:pointer;float:left;overflow:hidden;height:100%;border:2px solid #FFF;border-radius:4px;margin-bottom:5px}@media (min-width:1025px){.lg-outer .lg-thumb-item{-webkit-transition:border-color .25s ease;-o-transition:border-color .25s ease;transition:border-color .25s ease}}.lg-outer .lg-thumb-item.active,.lg-outer .lg-thumb-item:hover{border-color:#a90707}.lg-outer .lg-thumb-item img{width:100%;height:100%;object-fit:cover}.lg-outer.lg-has-thumb .lg-item{padding-bottom:120px}.lg-outer.lg-can-toggle .lg-item{padding-bottom:0}.lg-outer.lg-pull-caption-up .lg-sub-html{-webkit-transition:bottom .25s ease;-o-transition:bottom .25s ease;transition:bottom .25s ease}.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html{bottom:100px}.lg-outer .lg-toggle-thumb{background-color:#0D0A0A;border-radius:2px 2px 0 0;color:#999;cursor:pointer;font-size:24px;height:39px;line-height:27px;padding:5px 0;position:absolute;right:20px;text-align:center;top:-39px;width:50px;outline:0;border:none}.lg-outer .lg-toggle-thumb:after{content:"\e1ff"}.lg-outer .lg-toggle-thumb:hover{color:#FFF}.lg-outer .lg-video-cont{display:inline-block;vertical-align:middle;max-width:1140px;max-height:100%;width:100%;padding:0 5px}.lg-outer .lg-video{width:100%;height:0;padding-bottom:56.25%;overflow:hidden;position:relative}.lg-outer .lg-video .lg-object{display:inline-block;position:absolute;top:0;left:0;width:100%!important;height:100%!important}.lg-outer .lg-video .lg-video-play{width:84px;height:59px;position:absolute;left:50%;top:50%;margin-left:-42px;margin-top:-30px;z-index:1080;cursor:pointer}.lg-outer .lg-has-vimeo .lg-video-play{background:url(../img/vimeo-play.png) no-repeat}.lg-outer .lg-has-vimeo:hover .lg-video-play{background:url(../img/vimeo-play.png) 0 -58px no-repeat}.lg-outer .lg-has-html5 .lg-video-play{background:url(../img/video-play.png) no-repeat;height:64px;margin-left:-32px;margin-top:-32px;width:64px;opacity:.8}.lg-outer .lg-has-html5:hover .lg-video-play{opacity:1}.lg-outer .lg-has-youtube .lg-video-play{background:url(../img/youtube-play.png) no-repeat}.lg-outer .lg-has-youtube:hover .lg-video-play{background:url(../img/youtube-play.png) 0 -60px no-repeat}.lg-outer .lg-video-object{width:100%!important;height:100%!important;position:absolute;top:0;left:0}.lg-outer .lg-has-video .lg-video-object{visibility:hidden}.lg-outer .lg-has-video.lg-video-playing .lg-object,.lg-outer .lg-has-video.lg-video-playing .lg-video-play{display:none}.lg-outer .lg-has-video.lg-video-playing .lg-video-object{visibility:visible}.lg-progress-bar{background-color:#333;height:5px;left:0;position:absolute;top:0;width:100%;z-index:1083;opacity:0;-webkit-transition:opacity 80ms ease 0s;-moz-transition:opacity 80ms ease 0s;-o-transition:opacity 80ms ease 0s;transition:opacity 80ms ease 0s}.lg-progress-bar .lg-progress{background-color:#a90707;height:5px;width:0}.lg-progress-bar.lg-start .lg-progress{width:100%}.lg-show-autoplay .lg-progress-bar{opacity:1}.lg-autoplay-button:after{content:"\e01d"}.lg-show-autoplay .lg-autoplay-button:after{content:"\e01a"}.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image,.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition-duration:0s;transition-duration:0s}.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition:-webkit-transform .3s cubic-bezier(0,0,.25,1) 0s;-moz-transition:-moz-transform .3s cubic-bezier(0,0,.25,1) 0s;-o-transition:-o-transform .3s cubic-bezier(0,0,.25,1) 0s;transition:transform .3s cubic-bezier(0,0,.25,1) 0s}.lg-outer.lg-use-left-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;-moz-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;-o-transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s;transition:left .3s cubic-bezier(0,0,.25,1) 0s,top .3s cubic-bezier(0,0,.25,1) 0s}.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image{-webkit-transform:scale3d(1,1,1);transform:scale3d(1,1,1);-webkit-transition:-webkit-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-moz-transition:-moz-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-o-transition:-o-transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;transition:transform .3s cubic-bezier(0,0,.25,1) 0s,opacity .15s!important;-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}#lg-zoom-in:after{content:"\e311"}#lg-actual-size{font-size:20px}#lg-actual-size:after{content:"\e033"}#lg-zoom-out{opacity:.5;pointer-events:none}#lg-zoom-out:after{content:"\e312"}.lg-zoomed #lg-zoom-out{opacity:1;pointer-events:auto}.lg-outer .lg-pager-outer{bottom:60px;left:0;position:absolute;right:0;text-align:center;z-index:1080;height:10px}.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont{overflow:visible}.lg-outer .lg-pager-cont{cursor:pointer;display:inline-block;overflow:hidden;position:relative;vertical-align:top;margin:0 5px}.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.lg-outer .lg-pager-cont.lg-pager-active .lg-pager{box-shadow:0 0 0 2px #fff inset}.lg-outer .lg-pager-thumb-cont{background-color:#fff;color:#FFF;bottom:100%;height:83px;left:0;margin-bottom:20px;margin-left:-60px;opacity:0;padding:5px;position:absolute;width:120px;border-radius:3px;-webkit-transition:opacity .15s ease 0s,-webkit-transform .15s ease 0s;-moz-transition:opacity .15s ease 0s,-moz-transform .15s ease 0s;-o-transition:opacity .15s ease 0s,-o-transform .15s ease 0s;transition:opacity .15s ease 0s,transform .15s ease 0s;-webkit-transform:translate3d(0,5px,0);transform:translate3d(0,5px,0)}.lg-outer .lg-pager-thumb-cont img{width:100%;height:100%}.lg-outer .lg-pager{background-color:rgba(255,255,255,.5);border-radius:50%;box-shadow:0 0 0 8px rgba(255,255,255,.7) inset;display:block;height:12px;-webkit-transition:box-shadow .3s ease 0s;-o-transition:box-shadow .3s ease 0s;transition:box-shadow .3s ease 0s;width:12px}.lg-outer .lg-pager:focus,.lg-outer .lg-pager:hover{box-shadow:0 0 0 8px #fff inset}.lg-outer .lg-caret{border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px dashed;bottom:-10px;display:inline-block;height:0;left:50%;margin-left:-5px;position:absolute;vertical-align:middle;width:0}.lg-fullscreen:after{content:"\e20c"}.lg-fullscreen-on .lg-fullscreen:after{content:"\e20d"}.lg-outer #lg-dropdown-overlay{background-color:rgba(0,0,0,.25);bottom:0;cursor:default;left:0;position:fixed;right:0;top:0;z-index:1081;opacity:0;visibility:hidden;-webkit-transition:visibility 0s linear .18s,opacity .18s linear 0s;-o-transition:visibility 0s linear .18s,opacity .18s linear 0s;transition:visibility 0s linear .18s,opacity .18s linear 0s}.lg-outer.lg-dropdown-active #lg-dropdown-overlay,.lg-outer.lg-dropdown-active .lg-dropdown{-webkit-transition-delay:0s;transition-delay:0s;-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1;visibility:visible}.lg-outer.lg-dropdown-active #lg-share{color:#FFF}.lg-outer .lg-dropdown{background-color:#fff;border-radius:2px;font-size:14px;list-style-type:none;margin:0;padding:10px 0;position:absolute;right:0;text-align:left;top:50px;opacity:0;visibility:hidden;-moz-transform:translate3d(0,5px,0);-o-transform:translate3d(0,5px,0);-ms-transform:translate3d(0,5px,0);-webkit-transform:translate3d(0,5px,0);transform:translate3d(0,5px,0);-webkit-transition:-webkit-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;-moz-transition:-moz-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;-o-transition:-o-transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s;transition:transform .18s linear 0s,visibility 0s linear .5s,opacity .18s linear 0s}.lg-outer .lg-dropdown:after{content:"";display:block;height:0;width:0;position:absolute;border:8px solid transparent;border-bottom-color:#FFF;right:16px;top:-16px}.lg-outer .lg-dropdown>li:last-child{margin-bottom:0}.lg-outer .lg-dropdown>li:hover .lg-icon,.lg-outer .lg-dropdown>li:hover a{color:#333}.lg-outer .lg-dropdown a{color:#333;display:block;white-space:pre;padding:4px 12px;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px}.lg-outer .lg-dropdown a:hover{background-color:rgba(0,0,0,.07)}.lg-outer .lg-dropdown .lg-dropdown-text{display:inline-block;line-height:1;margin-top:-3px;vertical-align:middle}.lg-outer .lg-dropdown .lg-icon{color:#333;display:inline-block;float:none;font-size:20px;height:auto;line-height:1;margin-right:8px;padding:0;vertical-align:middle;width:auto}.lg-outer,.lg-outer .lg,.lg-outer .lg-inner{height:100%;width:100%}.lg-outer #lg-share{position:relative}.lg-outer #lg-share:after{content:"\e80d"}.lg-outer #lg-share-facebook .lg-icon{color:#3b5998}.lg-outer #lg-share-facebook .lg-icon:after{content:"\e904"}.lg-outer #lg-share-twitter .lg-icon{color:#00aced}.lg-outer #lg-share-twitter .lg-icon:after{content:"\e907"}.lg-outer #lg-share-googleplus .lg-icon{color:#dd4b39}.lg-outer #lg-share-googleplus .lg-icon:after{content:"\e905"}.lg-outer #lg-share-pinterest .lg-icon{color:#cb2027}.lg-outer #lg-share-pinterest .lg-icon:after{content:"\e906"}.lg-outer .lg-img-rotate{position:absolute;padding:0 5px;left:0;right:0;top:0;bottom:0;-webkit-transition:-webkit-transform .3s cubic-bezier(.32,0,.67,0) 0s;-moz-transition:-moz-transform .3s cubic-bezier(.32,0,.67,0) 0s;-o-transition:-o-transform .3s cubic-bezier(.32,0,.67,0) 0s;transition:transform .3s cubic-bezier(.32,0,.67,0) 0s}.lg-rotate-left:after{content:"\e900"}.lg-rotate-right:after{content:"\e901"}.lg-icon.lg-flip-hor,.lg-icon.lg-flip-ver{font-size:26px}.lg-flip-hor:after{content:"\e902"}.lg-flip-ver:after{content:"\e903"}.lg-group:after,.lg-group:before{display:table;content:"";line-height:0}.lg-group:after{clear:both}.lg-outer{position:fixed;top:0;left:0;z-index:1050;opacity:0;outline:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-outer *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lg-outer.lg-visible{opacity:1}.lg-outer.lg-css3 .lg-item.lg-current,.lg-outer.lg-css3 .lg-item.lg-next-slide,.lg-outer.lg-css3 .lg-item.lg-prev-slide{-webkit-transition-duration:inherit!important;transition-duration:inherit!important;-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important}.lg-outer.lg-css3.lg-dragging .lg-item.lg-current,.lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide,.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide{-webkit-transition-duration:0s!important;transition-duration:0s!important;opacity:1}.lg-outer.lg-grab img.lg-object{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.lg-outer.lg-grabbing img.lg-object{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing}.lg-outer .lg{position:relative;overflow:hidden;margin-left:auto;margin-right:auto;max-width:100%;max-height:100%}.lg-outer .lg-inner{position:absolute;left:0;top:0;white-space:nowrap}.lg-outer .lg-item{background:url(../img/loading.gif) center center no-repeat;display:none!important}.lg-outer.lg-css .lg-current,.lg-outer.lg-css3 .lg-current,.lg-outer.lg-css3 .lg-next-slide,.lg-outer.lg-css3 .lg-prev-slide{display:inline-block!important}.lg-outer .lg-img-wrap,.lg-outer .lg-item{display:inline-block;text-align:center;position:absolute;width:100%;height:100%}.lg-outer .lg-img-wrap:before,.lg-outer .lg-item:before{content:"";display:inline-block;height:50%;width:1px;margin-right:-1px}.lg-outer .lg-img-wrap{position:absolute;padding:0 5px;left:0;right:0;top:0;bottom:0}.lg-outer .lg-item.lg-complete{background-image:none}.lg-outer .lg-item.lg-current{z-index:1060}.lg-outer .lg-image{display:inline-block;vertical-align:middle;max-width:100%;max-height:100%;width:auto!important;height:auto!important}.lg-outer.lg-show-after-load .lg-item .lg-object,.lg-outer.lg-show-after-load .lg-item .lg-video-play{opacity:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object,.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play{opacity:1}.lg-outer .lg-empty-html,.lg-outer.lg-hide-download #lg-download{display:none}.lg-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1040;background-color:#000;opacity:0;-webkit-transition:opacity .15s ease 0s;-o-transition:opacity .15s ease 0s;transition:opacity .15s ease 0s}.lg-backdrop.in{opacity:1}.lg-css3.lg-no-trans .lg-current,.lg-css3.lg-no-trans .lg-next-slide,.lg-css3.lg-no-trans .lg-prev-slide{-webkit-transition:none 0s ease 0s!important;-moz-transition:none 0s ease 0s!important;-o-transition:none 0s ease 0s!important;transition:none 0s ease 0s!important}.lg-css3.lg-use-css3 .lg-item,.lg-css3.lg-use-left .lg-item{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}.lg-css3.lg-fade .lg-item{opacity:0}.lg-css3.lg-fade .lg-item.lg-current{opacity:1}.lg-css3.lg-fade .lg-item.lg-current,.lg-css3.lg-fade .lg-item.lg-next-slide,.lg-css3.lg-fade .lg-item.lg-prev-slide{-webkit-transition:opacity .1s ease 0s;-moz-transition:opacity .1s ease 0s;-o-transition:opacity .1s ease 0s;transition:opacity .1s ease 0s}.lg-css3.lg-slide.lg-use-css3 .lg-item{opacity:0}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current,.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide,.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide{-webkit-transition:-webkit-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-moz-transition:-moz-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-o-transition:-o-transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;transition:transform 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s}.lg-css3.lg-slide.lg-use-left .lg-item{opacity:0;position:absolute;left:0}.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide{left:-100%}.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide{left:100%}.lg-css3.lg-slide.lg-use-left .lg-item.lg-current{left:0;opacity:1}.lg-css3.lg-slide.lg-use-left .lg-item.lg-current,.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide,.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide{-webkit-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-moz-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;-o-transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s;transition:left 1s cubic-bezier(0,0,.25,1) 0s,opacity .1s ease 0s} diff --git a/theme/f2c-header.html b/theme/f2c-header.html index 668334c..d27f4a2 100644 --- a/theme/f2c-header.html +++ b/theme/f2c-header.html @@ -1,18 +1,5 @@ -{% set site_url = config.site_url | d(nav.homepage.url, true) | url %} -{% if not config.use_directory_urls and site_url[0] == site_url[-1] == "." %} -{% set site_url = site_url ~ "/index.html" %} -{% endif %} - - -{% set class = "md-header" %} -{% if "navigation.tabs.sticky" in features %} -{% set class = class ~ " md-header--lifted" %} -{% endif %} - - - -