From 8cb8eb599ac92be10a5826aceccd02bfbd1d1ab0 Mon Sep 17 00:00:00 2001 From: Luke Murphy Date: Sun, 24 Sep 2017 00:54:08 +0200 Subject: [PATCH] Add editor config. Kill all tabs. Closes https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/issues/19. --- .editorconfig | 8 + src/_includes/banner.html | 10 +- src/_includes/cta.html | 20 +- src/_includes/footer.html | 28 +- src/_includes/head.html | 14 +- src/_includes/header.html | 54 +- src/_includes/section-one.html | 42 +- src/_includes/section-three.html | 64 +- src/_includes/section-two.html | 36 +- src/_layouts/default.html | 6 +- src/_layouts/post.html | 6 +- src/assets/fonts/FontAwesome.otf | Bin 124988 -> 125052 bytes src/assets/fonts/fontawesome-webfont.eot | Bin 76518 -> 76691 bytes src/assets/fonts/fontawesome-webfont.ttf | Bin 152796 -> 153380 bytes src/assets/fonts/fontawesome-webfont.woff | Bin 90412 -> 90582 bytes src/assets/fonts/fontawesome-webfont.woff2 | Bin 71896 -> 72022 bytes src/assets/images/banner.jpg | Bin 331962 -> 332711 bytes src/assets/images/favicon.ico | Bin 1144 -> 1145 bytes src/assets/images/pic01.jpg | Bin 89761 -> 89897 bytes src/assets/images/pic02.jpg | Bin 76399 -> 76499 bytes src/assets/images/pic03.jpg | Bin 69020 -> 69107 bytes src/assets/images/pic04.jpg | Bin 9434 -> 9452 bytes src/assets/images/pic05.jpg | Bin 10049 -> 10065 bytes src/assets/js/main.js | 172 ++-- src/assets/js/util.js | 798 ++++++++-------- src/assets/styles/components/_banner.scss | 138 +-- src/assets/styles/components/_basic.scss | 276 +++--- src/assets/styles/components/_box.scss | 104 +-- src/assets/styles/components/_button.scss | 126 +-- src/assets/styles/components/_cta.scss | 70 +- src/assets/styles/components/_features.scss | 116 +-- src/assets/styles/components/_form.scss | 212 ++--- src/assets/styles/components/_header.scss | 170 ++-- src/assets/styles/components/_image.scss | 66 +- src/assets/styles/components/_list.scss | 342 +++---- src/assets/styles/components/_menu.scss | 164 ++-- src/assets/styles/components/_section.scss | 6 +- src/assets/styles/components/_spotlight.scss | 108 +-- src/assets/styles/components/_table.scss | 112 +-- src/assets/styles/components/_wrapper.scss | 370 ++++---- src/assets/styles/ie8.scss | 154 +-- src/assets/styles/ie9.scss | 194 ++-- src/assets/styles/images/arrow.svg | 6 +- src/assets/styles/images/bars.svg | 6 +- src/assets/styles/images/close.svg | 4 +- src/assets/styles/libs/_functions.scss | 10 +- src/assets/styles/libs/_mixins.scss | 50 +- src/assets/styles/libs/_skel.scss | 928 +++++++++---------- src/assets/styles/libs/_vars.scss | 150 +-- src/assets/styles/main.scss | 268 +++--- src/stylesheet.md | 562 +++++------ 51 files changed, 2989 insertions(+), 2981 deletions(-) create mode 100644 .editorconfig diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..2555536 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,8 @@ +root=true + +[*] +charset=utf-8 +indent_style=space + +[Makefile] +indent_style=tab diff --git a/src/_includes/banner.html b/src/_includes/banner.html index 3ba88a2..86c969f 100644 --- a/src/_includes/banner.html +++ b/src/_includes/banner.html @@ -1,8 +1,8 @@
- +
diff --git a/src/_includes/cta.html b/src/_includes/cta.html index f23041c..7f467ea 100644 --- a/src/_includes/cta.html +++ b/src/_includes/cta.html @@ -1,13 +1,13 @@
-
-
-

Get in Touch

-

Aliquam ut ex ut augue consectetur interdum endrerit imperdiet amet eleifend fringilla.

-
- -
+
+
+

Get in Touch

+

Aliquam ut ex ut augue consectetur interdum endrerit imperdiet amet eleifend fringilla.

+
+ +
diff --git a/src/_includes/footer.html b/src/_includes/footer.html index 00d92d3..2cf9794 100644 --- a/src/_includes/footer.html +++ b/src/_includes/footer.html @@ -1,19 +1,19 @@ diff --git a/src/_includes/head.html b/src/_includes/head.html index 5dc51c8..cd8051d 100644 --- a/src/_includes/head.html +++ b/src/_includes/head.html @@ -1,10 +1,10 @@ - {{ site.title }} - + {{ site.title }} + - - - - - + + + + + diff --git a/src/_includes/header.html b/src/_includes/header.html index 96d6325..acf5f3a 100644 --- a/src/_includes/header.html +++ b/src/_includes/header.html @@ -1,30 +1,30 @@
- - + + diff --git a/src/_includes/section-one.html b/src/_includes/section-one.html index 4fa99aa..76b52a7 100644 --- a/src/_includes/section-one.html +++ b/src/_includes/section-one.html @@ -1,25 +1,25 @@
-
-
-

Autonomic is a co-operative
- that is owned and run by its workers

-

We are committed to a set of core values to build progressive technologies
and +

+
+

Autonomic is a co-operative
+ that is owned and run by its workers

+

We are committed to a set of core values to build progressive technologies
and infrastructure that empower users to make a positive impact on the world

-
-
    -
  • - - Sustainability -
  • -
  • - - Transparency -
  • -
  • - - Privacy -
  • -
-
+
+
    +
  • + + Sustainability +
  • +
  • + + Transparency +
  • +
  • + + Privacy +
  • +
+
diff --git a/src/_includes/section-three.html b/src/_includes/section-three.html index 25f4bed..60fb3b2 100644 --- a/src/_includes/section-three.html +++ b/src/_includes/section-three.html @@ -1,37 +1,37 @@
-
-
-

Services we offer

-

We design intergrated infrastructure tailored to your needs utilising technologies from
the +

+
+

Services we offer

+

We design intergrated infrastructure tailored to your needs utilising technologies from
the best free and open source software projects available. Your data under your control.
Here are some examples of the applications we have deployed for our clients (insert link to clients page).

-
-
    -
  • -

    Encrypted Email Server

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
  • -

    Rocket.Chat

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
  • -

    Visual Data

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
  • -

    Mumble Voice Chat

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
  • -

    Discourse Forum

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
  • -

    Interactive Mapping

    -

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    -
  • -
-
+
+
    +
  • +

    Encrypted Email Server

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
  • +

    Rocket.Chat

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
  • +

    Visual Data

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
  • +

    Mumble Voice Chat

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
  • +

    Discourse Forum

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
  • +

    Interactive Mapping

    +

    Augue consectetur sed interdum imperdiet et ipsum. Mauris lorem tincidunt nullam amet leo Aenean ligula consequat consequat.

    +
  • +
+
diff --git a/src/_includes/section-two.html b/src/_includes/section-two.html index 889e24c..d637057 100644 --- a/src/_includes/section-two.html +++ b/src/_includes/section-two.html @@ -1,26 +1,26 @@
- {% for post in site.posts limit:site.tiles-count %}{% if site.tiles-source == 'posts' %} + {% for post in site.posts limit:site.tiles-count %}{% if site.tiles-source == 'posts' %} -
-
{% if post.image %}{% endif %}
-
-

{{ post.title }}

-

{{ post.description }}

-
-
+
+
{% if post.image %}{% endif %}
+
+

{{ post.title }}

+

{{ post.description }}

+
+
- {% endif %}{% endfor %} - {% for page in site.pages limit:site.tiles-count %}{% if site.tiles-source == 'pages' %}{% if page.layout == 'default' %}{% continue %}{% endif %} + {% endif %}{% endfor %} + {% for page in site.pages limit:site.tiles-count %}{% if site.tiles-source == 'pages' %}{% if page.layout == 'default' %}{% continue %}{% endif %} -
-
{% if page.image %}{% endif %}
-
-

{{ page.title }}

-

{{ page.description }}

-
-
+
+
{% if page.image %}{% endif %}
+
+

{{ page.title }}

+

{{ page.description }}

+
+
- {% endif %}{% endfor %} + {% endif %}{% endfor %}
diff --git a/src/_layouts/default.html b/src/_layouts/default.html index 0c6eded..58fe111 100644 --- a/src/_layouts/default.html +++ b/src/_layouts/default.html @@ -1,8 +1,8 @@ {% include head.html %} diff --git a/src/_layouts/post.html b/src/_layouts/post.html index c72633c..aeac4ea 100644 --- a/src/_layouts/post.html +++ b/src/_layouts/post.html @@ -1,8 +1,8 @@ diff --git a/src/assets/fonts/FontAwesome.otf b/src/assets/fonts/FontAwesome.otf index d4de13e832d567ff29c5b4e9561b8c370348cc9c..7e84620093767228940b95ae7f7922a989184488 100644 GIT binary patch delta 1719 zcmZWpdr(wm6u;;0?!D^;G8Gh77mmnMxtK7J=H!d9ho(V|g=q!hM8Smk%EHLUJ@GEA5hAUaO$KVpm@)7^&7S=PoW?ws#@=bYbpe@k1Z z8t7Cje+O*tUn?ggsu+#2n1B!A6PSgsVIgk8H*qhP;!*q(PvA*BgFj*~4&X43qA%A{ z1Tvzp)0#dF&^tA{I2th-7n5HJHew5Q;3e$GYlQZF9NihjZgae#0{VWM{ih`gD-L<9 zsys2GOQ|fY*Qa+N{`;h`VQ*RaBOBr7#{~Qq}aykVenr^+vB`z|X$=z@2*2yT=n`tJj zbImnfgg9IY8_CUFZ@T85P8708BjwisSu|UHodq7FJVvbrmRRVbUr}H!pfO*CY8rrX zJ`4_O#GjlFP9UB?0}jbF+KZ>uy0Y5RTIy9fP*7e_;25P@8W9dq>=}q|H%&!z`)S&q zYL7S8+%Ljy`FYRpSUZzo?qQ(`%})>H!s#9P&2fUQW!|!CuY*eS`^k#_i3oJ++3}FT zrR|G{cZh#52arpiJqN5jBO@^hw(^XPBM-x3g_`PF3dt-h%b-W*OJ6$Vz!V%286wXi z@?0XrOr}i6>J{*cg}OTNIE5sj-nA0ukvzToLye!kEH{llef;(6~;F zJoPDsK%3D^3c)iAF@S*_`u^o(IF>^nj-e612{s2qR&RleDu>)q3|~>ThJ6q0<57F| zft6QMwI6PfxbpxkB++Otg)-j2VlV9Ar>VEpz*+X+ei+7SCHi(9ekS{hBcSnyGCqU| zTQqJ>_{|KTX+EON(?p?@xEY?X$Rw{iXyA8hdtVLM0~98%9{M@Y_%TRjp85%Fu@P_h z0_wQK6^&37Oxp-G*#a@7D` ziA=LmFai^C89s`u@hz;t!`O!B@FMK z2pV`4Z(oDidyoQTOG2_pU_}X}>F`|WE=%{o>!G_viie${yY()NO-g{HA-!^!UX_l) fnULNtMa#LNJ4%uAoj76AT)AACFc^3pW?B9L`$i6M delta 1666 zcmZux4NR3)82;Y-|9qhRaD~f7@QPeZFD6dXEc{EWIsBQkFwKEFSu*+2mVcPSav&k< zl?#3~!Lj_QMPYc?zCtJdC2OqK9LHM_jEka+CWNyG$7Uo7suI`vUv-SHy}o zo4>rOWbdw%27=#tkC;Ab4iddrTV0ncT*l zX{k*n8_2PU*MCpx7{Smn|FDT+^P(sC(7>?_AJ6R>Z@Lg)C#ux>s;Ck>)Vs??rg}J@ z0l~bb$A)o&GrP_ngHeX+n_|E%`oyjHr~V z&rgvho+~J`Fr>dO9K1DW`wE`xwzmOBg5ePkE~9XVnE+mT*oEM(qFHP*cY^Tn9omZb zJjD4~{z;Jxl{FC*!CHt>{IMFr_iHnwqA~KX-(97J)mv*yzbJGaEUm5f*YqQp(AekX zoT!VB$tu!1CV*kx_gh$tK+o+Qo)_N99}cmSnX*KL$ZBQ6OLyLq7tJslIoL6vSvX*s zk!sLV?|8#2P~AYQhr?KAc*ma}D@-C)K=%-3u(H}_Gd)MpPn&5vm!#db(GoTn+o_Tz z(0d|im&%wMP4TRZULHgHOwnj*vL7n1Evw~nZKXMTa&p{#2J}g8vN_V>^Ks`@Uxg{LUZ#@jTLQrMh4lfLG{boE)vqK9!?EEL&p zk?j==jTElCa1O2ELiNt)$s_Bhc{G8|iSy{PbYlVCR#Cqs{beojlha)}dAyXS$~)gIqjD+tYXREGa%(?V(HS=DtLdIJ>oxj{&24X!Dw|RI4h^%qup#N1 z5gBJZW1FCg+;~PKGHDvOqy7*bAqT9x?E{Vh=*#M;Q=T#HFin=2ca+v!8Lxjphh%Bn z8z`UQ*9Pif@7d#Y!DNNu6wr2`pjdVtJweAURw(9?Os3OvS;r?Q$t$mN^%PAv#lePQ z7>k*hi*#(pUR2{0&Y}gEprz2`ZTn|Yodl|p4+Bz|kq=d{xw(ti3I zN|oUS-_mMEt^G0$FtlEwSUZ$^{0IHk6`CqzAHPN+N$Kn&{?DPU>5?te{9UAvfTAe> z8QO|&ek;&wy5(EfZgtbP*)quff5Ggt^04r5g!gTXatsmQ&(n&pQk>TE10_Eq{hX71 zKkieGJ8+d^w4!dZYl$~#LF~|3oaY%jbC9F#1}z#)FXrQT47z{1alayG4>uHAQxAX>80@6qztEZ;k8*wq^;q#<$)Nhl0*l?e%k|nyYenIhy4!4Wm*+p XLvfmhcp{YXraiX74SnU0G}8PJ)rb0G diff --git a/src/assets/fonts/fontawesome-webfont.eot b/src/assets/fonts/fontawesome-webfont.eot index c7b00d2ba8896fd29de846b19f89fcf0d56ad152..3bfff68f5118bc65c85a98204e491b125214a703 100644 GIT binary patch delta 2727 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 diff --git a/src/assets/fonts/fontawesome-webfont.ttf b/src/assets/fonts/fontawesome-webfont.ttf index f221e50a2ef60738ba30932d834530cdfe55cb3e..993955ed2831267ed1a5c1e787092480e78ddf3f 100644 GIT binary patch delta 9105 zcmahu33wDm*7K@QdhYv9Y9`4Hx$lI;03iW{5Q2!vC6^E-;qU;&gCoKsC@YGs^eTv; zxQHkV4lbJZ9|4-6g^{QUIdiCmERefZAm$e(a zZ0g4Ilq!DJ&iNBp@v8`-RQ*Z(K0^D$tJ&G9s{WK3@J9@WOV5gJ!f^w_xdwczATKu2 zKcK0q+(V(XZpgyB77nSSiNo^C1Zd(Bn|Pw;K& zf+bD0+u+;-F9g*p|Ch*dB=9H3%wGcqxQc^;TE<$!lXhARQCc9FGlam*n4CeW>IIA89kI%|MG;_D;`Cp^m%rb?iQo|z*7AVCAns_qn03hDX_y}ZJb|Qc8 z#m`{FYhCByyKi=$hf)ENNxVeKvN{VR)#e8;etH#E@5=rJ5hmtbDbc1rAR~u6a>9(! z!#T%T@j`9@`w!+`#ekf=DC2ry-U;503p~!23HVsdPN7XrFDbHf$1k>Smev7W+JmpqSiZ)%}xW$8SW zTC%i-EizKx6}Rk(C5J|*MWbn>4=s5DDGV#Wl5zNSc@I{cD({1cg%w{jAW%6Afd?vc z@V&FLhOOXyWfamVY9daQUY)@vs;|yQ<)G@+%NC&eT&%_!$X--y_55XHS^LPE8LT)^GsO4@ zbx!1U|BNZSt@cM<`MCPkjM&=x%|xJ9mz^d?_Fc)dfxk91p|ZuZl(^lC8#ADZ&6Zf% zxC>C_!RxVtm58R=V?ok$^Ies!ulMqB0vV?38R~(|DTr zxJe+nsKNTy($;Px%Nk4S%Bq8x4fLdymJY}RgTrDnK~LO!9ZQu4*P-IE0qVfPVL`7Y zrVU=m_Up`*O}JlZtnuH?RJ~%zvu?UtB5l@GyQ|ujYPZG$?HAi^RCQcci%TDJ)i4gn zZWxxymihLuDQsQchxgE>IeWx4h;nE|xei%J&EGlmees zd026ekmQ9yq>y(_l(95ubTPi~9Q^{LS~F%SYkOeq<7|BSI7TfoZrmu{LU&APW}VUI zr*VA(FH!ZK=Ab}%Vx;O1%}+4YhpxMup`=f$b5mk-kiB_Jf@z`rfOnK9%Yo*h&YZLc z`@Jp9si?hMvJhx(3F7;%7DhnLY3&~Tzl{6N)_3%U4w-Tmy+8)~HbrEwOq4!aEOnH~ zCKEH=@l%VUly>#`0s$k8gSvsKSrk1U>?d5*Do^p?x9D>h3J7*sqvj9r6fM+&G{6f*r0 zQIt#^;V76SF2gFAd8#-C3(jSt0%x+y3fOHj4taF;05<;A>~b>|fm19lBH9?|IdgKI zl!yQ>B6tMOOn^fJpz8H=8m^#J5}5BYNurR>NrdA)#LjUJvtr{+l(Q47$G-EeWt@|9 zh=6jjaYW&bqQr56NWg6s(DIC;KtQqxoE3>)nA011=`}Yv59Nmz#pBjGIng3WcC&2b zWw%Ipfg{L?)h{4-W;1R*Sgf4rC1wSzCf+Le1Q8VQ$>5L(`VO84ugM60u*w!NS$QHz zRKiAu2Z1NNix>Pn<$x!WY~l&7&l&(iBnlQuK%M_&ZUH(4QOFQkI8dGQdZES0RFoXN z?Bgh5vYRk3j_)P&0=Ti*$vMzXf*|uwL=}0#$k~WVk!48|2`)mA!N?OcYUx|^vg}kK zqTu2LzbJB|k!=CjR*2L}+lJt_E^7M>swkKmzWWWGH;>#4~apsa(h{21-cFj z2xBM06{V39=3Y?$SI@r%?ZSNf?IbgY_;B<-V#bpwz15Mm` zUsvYR5)UtP0LpDQRX0A6bs2S<_d0t9SH}XpArNbv)QJD24Gh?CzPM2b`SuG2tJi`; zgx2NDTiFA^wArjO_r6d)!pL6xUFLDRZfo8?4mRzPZ`pZ6s@t|1`NxqG7ZQDv zQ#A5CceJ`3XI`*Zcd489X0qJuU)i8~bno3LPD}&QzMv2apb~mOI;6oLkP-`DoyOeu znb(%$d%?buY$-?gjpR%4Vkda!8 z16<%Aidg#&wy}jae6R?CcRyHw@2fw&gVjI$fOV|@Xgez=9O~YMj=pc*y8A|>6rMWt ztv-=G$fb*woJg$5LWP*H};5=G5(dBIac6AM1s z+7VKY-Jo0GhGRQ$lEkFrA-#Fwr?&%r?!;##Mnx`{^O$+w>hcHEEpuNhf%kDy3g;7o zDIdqdek&8d^!aW9o#OSFIDKBu*cHCO{7_x^MSpxB_+kU*A8)l&b>5ey2q(T=&L(U4 z>L~A|%=d97$5*$K%G72RTqcR|#2!emPA`cE3E3$3m9-{0CwmS1e;=lzqQI`i9iI^0gb@47G#M%5wT z|Jb2+m;Z2~qtfTcm*cd$c420ty>8{Ofp=sCVwry5q~hKY2YLo78AC2-prC(Y1Z^wl zr&CsHjTH7T2sm9KBSt{Xk=~ZX0Wzt!B<_83p{=5m_J%5?ans)s1HM$pjMM>_6 z5&1q3!j+tZy~rDT6G&6&bXNN~|@4oOCu=g!+H?*?~V zDu;3}{#Uxu+n;}sd9(6}TcC-$-+lulHMk81a7Khun&@}Y2?EV<2dFwOl^4e#R#+@4 z(Lg8zR}>D(a>fNmpt-)ktEiB(%dTj7#<*87IBrg{wd_m1iYmYC(tf5g+GqewNVF#b zZew6NfqqyfClLsv-%j4e!@D}(2od6T3Q9wUFET7*jHg?XC92&oLS_x6*?tb9p&%PV z?UEw$M#+vTh|lfh=rHC31*g%AVUizXkZI@ zOM(GNHXy@XFXiO9*vs)!RUJT8x-~DIa7LVubl%Aen1%3GFM!GB z#4$W2g20QM1eThB$=D;Ea+1GiQSY$$RF&g8+2>C084BTM^lCOy-n)oe3%YXF%Zdwp zy=5EAh@>)`wO>pY3;gxoFgRyWcgu)?Ba0fj9D4v=fuQy20(}|7f9?VyOh`<;;)q83 zM_ib@S#w06$z!zkwxC*xep#dzPRuLo6}P`s))1x1_qu=x=#^ac1LpMcJK4T{rhv#i zjP|t&s#$Oh`caLw95b9VQ#=^d6|63(YY)U|vd9AOLk8Wlg=OP5$TV9mkhz6M=@!Ve zSj~`$sgK^PW!c~*M*E}<#^45P^-j34FXcI-yJT`GTr<2lB!HY*J*j`!IfuvvloCcRmNIBRdZD=EWTeG?Fo)SG)MER39~9!6F4XfklkZ0a0j1HmvPdntVPAWh^=RIt~wE(bg4qVNsV2-!sh89KcAU-H-!#T-F}R zffCmGW{z%d?p(Mbifrd&lGO-f$GS7)-h6wNvk_%de)W@kbJ3e2AKK%&aG3Gq<*XQl zX!1{akj+k0+Qved<)*H%P)@FI8fzt(8V~nv4W`{qwdx{Z&Psc<2(xIKOcp_R#^-=N5>{a_VSmyP}5XC{!f z1K_1DH1#VwJ8I#zUHu?KySEWMc%7t-1g2n5H^M~}3uFoLd=TPzZlK9T6P#y)Pj0*t z_Tv#RgKD#f!c`cRQ{#h`u%N)}ElS;5LX*da!W=f;=wa|8o6bK1Sm4z*jex%)IBp~? zW#D%sA;e14C@5lO_fZ`xcH<~K`ysq=l+HY+?!y?heWP)kvHWEWY$I;u9Fwe($`PZ_ zI8s5DgLD+tc8y1`k3)}*hi=7)f^EU?I!me`df>&7!x3_<)`L5H_4(IeTv*+;aGI%D z(RDDI^h1XmBP+PDHMO_i2i^ipS{gLWDWRdPqUGYDd8s32cIFN<*Tr(@2%r z$x3T{IEng88lUe?28JC`B>V0pa5Fi4)dB}4`sibiJ&KLHTj5WvvELME#!%?Uq}p>+ zK*N@XsnCYS{;9AZ3vC(lozDQEG%fkJ!b zMrdQg>vI!yXXS#MfMo#5;LT9PIBlE`6IuJ_>5zrshtq+w?z7Y3QP#bDCa@elxqBv5 z14~V4G+dD%aZdni8a(Ce%3306BIc>u$rO9WlSS9c*l-?`K1n7Mcy2Sno9(Hewex*_aPtp+mjN<=4V<;YRFU zIu}Zimtc0k{HZou-`wKl1KOUVoW9KEQZ83Jjn_wN;jJc(n+JCz{=M^HVvxqW-_nHC zueol+>C}bO8?L(_Z^VjCCOp+@#x~|ll7rh|Jw``}*wL@d2h1*$r3;{nWgJr%!XCzL z=_1&UUVAeH;c5tO#&!I%7`icx!XckEs6g;xOW$Kc1zC=!GS`=iMtOCcBSo@B-C zf>a7#C*In12QG$rk`}xlzQX%TjG5_t>Tj~_jXGQ|SHvfqU=W{Na2a9-gOhTRxD&Z}`Vn|g zkHkG6)ls##ABAeRZ^l&+WkU;A!6k-}ELa2YaS<9&iWHzNH#jVK%821*F-xEqwqA`l z?s`u$@+9=sDUM$Uw;_Wcufu@Dyj20!R<8#a?w?-YwjN?>*huNUgI4aJd2q$3Q7aC9 zjm6xiXOw{6p`Bk3cUtx8>&`Og>m36ZKMh5A7s7}HlzmR;zJFrB_B2f9&_!q!8vyUm zgY>srxEZ9>xzy6sIWiR~qz)@eKEs&30m2M5xpD(^*A4FQGr+E9wL#CK1!ClS7X1%` z*KdRdT*Px5;WuCxF^ly(fOF^2rJ|xN#uirpZ|&NFO^}Dn`~UF%I9>~HhG$S!AW|NQ zN6Je%rYSV};bv4@GbMOg6OCtq%OFv0Y68$Slbsw(cBgWhE%t9y@C4*STlAmM&SGzn36wf;mXDHY;+}rHW$g-AJ@>IJusoVXkBvfL? zESWG`I{DTr-jrqw5yC^lM=A>QOtPI;hhZ>h?;X#+ZMcvzzoPVNvzOn!=h`R7pfoxqp68PHiD9_)oFP)4L+ zsvr!FBB0IK2A84Ec*0?-ZP^C5BGaVUXXPa!WTGLPgV}4%c37N+-jYZ#GA9-nWplA0 zi|kGht$@1hP9t6~+N<#XTKjUluGgCKLPr=bd;xC?XmZdCkfCes^c|q0c%+?h9~N3i z5r2t6$>dAW#LP-;hmV+Y9BYT0uzBz)v^}U<22WFuU;l9QG zFJFa1J+^xH!z;{39C;HCGlIzj5XGIE5cm^UTNLX~>9Toi5&b}iZ6;^Gi(8gW74uyt z2Ndj--M6~vj(l*K7ManTHeqEc`h+8j!kPI`kgpftgDQ*>M0VN@_~Y^Gn?W*&1_SoV z@55M}dD8nBe(^--mC)Y+CNo^Tl4U*jd;l%@JxB85_JFq%JB7+Pc5B>+u!ODoz7OG7 zFP-*C>gW3x=bLIN{VH1PaW$4nWHvbrlCduS6_=!n&!wKl76Fm7@$3AyC3H|NVXbhmf zNUhCn4=%hjh#A(kCt*HL@cBu23l+; zcWsl4hh$q6Xa2(;G{Vv^I&!#czkruX2D+miJ35`w&YjFFFc0;wrX4$wV9!%fozA-c z7X;lkE;|K-nGilZ1zAEvxP_|?GS?kff}(*VFM5A3K=SkWH*4%VQwD!#|yhAM~^%wG^EN zq1qikz;Qb@+ql75`NL)pAJ(HGg+X4M{3C?*s|)R(AK@7kl|g7j;#$p59pWDUQ%4wC z`4eWhR2z8)N{}8@M(})&2FEhZznpgit+2%E#_P|lwH7H3S<{Daso&u<4@wy&G@O} z@uPFkv&j|q9D9Xq%d=3w2j@v<@uUP*P#Z3iC0Lvk$tL!(kId%ObUZL=t0XdpZQR(@ zv&FJN1Y@@H44lGm1%%3ItrBk5XP5%WWChcKq)f)J($j@pir_G7rgw}lY8Dl|@z2Tv zSx`iC)HlYPiDxoID^MQrP}zg(=8Z{7CD&D)8rb3)G}AM?u3Z| zs+YwXk$SIm%QkzN8=XH*{$wVFnE4~MOdA==D#IpsSYw!6#XezaYoY|N7z~&2N0YmvWV-H$%VXp_wpCf#ggK*`*(4W>HQD635PAuN z0r|uo`Hx4NnnQXb;!HUS@W!Undz6d&}&`orq%(Z^}aGD%Qt z&mg>ZB$srxvkn}1osPT>5jA%nne6{3K8|4={$c#Xd1Me9#R+XV6+Rtg&*kZh%E~A2 z2y`V5NdA^j>hS|xjRB=zUrH+RYF@jelB}FZakOC!KAZtR))>IxL8zln3>L$T&N^p^ z8s>M_dCVr)cGd+$rh#1xv#}zM{kF3%86F3|vo0Ha@Yl{dHMroV&brZ%1NHBA0v1CJ zT28G%+mGg`+8ErR3qM-L|NI;oAhMmJ-x{Ql*k9Y$yx^9(T9vj@RL5|d-RZ# z#!s6#c1rVgGbFt>^G2#2?@L-4;(*J^6inJ@PMg?#^OTlp&BBcF*G_2`rjEb9Wr8r{ z=9v>Fqj6kLFl*EL^+OlIX!j%S$XiW+a+l81?gnNw+7Eh>Odo)T#n3VuiGEu+t&xmp W@Y{{#UPK!+kmzTzB?HM|>3;ySYg#n` delta 8529 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 Qwe|fOzqfqYpAAs{8&oi|x&QzG diff --git a/src/assets/fonts/fontawesome-webfont.woff b/src/assets/fonts/fontawesome-webfont.woff index 6e7483cf61b490c08ed644d6ef802c69472eb247..f2b64fdb3dff4693c324464972283493175e5ff1 100644 GIT binary patch delta 2693 zcmXX{dmxqB7N3P9jVpBGiq!UgTqKV}7!l5-E}e{;gz@OD(x8VJm5WeJGo3LXsp#}D zmApPWCR8eQZ%s7~xm3D6h-mKBjJl(#=B~B7|LpbcwSK?#+Iz3B`l6)!lB6yPfQjp1 zJ7_Sb9M(uA5vKWyM6gy83b9sel?H8%C-jjRn=l)g(nTjt!q%pBGV!>MBXPys6E(RN1FlDc48nVL7zTmZ8n^uG5ZRX~<3g!%z>X7E-xr+Nz%IrzmD%*ev zN3T6-I^*>pih6wZFi+xZzicgXDGlrg9meKFUQP^R%6D_qiMKV#+=9I@Snp=JXk)u} zPC=cK)m*Jbb{3WwAI&eioaA1RVTq{5pcUwSYH%^GRl(Grj^I&4R;XI2Uq1Clj(M18 z>%)G;b%ZP-r_OsiP)p4q_f->$qQ6Pw&3Qo#rp{HVlf@8xNFI5EmU4urXuC?=zQFa zL`TrZKc)#cV=)R`Lt?pyuS$(|Boy-s^gjZnVa;zq)L>paq? zY#k>j>oTzW;&_H8Iewejts!M2dh)I!|Fynv3NrpBtKRY$IRo3<(Ok9Tztp;loIzak za}&tTv)sv)=bOAhT>W>AQv~n)N)o;KwkR43Jb7nih2ezHE8NewY>%%I^WA!G=tX+g zn*6s{?S8M_(vo!!X&d+O`&hkaz=D0Jt!)3N)`X6|CrXo^$0+g~C4Wo5zbGaBP4eOL z00RWq7hzoS*P;yWH2KSKDX?U3|1`!-#xmkTE2LlTR0Q7 zzG~sm?1ECkd4?tYYIu~4Q!Oq+BzegZw&CWjAV}B`(FROeR{AwYoay{iQ(yWG=}FhJ zR4m84%!zs{t}M?b>hOVX+O;3F;T<2WD8cNqD(~?qQ7T4$GgLQ8gdQm+=;I@4WE7Vi z)8aDvxG^1n>WTO7u=k`5?*2IWA-yr#rMBOYsb8Ify6oyOig@evN$#|Ux~u$0&0*B7 ztIb5fVD0;+B-URflTAZ`ge|z;&6Eud^*DnLXuBWvn;EvO!#>aT`$O#CZqmnwom5h$ zsN$JSZ(4x?#GEsH$|`HrNs}1sj%_mA-*cs|tp{CNH)C?j`OV(sKc_hm(H+h0lvV!O z5nR(+=AcS!nL(<~*1H6&X*-NM#koR$HSb=EBb!ghPO`OhYP36>$#A~&XEdDd^5ETn zd?(G29ce4{**h!Xopi=?d4n8_UD=&YuVAo8hU@fRdTipc-nE>ef6pEHLHBln89OMq zuPWM|Z5q<1viq%K%%k*WkWk~Y%{&XI=>4xK+U7o*`Oo?~d0}l&^eDya{kEw5rQe@6 zvz}Vvy7(zgNb%;=_wQisP!cM;hHe?Mr z$Fm#+t{e`PGPTK4iFah~A<3K_yUz``8etOc!|U-^H&(Qu^Z3kKwz8l55N&*0XBTf6^1idLCSPSr02uWIic=cH= z;MYeOkU$Ws9kk&nqSQCFA)J~lnCn0y$(=e-i+0zEV1cxViSU}6!*oGL=3HIaM7(ib zbW0zhdf-Fx)VT)m1oKm`kwPd+p}`37AOu@uC?cY03^euBPmQ4$t5IJtg?pH^`oJ`h z@(6Y2(2o1m>0nFxvKcUi+|*cr0-Il+AhuaCL1GCN;ub4s(fHG`ZMu`7`!~;JLar$lO^B_VS)yi-PCRk56TqS*_ z0)}`Zg`dDFw0lOvR#cykgt`1|M;F5{-2P-K@6-7xxH*yaHC}eRgo8_6vJ8AEs~=+^ pg}OO64mRpBn|%sP_WxCAjpGpotlJC`=J7y3WFhALHa#91{|6{+hJyeA delta 2468 zcmXAqc~n(L62?>bp3o{PvIrug$f86LS)Rx$f`Aeb2yQIngK#k7k`M?O6qh3?t1({j z;u?Y)qjFfh;8PJCH=Hq|i4ejv7&NYc6PYo|NJeMABLDpA)K}Hr)zy9bwqH|MURBqm z5(#B3ZGn;c^^(9PBYp!zRH+CksuVpqmij&5kp4W--5^~p)}*%zrP9EW2X_cPHr=D# zICY%iW|in(D5Nh8KOQX#^~ySLjXPIvE+oUT2S$nPnlPJH0j`ozYR5W{z^Gm$Umj&` z;sl1990H%4WP*vNGQzJ-KR}k0VBrTIvDgQ?O)57Pq4$H0H#nKK#c#J;Naj8otxqxr zPD;m+1k265m+r|`V4;;2_>I+lbMflbj5Ocz+val(2a-^B=?0zspT(owXX0x6=rY%y-V=8Jb)k z!#Oc$xEoz=4v_TRSAy~GKHx$38id0 zk4wFegfy^l8A3t9TJS`04(7ED@g`HTGIhnKht(@&&y2^_E8YHW^j=DVP%=VIxq!mO zC)v1#pW$QZjkJNIiYjO4L=4w{H>LqBTDljsUWW5g>X*$!&C)Ni6`&Ni3$%=n20x0g z2kjCf!OR36T%Ir!18ya_axdQgr5U`jiceat<-@DjMj@=9IF`d^NsGaxBtDpZN$Y5g zh;TWTk(69OGY5rYn0%QJv1PR-=RW^%Cz!V8HYESlPq?9H*N($Rq^s)-!SD@7OhnGU z726$qN58H}DK6Tc7dN@?uu%TD!9$H?O~w!>yJoq9DOsVAYO-FlbUGVNRy;QiAGpuv zcD)Ir-!QnX*l&&ZfAh0{(o|+X#1^++LDJK$zjK>@+VK>;nVSg7F>eBw=esii+`98M zn7ykUoSbiua8SMnhc^{O!1=b|AUmszyiJ66R@1Y=jX59gdUMm^kLt{ZoF*aZiugAD zT7=6cbrhQ^$z*gnG+^9nCe39YQKOkAfuSyeIhLd;l_MU%0}VgBSb3o(6wN zR+p?<@@?z_Et za^W723^^Y7m~Uw6V?TCIJ(&)+Ji$YxgghO-r$0Z#??Q@re%DAmDX*^o?B$%l=6$M3 zceogj!|Jow7Y)&tJ)7_d_U%AkZ{H$gp)+5h_Ke9rs`lSn*wlB)G)G82{p&`HSH)qM zdJFb1+9s5`{)wa#2^t}NH^5i?<-idvx%)*6-<0^l4z*eYcT5n1Dz@tg|3Gg>3n{itJ$eRD^V$mzwzC<&=>W2y=QQ9fumJ zPZ6w^8&DFAN>DXSouFw5whJ2K;Jwj==E|eSPzKa(V=y1=_lD$!Wpsu{^fRi`4I0xT zSlQc*&|bOPjEZ4=ClVeRUD`zI zNNS$<@GLAZNS8^R3nnLC&N+mp zBR4vPcEi;@2&L$eklmM15Zvq~bd%);QS^-0pA|!AU^-$b3u@$2TENkL%jjPm&0jg( zlH^#rV<39!uDf2FBy`?!7-ax?6XzdJ3#LpANd{6+SWdxdP1NOk`Q D7*;HE diff --git a/src/assets/fonts/fontawesome-webfont.woff2 b/src/assets/fonts/fontawesome-webfont.woff2 index 7eb74fd127ee5eddf3b95fee6a20dc1684b0963b..41d4d904f82763528e0fe08967d8bf9c10c3bc1b 100644 GIT binary patch delta 2163 zcmW+%X;_q16z0is-I^M>uCO;#-}J1P53 zwhM!p_xMB+q3nYBaZ~|T>$$bWI)#p{QdR@q@C$Lc<9TY;$AjOo}Z8U+>m!V8x}gRnHS1*e+FzJ*+T)Du6Zm$ zV6*^+#TGAU<4dw$v=xmJi$YP|Tl5dAi(Zp}(&6u;H4`4K(;EYF<;s$85Yg)E#v8zuDJv-do6G4;o53zN;NZMigc45n>&*YM^48> zmU6#Yyc56gvCqBh=kh+a8)iY)<_!k))o#>cm)rd-5LvwU9#5`%|97-5+cXAoO9P(p z)9M_EM~bxv@?8-A-ja_nc54GteS_D5%n5!3HX(M~6m;cnbHuvmRF1gCZ6R(zWG1`X zk>B;H8vyIj!?=^`FgFZq3|kF0%g-#t64*#8Oby=y&ST-vSb%0_E;(z5w@kQb+Ue_tfPGm{x@E!^KczBxU()1lcYpAd`B|%Q9N+H=e z-Z4}q2`uQXjY>En9X>)^R)(CcQEINog|<^>NZE%=2|0rGSl5v)hV+*^BH^948(h7cBn#BDjWv2nXUmnKCby4>=Hf>sA&d=MF z%5*>_mBwg1Q#B9Q-+8tMz;PzQroO4hk}SCFA2=MPZt&GUdt zZq@N)&{_@z%R9*!qrQ_39+$g*d~AE$_!YMA(14HCbhsk_!5=D+zW0)Vc;lWYpSJjZ z7BX_~Yhe@F;=h-P9OzN)B#(Ntfl~vsy&QXnBk!Ir^WXI3RL$=050Lrr8V?NWIRwf6 z>hZqqIl1*I9Aui-TjlOL#29*o?kHkaGKMl(Mdq&QFakvSl@jku!c=!n9Y=2VB}!*|;V{D@fk^Kn=w z_r)N{)R)VVb@k;3MwEJI!KeI{9_+ur@&P$z6dzUgdbANDavMo4q3R?;c7joFAS4f4 z(5FbqyEq(mhm^FVK5Im9L)HC8q``u|%##+qXTOL)CC2OP#}oX?sUyruB-p#ni6s_Lk64mKzz3{I1iB5@BpG1j1fu3;$J-G2IjBFh bA!W!WwnT@z!WP=1`Y~IwAEUmqBSHTIKsEzI delta 1964 zcmW-ido)#99LMKe*S+>t9!XS^^dOl^4f5sDrX z>duDSo8h)=kr_N-*fM?_c`bBWpU#radDXj$N1|SkB6}X zM`91pcVG0tyhOL{WLo=OyWZsWj4u%1Lc(vFJSdXbXtS4`mY!dUeup08=SqAf>}$J6Myi#$xd+lD0i@8 zlmJGWMvP<{8BH6azs$<6bNFs%@!7Flr*&oDnK%b@ zq7Efm_i|5Witw*!KRjq@}_rznKR_z zs~NLF)0ub(g4fI^lsn1J2TZUF2Gw?Nz!&yL2zS~qrpeB;4XN>}IiIMPtJ4OE0w+0z zzRc5sIqF=Czys%_V1Rrnctt+ngdHr2eUh~Aps&Hu#P-#nT|#HA5Y0&Nh+A`9!T6zy z6r|-V+`ukH33Xf`qmC+CZY6q5X%Ur^KistT<^Hxq7h^Ea%@TRv z-A>cmPP$K~^jZ)2c(q3xT<<*d$aUDO0K#F}GU}T2^E2`Vujq&PW#vb@X)C;ODFn&d zfu}aaCmo{Dr;^gP`z`_R_ zhCuK=Aq(M>|EjAYVi**<8NQ0pt}!fR?*pssC|RmKTW}`kvsvTHzdZw{S^JI``H0nR z=Q9}J6t)MI>$lJyO%YEWc5xN4_T%F+r_io}fX-svr6 zPpmcKiy6Nrs$R-mr^Q8YWWvl{rBu)w?EqTtjs$aeE5MfB#bCysr|2FLbB8uKC)Sc? z1;!bRbXn(Sv9P9dob8;1fc377Pdc!74D*+ZJqMWv`-{CZn#;oXW@>gGVs*|Nvq}}p z>OH}YOqd?OgO*-!2y+C>gmonLC(;wTnwZE9X5|()+ULHCJ^MWUPsT4x$}(Y(W?oLt zv?xDprgyrS_YN4d>Gi~~5iYv29!n7fu#Cu~TBWtc;xWMqgTrsYfmeR3+m38y;1k*8ZgX)aD) zSe_e06^(gg!QQ+~DeIs0F4u$c*=Onz4nG@5;ofr>A@a|MKnTVcej>A>K!>i@mZAiR z{vs*)B$sUHA=n9}5T67w)pnF%n($9)j7Z8dOSEH}86S8x46dhF6?pRbMhB-Kupb}a zIXPaxf(h2wXa|B%*(+*3|0do4O*fsW(S=(dLFH|Fsiu@K0K>~`5SHJ0%Neq@2DbUd zONPJaDr>d96qWI({Ht)r6<*XWxspCvLfPG|)Msk-Xb8{h2ohEI9YIMAHo+gQ!LoR9 z?L&kg*M`zgTp#`gA$fFzL`D61FtlMm*xi5+fspXnjrun}8F&q&pDH1YpIKA#g6IC= z`R8$PO?hEUvjUrvA-*-`;aG&Mf9FzK(_4DyzQ4Uk2^H^mgD%Z3aQ)FdnBo~NX1eUX zZ2Ls{g)O`KhiFeSVEp|SQzW#u47|`z|GR@*hTF-!YNg=%NCr|wGOTmU7ECr9QBW2o!T1gQ_CgnSV>4a;}>@0 z>n`+kvw^anuZVW{%mW>Imy4NWGUHQvRgg>ioWR7sH^|=FUxn;cM~*9l`Nna998+x& zacS_X`o!E)%uDr@aE&llQVu7P8YJZ^by-iEX3j|M(uv=G&mCvZRCBesshkF@V5%_2 zjiTZtZLSE#s(FJs`eUSi)Zw;4`s#9eG;xbQw-2&Qp9`aCkO7A?Q?(m#sU+hKIX9Sk bL+%_*^f0u*d?PG}siKUyNXk(gbL;;HEtjqC diff --git a/src/assets/images/banner.jpg b/src/assets/images/banner.jpg index 661955e5eb7c91be9f880a30fb8b9fddd3321f89..e7722804b78be7f78a91b4b9bbb9d86782b3e08c 100644 GIT binary patch delta 12947 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 diff --git a/src/assets/images/favicon.ico b/src/assets/images/favicon.ico index a56cb1f502f128adf33f989f58e57e2477959167..a641b1903ea22df4b6a3083a79e2cd81d222d1f4 100644 GIT binary patch delta 20 ccmeyt@sndiB{QSK+dH2DJbH diff --git a/src/assets/images/pic01.jpg b/src/assets/images/pic01.jpg index a4ea4498490019440f70b747b186577d67f9f29d..edc53505b2326a4388ac2dce8ec2753d58f82acc 100644 GIT binary patch delta 2190 zcmX9yAT?rake=Qk z#ta4zW=yytb(3J|m!<#{6J=T%Fu_E=m~yM-(HO*f`Ck%DRvDfoq%ztor8r<54@8PH ztwy26@Xdgn10#BAEZ@u(k$A!UJPFrZ1>tYCRXe7NMw-z`rS%39i=MU(+@yC@1ya7V zqgKS*cEw=Ad<_10G)MdTg?95KZTVwNZ?adAw83E^mpC{sq4L>|5fpAYE+eVGlevUo zwDac#%bX2(nR6~#B=sL_hW&_9ZnZpX=;2LdQQ?&ga`tY5t&L|s!n5Oo!IpVkUHRqy zH%YU#$?9WYw)SVZ96P?gsAcm=>%_549O~V`mA8GL@m{JYsL05AVmXJ`{HZ6=B49L4 zKWK6-q5jExz=~Dp1RhK*7#!vt>v3nMf72|JkGd1?W6T924Mvpu+X!kn+j^zocI1VwM9FE>bvS&I{T z6cd5ev9V($BN*#CQskm8at|9RRirA;D9(g1VcEPG5?z=FwAvTvhjI_;!ZfOo9v4rc zWf2VuZSgY@xTx~<5a^b#q=rT(hGH%`(TK~^lP2?6mFz7=PUng`9MrBXlMz+9CJ>Q& z%^N5^d*~OWH0kdo~+mV}QfYgD^I zcZMEG|Gp=`|EIrBO}x?VThaJB7KOiji|q&_Hg@PU_Hs32>a6K#6p?k8ii!4H)O2Ag za{{PHcTNG0ZP^wBGKPQRgWMs!c<1(4L~h&hfp^%ti&j_oEI)<9kNMAOuv{Hat(g`y zQnIC>2Epz^(h1obDtS}Gug)KPlBL!x?4aesaNni%r~+~ zFEb&sI3Bs>#ihiJIdTerWhGb0<$6gof|8@%?(Dop<}IV{2lq;so>IguGi3MKKPOY) zu03L3=#!wDE=yMmsk;tu%^ITKic_mA%||aW`dB#M%Dq}Ok8URtsKlouXYf+n@}(7dhn!#7Uh zDQrWP_ocaX7P1@KiMQf%0C(0lN+=3tSNKa}+>}OWOOp;cfmc5aLa)iU4q7tSQxiUQ zYi3SBz=Qe3vdi?#hIoTOK5^yZsgg7I$`_w@}(lS4_OyoW)DbySJXQw|`xQ zl(73Y1XL|I5%{zQ6G&@|MR2Xnm3Pwjpq|vV4-ZqjaZjR&a^|;n2%MjuA#m^6Q>uBs z-GRcxb_*PO)9#K}Lv-xqcUPSIybzh<^FQ~H$)>JuFl4NtgF|O#HehQZk&m zDVv_@>taj>#`M*_ylC4oz{H2I^m)_me?R7D`|_JzysOwgA1b!JkJfedyEaaW>VHD^ z<33~&x2h6$P}GG;VH#G~Y?A^0KheCE!FEb-)&sddedG;+6i)0n0)7f~dBY$I6}pGU zuoxXR!NcJtLiZ8C_g{0_4B8Nvn1h^#Pg#OH!d6Sjk;qwbS4G0HORt$`g*EKQQMnB) z$I(?bU`1W(a&2KQ|9CVC-cw!81A91!#N7@+ud;6T$8eGQHF1JMe9b-w&Cr>Br@hYV z2hGrqTQVL6HBR7(mYq%@!&TOGxqu=zvtxPv_}k?8?H^N&a`h`>idv)2c{ zL4}nsY^1zqzaJdObl3#wAfd-Z;19X3-XDg8DZVUYM!g$jS)fX2ckOmkqTu%cphK@K zodiAHxiAoZ!bQ-j6mXqedWAq7S?>&iLbM(o3XbNC1-7OIn7Rfvcl`N2Gri}TO``~hBs4n_4z@J2D>J~DHsbzF2%#c2Q80jcjn!P}#iempmHyCD z5^}=tyF=E(tiWhAuv5Z1GSVn<37D=%3HND>gjn2Brh6I-;iPw)4`B#b&j%%+MB@Tz Gf&TzFtlh2v delta 1996 zcmW+%c~s4L6rWqY_*Rxmv|2)>4S7W=Pfe6ILwabQr4Wt7pg9>c!wAP3dcW#rQu8eF z?9~r1BN^#v;!HELjj}bin7l%rk!|L4{qy;p&%K{}zuWJ=cc@aa=bWOX+T2QXQ7F0y ztFB#zbk*FOg!G^JViNLV3xfrOgO~%%5R(zA6)(*o&e|M>Sk!HoImp6xE+Lj`R}RtN zem#rgUhNPC4qgy)P4BZ@w9Y9MSmpE>A%n96XDVG*F$K9*gS7ohkuU3q4ag7r>8Ym} zW%cy_6hlXgVSTWnX_>IO{$J{+_FiRi(-d7+dcGa=3ov10R; zp_xo^!yJ&3=XqDKa`*LTr5>I}T}5Z0o2y^8kS~uI$8D|rU6AtduVzP!@)5`C1Ct>F zMwhT?9)lI-Q9&LsNJ(QWAe=(-$w`!N4k=ui+cjc{+V^_QnA%v|&stM%Zfp|L<rQB_@f?b*~e7R}Xl;xrO z<|Tduv{CbE)M`&NdtusJG*nyU6X9>B&MLVssf1`;a)dvyO)Ekm zF0JUohPw0}+-`P84n#-Bc3yY=s*y-Z<=>5mc>CRMHt1GMLO9-W$l982h1Xb9Nxj9X z>)rRR{IxCn-IbTeM%T3}OKUpRxazgoh7`ND*+RTnE~MbhD0JD7d6PS9HfVVVZJUFD z-dl1Js@jrBWv?n*Ov5fO!snn>mRi^u2h7*p3?qilXQTiad`kZOmQ+r1Gr!G*=Z zzY8&3(#|3c>PC_1{u@Bk{#JW&w$JMN zZmoB370*AWnzg`2+{O`$9Z_a=ARA@!?t_s`PYhb7Rfki!*S#ZOK|~)V{utv*e-W(JZnBryK zbG%78KlPB8kfN^n!tw33e_>yCJ&XJNcLSp!kGT11;7{H9mScXmmm#+2wkwOuhN}=e z8$ZqYpLf&{L+|oWlr-($MF{8ndw7!-O_Mp+?O_JQhKDCuC?7urIzMp-hCbzQn&e@37(YyCyc|f6N3KahfdVBjz*_S>0<3 z!Y8Slqo8ewnlOTv;7)5=%&ye##P4i;*Ms7jqityp;<}^u^aApyUc`^A8`YccK-%JP zoON*`AIK;t+Kh3~n@Up-R&@wnqYD)vo8d~S$liA)CvN%Hjixfk_oEM79Oq7_L5hJ? zf#}77be>mOH<)E%{ z(=j(W<*`@m-~^#d2_}5X#(`t0ja?3*bcJuKNkzYNuaYpD1?m}2d7y*gG{`}OG^PjH zd4=9+{^!H$m2EBS%FUBe5KjF3M%xG~#nyGzk+cZXH;UZ&Br!46lhc}53giCzczVya z!l~45Cx#>!Uuf7Db~xa`&n{AI$Yh}_P9S`9y1vtJVqsKGquYF$&eQR3!k9LlBDq*j Rq6o;&Bue1k@fvEN{{i~jj3)p9 diff --git a/src/assets/images/pic02.jpg b/src/assets/images/pic02.jpg index d0e2d1964742449ac8ce34ccd99d3a258c0c4c94..481823b7d35f238000c0c0d31f40d6decc780e87 100644 GIT binary patch delta 1610 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 diff --git a/src/assets/images/pic03.jpg b/src/assets/images/pic03.jpg index d8a2bf11e70e5314ff43e6a9280d9557752aaff2..b8b322187fcd49e7002ac355d1f047bf1844474d 100644 GIT binary patch delta 1626 zcmW+$dr*{B6!&9yc`X|PG7_+GSstydqA<2TN(>MMsd%KI$V&orv|&OJY*_*s0bP;T zCpLnFP!k{s$X7rsB*RNFvGo|1RY> zcJoAp=m`XRgc$1U6T}d9bQ$=8H8yM#5)Y|Jr!Zk(%w@vfGyDi4B4I2P6NQ_>RttAwYDV}T1m;FdgpgxM z;agfthgMszt9K>}qTne6lFZNy6;DA}SJALNQD;V$@msHneX6ZZysZW;38`}5EK2Z@ zI`SO?{09A0gmZf55Fg41!OcO)!X(6+2+eO+}iWCPsnQ8mde0-FqPu0ckcdE(`xVtl%&YLD+c)Y|q=L9Wto8_JA-5=40$ z{ihiNGBWpO>5@?xVM$;)6gvWq5Oe>t5@t0aJ<5nbT;zxPj+UFrLHp!>Hyo-um|&;A zU~AgqdB`aU*~kN~=n4;<06zbq6HXxu-%DF1N9;smbEG{aA4NuDu>Ej9;tir((RD`0 zf#cSFUP5=+9a}CSm-ayBNL(7$CJNTAI-QxN0PS6`${$2t{VeP6OLUFOmmnOYy zT)PF5x7C&4Jes<-D6G9+23A#1w?0;1i@BV}>!9@hjqA9fXPgUt z$)?Tzc&cc1JhF$>#x(o1%@ptH&8?RJo$N56gT3e~pf4k}cM!1b$G5!!Qgr(QSaK%` zej)P@SKYjEG^XH!r?!0|m^<)RQPVz9Y~7sSvakvWO?O~sE~2j;7sp!nF9OkGU;z70 z56t3F4}SB-K_wd2mMjg<)YmNRP{)L-G$i{(8Y13U5fPZ*@{$sk>G$z&kpw3E*vH~jP!5V@Xb=aBC|bqH+jR48ieKG)#* zW7FT@jU~R^54I02XRFPDMRHZMV%ofC4*x>j=qr5zxXJk`EcX8Q7bbstdmM%BmN$VU x8?=lseqwnXdBtr^6u1^K!?;6-mM|VeucReTmx%&W%WXYo3*Jr3iUCu``yZm`F&6*; delta 1435 zcmW-g3rtg27{^oFLQe~#B7>EJvpg(NaWGQYz%r&zv@tw}fH0|6L^C3hM~105kSR_? z5ide`S(nYA@)&Z7I3`mg2ofeZ=m--h+XQ)S$hH6p1NQ%xG{4jT|9jl?oqO)z6{5-t zQA3+h$}GiVOD2^_8241D7BFsESPT}6rodeBoPhC0i%wuSyP z9r%W{QN}`4)+>rqqY}#)*C%}+uAS^4cwFWOHpsSuv$74Kv(@4{_6g;Shc-y zvoc;Frdq}q*<4(K{VLZ)(S9>+PeUx(#*m1y3x+7Q>lR^2l&i=)@7ND@hGW)(7Nc(-3gq<4#ZC zwRa~yqbwnq(gyW3)uLWcV(tqK6 zHzeE9q}miCjo6Z^hmfZorB3J4_kbhm;jsKOY$>kGTn}+1vz3JU_%eh#s|d;b_a}^0 z^IkTxxq@tWuqnF$fsh;{?ug7Gg>m;!u7f>%lCxsle`@s7TphccmBRR(Tq7OI!l_f# zAt$dILUkscx>kM>N8bF|XfQng60Dc`O=Oi7L_$mz+#^wYArJH`42AVsAzeCt;Nl-N zWc%eWAr6&k`6PWdJrPu`VR6wzu`kgw{O;fh8jA5pV|+>W3}Z7udTDEu)4kq z?5d~ZRD4rIR%b&U#HY9FXnxlwZ(5>mhtbBrZb^Yy`<)GWZmnzRzyt12Qr-hb``Oe+ z9~}4KQ7_1KYy$^7&Vz?KGr;Ga3UHwlTjHx9w^GZbCkvpVrw7(Mz0=g#rH=;Sj`VY& zz)U6U%=f?-W=DkoH5(|bAIOK89MC}UE`vXiH}muFp!wM}*gk|8%|$+c273Q8jwFW{ zy_7UD903OXI!blF%}}}B%d-?Qjl_csBXO`|M*C?m>hV$*4Lm=qK?|7MP01koX^HH?f3lP|KV0eO>u zupI*l?q|0IOaA0o!px|!c^;1x6Hv`gzQsT?mOl=pau0tlkfSBA1*HDIz&D_}$=5{k zfux)0OrV|zqUIny5)yNOoUIb+AWLMW@K+{r`7(qs-sgwW!w&*=l delta 208 zcmaFkdCPOd5oRt%Q2M37H=wG?4@B~TWPs>QpwKH( zbC3=ti8(;deu;FD`RY<2`596&K%s3?mq9|^GGRdSu}lU~$X8YqsAY47yc9@gio!}D XX{Y!ONa`uM10~9o7(qr>sFVNzNi{fN diff --git a/src/assets/images/pic05.jpg b/src/assets/images/pic05.jpg index f104c59e7dd86eff26b065dd8cad3eff86149755..2180d848c0e75bec73628d3c8a60e54316151204 100644 GIT binary patch delta 279 zcmX@;chPUd5oTTm1$I_eb_E444h{u{$>*4Ln1Ix8=1+_Yo8Pg7FajxOHho5Ug_qk; znHSqjz5Mm_#G~K4Zm+w);cxW(FZcNP#B0>`6edq(cLQqNe1m-kv!H_DVT=lsvw4z0O3(3>GJ$9pek&%RXuaTXpk38Me;Gk4D@E1; zc^absKuRX7OY{jSC}d9%nLnfQUa!2`;%Pv^!xCU))Fk_W+Ba{N=4A$%c34iGQB*-f z=)v8euktdkY}v4Ro6(*lXZe9r|K#t3Exf0s1N7EpZk5SEa=yxHAnC2T7-+_O)gVRy Dx;bI5 delta 239 zcmccUchGOc5oRtVk)o>C?t<->0U zq$alu{swZIh5mxfYZ6%pfDAB}>;oBa zNSc=!NL`duXB6R-5PER;=c~MoD_b^f-e$Dt$XR~Q&AbZtLF(Qq>440ZR+$VW*Q=}s OlF_P*ffD~!gBSt(&rCZ2 diff --git a/src/assets/js/main.js b/src/assets/js/main.js index 8a73ec8..f7c029d 100644 --- a/src/assets/js/main.js +++ b/src/assets/js/main.js @@ -1,106 +1,106 @@ /* - Spectral by HTML5 UP - html5up.net | @ajlkn - Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) + Spectral by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) */ (function($) { - skel - .breakpoints({ - xlarge: '(max-width: 1680px)', - large: '(max-width: 1280px)', - medium: '(max-width: 980px)', - small: '(max-width: 736px)', - xsmall: '(max-width: 480px)' - }); + skel + .breakpoints({ + xlarge: '(max-width: 1680px)', + large: '(max-width: 1280px)', + medium: '(max-width: 980px)', + small: '(max-width: 736px)', + xsmall: '(max-width: 480px)' + }); - $(function() { + $(function() { - var $window = $(window), - $body = $('body'), - $wrapper = $('#page-wrapper'), - $banner = $('#banner'), - $header = $('#header'); + var $window = $(window), + $body = $('body'), + $wrapper = $('#page-wrapper'), + $banner = $('#banner'), + $header = $('#header'); - // Disable animations/transitions until the page has loaded. - $body.addClass('is-loading'); + // Disable animations/transitions until the page has loaded. + $body.addClass('is-loading'); - $window.on('load', function() { - window.setTimeout(function() { - $body.removeClass('is-loading'); - }, 100); - }); + $window.on('load', function() { + window.setTimeout(function() { + $body.removeClass('is-loading'); + }, 100); + }); - // Mobile? - if (skel.vars.mobile) - $body.addClass('is-mobile'); - else - skel - .on('-medium !medium', function() { - $body.removeClass('is-mobile'); - }) - .on('+medium', function() { - $body.addClass('is-mobile'); - }); + // Mobile? + if (skel.vars.mobile) + $body.addClass('is-mobile'); + else + skel + .on('-medium !medium', function() { + $body.removeClass('is-mobile'); + }) + .on('+medium', function() { + $body.addClass('is-mobile'); + }); - // Fix: Placeholder polyfill. - $('form').placeholder(); + // Fix: Placeholder polyfill. + $('form').placeholder(); - // Prioritize "important" elements on medium. - skel.on('+medium -medium', function() { - $.prioritize( - '.important\\28 medium\\29', - skel.breakpoint('medium').active - ); - }); + // Prioritize "important" elements on medium. + skel.on('+medium -medium', function() { + $.prioritize( + '.important\\28 medium\\29', + skel.breakpoint('medium').active + ); + }); - // Scrolly. - $('.scrolly') - .scrolly({ - speed: 1500, - offset: $header.outerHeight() - }); + // Scrolly. + $('.scrolly') + .scrolly({ + speed: 1500, + offset: $header.outerHeight() + }); - // Menu. - $('#menu') - .append('') - .appendTo($body) - .panel({ - delay: 500, - hideOnClick: true, - hideOnSwipe: true, - resetScroll: true, - resetForms: true, - side: 'right', - target: $body, - visibleClass: 'is-menu-visible' - }); + // Menu. + $('#menu') + .append('') + .appendTo($body) + .panel({ + delay: 500, + hideOnClick: true, + hideOnSwipe: true, + resetScroll: true, + resetForms: true, + side: 'right', + target: $body, + visibleClass: 'is-menu-visible' + }); - // Header. - if (skel.vars.IEVersion < 9) - $header.removeClass('alt'); + // Header. + if (skel.vars.IEVersion < 9) + $header.removeClass('alt'); - if ($banner.length > 0 && - $header.hasClass('alt')) { + if ($banner.length > 0 && + $header.hasClass('alt')) { - $window.on('resize', function() { - $window.trigger('scroll'); - }); + $window.on('resize', function() { + $window.trigger('scroll'); + }); - $banner.scrollex({ - bottom: $header.outerHeight() + 1, - terminate: function() { - $header.removeClass('alt'); - }, - enter: function() { - $header.addClass('alt'); - }, - leave: function() { - $header.removeClass('alt'); - } - }); + $banner.scrollex({ + bottom: $header.outerHeight() + 1, + terminate: function() { + $header.removeClass('alt'); + }, + enter: function() { + $header.addClass('alt'); + }, + leave: function() { + $header.removeClass('alt'); + } + }); - } - }); + } + }); })(jQuery); \ No newline at end of file diff --git a/src/assets/js/util.js b/src/assets/js/util.js index bdb8e9f..7076ec9 100644 --- a/src/assets/js/util.js +++ b/src/assets/js/util.js @@ -1,587 +1,587 @@ (function($) { - /** - * Generate an indented list of links from a nav. Meant for use with panel(). - * @return {jQuery} jQuery object. - */ - $.fn.navList = function() { + /** + * Generate an indented list of links from a nav. Meant for use with panel(). + * @return {jQuery} jQuery object. + */ + $.fn.navList = function() { - var $this = $(this); - $a = $this.find('a'), - b = []; + var $this = $(this); + $a = $this.find('a'), + b = []; - $a.each(function() { + $a.each(function() { - var $this = $(this), - indent = Math.max(0, $this.parents('li').length - 1), - href = $this.attr('href'), - target = $this.attr('target'); + var $this = $(this), + indent = Math.max(0, $this.parents('li').length - 1), + href = $this.attr('href'), + target = $this.attr('target'); - b.push( - '' + - '' + - $this.text() + - '' - ); + b.push( + '' + + '' + + $this.text() + + '' + ); - }); + }); - return b.join(''); + return b.join(''); - }; + }; - /** - * Panel-ify an element. - * @param {object} userConfig User config. - * @return {jQuery} jQuery object. - */ - $.fn.panel = function(userConfig) { + /** + * Panel-ify an element. + * @param {object} userConfig User config. + * @return {jQuery} jQuery object. + */ + $.fn.panel = function(userConfig) { - // No elements? - if (this.length == 0) - return $this; + // No elements? + if (this.length == 0) + return $this; - // Multiple elements? - if (this.length > 1) { + // Multiple elements? + if (this.length > 1) { - for (var i=0; i < this.length; i++) - $(this[i]).panel(userConfig); + for (var i=0; i < this.length; i++) + $(this[i]).panel(userConfig); - return $this; + return $this; - } + } - // Vars. - var $this = $(this), - $body = $('body'), - $window = $(window), - id = $this.attr('id'), - config; + // Vars. + var $this = $(this), + $body = $('body'), + $window = $(window), + id = $this.attr('id'), + config; - // Config. - config = $.extend({ + // Config. + config = $.extend({ - // Delay. - delay: 0, + // Delay. + delay: 0, - // Hide panel on link click. - hideOnClick: false, + // Hide panel on link click. + hideOnClick: false, - // Hide panel on escape keypress. - hideOnEscape: false, + // Hide panel on escape keypress. + hideOnEscape: false, - // Hide panel on swipe. - hideOnSwipe: false, + // Hide panel on swipe. + hideOnSwipe: false, - // Reset scroll position on hide. - resetScroll: false, + // Reset scroll position on hide. + resetScroll: false, - // Reset forms on hide. - resetForms: false, + // Reset forms on hide. + resetForms: false, - // Side of viewport the panel will appear. - side: null, + // Side of viewport the panel will appear. + side: null, - // Target element for "class". - target: $this, + // Target element for "class". + target: $this, - // Class to toggle. - visibleClass: 'visible' + // Class to toggle. + visibleClass: 'visible' - }, userConfig); + }, userConfig); - // Expand "target" if it's not a jQuery object already. - if (typeof config.target != 'jQuery') - config.target = $(config.target); + // Expand "target" if it's not a jQuery object already. + if (typeof config.target != 'jQuery') + config.target = $(config.target); - // Panel. + // Panel. - // Methods. - $this._hide = function(event) { + // Methods. + $this._hide = function(event) { - // Already hidden? Bail. - if (!config.target.hasClass(config.visibleClass)) - return; + // Already hidden? Bail. + if (!config.target.hasClass(config.visibleClass)) + return; - // If an event was provided, cancel it. - if (event) { + // If an event was provided, cancel it. + if (event) { - event.preventDefault(); - event.stopPropagation(); + event.preventDefault(); + event.stopPropagation(); - } + } - // Hide. - config.target.removeClass(config.visibleClass); + // Hide. + config.target.removeClass(config.visibleClass); - // Post-hide stuff. - window.setTimeout(function() { + // Post-hide stuff. + window.setTimeout(function() { - // Reset scroll position. - if (config.resetScroll) - $this.scrollTop(0); + // Reset scroll position. + if (config.resetScroll) + $this.scrollTop(0); - // Reset forms. - if (config.resetForms) - $this.find('form').each(function() { - this.reset(); - }); + // Reset forms. + if (config.resetForms) + $this.find('form').each(function() { + this.reset(); + }); - }, config.delay); + }, config.delay); - }; + }; - // Vendor fixes. - $this - .css('-ms-overflow-style', '-ms-autohiding-scrollbar') - .css('-webkit-overflow-scrolling', 'touch'); + // Vendor fixes. + $this + .css('-ms-overflow-style', '-ms-autohiding-scrollbar') + .css('-webkit-overflow-scrolling', 'touch'); - // Hide on click. - if (config.hideOnClick) { + // Hide on click. + if (config.hideOnClick) { - $this.find('a') - .css('-webkit-tap-highlight-color', 'rgba(0,0,0,0)'); + $this.find('a') + .css('-webkit-tap-highlight-color', 'rgba(0,0,0,0)'); - $this - .on('click', 'a', function(event) { + $this + .on('click', 'a', function(event) { - var $a = $(this), - href = $a.attr('href'), - target = $a.attr('target'); + var $a = $(this), + href = $a.attr('href'), + target = $a.attr('target'); - if (!href || href == '#' || href == '' || href == '#' + id) - return; + if (!href || href == '#' || href == '' || href == '#' + id) + return; - // Cancel original event. - event.preventDefault(); - event.stopPropagation(); + // Cancel original event. + event.preventDefault(); + event.stopPropagation(); - // Hide panel. - $this._hide(); + // Hide panel. + $this._hide(); - // Redirect to href. - window.setTimeout(function() { + // Redirect to href. + window.setTimeout(function() { - if (target == '_blank') - window.open(href); - else - window.location.href = href; + if (target == '_blank') + window.open(href); + else + window.location.href = href; - }, config.delay + 10); + }, config.delay + 10); - }); + }); - } + } - // Event: Touch stuff. - $this.on('touchstart', function(event) { + // Event: Touch stuff. + $this.on('touchstart', function(event) { - $this.touchPosX = event.originalEvent.touches[0].pageX; - $this.touchPosY = event.originalEvent.touches[0].pageY; + $this.touchPosX = event.originalEvent.touches[0].pageX; + $this.touchPosY = event.originalEvent.touches[0].pageY; - }) + }) - $this.on('touchmove', function(event) { + $this.on('touchmove', function(event) { - if ($this.touchPosX === null - || $this.touchPosY === null) - return; + if ($this.touchPosX === null + || $this.touchPosY === null) + return; - var diffX = $this.touchPosX - event.originalEvent.touches[0].pageX, - diffY = $this.touchPosY - event.originalEvent.touches[0].pageY, - th = $this.outerHeight(), - ts = ($this.get(0).scrollHeight - $this.scrollTop()); + var diffX = $this.touchPosX - event.originalEvent.touches[0].pageX, + diffY = $this.touchPosY - event.originalEvent.touches[0].pageY, + th = $this.outerHeight(), + ts = ($this.get(0).scrollHeight - $this.scrollTop()); - // Hide on swipe? - if (config.hideOnSwipe) { + // Hide on swipe? + if (config.hideOnSwipe) { - var result = false, - boundary = 20, - delta = 50; + var result = false, + boundary = 20, + delta = 50; - switch (config.side) { + switch (config.side) { - case 'left': - result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX > delta); - break; + case 'left': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX > delta); + break; - case 'right': - result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX < (-1 * delta)); - break; + case 'right': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX < (-1 * delta)); + break; - case 'top': - result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY > delta); - break; + case 'top': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY > delta); + break; - case 'bottom': - result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY < (-1 * delta)); - break; + case 'bottom': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY < (-1 * delta)); + break; - default: - break; + default: + break; - } + } - if (result) { + if (result) { - $this.touchPosX = null; - $this.touchPosY = null; - $this._hide(); + $this.touchPosX = null; + $this.touchPosY = null; + $this._hide(); - return false; + return false; - } + } - } + } - // Prevent vertical scrolling past the top or bottom. - if (($this.scrollTop() < 0 && diffY < 0) - || (ts > (th - 2) && ts < (th + 2) && diffY > 0)) { + // Prevent vertical scrolling past the top or bottom. + if (($this.scrollTop() < 0 && diffY < 0) + || (ts > (th - 2) && ts < (th + 2) && diffY > 0)) { - event.preventDefault(); - event.stopPropagation(); + event.preventDefault(); + event.stopPropagation(); - } + } - }); + }); - // Event: Prevent certain events inside the panel from bubbling. - $this.on('click touchend touchstart touchmove', function(event) { - event.stopPropagation(); - }); + // Event: Prevent certain events inside the panel from bubbling. + $this.on('click touchend touchstart touchmove', function(event) { + event.stopPropagation(); + }); - // Event: Hide panel if a child anchor tag pointing to its ID is clicked. - $this.on('click', 'a[href="#' + id + '"]', function(event) { + // Event: Hide panel if a child anchor tag pointing to its ID is clicked. + $this.on('click', 'a[href="#' + id + '"]', function(event) { - event.preventDefault(); - event.stopPropagation(); + event.preventDefault(); + event.stopPropagation(); - config.target.removeClass(config.visibleClass); + config.target.removeClass(config.visibleClass); - }); + }); - // Body. + // Body. - // Event: Hide panel on body click/tap. - $body.on('click touchend', function(event) { - $this._hide(event); - }); + // Event: Hide panel on body click/tap. + $body.on('click touchend', function(event) { + $this._hide(event); + }); - // Event: Toggle. - $body.on('click', 'a[href="#' + id + '"]', function(event) { + // Event: Toggle. + $body.on('click', 'a[href="#' + id + '"]', function(event) { - event.preventDefault(); - event.stopPropagation(); + event.preventDefault(); + event.stopPropagation(); - config.target.toggleClass(config.visibleClass); + config.target.toggleClass(config.visibleClass); - }); + }); - // Window. + // Window. - // Event: Hide on ESC. - if (config.hideOnEscape) - $window.on('keydown', function(event) { + // Event: Hide on ESC. + if (config.hideOnEscape) + $window.on('keydown', function(event) { - if (event.keyCode == 27) - $this._hide(event); + if (event.keyCode == 27) + $this._hide(event); - }); + }); - return $this; + return $this; - }; + }; - /** - * Apply "placeholder" attribute polyfill to one or more forms. - * @return {jQuery} jQuery object. - */ - $.fn.placeholder = function() { + /** + * Apply "placeholder" attribute polyfill to one or more forms. + * @return {jQuery} jQuery object. + */ + $.fn.placeholder = function() { - // Browser natively supports placeholders? Bail. - if (typeof (document.createElement('input')).placeholder != 'undefined') - return $(this); + // Browser natively supports placeholders? Bail. + if (typeof (document.createElement('input')).placeholder != 'undefined') + return $(this); - // No elements? - if (this.length == 0) - return $this; + // No elements? + if (this.length == 0) + return $this; - // Multiple elements? - if (this.length > 1) { + // Multiple elements? + if (this.length > 1) { - for (var i=0; i < this.length; i++) - $(this[i]).placeholder(); + for (var i=0; i < this.length; i++) + $(this[i]).placeholder(); - return $this; + return $this; - } + } - // Vars. - var $this = $(this); + // Vars. + var $this = $(this); - // Text, TextArea. - $this.find('input[type=text],textarea') - .each(function() { + // Text, TextArea. + $this.find('input[type=text],textarea') + .each(function() { - var i = $(this); + var i = $(this); - if (i.val() == '' - || i.val() == i.attr('placeholder')) - i - .addClass('polyfill-placeholder') - .val(i.attr('placeholder')); + if (i.val() == '' + || i.val() == i.attr('placeholder')) + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); - }) - .on('blur', function() { + }) + .on('blur', function() { - var i = $(this); + var i = $(this); - if (i.attr('name').match(/-polyfill-field$/)) - return; + if (i.attr('name').match(/-polyfill-field$/)) + return; - if (i.val() == '') - i - .addClass('polyfill-placeholder') - .val(i.attr('placeholder')); + if (i.val() == '') + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); - }) - .on('focus', function() { + }) + .on('focus', function() { - var i = $(this); + var i = $(this); - if (i.attr('name').match(/-polyfill-field$/)) - return; + if (i.attr('name').match(/-polyfill-field$/)) + return; - if (i.val() == i.attr('placeholder')) - i - .removeClass('polyfill-placeholder') - .val(''); + if (i.val() == i.attr('placeholder')) + i + .removeClass('polyfill-placeholder') + .val(''); - }); + }); - // Password. - $this.find('input[type=password]') - .each(function() { + // Password. + $this.find('input[type=password]') + .each(function() { - var i = $(this); - var x = $( - $('
') - .append(i.clone()) - .remove() - .html() - .replace(/type="password"/i, 'type="text"') - .replace(/type=password/i, 'type=text') - ); + var i = $(this); + var x = $( + $('
') + .append(i.clone()) + .remove() + .html() + .replace(/type="password"/i, 'type="text"') + .replace(/type=password/i, 'type=text') + ); - if (i.attr('id') != '') - x.attr('id', i.attr('id') + '-polyfill-field'); + if (i.attr('id') != '') + x.attr('id', i.attr('id') + '-polyfill-field'); - if (i.attr('name') != '') - x.attr('name', i.attr('name') + '-polyfill-field'); + if (i.attr('name') != '') + x.attr('name', i.attr('name') + '-polyfill-field'); - x.addClass('polyfill-placeholder') - .val(x.attr('placeholder')).insertAfter(i); + x.addClass('polyfill-placeholder') + .val(x.attr('placeholder')).insertAfter(i); - if (i.val() == '') - i.hide(); - else - x.hide(); + if (i.val() == '') + i.hide(); + else + x.hide(); - i - .on('blur', function(event) { + i + .on('blur', function(event) { - event.preventDefault(); + event.preventDefault(); - var x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + var x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); - if (i.val() == '') { + if (i.val() == '') { - i.hide(); - x.show(); + i.hide(); + x.show(); - } + } - }); + }); - x - .on('focus', function(event) { + x + .on('focus', function(event) { - event.preventDefault(); + event.preventDefault(); - var i = x.parent().find('input[name=' + x.attr('name').replace('-polyfill-field', '') + ']'); + var i = x.parent().find('input[name=' + x.attr('name').replace('-polyfill-field', '') + ']'); - x.hide(); + x.hide(); - i - .show() - .focus(); + i + .show() + .focus(); - }) - .on('keypress', function(event) { + }) + .on('keypress', function(event) { - event.preventDefault(); - x.val(''); + event.preventDefault(); + x.val(''); - }); + }); - }); + }); - // Events. - $this - .on('submit', function() { + // Events. + $this + .on('submit', function() { - $this.find('input[type=text],input[type=password],textarea') - .each(function(event) { + $this.find('input[type=text],input[type=password],textarea') + .each(function(event) { - var i = $(this); + var i = $(this); - if (i.attr('name').match(/-polyfill-field$/)) - i.attr('name', ''); + if (i.attr('name').match(/-polyfill-field$/)) + i.attr('name', ''); - if (i.val() == i.attr('placeholder')) { + if (i.val() == i.attr('placeholder')) { - i.removeClass('polyfill-placeholder'); - i.val(''); + i.removeClass('polyfill-placeholder'); + i.val(''); - } + } - }); + }); - }) - .on('reset', function(event) { + }) + .on('reset', function(event) { - event.preventDefault(); + event.preventDefault(); - $this.find('select') - .val($('option:first').val()); + $this.find('select') + .val($('option:first').val()); - $this.find('input,textarea') - .each(function() { + $this.find('input,textarea') + .each(function() { - var i = $(this), - x; + var i = $(this), + x; - i.removeClass('polyfill-placeholder'); + i.removeClass('polyfill-placeholder'); - switch (this.type) { + switch (this.type) { - case 'submit': - case 'reset': - break; + case 'submit': + case 'reset': + break; - case 'password': - i.val(i.attr('defaultValue')); + case 'password': + i.val(i.attr('defaultValue')); - x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); - if (i.val() == '') { - i.hide(); - x.show(); - } - else { - i.show(); - x.hide(); - } + if (i.val() == '') { + i.hide(); + x.show(); + } + else { + i.show(); + x.hide(); + } - break; + break; - case 'checkbox': - case 'radio': - i.attr('checked', i.attr('defaultValue')); - break; + case 'checkbox': + case 'radio': + i.attr('checked', i.attr('defaultValue')); + break; - case 'text': - case 'textarea': - i.val(i.attr('defaultValue')); + case 'text': + case 'textarea': + i.val(i.attr('defaultValue')); - if (i.val() == '') { - i.addClass('polyfill-placeholder'); - i.val(i.attr('placeholder')); - } + if (i.val() == '') { + i.addClass('polyfill-placeholder'); + i.val(i.attr('placeholder')); + } - break; + break; - default: - i.val(i.attr('defaultValue')); - break; + default: + i.val(i.attr('defaultValue')); + break; - } - }); + } + }); - }); + }); - return $this; + return $this; - }; + }; - /** - * Moves elements to/from the first positions of their respective parents. - * @param {jQuery} $elements Elements (or selector) to move. - * @param {bool} condition If true, moves elements to the top. Otherwise, moves elements back to their original locations. - */ - $.prioritize = function($elements, condition) { + /** + * Moves elements to/from the first positions of their respective parents. + * @param {jQuery} $elements Elements (or selector) to move. + * @param {bool} condition If true, moves elements to the top. Otherwise, moves elements back to their original locations. + */ + $.prioritize = function($elements, condition) { - var key = '__prioritize'; + var key = '__prioritize'; - // Expand $elements if it's not already a jQuery object. - if (typeof $elements != 'jQuery') - $elements = $($elements); + // Expand $elements if it's not already a jQuery object. + if (typeof $elements != 'jQuery') + $elements = $($elements); - // Step through elements. - $elements.each(function() { + // Step through elements. + $elements.each(function() { - var $e = $(this), $p, - $parent = $e.parent(); + var $e = $(this), $p, + $parent = $e.parent(); - // No parent? Bail. - if ($parent.length == 0) - return; + // No parent? Bail. + if ($parent.length == 0) + return; - // Not moved? Move it. - if (!$e.data(key)) { + // Not moved? Move it. + if (!$e.data(key)) { - // Condition is false? Bail. - if (!condition) - return; + // Condition is false? Bail. + if (!condition) + return; - // Get placeholder (which will serve as our point of reference for when this element needs to move back). - $p = $e.prev(); + // Get placeholder (which will serve as our point of reference for when this element needs to move back). + $p = $e.prev(); - // Couldn't find anything? Means this element's already at the top, so bail. - if ($p.length == 0) - return; + // Couldn't find anything? Means this element's already at the top, so bail. + if ($p.length == 0) + return; - // Move element to top of parent. - $e.prependTo($parent); + // Move element to top of parent. + $e.prependTo($parent); - // Mark element as moved. - $e.data(key, $p); + // Mark element as moved. + $e.data(key, $p); - } + } - // Moved already? - else { + // Moved already? + else { - // Condition is true? Bail. - if (condition) - return; + // Condition is true? Bail. + if (condition) + return; - $p = $e.data(key); + $p = $e.data(key); - // Move element back to its original location (using our placeholder). - $e.insertAfter($p); + // Move element back to its original location (using our placeholder). + $e.insertAfter($p); - // Unmark element as moved. - $e.removeData(key); + // Unmark element as moved. + $e.removeData(key); - } + } - }); + }); - }; + }; })(jQuery); \ No newline at end of file diff --git a/src/assets/styles/components/_banner.scss b/src/assets/styles/components/_banner.scss index 2d936cc..6557b3d 100644 --- a/src/assets/styles/components/_banner.scss +++ b/src/assets/styles/components/_banner.scss @@ -2,87 +2,87 @@ /* Banner */ #banner { - @include vendor('display', 'flex'); - @include vendor('flex-direction', 'column'); - @include vendor('justify-content', 'center'); - cursor: default; - height: 100vh; - min-height: 35em; - overflow: hidden; - position: relative; - text-align: center; + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'column'); + @include vendor('justify-content', 'center'); + cursor: default; + height: 100vh; + min-height: 35em; + overflow: hidden; + position: relative; + text-align: center; - h2 { - @include vendor('transform', 'scale(1)'); - @include vendor('transition', ('transform 0.5s ease', 'opacity 0.5s ease')); - display: inline-block; - font-size: 1.75em; - opacity: 1; - padding: 0.35em 1em; - position: relative; - z-index: 1; + h2 { + @include vendor('transform', 'scale(1)'); + @include vendor('transition', ('transform 0.5s ease', 'opacity 0.5s ease')); + display: inline-block; + font-size: 1.75em; + opacity: 1; + padding: 0.35em 1em; + position: relative; + z-index: 1; - &:before, &:after { - @include vendor('transition', 'width 1s ease'); - @include vendor('transition-delay', '0.25s'); - background: _palette(fg-bold); - content: ''; - display: block; - height: 2px; - position: absolute; - width: 100%; - } + &:before, &:after { + @include vendor('transition', 'width 1s ease'); + @include vendor('transition-delay', '0.25s'); + background: _palette(fg-bold); + content: ''; + display: block; + height: 2px; + position: absolute; + width: 100%; + } - &:before { - top: 0; - left: 0; - } + &:before { + top: 0; + left: 0; + } - &:after { - bottom: 0; - right: 0; - } - } + &:after { + bottom: 0; + right: 0; + } + } - h1 { - @include vendor('transition', 'opacity 0.5s ease'); - @include vendor('transition-delay', '1s'); - margin-bottom: 25px; - opacity: 1; + h1 { + @include vendor('transition', 'opacity 0.5s ease'); + @include vendor('transition-delay', '1s'); + margin-bottom: 25px; + opacity: 1; - a { - color: inherit; - } - } + a { + color: inherit; + } + } - @include breakpoint(small) { - @include padding(7em, 3em); - height: auto; - min-height: 0; + @include breakpoint(small) { + @include padding(7em, 3em); + height: auto; + min-height: 0; - h2 { - font-size: 1.25em; - } + h2 { + font-size: 1.25em; + } - br { - display: none; - } - } + br { + display: none; + } + } } body.is-loading { - #banner { - h1 { - opacity: 0; - } + #banner { + h1 { + opacity: 0; + } - h2 { - @include vendor('transform', 'scale(0.95)'); - opacity: 0; + h2 { + @include vendor('transform', 'scale(0.95)'); + opacity: 0; - &:before, &:after { - width: 0; - } - } - } + &:before, &:after { + width: 0; + } + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_basic.scss b/src/assets/styles/components/_basic.scss index 0fe1789..0720a1b 100644 --- a/src/assets/styles/components/_basic.scss +++ b/src/assets/styles/components/_basic.scss @@ -2,234 +2,234 @@ /* Basic */ @-ms-viewport { - width: device-width; + width: device-width; } body { - background: _palette(bg); + background: _palette(bg); - &.is-loading { - *, *:before, *:after { - @include vendor('animation', 'none !important'); - @include vendor('transition', 'none !important'); - } - } + &.is-loading { + *, *:before, *:after { + @include vendor('animation', 'none !important'); + @include vendor('transition', 'none !important'); + } + } } body, input, select, textarea { - color: _palette(fg); - font-family: _font(family); - font-size: 15pt; - font-weight: _font(weight); - letter-spacing: _size(letter-spacing); - line-height: 1.65em; + color: _palette(fg); + font-family: _font(family); + font-size: 15pt; + font-weight: _font(weight); + letter-spacing: _size(letter-spacing); + line-height: 1.65em; - @include breakpoint(xlarge) { - font-size: 13pt; - } + @include breakpoint(xlarge) { + font-size: 13pt; + } - @include breakpoint(large) { - font-size: 12pt; - } + @include breakpoint(large) { + font-size: 12pt; + } - @include breakpoint(small) { - font-size: 11pt; - letter-spacing: _size(letter-spacing) * 0.5; - } + @include breakpoint(small) { + font-size: 11pt; + letter-spacing: _size(letter-spacing) * 0.5; + } } a { - @include vendor('transition', ('color #{_duration(transitions)} ease', 'border-bottom-color #{_duration(transitions)} ease')); - border-bottom: dotted 1px; - color: inherit; - text-decoration: none; + @include vendor('transition', ('color #{_duration(transitions)} ease', 'border-bottom-color #{_duration(transitions)} ease')); + border-bottom: dotted 1px; + color: inherit; + text-decoration: none; - &:hover { - border-bottom-color: transparent; - } + &:hover { + border-bottom-color: transparent; + } } strong, b { - color: _palette(fg-bold); - font-weight: _font(weight-bold); + color: _palette(fg-bold); + font-weight: _font(weight-bold); } em, i { - font-style: italic; + font-style: italic; } p { - margin: 0 0 _size(element-margin) 0; + margin: 0 0 _size(element-margin) 0; } .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { - color: _palette(fg-bold); - font-weight: _font(weight-extrabold); - letter-spacing: _size(letter-spacing-alt); - line-height: 1em; - margin: 0 0 (_size(element-margin) * 0.5) 0; - text-transform: uppercase; + color: _palette(fg-bold); + font-weight: _font(weight-extrabold); + letter-spacing: _size(letter-spacing-alt); + line-height: 1em; + margin: 0 0 (_size(element-margin) * 0.5) 0; + text-transform: uppercase; - a { - color: inherit; - text-decoration: none; - } + a { + color: inherit; + text-decoration: none; + } } h2, .h2 { - font-size: 1.35em; - line-height: 1.4; + font-size: 1.35em; + line-height: 1.4; - @include breakpoint(small) { - font-size: 1.1em; - } + @include breakpoint(small) { + font-size: 1.1em; + } } .h3, h3 { - font-size: 1.15em; - line-height: 1.4; + font-size: 1.15em; + line-height: 1.4; - @include breakpoint(small) { - font-size: 1em; - } + @include breakpoint(small) { + font-size: 1em; + } } .h4, h4 { - font-size: 1em; - line-height: 1.5em; + font-size: 1em; + line-height: 1.5em; } .h5, h5 { - font-size: 0.8em; - line-height: 1.5em; + font-size: 0.8em; + line-height: 1.5em; } .h6, h6 { - font-size: 0.7em; - line-height: 1.5em; + font-size: 0.7em; + line-height: 1.5em; } sub { - font-size: 0.8em; - position: relative; - top: 0.5em; + font-size: 0.8em; + position: relative; + top: 0.5em; } sup { - font-size: 0.8em; - position: relative; - top: -0.5em; + font-size: 0.8em; + position: relative; + top: -0.5em; } hr { - border: 0; - border-bottom: solid 2px _palette(border); - margin: (_size(element-margin) * 1.5) 0; + border: 0; + border-bottom: solid 2px _palette(border); + margin: (_size(element-margin) * 1.5) 0; - &.major { - margin: (_size(element-margin) * 2.25) 0; - } + &.major { + margin: (_size(element-margin) * 2.25) 0; + } } blockquote { - border-left: solid 4px _palette(border); - font-style: italic; - margin: 0 0 _size(element-margin) 0; - padding: 0.5em 0 0.5em 2em; + border-left: solid 4px _palette(border); + font-style: italic; + margin: 0 0 _size(element-margin) 0; + padding: 0.5em 0 0.5em 2em; } code { - background: _palette(border-bg); - border-radius: 3px; - font-family: _font(family-fixed); - font-size: 0.9em; - letter-spacing: 0; - margin: 0 0.25em; - padding: 0.25em 0.65em; + background: _palette(border-bg); + border-radius: 3px; + font-family: _font(family-fixed); + font-size: 0.9em; + letter-spacing: 0; + margin: 0 0.25em; + padding: 0.25em 0.65em; } pre { - -webkit-overflow-scrolling: touch; - font-family: _font(family-fixed); - font-size: 0.9em; - margin: 0 0 _size(element-margin) 0; + -webkit-overflow-scrolling: touch; + font-family: _font(family-fixed); + font-size: 0.9em; + margin: 0 0 _size(element-margin) 0; - code { - display: block; - line-height: 1.75em; - padding: 1em 1.5em; - overflow-x: auto; - } + code { + display: block; + line-height: 1.75em; + padding: 1em 1.5em; + overflow-x: auto; + } } .align-left { - text-align: left; + text-align: left; } .align-center { - text-align: center; + text-align: center; } .align-right { - text-align: right; + text-align: right; } header { - p { - color: _palette(fg-light); - position: relative; - top: -0.25em; - } + p { + color: _palette(fg-light); + position: relative; + top: -0.25em; + } - h2 + p { - } + h2 + p { + } - h3 + p { - font-size: 1.1em; - } + h3 + p { + font-size: 1.1em; + } - h4 + p, - h5 + p, - h6 + p { - font-size: 0.9em; - } + h4 + p, + h5 + p, + h6 + p { + font-size: 0.9em; + } - &.major { - margin: 0 0 (_size(element-margin) * 1.75) 0; + &.major { + margin: 0 0 (_size(element-margin) * 1.75) 0; - h2, h3, h4, h5, h6 { - border-bottom: solid 2px _palette(border); - display: inline-block; - padding-bottom: 1em; - position: relative; + h2, h3, h4, h5, h6 { + border-bottom: solid 2px _palette(border); + display: inline-block; + padding-bottom: 1em; + position: relative; - &:after { - content: ''; - display: block; - height: 1px; - } - } + &:after { + content: ''; + display: block; + height: 1px; + } + } - p { - color: _palette(fg); - top: 0; - } + p { + color: _palette(fg); + top: 0; + } - @include breakpoint(small) { - margin: 0 0 _size(element-margin) 0; - } - } + @include breakpoint(small) { + margin: 0 0 _size(element-margin) 0; + } + } - @include breakpoint(medium) { - br { - display: none; - } - } + @include breakpoint(medium) { + br { + display: none; + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_box.scss b/src/assets/styles/components/_box.scss index 146a4a6..98d5cf2 100644 --- a/src/assets/styles/components/_box.scss +++ b/src/assets/styles/components/_box.scss @@ -2,70 +2,70 @@ /* Box */ .box { - border-radius: 3px; - border: solid 2px _palette(border); - margin-bottom: _size(element-margin); - padding: 1.5em; + border-radius: 3px; + border: solid 2px _palette(border); + margin-bottom: _size(element-margin); + padding: 1.5em; - > :last-child, - > :last-child > :last-child, - > :last-child > :last-child > :last-child { - margin-bottom: 0; - } + > :last-child, + > :last-child > :last-child, + > :last-child > :last-child > :last-child { + margin-bottom: 0; + } - &.alt { - border: 0; - border-radius: 0; - padding: 0; - } + &.alt { + border: 0; + border-radius: 0; + padding: 0; + } } /* Icon */ .icon { - @include icon; - border-bottom: none; - position: relative; + @include icon; + border-bottom: none; + position: relative; - > .label { - display: none; - } + > .label { + display: none; + } - &.major { - @include vendor('transform', 'rotate(-45deg)'); - border-radius: 3px; - border: solid 2px _palette(border); - display: inline-block; - font-size: 1.35em; - height: calc(3em + 2px); - line-height: 3em; - text-align: center; - width: calc(3em + 2px); + &.major { + @include vendor('transform', 'rotate(-45deg)'); + border-radius: 3px; + border: solid 2px _palette(border); + display: inline-block; + font-size: 1.35em; + height: calc(3em + 2px); + line-height: 3em; + text-align: center; + width: calc(3em + 2px); - &:before { - @include vendor('transform', 'rotate(45deg)'); - display: inline-block; - font-size: 1.5em; - } + &:before { + @include vendor('transform', 'rotate(45deg)'); + display: inline-block; + font-size: 1.5em; + } - @include breakpoint(small) { - font-size: 1em; - } - } + @include breakpoint(small) { + font-size: 1em; + } + } - &.style1 { - color: _palette(bg); - } + &.style1 { + color: _palette(bg); + } - &.style2 { - color: _palette(accent2, bg); - } + &.style2 { + color: _palette(accent2, bg); + } - &.style3 { - color: _palette(accent3, bg); - } - - &.style4 { - color: _palette(accent4, bg); - } + &.style3 { + color: _palette(accent3, bg); + } + + &.style4 { + color: _palette(accent4, bg); + } } \ No newline at end of file diff --git a/src/assets/styles/components/_button.scss b/src/assets/styles/components/_button.scss index e7eddcd..8c855f4 100644 --- a/src/assets/styles/components/_button.scss +++ b/src/assets/styles/components/_button.scss @@ -6,78 +6,78 @@ input[type="reset"], input[type="button"], button, .button { - @include vendor('appearance', 'none'); - @include vendor('transition', ('background-color #{_duration(transitions)} ease-in-out', 'color #{_duration(transitions)} ease-in-out')); - background-color: transparent; - border-radius: 3px; - border: 0; - box-shadow: inset 0 0 0 2px _palette(border); - color: _palette(fg-bold); - cursor: pointer; - display: inline-block; - font-size: 0.8em; - font-weight: _font(weight-bold); - height: 3.125em; - letter-spacing: _size(letter-spacing-alt); - line-height: 3.125em; - padding: 0 2.75em; - text-align: center; - text-decoration: none; - text-transform: uppercase; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; + @include vendor('appearance', 'none'); + @include vendor('transition', ('background-color #{_duration(transitions)} ease-in-out', 'color #{_duration(transitions)} ease-in-out')); + background-color: transparent; + border-radius: 3px; + border: 0; + box-shadow: inset 0 0 0 2px _palette(border); + color: _palette(fg-bold); + cursor: pointer; + display: inline-block; + font-size: 0.8em; + font-weight: _font(weight-bold); + height: 3.125em; + letter-spacing: _size(letter-spacing-alt); + line-height: 3.125em; + padding: 0 2.75em; + text-align: center; + text-decoration: none; + text-transform: uppercase; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; - &:hover { - background-color: _palette(border-bg); - } + &:hover { + background-color: _palette(border-bg); + } - &:active { - background-color: _palette(border2-bg); - } + &:active { + background-color: _palette(border2-bg); + } - &.icon { - &:before { - margin-right: 0.5em; - } - } + &.icon { + &:before { + margin-right: 0.5em; + } + } - &.fit { - display: block; - margin: 0 0 (_size(element-margin) * 0.5) 0; - width: 100%; - } + &.fit { + display: block; + margin: 0 0 (_size(element-margin) * 0.5) 0; + width: 100%; + } - &.small { - font-size: 0.8em; - } + &.small { + font-size: 0.8em; + } - &.big { - font-size: 1.35em; - } + &.big { + font-size: 1.35em; + } - &.special { - background-color: _palette(accent3, bg); - box-shadow: none !important; - color: _palette(accent3, fg-bold) !important; + &.special { + background-color: _palette(accent3, bg); + box-shadow: none !important; + color: _palette(accent3, fg-bold) !important; - &:hover { - background-color: lighten(_palette(accent3, bg), 5) !important; - } + &:hover { + background-color: lighten(_palette(accent3, bg), 5) !important; + } - &:active { - background-color: darken(_palette(accent3, bg), 5) !important; - } - } + &:active { + background-color: darken(_palette(accent3, bg), 5) !important; + } + } - &.disabled, - &:disabled { - @include vendor('pointer-events', 'none'); - opacity: 0.25; - } + &.disabled, + &:disabled { + @include vendor('pointer-events', 'none'); + opacity: 0.25; + } - @include breakpoint(small) { - height: 3.75em; - line-height: 3.75em; - } + @include breakpoint(small) { + height: 3.75em; + line-height: 3.75em; + } } \ No newline at end of file diff --git a/src/assets/styles/components/_cta.scss b/src/assets/styles/components/_cta.scss index 55e7349..94d8c67 100644 --- a/src/assets/styles/components/_cta.scss +++ b/src/assets/styles/components/_cta.scss @@ -5,46 +5,46 @@ /* CTA */ #cta { - .inner { - @include vendor('display', 'flex'); - max-width: 45em; + .inner { + @include vendor('display', 'flex'); + max-width: 45em; - header { - @include vendor('order', '1'); - padding-right: 3em; - width: 70%; + header { + @include vendor('order', '1'); + padding-right: 3em; + width: 70%; - p { - color: inherit; - } - } + p { + color: inherit; + } + } - .actions { - @include vendor('order', '2'); - width: 30%; - } + .actions { + @include vendor('order', '2'); + width: 30%; + } - @include breakpoint(medium) { - display: block; - text-align: center; + @include breakpoint(medium) { + display: block; + text-align: center; - header { - padding-right: 0; - width: 100%; - } + header { + padding-right: 0; + width: 100%; + } - .actions { - margin-left: auto; - margin-right: auto; - max-width: 20em; - width: 100%; - } - } + .actions { + margin-left: auto; + margin-right: auto; + max-width: 20em; + width: 100%; + } + } - @include breakpoint(small) { - .actions { - max-width: none; - } - } - } + @include breakpoint(small) { + .actions { + max-width: none; + } + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_features.scss b/src/assets/styles/components/_features.scss index ff08bfd..5260d8f 100644 --- a/src/assets/styles/components/_features.scss +++ b/src/assets/styles/components/_features.scss @@ -2,74 +2,74 @@ /* Features */ .features { - @include vendor('display', 'flex'); - @include vendor('flex-wrap', 'wrap'); - @include vendor('justify-content', 'center'); - list-style: none; - padding: 0; - width: 100%; + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + @include vendor('justify-content', 'center'); + list-style: none; + padding: 0; + width: 100%; - li { - @include padding(4em, 4em, (0,0,0,2em)); - display: block; - position: relative; - text-align: left; - width: 50%; + li { + @include padding(4em, 4em, (0,0,0,2em)); + display: block; + position: relative; + text-align: left; + width: 50%; - @for $i from 1 through _misc(max-features) { - $j: 0.035 * $i; + @for $i from 1 through _misc(max-features) { + $j: 0.035 * $i; - &:nth-child(#{$i}) { - background-color: rgba(0,0,0, $j); - } - } + &:nth-child(#{$i}) { + background-color: rgba(0,0,0, $j); + } + } - &:before { - display: block; - color: _palette(accent1, bg); - position: absolute; - left: 1.75em; - top: 2.75em; - font-size: 1.5em; - } + &:before { + display: block; + color: _palette(accent1, bg); + position: absolute; + left: 1.75em; + top: 2.75em; + font-size: 1.5em; + } - &:nth-child(1) { - border-top-left-radius: 3px; - } + &:nth-child(1) { + border-top-left-radius: 3px; + } - &:nth-child(2) { - border-top-right-radius: 3px; - } + &:nth-child(2) { + border-top-right-radius: 3px; + } - &:nth-last-child(1) { - border-bottom-right-radius: 3px; - } + &:nth-last-child(1) { + border-bottom-right-radius: 3px; + } - &:nth-last-child(2) { - border-bottom-left-radius: 3px; - } + &:nth-last-child(2) { + border-bottom-left-radius: 3px; + } - @include breakpoint(medium) { - @include padding(3em, 2em); - text-align: center; + @include breakpoint(medium) { + @include padding(3em, 2em); + text-align: center; - &:before { - left: 0; - margin: 0 0 (_size(element-margin) * 0.5) 0; - position: relative; - top: 0; - } - } + &:before { + left: 0; + margin: 0 0 (_size(element-margin) * 0.5) 0; + position: relative; + top: 0; + } + } - @include breakpoint(small) { - @include padding(3em, 0); - background-color: transparent !important; - border-top: solid 2px _palette(border); - width: 100%; + @include breakpoint(small) { + @include padding(3em, 0); + background-color: transparent !important; + border-top: solid 2px _palette(border); + width: 100%; - &:first-child { - border-top: 0; - } - } - } + &:first-child { + border-top: 0; + } + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_form.scss b/src/assets/styles/components/_form.scss index b22f38b..3cbbf59 100644 --- a/src/assets/styles/components/_form.scss +++ b/src/assets/styles/components/_form.scss @@ -2,15 +2,15 @@ /* Form */ form { - margin: 0 0 _size(element-margin) 0; + margin: 0 0 _size(element-margin) 0; } label { - color: _palette(fg-bold); - display: block; - font-size: 0.9em; - font-weight: _font(weight-bold); - margin: 0 0 (_size(element-margin) * 0.5) 0; + color: _palette(fg-bold); + display: block; + font-size: 0.9em; + font-weight: _font(weight-bold); + margin: 0 0 (_size(element-margin) * 0.5) 0; } input[type="text"], @@ -18,149 +18,149 @@ input[type="password"], input[type="email"], select, textarea { - @include vendor('appearance', 'none'); - background: _palette(border-bg); - border-radius: 3px; - border: none; - color: inherit; - display: block; - outline: 0; - padding: 0 1em; - text-decoration: none; - width: 100%; + @include vendor('appearance', 'none'); + background: _palette(border-bg); + border-radius: 3px; + border: none; + color: inherit; + display: block; + outline: 0; + padding: 0 1em; + text-decoration: none; + width: 100%; - &:invalid { - box-shadow: none; - } + &:invalid { + box-shadow: none; + } - &:focus { - box-shadow: 0 0 0 2px _palette(accent1, bg); - } + &:focus { + box-shadow: 0 0 0 2px _palette(accent1, bg); + } } .select-wrapper { - @include icon; - display: block; - position: relative; + @include icon; + display: block; + position: relative; - &:before { - @include vendor('pointer-events', 'none'); - color: _palette(border); - content: '\f078'; - display: block; - height: _size(element-height); - line-height: _size(element-height); - position: absolute; - right: 0; - text-align: center; - top: 0; - width: _size(element-height); - } + &:before { + @include vendor('pointer-events', 'none'); + color: _palette(border); + content: '\f078'; + display: block; + height: _size(element-height); + line-height: _size(element-height); + position: absolute; + right: 0; + text-align: center; + top: 0; + width: _size(element-height); + } - select::-ms-expand { - display: none; - } + select::-ms-expand { + display: none; + } } input[type="text"], input[type="password"], input[type="email"], select { - height: _size(element-height); + height: _size(element-height); } textarea { - padding: 0.75em 1em; + padding: 0.75em 1em; } input[type="checkbox"], input[type="radio"], { - @include vendor('appearance', 'none'); - display: block; - float: left; - margin-right: -2em; - opacity: 0; - width: 1em; - z-index: -1; + @include vendor('appearance', 'none'); + display: block; + float: left; + margin-right: -2em; + opacity: 0; + width: 1em; + z-index: -1; - & + label { - @include icon; - color: _palette(fg); - cursor: pointer; - display: inline-block; - font-size: 1em; - font-weight: _font(weight); - padding-left: (_size(element-height) * 0.6) + 0.75em; - padding-right: 0.75em; - position: relative; + & + label { + @include icon; + color: _palette(fg); + cursor: pointer; + display: inline-block; + font-size: 1em; + font-weight: _font(weight); + padding-left: (_size(element-height) * 0.6) + 0.75em; + padding-right: 0.75em; + position: relative; - &:before { - background: _palette(border-bg); - border-radius: 3px; - content: ''; - display: inline-block; - height: (_size(element-height) * 0.6); - left: 0; - line-height: (_size(element-height) * 0.575); - position: absolute; - text-align: center; - top: 0; - width: (_size(element-height) * 0.6); - } - } + &:before { + background: _palette(border-bg); + border-radius: 3px; + content: ''; + display: inline-block; + height: (_size(element-height) * 0.6); + left: 0; + line-height: (_size(element-height) * 0.575); + position: absolute; + text-align: center; + top: 0; + width: (_size(element-height) * 0.6); + } + } - &:checked + label { - &:before { - background: _palette(bg); - color: _palette(fg-bold); - content: '\f00c'; - } - } + &:checked + label { + &:before { + background: _palette(bg); + color: _palette(fg-bold); + content: '\f00c'; + } + } - &:focus + label { - &:before { - box-shadow: 0 0 0 2px _palette(accent1, bg); - } - } + &:focus + label { + &:before { + box-shadow: 0 0 0 2px _palette(accent1, bg); + } + } } input[type="checkbox"] { - & + label { - &:before { - border-radius: 3px; - } - } + & + label { + &:before { + border-radius: 3px; + } + } } input[type="radio"] { - & + label { - &:before { - border-radius: 100%; - } - } + & + label { + &:before { + border-radius: 100%; + } + } } ::-webkit-input-placeholder { - color: _palette(fg-light) !important; - opacity: 1.0; + color: _palette(fg-light) !important; + opacity: 1.0; } :-moz-placeholder { - color: _palette(fg-light) !important; - opacity: 1.0; + color: _palette(fg-light) !important; + opacity: 1.0; } ::-moz-placeholder { - color: _palette(fg-light) !important; - opacity: 1.0; + color: _palette(fg-light) !important; + opacity: 1.0; } :-ms-input-placeholder { - color: _palette(fg-light) !important; - opacity: 1.0; + color: _palette(fg-light) !important; + opacity: 1.0; } .formerize-placeholder { - color: _palette(fg-light) !important; - opacity: 1.0; + color: _palette(fg-light) !important; + opacity: 1.0; } \ No newline at end of file diff --git a/src/assets/styles/components/_header.scss b/src/assets/styles/components/_header.scss index afa5278..014a2f1 100644 --- a/src/assets/styles/components/_header.scss +++ b/src/assets/styles/components/_header.scss @@ -2,104 +2,104 @@ /* Header */ #header { - @include vendor('transition', 'background-color #{_duration(transitions)} ease'); - background: _palette(bg); - height: 3em; - left: 0; - line-height: 3em; - position: fixed; - top: 0; - width: 100%; - z-index: _misc(z-index-base); + @include vendor('transition', 'background-color #{_duration(transitions)} ease'); + background: _palette(bg); + height: 3em; + left: 0; + line-height: 3em; + position: fixed; + top: 0; + width: 100%; + z-index: _misc(z-index-base); - h1 { - @include vendor('transition', 'opacity #{_duration(transitions)} ease'); - height: inherit; - left: 1.25em; - line-height: inherit; - position: absolute; - top: 0; + h1 { + @include vendor('transition', 'opacity #{_duration(transitions)} ease'); + height: inherit; + left: 1.25em; + line-height: inherit; + position: absolute; + top: 0; - a { - border: 0; - display: block; - height: inherit; - line-height: inherit; + a { + border: 0; + display: block; + height: inherit; + line-height: inherit; - @include breakpoint(small) { - font-size: 0.8em; - } - } - } + @include breakpoint(small) { + font-size: 0.8em; + } + } + } - nav { - height: inherit; - line-height: inherit; - position: absolute; - right: 0; - top: 0; + nav { + height: inherit; + line-height: inherit; + position: absolute; + right: 0; + top: 0; - > ul { - list-style: none; - margin: 0; - padding: 0; - white-space: nowrap; + > ul { + list-style: none; + margin: 0; + padding: 0; + white-space: nowrap; - > li { - display: inline-block; - padding: 0; + > li { + display: inline-block; + padding: 0; - > a { - border: 0; - color: _palette(fg-bold); - display: block; - font-size: 0.8em; - letter-spacing: _size(letter-spacing-alt); - padding: 0 1.5em; - text-transform: uppercase; + > a { + border: 0; + color: _palette(fg-bold); + display: block; + font-size: 0.8em; + letter-spacing: _size(letter-spacing-alt); + padding: 0 1.5em; + text-transform: uppercase; - &.menuToggle { - outline: 0; - position: relative; + &.menuToggle { + outline: 0; + position: relative; - &:after { - background-image: url('images/bars.svg'); - background-position: right center; - background-repeat: no-repeat; - content: ''; - display: inline-block; - height: 3.75em; - vertical-align: top; - width: 2em; - } + &:after { + background-image: url('images/bars.svg'); + background-position: right center; + background-repeat: no-repeat; + content: ''; + display: inline-block; + height: 3.75em; + vertical-align: top; + width: 2em; + } - @include breakpoint(small) { - padding: 0 1.5em; + @include breakpoint(small) { + padding: 0 1.5em; - span { - display: none; - } - } - } + span { + display: none; + } + } + } - @include breakpoint(small) { - padding: 0 0 0 1.5em; - } - } + @include breakpoint(small) { + padding: 0 0 0 1.5em; + } + } - &:first-child { - margin-left: 0; - } - } - } - } + &:first-child { + margin-left: 0; + } + } + } + } - &.alt { - background: transparent; + &.alt { + background: transparent; - h1 { - @include vendor('pointer-events', 'none'); - opacity: 0; - } - } + h1 { + @include vendor('pointer-events', 'none'); + opacity: 0; + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_image.scss b/src/assets/styles/components/_image.scss index cbad272..8029f16 100644 --- a/src/assets/styles/components/_image.scss +++ b/src/assets/styles/components/_image.scss @@ -2,44 +2,44 @@ /* Image */ .image { - border-radius: 3px; - border: 0; - display: inline-block; - position: relative; + border-radius: 3px; + border: 0; + display: inline-block; + position: relative; - img { - border-radius: 3px; - display: block; - } + img { + border-radius: 3px; + display: block; + } - &.left { - float: left; - margin: 0 2em 2em 0; - top: 0.25em; - } + &.left { + float: left; + margin: 0 2em 2em 0; + top: 0.25em; + } - &.right { - float: right; - margin: 0 0 2em 2em; - top: 0.25em; - } + &.right { + float: right; + margin: 0 0 2em 2em; + top: 0.25em; + } - &.left, - &.right { - max-width: 40%; + &.left, + &.right { + max-width: 40%; - img { - width: 100%; - } - } + img { + width: 100%; + } + } - &.fit { - display: block; - margin: 0 0 _size(element-margin) 0; - width: 100%; + &.fit { + display: block; + margin: 0 0 _size(element-margin) 0; + width: 100%; - img { - width: 100%; - } - } + img { + width: 100%; + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_list.scss b/src/assets/styles/components/_list.scss index ee1fdfb..fab990d 100644 --- a/src/assets/styles/components/_list.scss +++ b/src/assets/styles/components/_list.scss @@ -2,218 +2,218 @@ /* List */ ol { - list-style: decimal; - margin: 0 0 _size(element-margin) 0; - padding-left: 1.25em; + list-style: decimal; + margin: 0 0 _size(element-margin) 0; + padding-left: 1.25em; - li { - padding-left: 0.25em; - } + li { + padding-left: 0.25em; + } } ul { - list-style: disc; - margin: 0 0 _size(element-margin) 0; - padding-left: 1em; + list-style: disc; + margin: 0 0 _size(element-margin) 0; + padding-left: 1em; - li { - padding-left: 0.5em; - } + li { + padding-left: 0.5em; + } - &.alt { - list-style: none; - padding-left: 0; + &.alt { + list-style: none; + padding-left: 0; - li { - border-top: solid 1px _palette(border); - padding: 0.5em 0; + li { + border-top: solid 1px _palette(border); + padding: 0.5em 0; - &:first-child { - border-top: 0; - padding-top: 0; - } - } - } + &:first-child { + border-top: 0; + padding-top: 0; + } + } + } - &.icons { - cursor: default; - list-style: none; - padding-left: 0; + &.icons { + cursor: default; + list-style: none; + padding-left: 0; - li { - display: inline-block; - padding: 0 1em 0 0; + li { + display: inline-block; + padding: 0 1em 0 0; - &:last-child { - padding-right: 0; - } - } + &:last-child { + padding-right: 0; + } + } - &.major { - padding: 1em 0; + &.major { + padding: 1em 0; - li { - padding-right: 3.5em; - - &:last-child { - padding-right: 0; - } + li { + padding-right: 3.5em; + + &:last-child { + padding-right: 0; + } - @include breakpoint(small) { - padding: 0 1em; - } - } - } + @include breakpoint(small) { + padding: 0 1em; + } + } + } - &.icons--flex { - display: flex; - justify-content: space-between; - max-width: 980px; - margin: auto; - padding-left: 16px; - - li { - flex-basis: 33.333%; - padding-right: 0; - } + &.icons--flex { + display: flex; + justify-content: space-between; + max-width: 980px; + margin: auto; + padding-left: 16px; + + li { + flex-basis: 33.333%; + padding-right: 0; + } - @include breakpoint(small) { - display: block; - padding: 0; + @include breakpoint(small) { + display: block; + padding: 0; - li { - display: block; - margin: 40px 0; - padding: 0; - } - } - - .icon { - margin-right: 8px; - } - } + li { + display: block; + margin: 40px 0; + padding: 0; + } + } + + .icon { + margin-right: 8px; + } + } - .icons__title { - display: block; - @extend .h3; - margin-top: 40px; + .icons__title { + display: block; + @extend .h3; + margin-top: 40px; - @include breakpoint(small) { - margin-top: 20px; - } - } - } + @include breakpoint(small) { + margin-top: 20px; + } + } + } - &.actions { - cursor: default; - list-style: none; - padding-left: 0; + &.actions { + cursor: default; + list-style: none; + padding-left: 0; - li { - display: inline-block; - padding: 0 (_size(element-margin) * 0.75) 0 0; - vertical-align: middle; + li { + display: inline-block; + padding: 0 (_size(element-margin) * 0.75) 0 0; + vertical-align: middle; - &:last-child { - padding-right: 0; - } - } + &:last-child { + padding-right: 0; + } + } - &.small { - li { - padding: 0 (_size(element-margin) * 0.375) 0 0; - } - } + &.small { + li { + padding: 0 (_size(element-margin) * 0.375) 0 0; + } + } - &.vertical { - li { - display: block; - padding: (_size(element-margin) * 0.75) 0 0 0; + &.vertical { + li { + display: block; + padding: (_size(element-margin) * 0.75) 0 0 0; - &:first-child { - padding-top: 0; - } + &:first-child { + padding-top: 0; + } - > * { - margin-bottom: 0; - } - } + > * { + margin-bottom: 0; + } + } - &.small { - li { - padding: (_size(element-margin) * 0.375) 0 0 0; + &.small { + li { + padding: (_size(element-margin) * 0.375) 0 0 0; - &:first-child { - padding-top: 0; - } - } - } - } + &:first-child { + padding-top: 0; + } + } + } + } - &.fit { - display: table; - margin-left: (_size(element-margin) * -0.75); - padding: 0; - table-layout: fixed; - width: calc(100% + #{(_size(element-margin) * 0.75)}); + &.fit { + display: table; + margin-left: (_size(element-margin) * -0.75); + padding: 0; + table-layout: fixed; + width: calc(100% + #{(_size(element-margin) * 0.75)}); - li { - display: table-cell; - padding: 0 0 0 (_size(element-margin) * 0.75); + li { + display: table-cell; + padding: 0 0 0 (_size(element-margin) * 0.75); - > * { - margin-bottom: 0; - } - } + > * { + margin-bottom: 0; + } + } - &.small { - margin-left: (_size(element-margin) * -0.375); - width: calc(100% + #{(_size(element-margin) * 0.375)}); + &.small { + margin-left: (_size(element-margin) * -0.375); + width: calc(100% + #{(_size(element-margin) * 0.375)}); - li { - padding: 0 0 0 (_size(element-margin) * 0.375); - } - } - } + li { + padding: 0 0 0 (_size(element-margin) * 0.375); + } + } + } - @include breakpoint(small) { - li { - display: block; - padding: (_size(element-margin) * 0.5) 0 0 0; - text-align: center; - width: 100%; + @include breakpoint(small) { + li { + display: block; + padding: (_size(element-margin) * 0.5) 0 0 0; + text-align: center; + width: 100%; - &:first-child { - padding-top: 0; - } + &:first-child { + padding-top: 0; + } - > * { - margin: 0 auto !important; - max-width: 30em; - width: 100%; + > * { + margin: 0 auto !important; + max-width: 30em; + width: 100%; - &.icon { - &:before { - margin-left: -1em; - } - } - } - } + &.icon { + &:before { + margin-left: -1em; + } + } + } + } - &.small { - li { - padding: (_size(element-margin) * 0.25) 0 0 0; + &.small { + li { + padding: (_size(element-margin) * 0.25) 0 0 0; - &:first-child { - padding-top: 0; - } - } - } - } - } + &:first-child { + padding-top: 0; + } + } + } + } + } } dl { - margin: 0 0 _size(element-margin) 0; + margin: 0 0 _size(element-margin) 0; } diff --git a/src/assets/styles/components/_menu.scss b/src/assets/styles/components/_menu.scss index a4418f2..d1a7e6d 100644 --- a/src/assets/styles/components/_menu.scss +++ b/src/assets/styles/components/_menu.scss @@ -2,102 +2,102 @@ /* Page Wrapper + Menu */ #page-wrapper { - @include vendor('transition', 'opacity #{_duration(menu)} ease'); - opacity: 1; - padding-top: 3em; + @include vendor('transition', 'opacity #{_duration(menu)} ease'); + opacity: 1; + padding-top: 3em; - &:before { - background: rgba(0,0,0,0); - content: ''; - display: block; - display: none; - height: 100%; - left: 0; - position: fixed; - top: 0; - width: 100%; - z-index: _misc(z-index-base) + 1; - } + &:before { + background: rgba(0,0,0,0); + content: ''; + display: block; + display: none; + height: 100%; + left: 0; + position: fixed; + top: 0; + width: 100%; + z-index: _misc(z-index-base) + 1; + } } #menu { - @include vendor('transform', 'translateX(20em)'); - @include vendor('transition', 'transform #{_duration(menu)} ease'); - -webkit-overflow-scrolling: touch; - background: _palette(accent1, bg); - color: _palette(accent1, fg-bold); - height: 100%; - max-width: 80%; - overflow-y: auto; - padding: 3em 2em; - position: fixed; - right: 0; - top: 0; - width: 20em; - z-index: _misc(z-index-base) + 2; + @include vendor('transform', 'translateX(20em)'); + @include vendor('transition', 'transform #{_duration(menu)} ease'); + -webkit-overflow-scrolling: touch; + background: _palette(accent1, bg); + color: _palette(accent1, fg-bold); + height: 100%; + max-width: 80%; + overflow-y: auto; + padding: 3em 2em; + position: fixed; + right: 0; + top: 0; + width: 20em; + z-index: _misc(z-index-base) + 2; - ul { - list-style: none; - padding: 0; + ul { + list-style: none; + padding: 0; - > li { - border-top: solid 1px _palette(accent1, border); - margin: 0.5em 0 0 0; - padding: 0.5em 0 0 0; + > li { + border-top: solid 1px _palette(accent1, border); + margin: 0.5em 0 0 0; + padding: 0.5em 0 0 0; - &:first-child { - border-top: 0 !important; - margin-top: 0 !important; - padding-top: 0 !important; - } + &:first-child { + border-top: 0 !important; + margin-top: 0 !important; + padding-top: 0 !important; + } - > a { - border: 0; - color: inherit; - display: block; - font-size: 0.8em; - letter-spacing: _size(letter-spacing-alt); - outline: 0; - text-decoration: none; - text-transform: uppercase; + > a { + border: 0; + color: inherit; + display: block; + font-size: 0.8em; + letter-spacing: _size(letter-spacing-alt); + outline: 0; + text-decoration: none; + text-transform: uppercase; - @include breakpoint(small) { - line-height: 3em; - } - } - } - } + @include breakpoint(small) { + line-height: 3em; + } + } + } + } - .close { - background-image: url('images/close.svg'); - background-position: 4.85em 1em; - background-repeat: no-repeat; - border: 0; - cursor: pointer; - display: block; - height: 3em; - position: absolute; - right: 0; - top: 0; - vertical-align: middle; - width: 7em; - } + .close { + background-image: url('images/close.svg'); + background-position: 4.85em 1em; + background-repeat: no-repeat; + border: 0; + cursor: pointer; + display: block; + height: 3em; + position: absolute; + right: 0; + top: 0; + vertical-align: middle; + width: 7em; + } - @include breakpoint(small) { - padding: 3em 1.5em; - } + @include breakpoint(small) { + padding: 3em 1.5em; + } } body.is-menu-visible { - #page-wrapper { - opacity: 0.35; + #page-wrapper { + opacity: 0.35; - &:before { - display: block; - } - } + &:before { + display: block; + } + } - #menu { - @include vendor('transform', 'translateX(0)'); - } + #menu { + @include vendor('transform', 'translateX(0)'); + } } \ No newline at end of file diff --git a/src/assets/styles/components/_section.scss b/src/assets/styles/components/_section.scss index 24c3f8d..c2f1878 100644 --- a/src/assets/styles/components/_section.scss +++ b/src/assets/styles/components/_section.scss @@ -1,7 +1,7 @@ /* Section/Article */ section, article { - &.special { - text-align: center; - } + &.special { + text-align: center; + } } \ No newline at end of file diff --git a/src/assets/styles/components/_spotlight.scss b/src/assets/styles/components/_spotlight.scss index 29bde73..a81a459 100644 --- a/src/assets/styles/components/_spotlight.scss +++ b/src/assets/styles/components/_spotlight.scss @@ -2,71 +2,71 @@ /* Spotlight */ .spotlight { - @include vendor('align-items', 'center'); - @include vendor('display', 'flex'); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); - .image { - @include vendor('order', '1'); - border-radius: 0; - width: 40%; + .image { + @include vendor('order', '1'); + border-radius: 0; + width: 40%; - img { - border-radius: 0; - width: 100%; - } - } + img { + border-radius: 0; + width: 100%; + } + } - .content { - @include padding(2em, 4em); - @include vendor('order', '2'); - max-width: 48em; - width: 60%; - } + .content { + @include padding(2em, 4em); + @include vendor('order', '2'); + max-width: 48em; + width: 60%; + } - &:nth-child(2n) { - @include vendor('flex-direction', 'row-reverse'); - } + &:nth-child(2n) { + @include vendor('flex-direction', 'row-reverse'); + } - @for $i from 1 through _misc(max-spotlights) { - $j: 0.075 * $i; + @for $i from 1 through _misc(max-spotlights) { + $j: 0.075 * $i; - &:nth-child(#{$i}) { - background-color: rgba(0,0,0, $j); - } - } + &:nth-child(#{$i}) { + background-color: rgba(0,0,0, $j); + } + } - @include breakpoint(large) { - .image { - width: 45%; - } + @include breakpoint(large) { + .image { + width: 45%; + } - .content { - width: 55%; - } - } + .content { + width: 55%; + } + } - @include breakpoint(medium) { - display: block; + @include breakpoint(medium) { + display: block; - br { - display: none; - } + br { + display: none; + } - .image { - width: 100%; - } + .image { + width: 100%; + } - .content { - @include padding(4em, 3em); - max-width: none; - text-align: center; - width: 100%; - } - } + .content { + @include padding(4em, 3em); + max-width: none; + text-align: center; + width: 100%; + } + } - @include breakpoint(small) { - .content { - @include padding(3em, 2em); - } - } + @include breakpoint(small) { + .content { + @include padding(3em, 2em); + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_table.scss b/src/assets/styles/components/_table.scss index 2093c25..81eea42 100644 --- a/src/assets/styles/components/_table.scss +++ b/src/assets/styles/components/_table.scss @@ -2,75 +2,75 @@ /* Table */ .table-wrapper { - -webkit-overflow-scrolling: touch; - overflow-x: auto; + -webkit-overflow-scrolling: touch; + overflow-x: auto; } table { - margin: 0 0 _size(element-margin) 0; - width: 100%; + margin: 0 0 _size(element-margin) 0; + width: 100%; - tbody { - tr { - border: solid 1px _palette(border); - border-left: 0; - border-right: 0; + tbody { + tr { + border: solid 1px _palette(border); + border-left: 0; + border-right: 0; - &:nth-child(2n + 1) { - background-color: _palette(border-bg); - } - } - } + &:nth-child(2n + 1) { + background-color: _palette(border-bg); + } + } + } - td { - padding: 0.75em 0.75em; - } + td { + padding: 0.75em 0.75em; + } - th { - color: _palette(fg-bold); - font-size: 0.9em; - font-weight: _font(weight-bold); - padding: 0 0.75em 0.75em 0.75em; - text-align: left; - } + th { + color: _palette(fg-bold); + font-size: 0.9em; + font-weight: _font(weight-bold); + padding: 0 0.75em 0.75em 0.75em; + text-align: left; + } - thead { - border-bottom: solid 2px _palette(border); - } + thead { + border-bottom: solid 2px _palette(border); + } - tfoot { - border-top: solid 2px _palette(border); - } + tfoot { + border-top: solid 2px _palette(border); + } - &.alt { - border-collapse: separate; + &.alt { + border-collapse: separate; - tbody { - tr { - td { - border: solid 1px _palette(border); - border-left-width: 0; - border-top-width: 0; + tbody { + tr { + td { + border: solid 1px _palette(border); + border-left-width: 0; + border-top-width: 0; - &:first-child { - border-left-width: 1px; - } - } + &:first-child { + border-left-width: 1px; + } + } - &:first-child { - td { - border-top-width: 1px; - } - } - } - } + &:first-child { + td { + border-top-width: 1px; + } + } + } + } - thead { - border-bottom: 0; - } + thead { + border-bottom: 0; + } - tfoot { - border-top: 0; - } - } + tfoot { + border-top: 0; + } + } } \ No newline at end of file diff --git a/src/assets/styles/components/_wrapper.scss b/src/assets/styles/components/_wrapper.scss index 2253652..c6bdd6e 100644 --- a/src/assets/styles/components/_wrapper.scss +++ b/src/assets/styles/components/_wrapper.scss @@ -2,243 +2,243 @@ /* Wrapper */ @mixin wrapper($p) { - background-color: _palette($p, bg); - color: _palette($p, fg); + background-color: _palette($p, bg); + color: _palette($p, fg); - // Basic + // Basic - strong, b { - color: _palette($p, fg-bold); - } + strong, b { + color: _palette($p, fg-bold); + } - - .h2, .h3, .h4, .h5, .h6, - h2, h3, h4, h5, h6 { - color: _palette($p, fg-bold); - } + + .h2, .h3, .h4, .h5, .h6, + h2, h3, h4, h5, h6 { + color: _palette($p, fg-bold); + } - hr { - border-color: _palette($p, border); - } + hr { + border-color: _palette($p, border); + } - blockquote { - border-color: _palette($p, border); - } + blockquote { + border-color: _palette($p, border); + } - code { - background: _palette($p, border-bg); - } + code { + background: _palette($p, border-bg); + } - // Section/Article + // Section/Article - header { - p { - color: _palette($p, fg-light); - } + header { + p { + color: _palette($p, fg-light); + } - &.major { - h2, h3, h4, h5, h6 { - border-color: _palette($p, border); - } + &.major { + h2, h3, h4, h5, h6 { + border-color: _palette($p, border); + } - p { - color: _palette($p, fg); - } - } - } + p { + color: _palette($p, fg); + } + } + } - // Form + // Form - label { - color: _palette($p, fg-bold); - } + label { + color: _palette($p, fg-bold); + } - input[type="text"], - input[type="password"], - input[type="email"], - select, - textarea { - background: _palette($p, border-bg); - } + input[type="text"], + input[type="password"], + input[type="email"], + select, + textarea { + background: _palette($p, border-bg); + } - .select-wrapper { - &:before { - color: _palette($p, border); - } - } + .select-wrapper { + &:before { + color: _palette($p, border); + } + } - input[type="checkbox"], - input[type="radio"], { - & + label { - color: _palette($p, fg); + input[type="checkbox"], + input[type="radio"], { + & + label { + color: _palette($p, fg); - &:before { - background: _palette($p, border-bg); - } - } + &:before { + background: _palette($p, border-bg); + } + } - &:checked + label { - &:before { - background: _palette($p, fg-bold); - color: _palette($p, bg); - } - } - } + &:checked + label { + &:before { + background: _palette($p, fg-bold); + color: _palette($p, bg); + } + } + } - ::-webkit-input-placeholder { - color: _palette($p, fg-light) !important; - } + ::-webkit-input-placeholder { + color: _palette($p, fg-light) !important; + } - :-moz-placeholder { - color: _palette($p, fg-light) !important; - } + :-moz-placeholder { + color: _palette($p, fg-light) !important; + } - ::-moz-placeholder { - color: _palette($p, fg-light) !important; - } + ::-moz-placeholder { + color: _palette($p, fg-light) !important; + } - :-ms-input-placeholder { - color: _palette($p, fg-light) !important; - } + :-ms-input-placeholder { + color: _palette($p, fg-light) !important; + } - .formerize-placeholder { - color: _palette($p, fg-light) !important; - } + .formerize-placeholder { + color: _palette($p, fg-light) !important; + } - // Icon + // Icon - .icon { - &.major { - border-color: _palette($p, border); - } - } + .icon { + &.major { + border-color: _palette($p, border); + } + } - // List + // List - ul { - &.alt { - li { - border-color: _palette($p, border); - } - } - } + ul { + &.alt { + li { + border-color: _palette($p, border); + } + } + } - // Table + // Table - table { - tbody { - tr { - border-color: _palette($p, border); + table { + tbody { + tr { + border-color: _palette($p, border); - &:nth-child(2n + 1) { - background-color: _palette($p, border-bg); - } - } - } + &:nth-child(2n + 1) { + background-color: _palette($p, border-bg); + } + } + } - th { - color: _palette($p, fg-bold); - } + th { + color: _palette($p, fg-bold); + } - thead { - border-color: _palette($p, border); - } + thead { + border-color: _palette($p, border); + } - tfoot { - border-color: _palette($p, border); - } + tfoot { + border-color: _palette($p, border); + } - &.alt { - tbody { - tr { - td { - border-color: _palette($p, border); - } - } - } - } - } + &.alt { + tbody { + tr { + td { + border-color: _palette($p, border); + } + } + } + } + } - // Button + // Button - input[type="submit"], - input[type="reset"], - input[type="button"], - button, - .button { - box-shadow: inset 0 0 0 2px _palette($p, border); - color: _palette($p, fg-bold); + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + box-shadow: inset 0 0 0 2px _palette($p, border); + color: _palette($p, fg-bold); - &:hover { - background-color: _palette($p, border-bg); - } + &:hover { + background-color: _palette($p, border-bg); + } - &:active { - background-color: _palette($p, border2-bg); - } - } + &:active { + background-color: _palette($p, border2-bg); + } + } - // Features + // Features - .features { - li { - @include breakpoint(small) { - border-top-color: _palette($p, border); - } - } - } + .features { + li { + @include breakpoint(small) { + border-top-color: _palette($p, border); + } + } + } } .wrapper { - @include padding(6em, 0); + @include padding(6em, 0); - > .inner { - width: 60em; - margin: 0 auto; + > .inner { + width: 60em; + margin: 0 auto; - @include breakpoint(large) { - width: 90%; - } + @include breakpoint(large) { + width: 90%; + } - @include breakpoint(medium) { - width: 100%; - } - } + @include breakpoint(medium) { + width: 100%; + } + } - &.alt { - padding: 0; - } + &.alt { + padding: 0; + } - &.style1 { - @include wrapper(accent1); - } + &.style1 { + @include wrapper(accent1); + } - &.style2 { - background-color: _palette(bg); - } + &.style2 { + background-color: _palette(bg); + } - &.style3 { - @include wrapper(accent3); - } + &.style3 { + @include wrapper(accent3); + } - &.style4 { - background-color: transparent; - } + &.style4 { + background-color: transparent; + } - &.style5 { - @include wrapper(accent2); - } - - &.style6 { - @include wrapper(accent4); - } + &.style5 { + @include wrapper(accent2); + } + + &.style6 { + @include wrapper(accent4); + } - @include breakpoint(medium) { - @include padding(4em, 3em); - } + @include breakpoint(medium) { + @include padding(4em, 3em); + } - @include breakpoint(small) { - @include padding(3em, 2em); - } + @include breakpoint(small) { + @include padding(3em, 2em); + } } \ No newline at end of file diff --git a/src/assets/styles/ie8.scss b/src/assets/styles/ie8.scss index 24c0656..a4a60fb 100644 --- a/src/assets/styles/ie8.scss +++ b/src/assets/styles/ie8.scss @@ -6,112 +6,112 @@ @import 'libs/skel'; /* - Spectral by HTML5 UP - html5up.net | @ajlkn - Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) + Spectral by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) */ /* Icon */ - .icon { - &.major { - border: none; + .icon { + &.major { + border: none; - &:before { - font-size: 3em; - } - } - } + &:before { + font-size: 3em; + } + } + } /* Form */ - label { - color: _palette(accent2, fg-bold); - } + label { + color: _palette(accent2, fg-bold); + } - input[type="text"], - input[type="password"], - input[type="email"], - select, - textarea { - border: solid 1px _palette(accent2, border); - } + input[type="text"], + input[type="password"], + input[type="email"], + select, + textarea { + border: solid 1px _palette(accent2, border); + } /* Button */ - input[type="submit"], - input[type="reset"], - input[type="button"], - button, - .button { - border: solid 2px _palette(accent2, border); + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + border: solid 2px _palette(accent2, border); - &.special { - border: 0 !important; - } - } + &.special { + border: 0 !important; + } + } /* Page Wrapper + Menu */ - #menu { - display: none; - } + #menu { + display: none; + } - body.is-menu-visible { - #menu { - display: block; - } - } + body.is-menu-visible { + #menu { + display: block; + } + } /* Header */ - #header { - nav { - > ul { - > li { - > a { - &.menuToggle { - &:after { - display: none; - } - } - } - } - } - } - } + #header { + nav { + > ul { + > li { + > a { + &.menuToggle { + &:after { + display: none; + } + } + } + } + } + } + } /* Banner + Wrapper (style4) */ - #banner, - .wrapper.style4 { - -ms-behavior: url('assets/js/ie/backgroundsize.min.htc'); + #banner, + .wrapper.style4 { + -ms-behavior: url('assets/js/ie/backgroundsize.min.htc'); - &:before { - display: none; - } - } + &:before { + display: none; + } + } /* Banner */ - #banner { - .more { - height: 4em; + #banner { + .more { + height: 4em; - &:after { - display: none; - } - } - } + &:after { + display: none; + } + } + } /* Main */ - #main { - > header { - -ms-behavior: url('assets/js/ie/backgroundsize.min.htc'); + #main { + > header { + -ms-behavior: url('assets/js/ie/backgroundsize.min.htc'); - &:before { - display: none; - } - } - } \ No newline at end of file + &:before { + display: none; + } + } + } \ No newline at end of file diff --git a/src/assets/styles/ie9.scss b/src/assets/styles/ie9.scss index 1b733b0..f30c418 100644 --- a/src/assets/styles/ie9.scss +++ b/src/assets/styles/ie9.scss @@ -6,131 +6,131 @@ @import 'libs/skel'; /* - Spectral by HTML5 UP - html5up.net | @ajlkn - Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) + Spectral by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) */ /* Spotlight */ - .spotlight { - display: block; + .spotlight { + display: block; - .image { - display: inline-block; - vertical-align: top; - } + .image { + display: inline-block; + vertical-align: top; + } - .content { - @include padding(4em, 4em); - display: inline-block; - } + .content { + @include padding(4em, 4em); + display: inline-block; + } - &:after { - clear: both; - content: ''; - display: block; - } - } + &:after { + clear: both; + content: ''; + display: block; + } + } /* Features */ - .features { - display: block; + .features { + display: block; - li { - float: left; - } + li { + float: left; + } - &:after { - content: ''; - display: block; - clear: both; - } - } + &:after { + content: ''; + display: block; + clear: both; + } + } /* Banner + Wrapper (style4) */ - #banner, - .wrapper.style4 { - background-image: url("../../assets/images/banner.jpg"); - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - position: relative; + #banner, + .wrapper.style4 { + background-image: url("../../assets/images/banner.jpg"); + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + position: relative; - &:before { - background: #000000; - content: ''; - height: 100%; - left: 0; - opacity: 0.5; - position: absolute; - top: 0; - width: 100%; - } + &:before { + background: #000000; + content: ''; + height: 100%; + left: 0; + opacity: 0.5; + position: absolute; + top: 0; + width: 100%; + } - .inner { - position: relative; - z-index: 1; - } - } + .inner { + position: relative; + z-index: 1; + } + } /* Banner */ - #banner { - @include padding(14em, 0); - height: auto; + #banner { + @include padding(14em, 0); + height: auto; - &:after { - display: none; - } - } + &:after { + display: none; + } + } /* CTA */ - #cta { - .inner { - header { - float: left; - } + #cta { + .inner { + header { + float: left; + } - .actions { - float: left; - } + .actions { + float: left; + } - &:after { - clear: both; - content: ''; - display: block; - } - } - } + &:after { + clear: both; + content: ''; + display: block; + } + } + } /* Main */ - #main { - > header { - background-image: url("../../assets/images/banner.jpg"); - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - position: relative; + #main { + > header { + background-image: url("../../assets/images/banner.jpg"); + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + position: relative; - &:before { - background: #000000; - content: ''; - height: 100%; - left: 0; - opacity: 0.5; - position: absolute; - top: 0; - width: 100%; - } + &:before { + background: #000000; + content: ''; + height: 100%; + left: 0; + opacity: 0.5; + position: absolute; + top: 0; + width: 100%; + } - > * { - position: relative; - z-index: 1; - } - } - } + > * { + position: relative; + z-index: 1; + } + } + } diff --git a/src/assets/styles/images/arrow.svg b/src/assets/styles/images/arrow.svg index 49ee37c..a62d945 100644 --- a/src/assets/styles/images/arrow.svg +++ b/src/assets/styles/images/arrow.svg @@ -1,6 +1,6 @@ - - - + + + \ No newline at end of file diff --git a/src/assets/styles/images/bars.svg b/src/assets/styles/images/bars.svg index 50e4e41..655ef07 100644 --- a/src/assets/styles/images/bars.svg +++ b/src/assets/styles/images/bars.svg @@ -1,6 +1,6 @@ - - - + + + \ No newline at end of file diff --git a/src/assets/styles/images/close.svg b/src/assets/styles/images/close.svg index 3ad8786..ab59b59 100644 --- a/src/assets/styles/images/close.svg +++ b/src/assets/styles/images/close.svg @@ -1,5 +1,5 @@ - - + + \ No newline at end of file diff --git a/src/assets/styles/libs/_functions.scss b/src/assets/styles/libs/_functions.scss index 0e08c1a..4970282 100644 --- a/src/assets/styles/libs/_functions.scss +++ b/src/assets/styles/libs/_functions.scss @@ -2,33 +2,33 @@ /// @param {string} $keys Key(s). /// @return {string} Value. @function _duration($keys...) { - @return val($duration, $keys...); + @return val($duration, $keys...); } /// Gets a font value. /// @param {string} $keys Key(s). /// @return {string} Value. @function _font($keys...) { - @return val($font, $keys...); + @return val($font, $keys...); } /// Gets a misc value. /// @param {string} $keys Key(s). /// @return {string} Value. @function _misc($keys...) { - @return val($misc, $keys...); + @return val($misc, $keys...); } /// Gets a palette value. /// @param {string} $keys Key(s). /// @return {string} Value. @function _palette($keys...) { - @return val($palette, $keys...); + @return val($palette, $keys...); } /// Gets a size value. /// @param {string} $keys Key(s). /// @return {string} Value. @function _size($keys...) { - @return val($size, $keys...); + @return val($size, $keys...); } \ No newline at end of file diff --git a/src/assets/styles/libs/_mixins.scss b/src/assets/styles/libs/_mixins.scss index 3325df0..052e45b 100644 --- a/src/assets/styles/libs/_mixins.scss +++ b/src/assets/styles/libs/_mixins.scss @@ -3,22 +3,22 @@ /// @param {string} $where Optional pseudoelement to target (before or after). @mixin icon($content: false, $where: before) { - text-decoration: none; + text-decoration: none; - &:#{$where} { + &:#{$where} { - @if $content { - content: $content; - } + @if $content { + content: $content; + } - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - font-family: FontAwesome; - font-style: normal; - font-weight: normal; - text-transform: none !important; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; - } + } } @@ -29,11 +29,11 @@ /// @param {bool} $important If true, adds !important. @mixin padding($tb, $lr, $pad: (0,0,0,0), $important: null) { - @if $important { - $important: '!important'; - } + @if $important { + $important: '!important'; + } - padding: ($tb + nth($pad,1)) ($lr + nth($pad,2)) max(0.1em, $tb - _size(element-margin) + nth($pad,3)) ($lr + nth($pad,4)) #{$important}; + padding: ($tb + nth($pad,1)) ($lr + nth($pad,2)) max(0.1em, $tb - _size(element-margin) + nth($pad,3)) ($lr + nth($pad,4)) #{$important}; } @@ -42,15 +42,15 @@ /// @return {string} Encoded SVG data URL. @function svg-url($svg) { - $svg: str-replace($svg, '"', '\''); - $svg: str-replace($svg, '<', '%3C'); - $svg: str-replace($svg, '>', '%3E'); - $svg: str-replace($svg, '&', '%26'); - $svg: str-replace($svg, '#', '%23'); - $svg: str-replace($svg, '{', '%7B'); - $svg: str-replace($svg, '}', '%7D'); - $svg: str-replace($svg, ';', '%3B'); + $svg: str-replace($svg, '"', '\''); + $svg: str-replace($svg, '<', '%3C'); + $svg: str-replace($svg, '>', '%3E'); + $svg: str-replace($svg, '&', '%26'); + $svg: str-replace($svg, '#', '%23'); + $svg: str-replace($svg, '{', '%7B'); + $svg: str-replace($svg, '}', '%7D'); + $svg: str-replace($svg, ';', '%3B'); - @return url("data:image/svg+xml;charset=utf8,#{$svg}"); + @return url("data:image/svg+xml;charset=utf8,#{$svg}"); } \ No newline at end of file diff --git a/src/assets/styles/libs/_skel.scss b/src/assets/styles/libs/_skel.scss index 438b147..c0f318d 100644 --- a/src/assets/styles/libs/_skel.scss +++ b/src/assets/styles/libs/_skel.scss @@ -2,584 +2,584 @@ // Vars. - /// Breakpoints. - /// @var {list} - $breakpoints: () !global; + /// Breakpoints. + /// @var {list} + $breakpoints: () !global; - /// Vendor prefixes. - /// @var {list} - $vendor-prefixes: ( - '-moz-', - '-webkit-', - '-ms-', - '' - ); + /// Vendor prefixes. + /// @var {list} + $vendor-prefixes: ( + '-moz-', + '-webkit-', + '-ms-', + '' + ); - /// Properties that should be vendorized. - /// @var {list} - $vendor-properties: ( - 'align-content', - 'align-items', - 'align-self', - 'animation', - 'animation-delay', - 'animation-direction', - 'animation-duration', - 'animation-fill-mode', - 'animation-iteration-count', - 'animation-name', - 'animation-play-state', - 'animation-timing-function', - 'appearance', - 'backface-visibility', - 'box-sizing', - 'filter', - 'flex', - 'flex-basis', - 'flex-direction', - 'flex-flow', - 'flex-grow', - 'flex-shrink', - 'flex-wrap', - 'justify-content', - 'order', - 'perspective', - 'pointer-events', - 'transform', - 'transform-origin', - 'transform-style', - 'transition', - 'transition-delay', - 'transition-duration', - 'transition-property', - 'transition-timing-function', - 'user-select' - ); + /// Properties that should be vendorized. + /// @var {list} + $vendor-properties: ( + 'align-content', + 'align-items', + 'align-self', + 'animation', + 'animation-delay', + 'animation-direction', + 'animation-duration', + 'animation-fill-mode', + 'animation-iteration-count', + 'animation-name', + 'animation-play-state', + 'animation-timing-function', + 'appearance', + 'backface-visibility', + 'box-sizing', + 'filter', + 'flex', + 'flex-basis', + 'flex-direction', + 'flex-flow', + 'flex-grow', + 'flex-shrink', + 'flex-wrap', + 'justify-content', + 'order', + 'perspective', + 'pointer-events', + 'transform', + 'transform-origin', + 'transform-style', + 'transition', + 'transition-delay', + 'transition-duration', + 'transition-property', + 'transition-timing-function', + 'user-select' + ); - /// Values that should be vendorized. - /// @var {list} - $vendor-values: ( - 'filter', - 'flex', - 'linear-gradient', - 'radial-gradient', - 'transform' - ); + /// Values that should be vendorized. + /// @var {list} + $vendor-values: ( + 'filter', + 'flex', + 'linear-gradient', + 'radial-gradient', + 'transform' + ); // Functions. - /// Removes a specific item from a list. - /// @author Hugo Giraudel - /// @param {list} $list List. - /// @param {integer} $index Index. - /// @return {list} Updated list. - @function remove-nth($list, $index) { + /// Removes a specific item from a list. + /// @author Hugo Giraudel + /// @param {list} $list List. + /// @param {integer} $index Index. + /// @return {list} Updated list. + @function remove-nth($list, $index) { - $result: null; + $result: null; - @if type-of($index) != number { - @warn "$index: #{quote($index)} is not a number for `remove-nth`."; - } - @else if $index == 0 { - @warn "List index 0 must be a non-zero integer for `remove-nth`."; - } - @else if abs($index) > length($list) { - @warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`."; - } - @else { + @if type-of($index) != number { + @warn "$index: #{quote($index)} is not a number for `remove-nth`."; + } + @else if $index == 0 { + @warn "List index 0 must be a non-zero integer for `remove-nth`."; + } + @else if abs($index) > length($list) { + @warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`."; + } + @else { - $result: (); - $index: if($index < 0, length($list) + $index + 1, $index); + $result: (); + $index: if($index < 0, length($list) + $index + 1, $index); - @for $i from 1 through length($list) { + @for $i from 1 through length($list) { - @if $i != $index { - $result: append($result, nth($list, $i)); - } + @if $i != $index { + $result: append($result, nth($list, $i)); + } - } + } - } + } - @return $result; + @return $result; - } + } - /// Replaces a substring within another string. - /// @author Hugo Giraudel - /// @param {string} $string String. - /// @param {string} $search Substring. - /// @param {string} $replace Replacement. - /// @return {string} Updated string. - @function str-replace($string, $search, $replace: '') { + /// Replaces a substring within another string. + /// @author Hugo Giraudel + /// @param {string} $string String. + /// @param {string} $search Substring. + /// @param {string} $replace Replacement. + /// @return {string} Updated string. + @function str-replace($string, $search, $replace: '') { - $index: str-index($string, $search); + $index: str-index($string, $search); - @if $index { - @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); - } + @if $index { + @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); + } - @return $string; + @return $string; - } + } - /// Replaces a substring within each string in a list. - /// @param {list} $strings List of strings. - /// @param {string} $search Substring. - /// @param {string} $replace Replacement. - /// @return {list} Updated list of strings. - @function str-replace-all($strings, $search, $replace: '') { + /// Replaces a substring within each string in a list. + /// @param {list} $strings List of strings. + /// @param {string} $search Substring. + /// @param {string} $replace Replacement. + /// @return {list} Updated list of strings. + @function str-replace-all($strings, $search, $replace: '') { - @each $string in $strings { - $strings: set-nth($strings, index($strings, $string), str-replace($string, $search, $replace)); - } + @each $string in $strings { + $strings: set-nth($strings, index($strings, $string), str-replace($string, $search, $replace)); + } - @return $strings; + @return $strings; - } + } - /// Gets a value from a map. - /// @author Hugo Giraudel - /// @param {map} $map Map. - /// @param {string} $keys Key(s). - /// @return {string} Value. - @function val($map, $keys...) { + /// Gets a value from a map. + /// @author Hugo Giraudel + /// @param {map} $map Map. + /// @param {string} $keys Key(s). + /// @return {string} Value. + @function val($map, $keys...) { - @if nth($keys, 1) == null { - $keys: remove-nth($keys, 1); - } + @if nth($keys, 1) == null { + $keys: remove-nth($keys, 1); + } - @each $key in $keys { - $map: map-get($map, $key); - } + @each $key in $keys { + $map: map-get($map, $key); + } - @return $map; + @return $map; - } + } // Mixins. - /// Sets the global box model. - /// @param {string} $model Model (default is content). - @mixin boxModel($model: 'content') { + /// Sets the global box model. + /// @param {string} $model Model (default is content). + @mixin boxModel($model: 'content') { - $x: $model + '-box'; + $x: $model + '-box'; - *, *:before, *:after { - -moz-box-sizing: #{$x}; - -webkit-box-sizing: #{$x}; - box-sizing: #{$x}; - } + *, *:before, *:after { + -moz-box-sizing: #{$x}; + -webkit-box-sizing: #{$x}; + box-sizing: #{$x}; + } - } + } - /// Wraps @content in a @media block using a given breakpoint. - /// @param {string} $breakpoint Breakpoint. - /// @param {map} $queries Additional queries. - @mixin breakpoint($breakpoint: null, $queries: null) { + /// Wraps @content in a @media block using a given breakpoint. + /// @param {string} $breakpoint Breakpoint. + /// @param {map} $queries Additional queries. + @mixin breakpoint($breakpoint: null, $queries: null) { - $query: 'screen'; + $query: 'screen'; - // Breakpoint. - @if $breakpoint and map-has-key($breakpoints, $breakpoint) { - $query: $query + ' and ' + map-get($breakpoints, $breakpoint); - } + // Breakpoint. + @if $breakpoint and map-has-key($breakpoints, $breakpoint) { + $query: $query + ' and ' + map-get($breakpoints, $breakpoint); + } - // Queries. - @if $queries { - @each $k, $v in $queries { - $query: $query + ' and (' + $k + ':' + $v + ')'; - } - } + // Queries. + @if $queries { + @each $k, $v in $queries { + $query: $query + ' and (' + $k + ':' + $v + ')'; + } + } @media #{$query} { @content; } - } - - /// Wraps @content in a @media block targeting a specific orientation. - /// @param {string} $orientation Orientation. - @mixin orientation($orientation) { - @media screen and (orientation: #{$orientation}) { - @content; - } - } - - /// Utility mixin for containers. - /// @param {mixed} $width Width. - @mixin containers($width) { - - // Locked? - $lock: false; - - @if length($width) == 2 { - $width: nth($width, 1); - $lock: true; - } - - // Modifiers. - .container.\31 25\25 { width: 100%; max-width: $width * 1.25; min-width: $width; } - .container.\37 5\25 { width: $width * 0.75; } - .container.\35 0\25 { width: $width * 0.5; } - .container.\32 5\25 { width: $width * 0.25; } - - // Main class. - .container { - @if $lock { - width: $width !important; - } - @else { - width: $width; - } - } - - } - - /// Utility mixin for grid. - /// @param {list} $gutters Column and row gutters (default is 40px). - /// @param {string} $breakpointName Optional breakpoint name. - @mixin grid($gutters: 40px, $breakpointName: null) { - - // Gutters. - @include grid-gutters($gutters); - @include grid-gutters($gutters, \32 00\25, 2); - @include grid-gutters($gutters, \31 50\25, 1.5); - @include grid-gutters($gutters, \35 0\25, 0.5); - @include grid-gutters($gutters, \32 5\25, 0.25); - - // Cells. - $x: ''; - - @if $breakpointName { - $x: '\\28' + $breakpointName + '\\29'; - } - - .\31 2u#{$x}, .\31 2u\24#{$x} { width: 100%; clear: none; margin-left: 0; } - .\31 1u#{$x}, .\31 1u\24#{$x} { width: 91.6666666667%; clear: none; margin-left: 0; } - .\31 0u#{$x}, .\31 0u\24#{$x} { width: 83.3333333333%; clear: none; margin-left: 0; } - .\39 u#{$x}, .\39 u\24#{$x} { width: 75%; clear: none; margin-left: 0; } - .\38 u#{$x}, .\38 u\24#{$x} { width: 66.6666666667%; clear: none; margin-left: 0; } - .\37 u#{$x}, .\37 u\24#{$x} { width: 58.3333333333%; clear: none; margin-left: 0; } - .\36 u#{$x}, .\36 u\24#{$x} { width: 50%; clear: none; margin-left: 0; } - .\35 u#{$x}, .\35 u\24#{$x} { width: 41.6666666667%; clear: none; margin-left: 0; } - .\34 u#{$x}, .\34 u\24#{$x} { width: 33.3333333333%; clear: none; margin-left: 0; } - .\33 u#{$x}, .\33 u\24#{$x} { width: 25%; clear: none; margin-left: 0; } - .\32 u#{$x}, .\32 u\24#{$x} { width: 16.6666666667%; clear: none; margin-left: 0; } - .\31 u#{$x}, .\31 u\24#{$x} { width: 8.3333333333%; clear: none; margin-left: 0; } - - .\31 2u\24#{$x} + *, - .\31 1u\24#{$x} + *, - .\31 0u\24#{$x} + *, - .\39 u\24#{$x} + *, - .\38 u\24#{$x} + *, - .\37 u\24#{$x} + *, - .\36 u\24#{$x} + *, - .\35 u\24#{$x} + *, - .\34 u\24#{$x} + *, - .\33 u\24#{$x} + *, - .\32 u\24#{$x} + *, - .\31 u\24#{$x} + * { - clear: left; - } - - .\-11u#{$x} { margin-left: 91.6666666667% } - .\-10u#{$x} { margin-left: 83.3333333333% } - .\-9u#{$x} { margin-left: 75% } - .\-8u#{$x} { margin-left: 66.6666666667% } - .\-7u#{$x} { margin-left: 58.3333333333% } - .\-6u#{$x} { margin-left: 50% } - .\-5u#{$x} { margin-left: 41.6666666667% } - .\-4u#{$x} { margin-left: 33.3333333333% } - .\-3u#{$x} { margin-left: 25% } - .\-2u#{$x} { margin-left: 16.6666666667% } - .\-1u#{$x} { margin-left: 8.3333333333% } - - } - - /// Utility mixin for grid. - /// @param {list} $gutters Gutters. - /// @param {string} $class Optional class name. - /// @param {integer} $multiplier Multiplier (default is 1). - @mixin grid-gutters($gutters, $class: null, $multiplier: 1) { - - // Expand gutters if it's not a list. - @if length($gutters) == 1 { - $gutters: ($gutters, 0); - } - - // Get column and row gutter values. - $c: nth($gutters, 1); - $r: nth($gutters, 2); - - // Get class (if provided). - $x: ''; - - @if $class { - $x: '.' + $class; - } - - // Default. - .row#{$x} > * { padding: ($r * $multiplier) 0 0 ($c * $multiplier); } - .row#{$x} { margin: ($r * $multiplier * -1) 0 -1px ($c * $multiplier * -1); } - - // Uniform. - .row.uniform#{$x} > * { padding: ($c * $multiplier) 0 0 ($c * $multiplier); } - .row.uniform#{$x} { margin: ($c * $multiplier * -1) 0 -1px ($c * $multiplier * -1); } - - } - - /// Wraps @content in vendorized keyframe blocks. - /// @param {string} $name Name. - @mixin keyframes($name) { + } + + /// Wraps @content in a @media block targeting a specific orientation. + /// @param {string} $orientation Orientation. + @mixin orientation($orientation) { + @media screen and (orientation: #{$orientation}) { + @content; + } + } + + /// Utility mixin for containers. + /// @param {mixed} $width Width. + @mixin containers($width) { + + // Locked? + $lock: false; + + @if length($width) == 2 { + $width: nth($width, 1); + $lock: true; + } + + // Modifiers. + .container.\31 25\25 { width: 100%; max-width: $width * 1.25; min-width: $width; } + .container.\37 5\25 { width: $width * 0.75; } + .container.\35 0\25 { width: $width * 0.5; } + .container.\32 5\25 { width: $width * 0.25; } + + // Main class. + .container { + @if $lock { + width: $width !important; + } + @else { + width: $width; + } + } + + } + + /// Utility mixin for grid. + /// @param {list} $gutters Column and row gutters (default is 40px). + /// @param {string} $breakpointName Optional breakpoint name. + @mixin grid($gutters: 40px, $breakpointName: null) { + + // Gutters. + @include grid-gutters($gutters); + @include grid-gutters($gutters, \32 00\25, 2); + @include grid-gutters($gutters, \31 50\25, 1.5); + @include grid-gutters($gutters, \35 0\25, 0.5); + @include grid-gutters($gutters, \32 5\25, 0.25); + + // Cells. + $x: ''; + + @if $breakpointName { + $x: '\\28' + $breakpointName + '\\29'; + } + + .\31 2u#{$x}, .\31 2u\24#{$x} { width: 100%; clear: none; margin-left: 0; } + .\31 1u#{$x}, .\31 1u\24#{$x} { width: 91.6666666667%; clear: none; margin-left: 0; } + .\31 0u#{$x}, .\31 0u\24#{$x} { width: 83.3333333333%; clear: none; margin-left: 0; } + .\39 u#{$x}, .\39 u\24#{$x} { width: 75%; clear: none; margin-left: 0; } + .\38 u#{$x}, .\38 u\24#{$x} { width: 66.6666666667%; clear: none; margin-left: 0; } + .\37 u#{$x}, .\37 u\24#{$x} { width: 58.3333333333%; clear: none; margin-left: 0; } + .\36 u#{$x}, .\36 u\24#{$x} { width: 50%; clear: none; margin-left: 0; } + .\35 u#{$x}, .\35 u\24#{$x} { width: 41.6666666667%; clear: none; margin-left: 0; } + .\34 u#{$x}, .\34 u\24#{$x} { width: 33.3333333333%; clear: none; margin-left: 0; } + .\33 u#{$x}, .\33 u\24#{$x} { width: 25%; clear: none; margin-left: 0; } + .\32 u#{$x}, .\32 u\24#{$x} { width: 16.6666666667%; clear: none; margin-left: 0; } + .\31 u#{$x}, .\31 u\24#{$x} { width: 8.3333333333%; clear: none; margin-left: 0; } + + .\31 2u\24#{$x} + *, + .\31 1u\24#{$x} + *, + .\31 0u\24#{$x} + *, + .\39 u\24#{$x} + *, + .\38 u\24#{$x} + *, + .\37 u\24#{$x} + *, + .\36 u\24#{$x} + *, + .\35 u\24#{$x} + *, + .\34 u\24#{$x} + *, + .\33 u\24#{$x} + *, + .\32 u\24#{$x} + *, + .\31 u\24#{$x} + * { + clear: left; + } + + .\-11u#{$x} { margin-left: 91.6666666667% } + .\-10u#{$x} { margin-left: 83.3333333333% } + .\-9u#{$x} { margin-left: 75% } + .\-8u#{$x} { margin-left: 66.6666666667% } + .\-7u#{$x} { margin-left: 58.3333333333% } + .\-6u#{$x} { margin-left: 50% } + .\-5u#{$x} { margin-left: 41.6666666667% } + .\-4u#{$x} { margin-left: 33.3333333333% } + .\-3u#{$x} { margin-left: 25% } + .\-2u#{$x} { margin-left: 16.6666666667% } + .\-1u#{$x} { margin-left: 8.3333333333% } + + } + + /// Utility mixin for grid. + /// @param {list} $gutters Gutters. + /// @param {string} $class Optional class name. + /// @param {integer} $multiplier Multiplier (default is 1). + @mixin grid-gutters($gutters, $class: null, $multiplier: 1) { + + // Expand gutters if it's not a list. + @if length($gutters) == 1 { + $gutters: ($gutters, 0); + } + + // Get column and row gutter values. + $c: nth($gutters, 1); + $r: nth($gutters, 2); + + // Get class (if provided). + $x: ''; + + @if $class { + $x: '.' + $class; + } + + // Default. + .row#{$x} > * { padding: ($r * $multiplier) 0 0 ($c * $multiplier); } + .row#{$x} { margin: ($r * $multiplier * -1) 0 -1px ($c * $multiplier * -1); } + + // Uniform. + .row.uniform#{$x} > * { padding: ($c * $multiplier) 0 0 ($c * $multiplier); } + .row.uniform#{$x} { margin: ($c * $multiplier * -1) 0 -1px ($c * $multiplier * -1); } + + } + + /// Wraps @content in vendorized keyframe blocks. + /// @param {string} $name Name. + @mixin keyframes($name) { - @-moz-keyframes #{$name} { @content; } - @-webkit-keyframes #{$name} { @content; } - @-ms-keyframes #{$name} { @content; } - @keyframes #{$name} { @content; } + @-moz-keyframes #{$name} { @content; } + @-webkit-keyframes #{$name} { @content; } + @-ms-keyframes #{$name} { @content; } + @keyframes #{$name} { @content; } - } + } - /// - /// Sets breakpoints. - /// @param {map} $x Breakpoints. - /// - @mixin skel-breakpoints($x: ()) { - $breakpoints: $x !global; - } + /// + /// Sets breakpoints. + /// @param {map} $x Breakpoints. + /// + @mixin skel-breakpoints($x: ()) { + $breakpoints: $x !global; + } - /// - /// Initializes layout module. - /// @param {map} config Config. - /// - @mixin skel-layout($config: ()) { + /// + /// Initializes layout module. + /// @param {map} config Config. + /// + @mixin skel-layout($config: ()) { - // Config. - $configPerBreakpoint: (); + // Config. + $configPerBreakpoint: (); - $z: map-get($config, 'breakpoints'); + $z: map-get($config, 'breakpoints'); - @if $z { - $configPerBreakpoint: $z; - } + @if $z { + $configPerBreakpoint: $z; + } - // Reset. - $x: map-get($config, 'reset'); + // Reset. + $x: map-get($config, 'reset'); - @if $x { + @if $x { - /* Reset */ + /* Reset */ - @include reset($x); + @include reset($x); - } + } - // Box model. - $x: map-get($config, 'boxModel'); + // Box model. + $x: map-get($config, 'boxModel'); - @if $x { + @if $x { - /* Box Model */ + /* Box Model */ - @include boxModel($x); + @include boxModel($x); - } + } - // Containers. - $containers: map-get($config, 'containers'); + // Containers. + $containers: map-get($config, 'containers'); - @if $containers { + @if $containers { - /* Containers */ + /* Containers */ - .container { - margin-left: auto; - margin-right: auto; - } + .container { + margin-left: auto; + margin-right: auto; + } - // Use default is $containers is just "true". - @if $containers == true { - $containers: 960px; - } + // Use default is $containers is just "true". + @if $containers == true { + $containers: 960px; + } - // Apply base. - @include containers($containers); + // Apply base. + @include containers($containers); - // Apply per-breakpoint. - @each $name in map-keys($breakpoints) { + // Apply per-breakpoint. + @each $name in map-keys($breakpoints) { - // Get/use breakpoint setting if it exists. - $x: map-get($configPerBreakpoint, $name); + // Get/use breakpoint setting if it exists. + $x: map-get($configPerBreakpoint, $name); - // Per-breakpoint config exists? - @if $x { - $y: map-get($x, 'containers'); + // Per-breakpoint config exists? + @if $x { + $y: map-get($x, 'containers'); - // Setting exists? Use it. - @if $y { - $containers: $y; - } + // Setting exists? Use it. + @if $y { + $containers: $y; + } - } + } - // Create @media block. - @media screen and #{map-get($breakpoints, $name)} { - @include containers($containers); - } + // Create @media block. + @media screen and #{map-get($breakpoints, $name)} { + @include containers($containers); + } - } + } - } + } - // Grid. - $grid: map-get($config, 'grid'); + // Grid. + $grid: map-get($config, 'grid'); - @if $grid { + @if $grid { - /* Grid */ + /* Grid */ - // Use defaults if $grid is just "true". - @if $grid == true { - $grid: (); - } + // Use defaults if $grid is just "true". + @if $grid == true { + $grid: (); + } - // Sub-setting: Gutters. - $grid-gutters: 40px; - $x: map-get($grid, 'gutters'); + // Sub-setting: Gutters. + $grid-gutters: 40px; + $x: map-get($grid, 'gutters'); - @if $x { - $grid-gutters: $x; - } + @if $x { + $grid-gutters: $x; + } - // Rows. - .row { - border-bottom: solid 1px transparent; - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; - } + // Rows. + .row { + border-bottom: solid 1px transparent; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; + } - .row > * { - float: left; - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; - } + .row > * { + float: left; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; + } - .row:after, .row:before { - content: ''; - display: block; - clear: both; - height: 0; - } + .row:after, .row:before { + content: ''; + display: block; + clear: both; + height: 0; + } - .row.uniform > * > :first-child { - margin-top: 0; - } + .row.uniform > * > :first-child { + margin-top: 0; + } - .row.uniform > * > :last-child { - margin-bottom: 0; - } + .row.uniform > * > :last-child { + margin-bottom: 0; + } - // Gutters (0%). - @include grid-gutters($grid-gutters, \30 \25, 0); + // Gutters (0%). + @include grid-gutters($grid-gutters, \30 \25, 0); - // Apply base. - @include grid($grid-gutters); + // Apply base. + @include grid($grid-gutters); - // Apply per-breakpoint. - @each $name in map-keys($breakpoints) { + // Apply per-breakpoint. + @each $name in map-keys($breakpoints) { - // Get/use breakpoint setting if it exists. - $x: map-get($configPerBreakpoint, $name); + // Get/use breakpoint setting if it exists. + $x: map-get($configPerBreakpoint, $name); - // Per-breakpoint config exists? - @if $x { - $y: map-get($x, 'grid'); + // Per-breakpoint config exists? + @if $x { + $y: map-get($x, 'grid'); - // Setting exists? - @if $y { + // Setting exists? + @if $y { - // Sub-setting: Gutters. - $x: map-get($y, 'gutters'); + // Sub-setting: Gutters. + $x: map-get($y, 'gutters'); - @if $x { - $grid-gutters: $x; - } + @if $x { + $grid-gutters: $x; + } - } + } - } + } - // Create @media block. - @media screen and #{map-get($breakpoints, $name)} { - @include grid($grid-gutters, $name); - } + // Create @media block. + @media screen and #{map-get($breakpoints, $name)} { + @include grid($grid-gutters, $name); + } - } + } - } + } - } + } - /// Resets browser styles. - /// @param {string} $mode Mode (default is 'normalize'). - @mixin reset($mode: 'normalize') { + /// Resets browser styles. + /// @param {string} $mode Mode (default is 'normalize'). + @mixin reset($mode: 'normalize') { - @if $mode == 'normalize' { + @if $mode == 'normalize' { - // normalize.css v3.0.2 | MIT License | git.io/normalize - html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} + // normalize.css v3.0.2 | MIT License | git.io/normalize + html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} - } - @else if $mode == 'full' { + } + @else if $mode == 'full' { - // meyerweb.com/eric/tools/css/reset v2.0 | 20110126 | License: none (public domain) - html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}body{-webkit-text-size-adjust:none} + // meyerweb.com/eric/tools/css/reset v2.0 | 20110126 | License: none (public domain) + html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}body{-webkit-text-size-adjust:none} - } + } - } + } - /// Vendorizes a declaration's property and/or value(s). - /// @param {string} $property Property. - /// @param {mixed} $value String/list of value(s). - @mixin vendor($property, $value) { + /// Vendorizes a declaration's property and/or value(s). + /// @param {string} $property Property. + /// @param {mixed} $value String/list of value(s). + @mixin vendor($property, $value) { - // Determine if property should expand. - $expandProperty: index($vendor-properties, $property); + // Determine if property should expand. + $expandProperty: index($vendor-properties, $property); - // Determine if value should expand (and if so, add '-prefix-' placeholder). - $expandValue: false; + // Determine if value should expand (and if so, add '-prefix-' placeholder). + $expandValue: false; - @each $x in $value { - @each $y in $vendor-values { - @if $y == str-slice($x, 1, str-length($y)) { + @each $x in $value { + @each $y in $vendor-values { + @if $y == str-slice($x, 1, str-length($y)) { - $value: set-nth($value, index($value, $x), '-prefix-' + $x); - $expandValue: true; + $value: set-nth($value, index($value, $x), '-prefix-' + $x); + $expandValue: true; - } - } - } + } + } + } - // Expand property? - @if $expandProperty { - @each $vendor in $vendor-prefixes { - #{$vendor}#{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; - } - } + // Expand property? + @if $expandProperty { + @each $vendor in $vendor-prefixes { + #{$vendor}#{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; + } + } - // Expand just the value? - @elseif $expandValue { - @each $vendor in $vendor-prefixes { - #{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; - } - } + // Expand just the value? + @elseif $expandValue { + @each $vendor in $vendor-prefixes { + #{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; + } + } - // Neither? Treat them as a normal declaration. - @else { - #{$property}: #{$value}; - } + // Neither? Treat them as a normal declaration. + @else { + #{$property}: #{$value}; + } - } \ No newline at end of file + } \ No newline at end of file diff --git a/src/assets/styles/libs/_vars.scss b/src/assets/styles/libs/_vars.scss index 86ecb80..7b46e1c 100644 --- a/src/assets/styles/libs/_vars.scss +++ b/src/assets/styles/libs/_vars.scss @@ -1,86 +1,86 @@ // Misc. - $misc: ( - max-spotlights: 10, - max-features: 10, - z-index-base: 10000 - ); + $misc: ( + max-spotlights: 10, + max-features: 10, + z-index-base: 10000 + ); // Duration. - $duration: ( - transitions: 0.2s, - menu: 0.5s, - fadein: 3s - ); + $duration: ( + transitions: 0.2s, + menu: 0.5s, + fadein: 3s + ); // Size. - $size: ( - element-height: 2.75em, - element-margin: 2em, - letter-spacing: 0.075em, - letter-spacing-alt: 0.225em - ); + $size: ( + element-height: 2.75em, + element-margin: 2em, + letter-spacing: 0.075em, + letter-spacing-alt: 0.225em + ); // Font. - $font: ( - family: ('Open Sans', Helvetica, sans-serif), - family-fixed: ('Courier New', monospace), - weight: 400, - weight-bold: 600, - weight-extrabold: 800 - ); + $font: ( + family: ('Open Sans', Helvetica, sans-serif), + family-fixed: ('Courier New', monospace), + weight: 400, + weight-bold: 600, + weight-extrabold: 800 + ); // Palette. - $palette: ( - bg: #29335C, - fg: #fff, - fg-bold: #fff, - fg-light: rgba(255,255,255,0.5), - border: #fff, - border-bg: rgba(144,144,144,0.25), - border2: #fff, - border2-bg: rgba(144,144,144,0.5), + $palette: ( + bg: #29335C, + fg: #fff, + fg-bold: #fff, + fg-light: rgba(255,255,255,0.5), + border: #fff, + border-bg: rgba(144,144,144,0.25), + border2: #fff, + border2-bg: rgba(144,144,144,0.5), - accent1: ( - bg: #F3A712, - fg-bold: #ffffff, - fg: mix(#F3A712, #ffffff, 25%), - fg-light: mix(#F3A712, #ffffff, 40%), - border: rgba(0,0,0,0.125), - border-bg: rgba(255,255,255,0.075), - border2: rgba(0,0,0,0.25), - border2-bg: rgba(255,255,255,0.2) - ), - - accent2: ( - bg: #ffffff, - fg-bold: #2E3842, - fg: #4E4852, - fg-light: #8E8892, - border: #dfdfdf, - border-bg: rgba(0,0,0,0.0375), - border2: #bfbfbf, - border2-bg: rgba(0,0,0,0.1) - ), + accent1: ( + bg: #F3A712, + fg-bold: #ffffff, + fg: mix(#F3A712, #ffffff, 25%), + fg-light: mix(#F3A712, #ffffff, 40%), + border: rgba(0,0,0,0.125), + border-bg: rgba(255,255,255,0.075), + border2: rgba(0,0,0,0.25), + border2-bg: rgba(255,255,255,0.2) + ), + + accent2: ( + bg: #ffffff, + fg-bold: #2E3842, + fg: #4E4852, + fg-light: #8E8892, + border: #dfdfdf, + border-bg: rgba(0,0,0,0.0375), + border2: #bfbfbf, + border2-bg: rgba(0,0,0,0.1) + ), - accent3: ( - bg: #ed4933, - fg-bold: #ffffff, - fg: mix(#ed4933, #ffffff, 25%), - fg-light: mix(#ed4933, #ffffff, 40%), - border: rgba(0,0,0,0.125), - border-bg: rgba(255,255,255,0.075), - border2: rgba(0,0,0,0.25), - border2-bg: rgba(255,255,255,0.2) - ), - - accent4: ( - bg: #25558C, - fg-bold: #ffffff, - fg: mix(#25558C, #ffffff, 25%), - fg-light: mix(#25558C, #ffffff, 40%), - border: rgba(0,0,0,0.125), - border-bg: rgba(255,255,255,0.075), - border2: rgba(0,0,0,0.25), - border2-bg: rgba(255,255,255,0.2) - ) - ); \ No newline at end of file + accent3: ( + bg: #ed4933, + fg-bold: #ffffff, + fg: mix(#ed4933, #ffffff, 25%), + fg-light: mix(#ed4933, #ffffff, 40%), + border: rgba(0,0,0,0.125), + border-bg: rgba(255,255,255,0.075), + border2: rgba(0,0,0,0.25), + border2-bg: rgba(255,255,255,0.2) + ), + + accent4: ( + bg: #25558C, + fg-bold: #ffffff, + fg: mix(#25558C, #ffffff, 25%), + fg-light: mix(#25558C, #ffffff, 40%), + border: rgba(0,0,0,0.125), + border-bg: rgba(255,255,255,0.075), + border2: rgba(0,0,0,0.25), + border2-bg: rgba(255,255,255,0.2) + ) + ); \ No newline at end of file diff --git a/src/assets/styles/main.scss b/src/assets/styles/main.scss index 102a021..cf0496a 100644 --- a/src/assets/styles/main.scss +++ b/src/assets/styles/main.scss @@ -7,25 +7,25 @@ @import url("../fonts/opensans-google.css"); /* - Spectral by HTML5 UP - html5up.net | @ajlkn - Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) + Spectral by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) */ @import 'libs/skel'; @include skel-breakpoints(( - xlarge: '(max-width: 1680px)', - large: '(max-width: 1280px)', - medium: '(max-width: 980px)', - small: '(max-width: 736px)', - xsmall: '(max-width: 480px)' + xlarge: '(max-width: 1680px)', + large: '(max-width: 1280px)', + medium: '(max-width: 980px)', + small: '(max-width: 736px)', + xsmall: '(max-width: 480px)' )); @include skel-layout(( - reset: 'full', - boxModel: 'border', - grid: ( gutters: 1.5em ) + reset: 'full', + boxModel: 'border', + grid: ( gutters: 1.5em ) )); @import 'components/basic'; @@ -47,166 +47,166 @@ /* Main */ #main { - > header { - @include padding(12em, 0); - @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); - background-attachment: fixed; - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - text-align: center; + > header { + @include padding(12em, 0); + @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); + background-attachment: fixed; + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + text-align: center; - h2 { - font-size: 1.75em; - margin: 0 0 (_size(element-margin) * 0.25) 0; - } + h2 { + font-size: 1.75em; + margin: 0 0 (_size(element-margin) * 0.25) 0; + } - p { - color: inherit; - letter-spacing: _size(letter-spacing-alt); - text-transform: uppercase; - top: 0; + p { + color: inherit; + letter-spacing: _size(letter-spacing-alt); + text-transform: uppercase; + top: 0; - a { - color: inherit; - } - } + a { + color: inherit; + } + } - @include breakpoint(xlarge) { - @include padding(10em, 0); - } + @include breakpoint(xlarge) { + @include padding(10em, 0); + } - @include breakpoint(large) { - @include padding(8em, 3em); - } + @include breakpoint(large) { + @include padding(8em, 3em); + } - @include breakpoint(medium) { - @include padding(10em, 3em); - } + @include breakpoint(medium) { + @include padding(10em, 3em); + } - @include breakpoint(small) { - @include padding(5em, 3em); + @include breakpoint(small) { + @include padding(5em, 3em); - h2 { - font-size: 1.25em; - margin: 0 0 (_size(element-margin) * 0.5) 0; - } - } - } + h2 { + font-size: 1.25em; + margin: 0 0 (_size(element-margin) * 0.5) 0; + } + } + } } body.is-mobile { - #main { - > header { - background-attachment: scroll; - } - } + #main { + > header { + background-attachment: scroll; + } + } } /* Footer */ #footer { - @include padding(6em, 0); - background-color: darken(_palette(bg), 8); - text-align: center; + @include padding(6em, 0); + background-color: darken(_palette(bg), 8); + text-align: center; - .icons { - font-size: 1.25em; + .icons { + font-size: 1.25em; - a { - color: _palette(fg-light); + a { + color: _palette(fg-light); - &:hover { - color: _palette(fg); - } - } - } + &:hover { + color: _palette(fg); + } + } + } - .copyright { - color: _palette(fg-light); - font-size: 0.8em; - letter-spacing: _size(letter-spacing-alt); - list-style: none; - padding: 0; - text-transform: uppercase; + .copyright { + color: _palette(fg-light); + font-size: 0.8em; + letter-spacing: _size(letter-spacing-alt); + list-style: none; + padding: 0; + text-transform: uppercase; - li { - border-left: solid 1px _palette(fg-light); - display: inline-block; - line-height: 1em; - margin-left: 1em; - padding-left: 1em; + li { + border-left: solid 1px _palette(fg-light); + display: inline-block; + line-height: 1em; + margin-left: 1em; + padding-left: 1em; - &:first-child { - border-left: 0; - margin-left: 0; - padding-left: 0; - } + &:first-child { + border-left: 0; + margin-left: 0; + padding-left: 0; + } - a { - color: inherit; + a { + color: inherit; - &:hover { - color: _palette(fg); - } - } + &:hover { + color: _palette(fg); + } + } - @include breakpoint(xsmall) { - border: 0; - display: block; - line-height: 1.65em; - margin: 0; - padding: 0.5em 0; - } - } - } + @include breakpoint(xsmall) { + border: 0; + display: block; + line-height: 1.65em; + margin: 0; + padding: 0.5em 0; + } + } + } - @include breakpoint(medium) { - @include padding(4em, 3em); - } + @include breakpoint(medium) { + @include padding(4em, 3em); + } - @include breakpoint(small) { - @include padding(3em, 2em); - } + @include breakpoint(small) { + @include padding(3em, 2em); + } } /* Landing */ body.landing { - #page-wrapper { - @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); - background-attachment: fixed; - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - padding-top: 0; - } + #page-wrapper { + @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); + background-attachment: fixed; + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + padding-top: 0; + } - #page-wrapper { - padding-top: 0; - } + #page-wrapper { + padding-top: 0; + } - #footer { - background-color: darken(transparentize(_palette(bg), 0.1), 8); - } + #footer { + background-color: darken(transparentize(_palette(bg), 0.1), 8); + } } body.is-mobile { - &.landing { - #page-wrapper { - background: none; - } + &.landing { + #page-wrapper { + background: none; + } - #banner, - .wrapper.style4 { - @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); - background-position: center center; - background-repeat: no-repeat; - background-size: cover; - } + #banner, + .wrapper.style4 { + @include vendor('background-image', ('linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5))', 'url("../../assets/images/banner.jpg")')); + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + } - #footer { - background-color: darken(_palette(bg), 8); - } - } + #footer { + background-color: darken(_palette(bg), 8); + } + } } diff --git a/src/stylesheet.md b/src/stylesheet.md index 14e3475..4c68532 100644 --- a/src/stylesheet.md +++ b/src/stylesheet.md @@ -6,32 +6,32 @@ description: Just for reference ---
-

Text

-

This is bold and this is strong. This is italic and this is emphasized. - This is superscript text and this is subscript text. - This is underlined and this is code: for (;;) { ... }. Finally, this is a link.

-
-
-

Heading with a Subtitle

-

Lorem ipsum dolor sit amet nullam id egestas urna aliquam

-
-

Nunc lacinia ante nunc ac lobortis. Interdum adipiscing gravida odio porttitor sem non mi integer non faucibus ornare mi ut ante amet placerat aliquet. Volutpat eu sed ante lacinia sapien lorem accumsan varius montes viverra nibh in adipiscing blandit tempus accumsan.

-
-
Heading with a Subtitle
-

Lorem ipsum dolor sit amet nullam id egestas urna aliquam

-
-

Nunc lacinia ante nunc ac lobortis. Interdum adipiscing gravida odio porttitor sem non mi integer non faucibus ornare mi ut ante amet placerat aliquet. Volutpat eu sed ante lacinia sapien lorem accumsan varius montes viverra nibh in adipiscing blandit tempus accumsan.

-
-

Heading Level 2

-

Heading Level 3

-

Heading Level 4

-
Heading Level 5
-
Heading Level 6
-
-
Blockquote
-
Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.
-
Preformatted
-
i = 0;
+  

Text

+

This is bold and this is strong. This is italic and this is emphasized. + This is superscript text and this is subscript text. + This is underlined and this is code: for (;;) { ... }. Finally, this is a link.

+
+
+

Heading with a Subtitle

+

Lorem ipsum dolor sit amet nullam id egestas urna aliquam

+
+

Nunc lacinia ante nunc ac lobortis. Interdum adipiscing gravida odio porttitor sem non mi integer non faucibus ornare mi ut ante amet placerat aliquet. Volutpat eu sed ante lacinia sapien lorem accumsan varius montes viverra nibh in adipiscing blandit tempus accumsan.

+
+
Heading with a Subtitle
+

Lorem ipsum dolor sit amet nullam id egestas urna aliquam

+
+

Nunc lacinia ante nunc ac lobortis. Interdum adipiscing gravida odio porttitor sem non mi integer non faucibus ornare mi ut ante amet placerat aliquet. Volutpat eu sed ante lacinia sapien lorem accumsan varius montes viverra nibh in adipiscing blandit tempus accumsan.

+
+

Heading Level 2

+

Heading Level 3

+

Heading Level 4

+
Heading Level 5
+
Heading Level 6
+
+
Blockquote
+
Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.
+
Preformatted
+
i = 0;
 
 while (!deck.isInOrder()) {
 print 'Iteration ' + i;
@@ -43,272 +43,272 @@ print 'It took ' + i + ' iterations to sort the deck.';
-

Lists

-
-
-
Unordered
-
    -
  • Dolor pulvinar etiam.
  • -
  • Sagittis adipiscing.
  • -
  • Felis enim feugiat.
  • -
-
Alternate
-
    -
  • Dolor pulvinar etiam.
  • -
  • Sagittis adipiscing.
  • -
  • Felis enim feugiat.
  • -
-
-
-
Ordered
-
    -
  1. Dolor pulvinar etiam.
  2. -
  3. Etiam vel felis viverra.
  4. -
  5. Felis enim feugiat.
  6. -
  7. Dolor pulvinar etiam.
  8. -
  9. Etiam vel felis lorem.
  10. -
  11. Felis enim et feugiat.
  12. -
-
Icons
- -
-
-
Actions
-
-
- - - - -
-
- - -
-
+

Lists

+
+
+
Unordered
+
    +
  • Dolor pulvinar etiam.
  • +
  • Sagittis adipiscing.
  • +
  • Felis enim feugiat.
  • +
+
Alternate
+
    +
  • Dolor pulvinar etiam.
  • +
  • Sagittis adipiscing.
  • +
  • Felis enim feugiat.
  • +
+
+
+
Ordered
+
    +
  1. Dolor pulvinar etiam.
  2. +
  3. Etiam vel felis viverra.
  4. +
  5. Felis enim feugiat.
  6. +
  7. Dolor pulvinar etiam.
  8. +
  9. Etiam vel felis lorem.
  10. +
  11. Felis enim et feugiat.
  12. +
+
Icons
+ +
+
+
Actions
+
+
+ + + + +
+
+ + +
+
-

Table

-
Default
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescriptionPrice
Item OneAnte turpis integer aliquet porttitor.29.99
Item TwoVis ac commodo adipiscing arcu aliquet.19.99
Item Three Morbi faucibus arcu accumsan lorem.29.99
Item FourVitae integer tempus condimentum.19.99
Item FiveAnte turpis integer aliquet porttitor.29.99
100.00
-
+

Table

+
Default
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionPrice
Item OneAnte turpis integer aliquet porttitor.29.99
Item TwoVis ac commodo adipiscing arcu aliquet.19.99
Item Three Morbi faucibus arcu accumsan lorem.29.99
Item FourVitae integer tempus condimentum.19.99
Item FiveAnte turpis integer aliquet porttitor.29.99
100.00
+
-
Alternate
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescriptionPrice
Item OneAnte turpis integer aliquet porttitor.29.99
Item TwoVis ac commodo adipiscing arcu aliquet.19.99
Item Three Morbi faucibus arcu accumsan lorem.29.99
Item FourVitae integer tempus condimentum.19.99
Item FiveAnte turpis integer aliquet porttitor.29.99
100.00
-
+
Alternate
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionPrice
Item OneAnte turpis integer aliquet porttitor.29.99
Item TwoVis ac commodo adipiscing arcu aliquet.19.99
Item Three Morbi faucibus arcu accumsan lorem.29.99
Item FourVitae integer tempus condimentum.19.99
Item FiveAnte turpis integer aliquet porttitor.29.99
100.00
+
-

Buttons

- - - - - -
    -
  • Disabled
  • -
  • Disabled
  • -
+

Buttons

+ + + + + +
    +
  • Disabled
  • +
  • Disabled
  • +
-

Form

-
-
-
- -
-
- -
-
-
- -
-
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- -
-
-
    -
  • -
  • -
-
-
-
+

Form

+
+
+
+ +
+
+ +
+
+
+ +
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+
    +
  • +
  • +
+
+
+
-

Image

-
Fit
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Left & Right
-

Morbi mattis mi consectetur tortor elementum, varius pellentesque velit convallis. Aenean tincidunt lectus auctor mauris maximus, ac scelerisque ipsum tempor. Duis vulputate ex et ex tincidunt, quis lacinia velit aliquet. Duis non efficitur nisi, id malesuada justo. Maecenas sagittis felis ac sagittis semper. Curabitur purus leo, tempus sed finibus eget, fringilla quis risus. Maecenas et lorem quis sem varius sagittis et a est. Maecenas iaculis iaculis sem. Donec vel dolor at arcu tincidunt bibendum. Interdum et malesuada fames ac ante ipsum primis in faucibus. Fusce ut aliquet justo. Donec id neque ipsum. Integer eget ultricies odio. Nam vel ex a orci fringilla tincidunt. Aliquam eleifend ligula non velit accumsan cursus. Etiam ut gravida sapien. Morbi mattis mi consectetur tortor elementum, varius pellentesque velit convallis. Aenean tincidunt lectus auctor mauris maximus, ac scelerisque ipsum tempor. Duis vulputate ex et ex tincidunt, quis lacinia velit aliquet. Duis non efficitur nisi, id malesuada justo. Maecenas sagittis felis ac sagittis semper. Curabitur purus leo, tempus sed finibus eget, fringilla quis risus. Maecenas et lorem quis sem varius sagittis et a est. Maecenas iaculis iaculis sem. Donec vel dolor at arcu tincidunt bibendum. Interdum et malesuada fames ac ante ipsum primis in faucibus. Fusce ut aliquet justo. Donec id neque ipsum. Integer eget ultricies odio. Nam vel ex a orci fringilla tincidunt. Aliquam eleifend ligula non velit accumsan cursus. Etiam ut gravida sapien.

-

Vestibulum ultrices risus velit, sit amet blandit massa auctor sit amet. Sed eu lectus sem. Phasellus in odio at ipsum porttitor mollis id vel diam. Praesent sit amet posuere risus, eu faucibus lectus. Vivamus ex ligula, tempus pulvinar ipsum in, auctor porta quam. Proin nec dui cursus, posuere dui eget interdum. Fusce lectus magna, sagittis at facilisis vitae, pellentesque at etiam. Quisque posuere leo quis sem commodo, vel scelerisque nisi scelerisque. Suspendisse id quam vel tortor tincidunt suscipit. Nullam auctor orci eu dolor consectetur, interdum ullamcorper ante tincidunt. Mauris felis nec felis elementum varius. Nam sapien ante, varius in pulvinar vitae, rhoncus id massa. Donec varius ex in mauris ornare, eget euismod urna egestas. Etiam lacinia tempor ipsum, sodales porttitor justo. Aliquam dolor quam, semper in tortor eu, volutpat efficitur quam. Fusce nec fermentum nisl. Aenean erat diam, tempus aliquet erat. Etiam iaculis nulla ipsum, et pharetra libero rhoncus ut. Phasellus rutrum cursus velit, eget condimentum nunc blandit vel. In at pulvinar lectus. Morbi diam ante, vulputate et imperdiet eget, fermentum non dolor. Ut eleifend sagittis tincidunt. Sed viverra commodo mi, ac rhoncus justo. Duis neque ligula, elementum ut enim vel, posuere finibus justo. Vivamus facilisis maximus nibh quis pulvinar. Quisque hendrerit in ipsum id tellus facilisis fermentum. Proin mauris dui.

+

Image

+
Fit
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Left & Right
+

Morbi mattis mi consectetur tortor elementum, varius pellentesque velit convallis. Aenean tincidunt lectus auctor mauris maximus, ac scelerisque ipsum tempor. Duis vulputate ex et ex tincidunt, quis lacinia velit aliquet. Duis non efficitur nisi, id malesuada justo. Maecenas sagittis felis ac sagittis semper. Curabitur purus leo, tempus sed finibus eget, fringilla quis risus. Maecenas et lorem quis sem varius sagittis et a est. Maecenas iaculis iaculis sem. Donec vel dolor at arcu tincidunt bibendum. Interdum et malesuada fames ac ante ipsum primis in faucibus. Fusce ut aliquet justo. Donec id neque ipsum. Integer eget ultricies odio. Nam vel ex a orci fringilla tincidunt. Aliquam eleifend ligula non velit accumsan cursus. Etiam ut gravida sapien. Morbi mattis mi consectetur tortor elementum, varius pellentesque velit convallis. Aenean tincidunt lectus auctor mauris maximus, ac scelerisque ipsum tempor. Duis vulputate ex et ex tincidunt, quis lacinia velit aliquet. Duis non efficitur nisi, id malesuada justo. Maecenas sagittis felis ac sagittis semper. Curabitur purus leo, tempus sed finibus eget, fringilla quis risus. Maecenas et lorem quis sem varius sagittis et a est. Maecenas iaculis iaculis sem. Donec vel dolor at arcu tincidunt bibendum. Interdum et malesuada fames ac ante ipsum primis in faucibus. Fusce ut aliquet justo. Donec id neque ipsum. Integer eget ultricies odio. Nam vel ex a orci fringilla tincidunt. Aliquam eleifend ligula non velit accumsan cursus. Etiam ut gravida sapien.

+

Vestibulum ultrices risus velit, sit amet blandit massa auctor sit amet. Sed eu lectus sem. Phasellus in odio at ipsum porttitor mollis id vel diam. Praesent sit amet posuere risus, eu faucibus lectus. Vivamus ex ligula, tempus pulvinar ipsum in, auctor porta quam. Proin nec dui cursus, posuere dui eget interdum. Fusce lectus magna, sagittis at facilisis vitae, pellentesque at etiam. Quisque posuere leo quis sem commodo, vel scelerisque nisi scelerisque. Suspendisse id quam vel tortor tincidunt suscipit. Nullam auctor orci eu dolor consectetur, interdum ullamcorper ante tincidunt. Mauris felis nec felis elementum varius. Nam sapien ante, varius in pulvinar vitae, rhoncus id massa. Donec varius ex in mauris ornare, eget euismod urna egestas. Etiam lacinia tempor ipsum, sodales porttitor justo. Aliquam dolor quam, semper in tortor eu, volutpat efficitur quam. Fusce nec fermentum nisl. Aenean erat diam, tempus aliquet erat. Etiam iaculis nulla ipsum, et pharetra libero rhoncus ut. Phasellus rutrum cursus velit, eget condimentum nunc blandit vel. In at pulvinar lectus. Morbi diam ante, vulputate et imperdiet eget, fermentum non dolor. Ut eleifend sagittis tincidunt. Sed viverra commodo mi, ac rhoncus justo. Duis neque ligula, elementum ut enim vel, posuere finibus justo. Vivamus facilisis maximus nibh quis pulvinar. Quisque hendrerit in ipsum id tellus facilisis fermentum. Proin mauris dui.