diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..7b9c85801dc533411ca7da36235492ffe42ecef3 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,9 @@ +[submodule "third_party/font-awesome"] + path = third_party/font-awesome + url = https://github.com/FortAwesome/Font-Awesome.git +[submodule "third_party/motion-ui"] + path = third_party/motion-ui + url = https://github.com/zurb/motion-ui.git +[submodule "third_party/foundation-sites"] + path = third_party/foundation-sites + url = https://github.com/zurb/foundation-sites.git diff --git a/about.html b/about.html index fd3025780663dc38c87c8347a8dfbba0ecffa218..4a7457f71861359b5be071b8add2fa026e8430d5 100644 --- a/about.html +++ b/about.html @@ -2,18 +2,18 @@ title: About --- -<div class="row align-center"> - <div class="small-12 medium-8 columns"> +<div class="grid-x grid-margin-x align-center"> + <div class="small-12 medium-8 cell"> <h1 class="cardboard">About</h1> </div> </div> -<div class="row"> - <div class="medium-2 columns show-for-medium"> +<div class="grid-x grid-margin-x"> + <div class="medium-2 cell show-for-medium"> <img src="/images/avatar.jpeg"></img> </div> - <div class="small-12 medium-8 columns"> + <div class="small-12 medium-8 cell"> <p> Hi there! I’m Eduardo Trujillo. I’m a software engineer and coffee drinker currently living in Seattle, WA. Before moving, I studied @@ -46,46 +46,46 @@ title: About </div> </div> -<div class="row align-center"> - <div class="medium-8 columns"> +<div class="grid-x grid-margin-x align-center"> + <div class="medium-8 cell"> <h3>Contact</h3> - <div class="row"> - <div class="medium-6 columns"> + <div class="grid-x"> + <div class="medium-6 cell"> <div class="callout"> <p> Eduardo Trujillo<br/> <i><small>Software Engineer</small></i> </p> - <div class="row"> - <div class="medium-6 columns"> + <div class="grid-x"> + <div class="medium-6 cell"> <i class="fa fa-facebook-official"></i> <b>Facebook</b> </div> - <div class="medium-6 columns"> + <div class="medium-6 cell"> <a href="https://fb.com/etcinit">etcinit</a> </div> </div> - <div class="row"> - <div class="medium-6 columns"> + <div class="grid-x"> + <div class="medium-6 cell"> <i class="fa fa-twitter"></i> <b>Twitter</b> </div> - <div class="medium-6 columns"> + <div class="medium-6 cell"> <a href="https://twitter.com/etcinit">@etcinit</a> </div> </div> - <div class="row"> - <div class="medium-6 columns"> + <div class="grid-x"> + <div class="medium-6 cell"> <i class="fa fa-twitter"></i> <b>LinkedIn</b> </div> - <div class="medium-6 columns"> + <div class="medium-6 cell"> <a href="http://www.linkedin.com/in/etrujillo/">etrujillo</a> </div> </div> @@ -97,8 +97,8 @@ title: About <hr> -<div class="row align-center"> - <div class="medium-8 columns"> +<div class="grid-x grid-margin-x align-center"> + <div class="medium-8 cell"> <h3>Public PGP Key</h3> <p> @@ -118,91 +118,3 @@ title: About </p> </div> </div> - -<div class="row align-center show-for-medium" - data-toggler=".show-for-medium" id="fullKey"> - <div class="medium-8 columns"> - <hr> - - <p><b>Full key:</b></p> - - <div class="sourceCode"><pre><code> ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: Keybase OpenPGP v2.0.1 -Comment: https://keybase.io/crypto - -xsFNBFTN0a4BEADCOHTZYYEhnuHYSYbZawNui1YK7N5hMJi1lbpED/bA4vjhLom9 -vyUd8hyjqG447FRxkG0drAfJWayiEhATVk5rVeSevS2iTxjqel7w8c0PNdQDbKUN -+m/+EpAaoF6lGDIQFDmt1y7pQjQ+y6TNC8BSoGvEl2mCgaNxUbumWpDlSkZGFfaf -6fr1BqTL7ZtIKldXnevxPP7dl2okMoZvkFHNj87kTNCvY8+L0Ghc5eyqCqnvAPlQ -C6E5JytDkIl38AssGmlW9oEb9DUqaKDdqJ81IQWqZkev528f1NdHLyUdv9+YrMxT -C5EngLVtnQK5xu1NM5JFafSvI1zhISfe2MNYDIGYbEBmeXLGa2Qvm8LsSD8/zSVa -Ygnq27SpxmN2kU0lRoxZVsTJrKIrhoyu632lVFzU4Pg3R3ZWUQ053Qfdv9MXogoK -LyOrSgU2WkZ0xC5l+0Ywkdeam5NYhkE5bS9JB2/MMrgiQst6lkdwHOsP8IZ8Hq1R -XFwSsiP7ymaNCo0dNPgRblKmNDmnJepC4xEp8k93m5WH1Es7dxhiug+tLMaL/IKC -P5HC39iDIIt3bB8hAggvBn155Yn06zzL9NZc39tUqmmQQdAwzftaL1lURxETqybt -rkxYuH+YRNVt/QbtRvSo0C40ilUH/TjRqCNlvhPrqqk+zqHK5ZDyfAHcjwARAQAB -zSdrZXliYXNlLmlvL2V0Y2luaXQgPGV0Y2luaXRAa2V5YmFzZS5pbz7CwXAEEwEK -ABoFAlTN0a4CGy8DCwkHAxUKCAIeAQIXgAIZAQAKCRDILMxMXOrPhQsPD/0TT6lw -YAw4yJVHWAIizkCdRMTrkhL1JMyrzq4ErsLBvRD6PcpdVBxehW94+/dAOg4Q6Bde -9Aij8nUEHOBflqjxNiBwLdae3VyqeHLQmB3AxD/+UN7dTSw0VmUwxCaoLvuuQQPl -BMqPwhKiiHaiiJRANWmQVAEfFIg64/MDY6sJ0v6bPV+7b2zQS9qJxv4Xi2sAc45V -e29Q9rb4r/e3sYyqq81eN3phkMF4pHWxJV8le9mRZGhTDUgXyaiv7e4LBoLhB8RU -ZFdsy+AWQ6relciuMZAitvktVJoj+OlYNObzX33GEhk7/pdpbaLJMZkd3hzsOoIC -znrNW49BWWu/jyUi/qLh4vePcJOmx/R5SQOTGUFdLlKOMNks2yznyC9kDt+o4LsH -sMdlSXzc6yQiCiAvCL83esEyRqrXrf3GBaLT4LjgFEXy6md0+2AQhGG6AsOY904M -NmsXz1sqctuk23i03xcdp0A3eiub4CReyx/joww/vXeQCqTGXlgRPjdoTn2SBN6d -3FGVszhl2uv335P3X/pKsjJUiwAp0yeBUQ7vkEl8U1DDbCvXvJHik7Namm0tgQGO -sxHGTDZFH7FsHvJSuhZ4Kw34aAdss7lMQUoNKkKg86qPkRNF97BMa3oTo0zEcCOL -xUHaVgUDP/sGcyq5w88Yydy9CmsYRsew1rXZJ87ATQRUzdGuAQgAzNid4AETfQKg -p7/4Yn+Tdpna/WWiiBfLJIcPuoAjR8q1dgIqNn1ry3RwW5fvLAkKQAYEhTdjfTFO -GfV+44TnOLdoMAquIThsDbBukyAHFm10C31Au6I7dwjW8n+qNcQh5UfM9pMz9eVS -1rxQJ4kft/EAf8+TnzPZXxuR2BvaPzpfqNF6w5W6rYHf2aUa6MxR58MDNVTXy3ZG -BlL/Wr8aaVgbhGIfb+BCS9dEhaQp3C+UA/f4vzSlDjy3p43vFKHGjN42vaQv8gKs -uUOlhDAwoNBCu6ktE4+ivScElEaGS/N07hvpETkRdYYjdtBTBKZqE9ak+6IZm9Uk -k1W3cpKyoQARAQABwsKEBBgBCgAPBQJUzdGuBQkPCZwAAhsCASkJEMgszExc6s+F -wF0gBBkBCgAGBQJUzdGuAAoJEJVzD0NQ/eBhRU4IAIN8seakiCBKzeFuucLTt7hE -sfAuRmmghjhqaAdEa/bA2hd8oKA8lQ4P8WZ2TCCFxqClUdh1hE5iOkHAbKUDBpGH -U8lP65DRKgK9yH41F4aPT1U8lyXpX2tjMRXucHCFbxHNbf/cB4mtaIMqsr1dCpKL -AQVGv3la9wnhzd1RUa0a0LnIkxrE+/Xt3lW79vmHfolUwkBJ+5now0KRT93YCMKY -LQJgKO0WcD8XMMuZp3Mk3wDArehmUmmoOy/n6dl0Y6/Mf48U3M/taGuEcZf2/59p -WENHRfbwLQRI4SzvMMxz577bQQza/tD+3LB56iXyNYCrQRiGl1AiznNMDVPQ2Km5 -Tg/+Jy/yCAnj02z5OnV1cwBKcFAZm7OkKamAi0q/M6YS4NwMsMOj/9ImXElqBslR -IcLC+ZFgnBcltwS+bwpgjmWMTT/Gvpjj8GmGz/ZT0RpNdTziGRBjobCer/JEk7rH -Ts8bvfxuTWtU29yErabe5Hoee3T06XSIRpSf5pwZuPneCSIXvxcJp4zSho1Y6lcc -1VyyyzUiwrviKGUTAVJSP6/UjmqcaHGcgNzdRfQQhFRo5yIl3U/K79dTtjjIuhnp -qVD9BNwRvr0BRXPfgDH452HtbUY7v/OAIQPFZJMRXgHkgMotu3J77m81AqleDA9l -PMajbFz+d21NmqmZtPDaY6KUZXeGZUpauXetbh1gY8+k0ia5gwWAL43t98+16fk2 -PvUdop9I+w4EVQ89mEQ0J34Lqed5hxIYzkKOe1LYSg+fwtq2whEjsV829i3gn2xA -qKoWSw8R6g5ixqaUtLRvCDpgN9qygf/LHGFErfnVMKQh/VIejY9J0w9f0vbIn0os -ED7Z4z7eardv5opK1jOBEtpxodeCN2080+5ZNxcZgxuHi7BkBGF/LhA/LNsPwbvm -eLWCBaNB/WeUd/ZYA3Fe1Do3VWaB9mYgGjUzVZWsaOHTlVjytR66JegrgmnP80+E -NphSB528JgLvibwHsx0M0g5DsAorMEPUueWjVO1LsXLCNsXOwE0EVM3RrgEIAMZM -mERqmQORv7jbVUz5XWTr7xgI9Mqjjc0tt5gGgVZUJYT4gDwLaC0wNJRDsM2Q/5fq -3IhJcvTdQ0m34l+yNHswc2bUSfYqjVrzBvt6mNW3tqmkeMJywmM+HpNCTmrv4m4W -xJ4aR8FAsjCo9P90qTwmz720ngs10oUEi2eKDx4pnlnuGZZXqvBUVZ3KxhsWKLZw -cetDk5+/NEWUlGgIG5FS/U4AxqmNdoHKvYGm7CEYk4fm9xWXX1rT7PduK1uyIhvf -iTUuyuan1r94S8DULBAW3Yoe+AJT9ffyh+Qr+FeT+BJ3i1Jl8U34PXz0RaYkTXGl -CYJzMsibV2/yPT+51W8AEQEAAcLChAQYAQoADwUCVM3RrgUJDwmcAAIbDAEpCRDI -LMxMXOrPhcBdIAQZAQoABgUCVM3RrgAKCRBDMEBWwA66wKbtCACh4lybj/kIsOOn -8dmnm9lExJbp6qsUTSFS6tewwZHMrI0ngdZ3ZyP37jZ/rmHQovSXb1ZTHe2wmQXb -JrrlCn5JgqTafGYYcHWgFF2/MAFdiyoTF1xjRMfgCfUvA0RfhhKK53FvbWFWlNaH -tgPS3joGLqYMSnAeX5bhtGWjElqnOgT8o5Jav/KmedCTOeGRlV6rLoyOXMthHeV6 -D9BTg6IRJ+8TVszl4O+ebjeAE+M//gxt1SVxe42ES3rLoolxa/r/id72LeCh9SK7 -dCMYMZNwCRY3wmNUBx7f4HiwYyhLfIiV56UVnhk+nTACG1c2zHrvG4975/5zNX1f -74YV5Aog+gUP/0GTf5ve1n0eNOtbqwcsMaitillaTMRPuIM8Sz4w5owJAJLO7z7D -VGDA4wVJDiVRiYomblr7NPzy7OHVzbAGgxTKlJevF+fAdEa64ku+onYu1hWX+LS7 -bpqefNrk1IP5QNHlWCoYYZkwalPZADhRY7qDDZhN4rIOCWGcW0VKXd+rirUPVecp -cwXvN626ftHmlzZeBaRyGiM1A88SP1Bo9N+bWRNLJqV0sgbcfUb2sgS0HIiuY4BJ -/MPf7OUGOswdPYAIlqjEGCHNcEDlFmpZSBgrH3bXzsyqO4fqx6ispojAOI+cq59C -+mw8NDp8GQJbXU8ijp43+WLXTS9Ec+eJHICRMlSFUwDoga+an1fEsFBE3O4vf6zP -b7zX8ezFma9fTpbwQ2AdgJSg90FAXLcTOUAcVdTA/cnxU6kuCPhuGMquMo1EfJ7n -4sH1NK7o5fTg276BiZ0pLX3Z/hRR6oVno3ghU2pZQ3N5XZJ09S8NbhNgpBrhntNI -RZMUC95AxeYNX/1oTN16W0zeRAu6iqh/9QabdsOSHrypqtjm4ncKO5CMhTDS+n14 -HH1R+NXjkCfXArbFkJkkd9xHPtirLhG/HEwLOXj6HsS1/15sxrt5XK4w1FU9QWf9 -R5jZoLiQdLEsWPzE/sC/bJ/oreWSp0NaTg4jsPCNwr8wUFztO9u4o+dW -=ceyV ------END PGP PUBLIC KEY BLOCK----- - </code></pre></div> - </div> -</div> diff --git a/frontmatter.hs b/app/frontmatter.hs similarity index 100% rename from frontmatter.hs rename to app/frontmatter.hs diff --git a/app/site.hs b/app/site.hs index 6317420b0d940ac67176cc498926a203e52c316b..799232520dbdeefeefd21e7b78d646e6ffdcdadb 100644 --- a/app/site.hs +++ b/app/site.hs @@ -1,7 +1,7 @@ {-# LANGUAGE OverloadedStrings #-} import Control.Applicative -import Control.Monad (liftM, mapM_) +import Control.Monad (liftM, mapM_, join) import Data.List (intersperse, isSuffixOf) import Data.List.Split (splitOn) import Data.Maybe (fromMaybe) @@ -18,8 +18,10 @@ import Hakyll import Hakyll.Serve.Main (HakyllServeConfiguration, hakyllServeWith, hscHakyllConfiguration) -import Text.Highlighting.Kate.Styles (haddock) +import Skylighting.Styles (haddock) import Text.Pandoc.Options +import Text.Sass.Compilation +import Text.Sass.Options -- TYPES ---------------------------------------------------------------------- @@ -75,17 +77,27 @@ main = hakyllServeWith serveConf $ do defaultHakyllReaderOptions writerOptions - mapM_ matchAndCopyDirectory ["images/*", "images/posts/*", "images/tumblr/*"] + mapM_ matchAndCopyDirectory + ["images/*", "images/posts/*", "images/tumblr/*"] mapM_ matchAndCopy - [ ("css/app.css", "css") - , ("favicon.ico", "ico") + [ ("favicon.ico", "ico") , ("keybase.txt", "txt") , ("robots.txt", "txt") ] - match "bower_components/font-awesome/fonts/*" $ do - route $ gsubRoute "bower_components/font-awesome/" (const "") + match "third_party/font-awesome/fonts/*" $ do + route $ gsubRoute "third_party/font-awesome/" (const "") compile copyFileCompiler + create ["scss/app.scss"] $ do + route $ gsubRoute "scss/" (const "css/") `composeRoutes` setExtension "css" + compile . sassCompiler $ def + { sassIncludePaths = Just + [ "third_party/foundation-sites/scss" + , "third_party/motion-ui/src" + , "third_party/font-awesome/scss" + ] + } + create ["404.html"] $ do route $ setExtension "html" compile $ pandocHtml5Compiler @@ -321,6 +333,18 @@ grouper = fmap (paginateEvery 3) . sortRecentFirst makeId :: PageNumber -> Identifier makeId pageNum = fromFilePath $ "page/" ++ show pageNum ++ "/index.html" +-- SASS COMPILER -------------------------------------------------------------- + +sassCompiler :: SassOptions -> Compiler (Item String) +sassCompiler options = getResourceBody >>= compileSass options + where + compileSass :: SassOptions -> Item String -> Compiler (Item String) + compileSass options item = join $ unsafeCompiler $ do + result <- compileFile (toFilePath $ itemIdentifier item) options + case result of + Left sassError -> errorMessage sassError >>= fail + Right result_ -> pure $ makeItem result_ + -- UTILITIES ------------------------------------------------------------------ pickColor :: IO String diff --git a/blog.cabal b/blog.cabal index 1139abf0d676aec80698c16f358079b0ff0cb4f5..5f270286cb6e6f225cdb5e1d7dcb96dd8c15a9c8 100644 --- a/blog.cabal +++ b/blog.cabal @@ -19,7 +19,7 @@ executable blog ghc-options: -threaded build-depends: base == 4.*, lens, - hakyll == 4.8.*, + hakyll == 4.9.*, kawaii, filepath == 1.4.*, split == 0.2.*, @@ -27,11 +27,12 @@ executable blog transformers, containers == 0.5.*, pandoc == 1.*, - highlighting-kate == 0.6.*, + skylighting, unordered-containers, aeson, text, - data-default + data-default, + hsass == 0.5.* executable server main-is: server.hs diff --git a/bower.json b/bower.json deleted file mode 100644 index c8d0eeb18b11d9cfbb78b5c8745d0c4e9e98ac05..0000000000000000000000000000000000000000 --- a/bower.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "chromabits", - "version": "1.0.0", - "authors": [ - "Eduardo Trujillo <ed@chromabits.com>" - ], - "description": "Personal blog.", - "main": "index.html", - "license": "MIT", - "homepage": "https://chromabits.com", - "dependencies": { - "foundation-sites": "~6.1.0", - "motion-ui": "~1.1.0", - "font-awesome": "~4.5.0" - }, - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ], - "private": true -} diff --git a/css/.gitkeep b/css/.gitkeep deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/css/app.css b/css/app.css deleted file mode 100644 index 54c32a358f8864d929978bf51e118150957966a8..0000000000000000000000000000000000000000 --- a/css/app.css +++ /dev/null @@ -1,7 +0,0 @@ -@charset "UTF-8"; -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}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}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}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{box-sizing:content-box}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;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}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}body,html{font-size:16px;box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{padding:0;margin:0;font-family:adelle-sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#0a0a0a;background:#fefefe;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;-ms-interpolation-mode:bicubic;display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px;border-radius:0}select{width:100%}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{-webkit-appearance:none;-moz-appearance:none;background:transparent;padding:0;border:0;border-radius:0;line-height:1}.row{max-width:62.5rem;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-left:auto;margin-right:auto}.column-row .row,.row .row{margin-left:-.9375rem;margin-right:-.9375rem}.column,.columns{-ms-flex:1 1 0px;flex:1 1 0px;padding-left:.9375rem;padding-right:.9375rem}.small-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}@media screen and (min-width:40em){.medium-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (min-width:64em){.large-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (min-width:40em){.medium-expand{-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width:64em){.large-expand{-ms-flex:1 1 0px;flex:1 1 0px}}.shrink{-ms-flex:0 0 auto;flex:0 0 auto}.row.medium-unstack .column{-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:40em){.row.medium-unstack .column{-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack .column{-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:64em){.row.large-unstack .column{-ms-flex:1 1 0px;flex:1 1 0px}}.small-order-1{-ms-flex-order:1;order:1}.small-order-2{-ms-flex-order:2;order:2}.small-order-3{-ms-flex-order:3;order:3}.small-order-4{-ms-flex-order:4;order:4}.small-order-5{-ms-flex-order:5;order:5}.small-order-6{-ms-flex-order:6;order:6}@media screen and (min-width:40em){.medium-order-1{-ms-flex-order:1;order:1}.medium-order-2{-ms-flex-order:2;order:2}.medium-order-3{-ms-flex-order:3;order:3}.medium-order-4{-ms-flex-order:4;order:4}.medium-order-5{-ms-flex-order:5;order:5}.medium-order-6{-ms-flex-order:6;order:6}}@media screen and (min-width:64em){.large-order-1{-ms-flex-order:1;order:1}.large-order-2{-ms-flex-order:2;order:2}.large-order-3{-ms-flex-order:3;order:3}.large-order-4{-ms-flex-order:4;order:4}.large-order-5{-ms-flex-order:5;order:5}.large-order-6{-ms-flex-order:6;order:6}}.row.align-right{-ms-flex-pack:end;justify-content:flex-end}.row.align-center{-ms-flex-pack:center;justify-content:center}.row.align-justify{-ms-flex-pack:justify;justify-content:space-between}.row.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.row.align-top{-ms-flex-align:start;align-items:flex-start}.column.align-top{-ms-flex-item-align:start;align-self:flex-start}.row.align-bottom{-ms-flex-align:end;align-items:flex-end}.column.align-bottom{-ms-flex-item-align:end;align-self:flex-end}.row.align-middle{-ms-flex-align:center;align-items:center}.column.align-middle{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}.row.align-stretch{-ms-flex-align:stretch;align-items:stretch}.column.align-stretch{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{font-size:inherit;line-height:1.6;margin-bottom:1rem;text-rendering:optimizeLegibility}em,i{font-style:italic}b,em,i,strong{line-height:inherit}b,strong{font-weight:700}small{font-size:80%;line-height:inherit}h1,h2,h3,h4,h5,h6{font-family:adelle-sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:700;font-style:normal;color:inherit;text-rendering:optimizeLegibility;margin-top:0;margin-bottom:.5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#cacaca;line-height:0}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1875rem}h4{font-size:1.125rem}h5{font-size:1.0625rem}h6{font-size:1rem}@media screen and (min-width:40em){h1{font-size:3rem}h2{font-size:2.125rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{color:#2199e8;text-decoration:none;line-height:inherit;cursor:pointer}a:focus,a:hover{color:#1585cf}a img{border:0}hr{max-width:62.5rem;height:0;border-right:0;border-top:0;border-bottom:1px dotted #cacaca;border-left:0;margin:1.25rem auto;clear:both}dl,ol,ul{line-height:1.6;margin-bottom:1rem;list-style-position:outside}li{font-size:inherit}ul{list-style-type:disc}ol,ul{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0;list-style-type:inherit}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:"\2014 \0020"}abbr{color:#0a0a0a;cursor:help;border-bottom:1px dotted #0a0a0a}code{font-weight:400;border:1px solid #cacaca;padding:.125rem .3125rem .0625rem}code,kbd{font-family:Consolas,Liberation Mono,Courier,monospace;color:#0a0a0a;background-color:#e6e6e6}kbd{padding:.125rem .25rem 0;margin:0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#8a8a8a}.lead{font-size:20px;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media screen and (min-width:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.button{display:inline-block;text-align:center;line-height:1;cursor:pointer;-webkit-appearance:none;transition:all .25s ease-out;vertical-align:middle;border:1px solid transparent;border-radius:0;padding:.85em 1em;margin:0 1rem 1rem 0;font-size:.9rem;background:#2199e8;color:#fff}[data-whatinput=mouse] .button{outline:0}.button:focus,.button:hover{background:#1583cc;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-left:0;margin-right:0}.button.primary{background:#2199e8;color:#fff}.button.primary:focus,.button.primary:hover{background:#147cc0;color:#fff}.button.secondary{background:#777;color:#fff}.button.secondary:focus,.button.secondary:hover{background:#5f5f5f;color:#fff}.button.success{background:#3adb76;color:#fff}.button.success:focus,.button.success:hover{background:#22bb5b;color:#fff}.button.alert{background:#ec5840;color:#fff}.button.alert:focus,.button.alert:hover{background:#da3116;color:#fff}.button.warning{background:#ffae00;color:#fff}.button.warning:focus,.button.warning:hover{background:#cc8b00;color:#fff}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:focus,.button.hollow:hover{background:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.primary{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.secondary{border:1px solid #777;color:#777}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#3c3c3c;color:#3c3c3c}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.alert{border:1px solid #ec5840;color:#ec5840}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#881f0e;color:#881f0e}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed;pointer-events:none}.button.dropdown:after{content:"";display:block;width:0;height:0;border:.4em inset;border-color:#fefefe transparent transparent;border-top-style:solid;position:relative;top:.4em;float:right;margin-left:1em;display:inline-block}.button.arrow-only:after{margin-left:0;float:none;top:.2em}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-family:inherit;font-size:1rem;color:#8a8a8a;background-color:#fefefe;box-shadow:inset 0 1px 2px hsla(0,0%,4%,.1);border-radius:0;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{border:1px solid #8a8a8a;background:#fefefe;outline:none;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:default}[type=button],[type=submit]{border-radius:0;-webkit-appearance:none;-moz-appearance:none}input[type=search]{box-sizing:border-box}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}label>[type=checkbox],label>[type=label]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:400;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#333}.input-group{display:table;width:100%;margin-bottom:1rem}.input-group>:first-child,.input-group>:last-child>*{border-radius:0 0 0 0}.input-group-button,.input-group-field,.input-group-label{display:table-cell;margin:0;vertical-align:middle}.input-group-label{text-align:center;width:1%;height:100%;padding:0 1rem;background:#e6e6e6;color:#0a0a0a;border:1px solid #cacaca}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;height:2.5rem}.input-group-button{height:100%;padding-top:0;padding-bottom:0;text-align:center;width:1%}.input-group-button a,.input-group-button button,.input-group-button input{margin:0}fieldset{border:0;padding:0;margin:0}legend{margin-bottom:.5rem}.fieldset{border:1px solid #cacaca;padding:1.25rem;margin:1.125rem 0}.fieldset legend{background:#fefefe;padding:0 .1875rem;margin:0;margin-left:-.1875rem}select{height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-size:1rem;font-family:inherit;line-height:normal;color:#8a8a8a;background-color:#fafafa;border-radius:0;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb(51, 51, 51)"></polygon></svg>');background-size:9px 6px;background-position:right .5rem center;background-repeat:no-repeat}@media screen and (min-width:0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:disabled{background-color:#e6e6e6;cursor:default}select::-ms-expand{display:none}select[multiple]{height:auto}.is-invalid-input:not(:focus){background-color:rgba(236,88,64,.1);border-color:#ec5840}.form-error,.is-invalid-label{color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.form-error.is-visible{display:block}.hide{display:none!important}.invisible{visibility:hidden}@media screen and (min-width:0em) and (max-width:39.9375em){.hide-for-small-only{display:none!important}}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.show-on-focus:active,.show-on-focus:focus{position:static!important;height:auto;width:auto;overflow:visible;clip:auto}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:landscape){.hide-for-landscape,.show-for-portrait{display:none!important}}@media screen and (orientation:portrait){.hide-for-landscape,.show-for-portrait{display:block!important}}.float-left{float:left!important}.float-right{float:right!important}.float-center{display:block;margin-left:auto;margin-right:auto}.clearfix:after,.clearfix:before{content:" ";display:table}.clearfix:after{clear:both}.accordion{list-style-type:none;background:#fefefe;border:1px solid #e6e6e6;border-radius:0;margin-left:0}.accordion-title{display:block;padding:1.25rem 1rem;line-height:1;font-size:.75rem;color:#2199e8;position:relative;border-bottom:1px solid #e6e6e6}.accordion-title:focus,.accordion-title:hover{background-color:#e6e6e6}:last-child>.accordion-title{border-bottom-width:0}.accordion-title:before{content:"+";position:absolute;right:1rem;top:50%;margin-top:-.5rem}.is-active>.accordion-title:before{content:"–"}.accordion-content{padding:1.25rem 1rem;display:none;border-bottom:1px solid #e6e6e6}.is-accordion-submenu-parent>a{position:relative}.is-accordion-submenu-parent>a:after{content:"";display:block;width:0;height:0;border:6px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;position:absolute;top:50%;margin-top:-4px;right:1rem}.is-accordion-submenu-parent[aria-expanded=true]>a:after{-ms-transform-origin:50% 50%;transform-origin:50% 50%;-ms-transform:scaleY(-1);transform:scaleY(-1)}.badge{display:inline-block;padding:.3em;min-width:2.1em;font-size:.6rem;text-align:center;border-radius:50%;background:#2199e8;color:#fefefe}.badge.secondary{background:#777;color:#fefefe}.badge.success{background:#3adb76;color:#fefefe}.badge.alert{background:#ec5840;color:#fefefe}.badge.warning{background:#ffae00;color:#fefefe}.breadcrumbs{list-style:none;margin:0 0 1rem}.breadcrumbs:after,.breadcrumbs:before{content:" ";display:table}.breadcrumbs:after{clear:both}.breadcrumbs li{float:left;color:#0a0a0a;font-size:.6875rem;cursor:default;text-transform:uppercase}.breadcrumbs li:not(:last-child):after{color:#cacaca;content:"/";margin:0 .75rem;position:relative;top:1px;opacity:1}.breadcrumbs a{color:#2199e8}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .disabled{color:#cacaca}.button-group{margin-bottom:1rem;font-size:.9rem}.button-group:after,.button-group:before{content:" ";display:table}.button-group:after{clear:both}.button-group .button{float:left;margin:0;font-size:inherit}.button-group .button:not(:last-child){border-right:1px solid #fefefe}.button-group.tiny{font-size:.6rem}.button-group.small{font-size:.75rem}.button-group.large{font-size:1.25rem}.button-group.expanded .button:nth-last-child(2):first-child,.button-group.expanded .button:nth-last-child(2):first-child~.button{width:50%}.button-group.expanded .button:nth-last-child(3):first-child,.button-group.expanded .button:nth-last-child(3):first-child~.button{width:33.33333%}.button-group.expanded .button:nth-last-child(4):first-child,.button-group.expanded .button:nth-last-child(4):first-child~.button{width:25%}.button-group.expanded .button:nth-last-child(5):first-child,.button-group.expanded .button:nth-last-child(5):first-child~.button{width:20%}.button-group.expanded .button:nth-last-child(6):first-child,.button-group.expanded .button:nth-last-child(6):first-child~.button{width:16.66667%}.button-group.primary .button{background:#2199e8;color:#fff}.button-group.primary .button:focus,.button-group.primary .button:hover{background:#147cc0;color:#fff}.button-group.secondary .button{background:#777;color:#fff}.button-group.secondary .button:focus,.button-group.secondary .button:hover{background:#5f5f5f;color:#fff}.button-group.success .button{background:#3adb76;color:#fff}.button-group.success .button:focus,.button-group.success .button:hover{background:#22bb5b;color:#fff}.button-group.alert .button{background:#ec5840;color:#fff}.button-group.alert .button:focus,.button-group.alert .button:hover{background:#da3116;color:#fff}.button-group.warning .button{background:#ffae00;color:#fff}.button-group.warning .button:focus,.button-group.warning .button:hover{background:#cc8b00;color:#fff}.button-group.stacked-for-small .button,.button-group.stacked .button{width:100%;border-right:0}@media screen and (min-width:40em){.button-group.stacked-for-small .button{width:auto}.button-group.stacked-for-small .button:not(:last-child){border-right:1px solid #fefefe}}.callout{margin:0 0 1rem;padding:1rem;border:1px solid hsla(0,0%,4%,.25);border-radius:0;position:relative;color:#0a0a0a;background-color:#fff}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#def0fc}.callout.secondary{background-color:#ebebeb}.callout.success{background-color:#e1faea}.callout.alert{background-color:#fce6e2}.callout.warning{background-color:#fff3d9}.callout.small{padding:.5rem}.callout.large{padding:3rem}.close-button{position:absolute;color:#8a8a8a;right:1rem;top:.5rem;font-size:2em;line-height:1;cursor:pointer}[data-whatinput=mouse] .close-button{outline:0}.close-button:focus,.close-button:hover{color:#0a0a0a}.is-drilldown{position:relative;overflow:hidden}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;height:100%;width:100%;background:#fefefe;transition:transform .15s linear}.is-drilldown-submenu.is-active{z-index:1;display:block;-ms-transform:translateX(-100%);transform:translateX(-100%)}.is-drilldown-submenu.is-closing{-ms-transform:translateX(100%);transform:translateX(100%)}.is-drilldown-submenu-parent>a{position:relative}.is-drilldown-submenu-parent>a:after{content:"";display:block;width:0;height:0;border:6px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;position:absolute;top:50%;margin-top:-6px;right:1rem}.js-drilldown-back:before{content:"";display:block;width:0;height:0;border:6px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;float:left;margin-right:.75rem;margin-left:.6rem;margin-top:14px}.dropdown-pane{background-color:#fefefe;border:1px solid #cacaca;display:block;padding:1rem;position:absolute;visibility:hidden;width:300px;z-index:10;border-radius:0}.dropdown-pane.is-open{visibility:visible}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}[data-whatinput=mouse] .dropdown.menu a{outline:0}.dropdown.menu .is-dropdown-submenu-parent{position:relative}.dropdown.menu .is-dropdown-submenu-parent a:after{float:right;margin-top:3px;margin-left:10px}.dropdown.menu .is-dropdown-submenu-parent.is-down-arrow a{padding-right:1.5rem;position:relative}.dropdown.menu .is-dropdown-submenu-parent.is-down-arrow>a:after{content:"";display:block;width:0;height:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;position:absolute;top:.825rem;right:5px}.dropdown.menu .is-dropdown-submenu-parent.is-left-arrow>a:after{content:"";display:block;width:0;height:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;float:left;margin-left:0;margin-right:10px}.dropdown.menu .is-dropdown-submenu-parent.is-right-arrow>a:after{content:"";display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid}.dropdown.menu .is-dropdown-submenu-parent.is-left-arrow.opens-inner .submenu{right:0;left:auto}.dropdown.menu .is-dropdown-submenu-parent.is-right-arrow.opens-inner .submenu{left:0;right:auto}.dropdown.menu .is-dropdown-submenu-parent.opens-inner .submenu{top:100%}.no-js .dropdown.menu ul{display:none}.dropdown.menu .submenu{display:none;position:absolute;top:0;left:100%;min-width:200px;z-index:1;background:#fefefe;border:1px solid #cacaca}.dropdown.menu .submenu>li{width:100%}.dropdown.menu .submenu.first-sub{top:100%;left:0;right:auto}.dropdown.menu .submenu.js-dropdown-active,.dropdown.menu .submenu:not(.js-dropdown-nohover)>.is-dropdown-submenu-parent:hover>.dropdown.menu .submenu{display:block}.dropdown.menu .is-dropdown-submenu-parent.opens-left .submenu{left:auto;right:100%}.dropdown.menu.align-right .submenu.first-sub{top:100%;left:auto;right:0}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-menu.vertical>li .submenu{top:0;left:100%}.flex-video{position:relative;height:0;padding-top:1.5625rem;padding-bottom:75%;margin-bottom:1rem;overflow:hidden}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen{padding-bottom:56.25%}.flex-video.vimeo{padding-top:0}.label{display:inline-block;padding:.33333rem .5rem;font-size:.8rem;line-height:1;white-space:nowrap;cursor:default;border-radius:0;background:#2199e8;color:#fefefe}.label.secondary{background:#777;color:#fefefe}.label.success{background:#3adb76;color:#fefefe}.label.alert{background:#ec5840;color:#fefefe}.label.warning{background:#ffae00;color:#fefefe}.media-object{margin-bottom:1rem;display:block}.media-object img{max-width:none}@media screen and (min-width:0em) and (max-width:39.9375em){.media-object.stack-for-small .media-object-section{display:block;padding:0;padding-bottom:1rem}.media-object.stack-for-small .media-object-section img{width:100%}}.media-object-section{display:table-cell;vertical-align:top}.media-object-section:first-child{padding-right:1rem}.media-object-section:last-child:not(+.media-object-section:first-child){padding-left:1rem}.media-object-section.middle{vertical-align:middle}.media-object-section.bottom{vertical-align:bottom}.menu{margin:0;list-style-type:none}.menu>li{vertical-align:middle}[data-whatinput=mouse] .menu>li{outline:0}.menu>li:not(.menu-text)>a{display:block;padding:.7rem 1rem;line-height:1}.menu a,.menu button,.menu input{margin-bottom:0}.menu>li>a>i,.menu>li>a>img,.menu>li>a>span{vertical-align:middle}.menu>li>a>i,.menu>li>a>img{display:inline-block;margin-right:.25rem}.menu>li{display:table-cell}.menu.vertical>li{display:block}@media screen and (min-width:40em){.menu.medium-horizontal>li{display:table-cell}.menu.medium-vertical>li{display:block}}@media screen and (min-width:64em){.menu.large-horizontal>li{display:table-cell}.menu.large-vertical>li{display:block}}.menu.simple a{padding:0;margin-right:1rem}.menu.align-right>li{float:right}.menu.expanded{display:table;width:100%}.menu.expanded>li:nth-last-child(2):first-child,.menu.expanded>li:nth-last-child(2):first-child~li{width:50%}.menu.expanded>li:nth-last-child(3):first-child,.menu.expanded>li:nth-last-child(3):first-child~li{width:33.33333%}.menu.expanded>li:nth-last-child(4):first-child,.menu.expanded>li:nth-last-child(4):first-child~li{width:25%}.menu.expanded>li:nth-last-child(5):first-child,.menu.expanded>li:nth-last-child(5):first-child~li{width:20%}.menu.expanded>li:nth-last-child(6):first-child,.menu.expanded>li:nth-last-child(6):first-child~li{width:16.66667%}.menu.expanded>li:first-child:last-child{width:100%}.menu.icon-top>li>a{text-align:center}.menu.icon-top>li>a>i,.menu.icon-top>li>a>img{display:block;margin:0 auto .25rem}.menu.nested{margin-left:1rem}.menu-text{font-weight:700;color:inherit;line-height:1;padding-top:0;padding-bottom:0;padding:.7rem 1rem}.no-js [data-responsive-menu] ul{display:none}body,html{height:100%}.off-canvas-wrapper{width:100%;overflow-x:hidden;position:relative;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-overflow-scrolling:auto}.off-canvas-wrapper-inner{position:relative;width:100%;transition:transform .5s ease}.off-canvas-wrapper-inner:after,.off-canvas-wrapper-inner:before{content:" ";display:table}.off-canvas-wrapper-inner:after{clear:both}.off-canvas-content{min-height:100%;background:#fefefe;transition:transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;box-shadow:0 0 10px hsla(0,0%,4%,.5)}.js-off-canvas-exit{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:hsla(0,0%,100%,.25);cursor:pointer;transition:background .5s ease}.is-off-canvas-open .js-off-canvas-exit{display:block}.off-canvas{position:absolute;background:#e6e6e6;z-index:-1;max-height:100%;overflow-y:auto;-ms-transform:translateX(0);transform:translateX(0)}[data-whatinput=mouse] .off-canvas{outline:0}.off-canvas.position-left{left:-250px;top:0;width:250px}.is-open-left{-ms-transform:translateX(250px);transform:translateX(250px)}.off-canvas.position-right{right:-250px;top:0;width:250px}.is-open-right{-ms-transform:translateX(-250px);transform:translateX(-250px)}@media screen and (min-width:40em){.position-left.reveal-for-medium{left:0;z-index:auto;position:fixed}.position-left.reveal-for-medium~.off-canvas-content{margin-left:250px}.position-right.reveal-for-medium{right:0;z-index:auto;position:fixed}.position-right.reveal-for-medium~.off-canvas-content{margin-right:250px}}@media screen and (min-width:64em){.position-left.reveal-for-large{left:0;z-index:auto;position:fixed}.position-left.reveal-for-large~.off-canvas-content{margin-left:250px}.position-right.reveal-for-large{right:0;z-index:auto;position:fixed}.position-right.reveal-for-large~.off-canvas-content{margin-right:250px}}.orbit,.orbit-container{position:relative}.orbit-container{margin:0;overflow:hidden;list-style:none}.orbit-slide{width:100%;max-height:100%}.orbit-slide.no-motionui.is-active{top:0;left:0}.orbit-figure{margin:0}.orbit-image{margin:0;width:100%;max-width:100%}.orbit-caption{bottom:0;width:100%;margin-bottom:0;background-color:hsla(0,0%,4%,.5)}.orbit-caption,.orbit-next,.orbit-previous{position:absolute;padding:1rem;color:#fefefe}.orbit-next,.orbit-previous{top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);z-index:10}[data-whatinput=mouse] .orbit-next,[data-whatinput=mouse] .orbit-previous{outline:0}.orbit-next:active,.orbit-next:focus,.orbit-next:hover,.orbit-previous:active,.orbit-previous:focus,.orbit-previous:hover{background-color:hsla(0,0%,4%,.5)}.orbit-previous{left:0}.orbit-next{left:auto;right:0}.orbit-bullets{position:relative;margin-top:.8rem;margin-bottom:.8rem;text-align:center}[data-whatinput=mouse] .orbit-bullets{outline:0}.orbit-bullets button{width:1.2rem;height:1.2rem;margin:.1rem;background-color:#cacaca;border-radius:50%}.orbit-bullets button.is-active,.orbit-bullets button:hover{background-color:#8a8a8a}.pagination{margin-left:0;margin-bottom:1rem}.pagination:after,.pagination:before{content:" ";display:table}.pagination:after{clear:both}.pagination li{font-size:.875rem;margin-right:.0625rem;display:none;border-radius:0}.pagination li:first-child,.pagination li:last-child{display:inline-block}@media screen and (min-width:40em){.pagination li{display:inline-block}}.pagination a,.pagination button{color:#0a0a0a;display:block;padding:.1875rem .625rem;border-radius:0}.pagination a:hover,.pagination button:hover{background:#e6e6e6}.pagination .current{padding:.1875rem .625rem;background:#2199e8;color:#fefefe;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#cacaca;cursor:default}.pagination .disabled:hover{background:transparent}.pagination .ellipsis:after{content:"…";padding:.1875rem .625rem;color:#0a0a0a}.pagination-previous.disabled:before,.pagination-previous a:before{content:"«";display:inline-block;margin-right:.5rem}.pagination-next.disabled:after,.pagination-next a:after{content:"»";display:inline-block;margin-left:.5rem}.progress{background-color:#cacaca;height:1rem;margin-bottom:1rem;border-radius:0}.progress.primary .progress-meter{background-color:#2199e8}.progress.secondary .progress-meter{background-color:#777}.progress.success .progress-meter{background-color:#3adb76}.progress.alert .progress-meter{background-color:#ec5840}.progress.warning .progress-meter{background-color:#ffae00}.progress-meter{position:relative;display:block;width:0;height:100%;background-color:#2199e8;border-radius:0}.progress-meter .progress-meter-text{position:absolute;top:50%;left:50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);margin:0;font-size:.75rem;font-weight:700;color:#fefefe;white-space:nowrap}.slider{position:relative;height:.5rem;margin-top:1.25rem;margin-bottom:2.25rem;background-color:#e6e6e6;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:none;touch-action:none}.slider-fill{position:absolute;top:0;left:0;display:inline-block;max-width:100%;height:.5rem;background-color:#cacaca;transition:all .2s ease-in-out}.slider-fill.is-dragging{transition:all 0s linear}.slider-handle{top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);position:absolute;left:0;z-index:1;display:inline-block;width:1.4rem;height:1.4rem;background-color:#2199e8;transition:all .2s ease-in-out;-ms-touch-action:manipulation;touch-action:manipulation;border-radius:0}[data-whatinput=mouse] .slider-handle{outline:0}.slider-handle:hover{background-color:#1583cc}.slider-handle.is-dragging{transition:all 0s linear}.slider.disabled,.slider[disabled]{opacity:.25;cursor:not-allowed}.slider.vertical{display:inline-block;width:.5rem;height:12.5rem;margin:0 1.25rem;-ms-transform:scaleY(-1);transform:scaleY(-1)}.slider.vertical .slider-fill{top:0;width:.5rem;max-height:100%}.slider.vertical .slider-handle{position:absolute;top:0;left:50%;width:1.4rem;height:1.4rem;-ms-transform:translateX(-50%);transform:translateX(-50%)}.sticky-container{position:relative}.sticky{position:absolute;z-index:0;transform:translateZ(0)}.sticky.is-stuck{position:fixed;z-index:5}.sticky.is-stuck.is-at-top{top:0}.sticky.is-stuck.is-at-bottom{bottom:0}.sticky.is-anchored{position:absolute;left:auto;right:auto}.sticky.is-anchored.is-at-bottom{bottom:0}body.is-reveal-open{overflow:hidden}.reveal-overlay{display:none;position:fixed;top:0;bottom:0;left:0;right:0;z-index:1005;background-color:hsla(0,0%,4%,.45);overflow-y:scroll}.reveal{display:none;z-index:1006;padding:1rem;border:1px solid #cacaca;margin:100px auto 0;background-color:#fefefe;border-radius:0;position:absolute;overflow-y:auto}[data-whatinput=mouse] .reveal{outline:0}@media screen and (min-width:40em){.reveal{min-height:0}}.reveal .column,.reveal .columns{min-width:0}.reveal>:last-child{margin-bottom:0}@media screen and (min-width:40em){.reveal{width:600px;max-width:62.5rem}}.reveal.collapse{padding:0}@media screen and (min-width:40em){.reveal .reveal{left:auto;right:auto;margin:0 auto}}@media screen and (min-width:40em){.reveal.tiny{width:30%;max-width:62.5rem}}@media screen and (min-width:40em){.reveal.small{width:50%;max-width:62.5rem}}@media screen and (min-width:40em){.reveal.large{width:90%;max-width:62.5rem}}.reveal.full{top:0;left:0;width:100%;height:100%;height:100vh;min-height:100vh;max-width:none;margin-left:0;border:none}.switch{margin-bottom:1rem;outline:0;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#fefefe;font-weight:700;font-size:.875rem}.switch-input{opacity:0;position:absolute}.switch-paddle{background:#cacaca;cursor:pointer;display:block;position:relative;width:4rem;height:2rem;transition:all .25s ease-out;border-radius:0;color:inherit;font-weight:inherit}input+.switch-paddle{margin:0}.switch-paddle:after{background:#fefefe;content:"";display:block;position:absolute;height:1.5rem;left:.25rem;top:.25rem;width:1.5rem;transition:all .25s ease-out;transform:translateZ(0);border-radius:0}input:checked~.switch-paddle{background:#2199e8}input:checked~.switch-paddle:after{left:2.25rem}[data-whatinput=mouse] input:focus~.switch-paddle{outline:0}.switch-active,.switch-inactive{position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.switch-active{left:8%;display:none}input:checked+label>.switch-active{display:block}.switch-inactive{right:15%}input:checked+label>.switch-inactive{display:none}.switch.tiny .switch-paddle{width:3rem;height:1.5rem;font-size:.625rem}.switch.tiny .switch-paddle:after{width:1rem;height:1rem}.switch.tiny input:checked~.switch-paddle:after{left:1.75rem}.switch.small .switch-paddle{width:3.5rem;height:1.75rem;font-size:.75rem}.switch.small .switch-paddle:after{width:1.25rem;height:1.25rem}.switch.small input:checked~.switch-paddle:after{left:2rem}.switch.large .switch-paddle{width:5rem;height:2.5rem;font-size:1rem}.switch.large .switch-paddle:after{width:2rem;height:2rem}.switch.large input:checked~.switch-paddle:after{left:2.75rem}table{margin-bottom:1rem;border-radius:0}tbody,tfoot,thead{border:1px solid #f1f1f1;background-color:#fefefe}caption{font-weight:700;padding:.5rem .625rem .625rem}tfoot,thead{background:#f8f8f8;color:#0a0a0a}tfoot tr,thead tr{background:transparent}tfoot td,tfoot th,thead td,thead th{padding:.5rem .625rem .625rem;font-weight:700;text-align:left}tbody tr:nth-child(2n){background-color:#f1f1f1}tbody td,tbody th{padding:.5rem .625rem .625rem}@media screen and (max-width:63.9375em){table.stack tfoot,table.stack thead{display:none}table.stack td,table.stack th,table.stack tr{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-y:scroll}table.hover tr:hover{background-color:#f9f9f9}table.hover tr:nth-of-type(2n):hover{background-color:#ececec}.tabs{margin:0;list-style-type:none;background:#fefefe;border:1px solid #e6e6e6}.tabs:after,.tabs:before{content:" ";display:table}.tabs:after{clear:both}.tabs.simple>li>a{padding:0}.tabs.simple>li>a:hover{background:transparent}.tabs.vertical>li{width:auto;float:none;display:block}.tabs.primary{background:#2199e8}.tabs.primary>li>a{color:#fefefe}.tabs.primary>li>a:focus,.tabs.primary>li>a:hover{background:#1893e4}.tabs-title{float:left}.tabs-title>a{display:block;padding:1.25rem 1.5rem;line-height:1;font-size:12px;color:#2199e8}.tabs-title>a:hover{background:#fefefe}.tabs-title>a:focus,.tabs-title>a[aria-selected=true]{background:#e6e6e6}.tabs-content{background:#fefefe;transition:all .5s ease;border:1px solid #e6e6e6;border-top:0}.tabs-content.vertical{border:1px solid #e6e6e6;border-left:0}.tabs-panel{display:none;padding:1rem}.tabs-panel.is-active{display:block}.thumbnail{border:4px solid #fefefe;box-shadow:0 0 0 1px hsla(0,0%,4%,.2);display:inline-block;line-height:0;max-width:100%;transition:box-shadow .2s ease-out;border-radius:0;margin-bottom:1rem}.thumbnail:focus,.thumbnail:hover{box-shadow:0 0 6px 1px rgba(33,153,232,.5)}.title-bar{background:#0a0a0a;color:#fefefe;padding:.5rem}.title-bar:after,.title-bar:before{content:" ";display:table}.title-bar:after{clear:both}.title-bar .menu-icon{margin-left:.25rem;margin-right:.5rem}.title-bar-left{float:left}.title-bar-right{float:right;text-align:right}.title-bar-title{font-weight:700}.menu-icon,.title-bar-title{vertical-align:middle;display:inline-block}.menu-icon{position:relative;cursor:pointer;width:20px;height:16px}.menu-icon:after{content:"";position:absolute;display:block;width:100%;height:2px;background:#fefefe;top:0;left:0;box-shadow:0 7px 0 #fefefe,0 14px 0 #fefefe}.menu-icon:hover:after{background:#cacaca;box-shadow:0 7px 0 #cacaca,0 14px 0 #cacaca}.has-tip{border-bottom:1px dotted #8a8a8a;font-weight:700;position:relative;display:inline-block;cursor:help}.tooltip{background-color:#0a0a0a;color:#fefefe;font-size:80%;padding:.75rem;position:absolute;z-index:10;top:calc(100% + .6495rem);max-width:10rem!important;border-radius:0}.tooltip:before{border:.75rem inset;border-color:transparent transparent #0a0a0a;border-bottom-style:solid;bottom:100%;position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.top:before,.tooltip:before{content:"";display:block;width:0;height:0}.tooltip.top:before{border:.75rem inset;border-color:#0a0a0a transparent transparent;border-top-style:solid;top:100%;bottom:auto}.tooltip.left:before{border:.75rem inset;border-color:transparent transparent transparent #0a0a0a;border-left-style:solid;left:100%}.tooltip.left:before,.tooltip.right:before{content:"";display:block;width:0;height:0;bottom:auto;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.right:before{border:.75rem inset;border-color:transparent #0a0a0a transparent transparent;border-right-style:solid;left:auto;right:100%}.top-bar{padding:.5rem}.top-bar:after,.top-bar:before{content:" ";display:table}.top-bar:after{clear:both}.top-bar,.top-bar ul{background-color:#eee}.top-bar a{color:#fff}.top-bar input{width:200px;margin-right:1rem}.top-bar input.button{width:auto}.stacked-for-small .top-bar-left,.stacked-for-small .top-bar-right{width:100%}@media screen and (max-width:63.9375em){.stacked-for-medium .top-bar-left,.stacked-for-medium .top-bar-right{width:100%}}@media screen and (max-width:74.9375em){.stacked-for-large .top-bar-left,.stacked-for-large .top-bar-right{width:100%}}.top-bar-left,.top-bar-right{width:100%}.top-bar-left{float:left}.top-bar-right{float:right} - -/*! - * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(/fonts/fontawesome-webfont.eot?v=4.5.0);src:url(/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0) format("embedded-opentype"),url(/fonts/fontawesome-webfont.woff2?v=4.5.0) format("woff2"),url(/fonts/fontawesome-webfont.woff?v=4.5.0) format("woff"),url(/fonts/fontawesome-webfont.ttf?v=4.5.0) format("truetype"),url(/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{animation:a 2s infinite linear}.fa-pulse{animation:a 1s infinite steps(8)}@keyframes a{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:"ï€"}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:"ï€"}.fa-search-plus:before{content:""}.fa-search-minus:before{content:"ï€"}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:"ï€"}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:"ï€"}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:"ï€"}.fa-map-marker:before{content:"ï"}.fa-adjust:before{content:"ï‚"}.fa-tint:before{content:"ïƒ"}.fa-edit:before,.fa-pencil-square-o:before{content:"ï„"}.fa-share-square-o:before{content:"ï…"}.fa-check-square-o:before{content:"ï†"}.fa-arrows:before{content:"ï‡"}.fa-step-backward:before{content:"ïˆ"}.fa-fast-backward:before{content:"ï‰"}.fa-backward:before{content:"ïŠ"}.fa-play:before{content:"ï‹"}.fa-pause:before{content:"ïŒ"}.fa-stop:before{content:"ï"}.fa-forward:before{content:"ïŽ"}.fa-fast-forward:before{content:"ï"}.fa-step-forward:before{content:"ï‘"}.fa-eject:before{content:"ï’"}.fa-chevron-left:before{content:"ï“"}.fa-chevron-right:before{content:"ï”"}.fa-plus-circle:before{content:"ï•"}.fa-minus-circle:before{content:"ï–"}.fa-times-circle:before{content:"ï—"}.fa-check-circle:before{content:"ï˜"}.fa-question-circle:before{content:"ï™"}.fa-info-circle:before{content:"ïš"}.fa-crosshairs:before{content:"ï›"}.fa-times-circle-o:before{content:"ïœ"}.fa-check-circle-o:before{content:"ï"}.fa-ban:before{content:"ïž"}.fa-arrow-left:before{content:"ï "}.fa-arrow-right:before{content:"ï¡"}.fa-arrow-up:before{content:"ï¢"}.fa-arrow-down:before{content:"ï£"}.fa-mail-forward:before,.fa-share:before{content:"ï¤"}.fa-expand:before{content:"ï¥"}.fa-compress:before{content:"ï¦"}.fa-plus:before{content:"ï§"}.fa-minus:before{content:"ï¨"}.fa-asterisk:before{content:"ï©"}.fa-exclamation-circle:before{content:"ïª"}.fa-gift:before{content:"ï«"}.fa-leaf:before{content:"ï¬"}.fa-fire:before{content:"ï"}.fa-eye:before{content:"ï®"}.fa-eye-slash:before{content:"ï°"}.fa-exclamation-triangle:before,.fa-warning:before{content:"ï±"}.fa-plane:before{content:"ï²"}.fa-calendar:before{content:"ï³"}.fa-random:before{content:"ï´"}.fa-comment:before{content:"ïµ"}.fa-magnet:before{content:"ï¶"}.fa-chevron-up:before{content:"ï·"}.fa-chevron-down:before{content:"ï¸"}.fa-retweet:before{content:"ï¹"}.fa-shopping-cart:before{content:"ïº"}.fa-folder:before{content:"ï»"}.fa-folder-open:before{content:"ï¼"}.fa-arrows-v:before{content:"ï½"}.fa-arrows-h:before{content:"ï¾"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"ï‚€"}.fa-twitter-square:before{content:"ï‚"}.fa-facebook-square:before{content:"ï‚‚"}.fa-camera-retro:before{content:""}.fa-key:before{content:"ï‚„"}.fa-cogs:before,.fa-gears:before{content:"ï‚…"}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:"ï‚Š"}.fa-sign-out:before{content:"ï‚‹"}.fa-linkedin-square:before{content:"ï‚Œ"}.fa-thumb-tack:before{content:"ï‚"}.fa-external-link:before{content:"ï‚Ž"}.fa-sign-in:before{content:"ï‚"}.fa-trophy:before{content:"ï‚‘"}.fa-github-square:before{content:"ï‚’"}.fa-upload:before{content:"ï‚“"}.fa-lemon-o:before{content:"ï‚”"}.fa-phone:before{content:"ï‚•"}.fa-square-o:before{content:"ï‚–"}.fa-bookmark-o:before{content:"ï‚—"}.fa-phone-square:before{content:""}.fa-twitter:before{content:"ï‚™"}.fa-facebook-f:before,.fa-facebook:before{content:"ï‚š"}.fa-github:before{content:"ï‚›"}.fa-unlock:before{content:"ï‚œ"}.fa-credit-card:before{content:"ï‚"}.fa-feed:before,.fa-rss:before{content:"ï‚ž"}.fa-hdd-o:before{content:"ï‚ "}.fa-bullhorn:before{content:"ï‚¡"}.fa-bell:before{content:""}.fa-certificate:before{content:"ï‚£"}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:"ï‚¥"}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:"ï‚©"}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:"ï‚«"}.fa-globe:before{content:""}.fa-wrench:before{content:"ï‚"}.fa-tasks:before{content:"ï‚®"}.fa-filter:before{content:"ï‚°"}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:"ïƒ"}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:"ïƒ"}.fa-table:before{content:""}.fa-magic:before{content:"ïƒ"}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:"ïƒ"}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:"ïƒ "}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:"ïƒ"}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:"ï‚¢"}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:"ï„€"}.fa-angle-double-right:before{content:"ï„"}.fa-angle-double-up:before{content:"ï„‚"}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:"ï„„"}.fa-angle-right:before{content:"ï„…"}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:"ï„Š"}.fa-mobile-phone:before,.fa-mobile:before{content:"ï„‹"}.fa-circle-o:before{content:"ï„Œ"}.fa-quote-left:before{content:"ï„"}.fa-quote-right:before{content:"ï„Ž"}.fa-spinner:before{content:"ï„"}.fa-circle:before{content:"ï„‘"}.fa-mail-reply:before,.fa-reply:before{content:"ï„’"}.fa-github-alt:before{content:"ï„“"}.fa-folder-o:before{content:"ï„”"}.fa-folder-open-o:before{content:"ï„•"}.fa-smile-o:before{content:""}.fa-frown-o:before{content:"ï„™"}.fa-meh-o:before{content:"ï„š"}.fa-gamepad:before{content:"ï„›"}.fa-keyboard-o:before{content:"ï„œ"}.fa-flag-o:before{content:"ï„"}.fa-flag-checkered:before{content:"ï„ž"}.fa-terminal:before{content:"ï„ "}.fa-code:before{content:"ï„¡"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"ï„¢"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"ï„£"}.fa-location-arrow:before{content:""}.fa-crop:before{content:"ï„¥"}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:"ï„©"}.fa-exclamation:before{content:""}.fa-superscript:before{content:"ï„«"}.fa-subscript:before{content:""}.fa-eraser:before{content:"ï„"}.fa-puzzle-piece:before{content:"ï„®"}.fa-microphone:before{content:"ï„°"}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:"ï„´"}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:"ï„·"}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:"ï„»"}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:"ï…€"}.fa-ellipsis-h:before{content:"ï…"}.fa-ellipsis-v:before{content:"ï…‚"}.fa-rss-square:before{content:"ï…ƒ"}.fa-play-circle:before{content:"ï…„"}.fa-ticket:before{content:"ï……"}.fa-minus-square:before{content:"ï…†"}.fa-minus-square-o:before{content:"ï…‡"}.fa-level-up:before{content:"ï…ˆ"}.fa-level-down:before{content:"ï…‰"}.fa-check-square:before{content:"ï…Š"}.fa-pencil-square:before{content:"ï…‹"}.fa-external-link-square:before{content:"ï…Œ"}.fa-share-square:before{content:"ï…"}.fa-compass:before{content:"ï…Ž"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"ï…"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"ï…‘"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"ï…’"}.fa-eur:before,.fa-euro:before{content:"ï…“"}.fa-gbp:before{content:"ï…”"}.fa-dollar:before,.fa-usd:before{content:"ï…•"}.fa-inr:before,.fa-rupee:before{content:"ï…–"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"ï…—"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"ï…˜"}.fa-krw:before,.fa-won:before{content:"ï…™"}.fa-bitcoin:before,.fa-btc:before{content:"ï…š"}.fa-file:before{content:"ï…›"}.fa-file-text:before{content:"ï…œ"}.fa-sort-alpha-asc:before{content:"ï…"}.fa-sort-alpha-desc:before{content:"ï…ž"}.fa-sort-amount-asc:before{content:"ï… "}.fa-sort-amount-desc:before{content:"ï…¡"}.fa-sort-numeric-asc:before{content:"ï…¢"}.fa-sort-numeric-desc:before{content:"ï…£"}.fa-thumbs-up:before{content:"ï…¤"}.fa-thumbs-down:before{content:"ï…¥"}.fa-youtube-square:before{content:"ï…¦"}.fa-youtube:before{content:"ï…§"}.fa-xing:before{content:"ï…¨"}.fa-xing-square:before{content:"ï…©"}.fa-youtube-play:before{content:"ï…ª"}.fa-dropbox:before{content:"ï…«"}.fa-stack-overflow:before{content:"ï…¬"}.fa-instagram:before{content:"ï…"}.fa-flickr:before{content:"ï…®"}.fa-adn:before{content:"ï…°"}.fa-bitbucket:before{content:"ï…±"}.fa-bitbucket-square:before{content:"ï…²"}.fa-tumblr:before{content:"ï…³"}.fa-tumblr-square:before{content:"ï…´"}.fa-long-arrow-down:before{content:"ï…µ"}.fa-long-arrow-up:before{content:"ï…¶"}.fa-long-arrow-left:before{content:"ï…·"}.fa-long-arrow-right:before{content:"ï…¸"}.fa-apple:before{content:"ï…¹"}.fa-windows:before{content:"ï…º"}.fa-android:before{content:"ï…»"}.fa-linux:before{content:"ï…¼"}.fa-dribbble:before{content:"ï…½"}.fa-skype:before{content:"ï…¾"}.fa-foursquare:before{content:""}.fa-trello:before{content:"ï†"}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:"ï†"}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:"ï†"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:"ï†"}.fa-yahoo:before{content:""}.fa-google:before{content:"ï† "}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:"ï†"}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:"ï‡"}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"ï‡"}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before{content:"ï‡"}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:"ï‡"}.fa-sliders:before{content:""}.fa-share-alt:before{content:"ï‡ "}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:"ï‡"}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:"ïˆ"}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:"ïˆ"}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:"ïˆ"}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:"ïˆ"}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:"ïˆ"}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"ï‰"}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:"ï‰"}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:"ï‰"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:"ï‰"}.fa-creative-commons:before{content:""}.fa-gg:before{content:"ï‰ "}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:"ï‰"}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:"ïŠ"}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:"ïŠ"}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:"ïŠ"}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}code{font-size:.8em}code,div.sourceCode{background-color:#fafafa;border:1px solid #eee}div.sourceCode{line-height:1;margin-bottom:.625rem;overflow-x:auto}div.sourceCode pre{padding:.625rem}div.sourceCode code,div.sourceCode pre{border:none;background-color:transparent}div.sourceCode code{padding:0}table.sourceCode{width:100%}table.sourceCode tbody{border:none}table.sourceCode,table.sourceCode pre,td.lineNumbers,td.sourceCode,tr.sourceCode{margin:0;padding:0;border:0;vertical-align:baseline;border:none}td.lineNumbers{border-right:1px solid #aaa;text-align:right;color:#aaa;padding-right:5px;padding-left:5px;line-height:1.14}td.sourceCode{padding-left:.625rem}.sourceCode span.kw{color:#007020;font-weight:700}.sourceCode span.dt{color:#902000}.sourceCode span.bn,.sourceCode span.dv,.sourceCode span.fl{color:#40a070}.sourceCode span.ch,.sourceCode span.st{color:#4070a0}.sourceCode span.co{color:#60a0b0;font-style:italic}.sourceCode span.ot{color:#007020}.sourceCode span.al{color:red;font-weight:700}.sourceCode span.fu{color:#06287e}.sourceCode span.er{color:red;font-weight:700}h1.cardboard{font-family:adelle-sans;font-weight:400;transition:all .3s ease;float:left;font-weight:700;padding:0;line-height:3.75rem}@media screen and (min-width:0em) and (max-width:39.9375em){h1.cardboard{line-height:1.5rem}}h1.cardboard span{transition:all .3s ease;position:relative;color:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone}h1.cardboard span.purple{color:#af517d}h1.cardboard span.yellow{color:#e6bd1a}h1.cardboard span.orange{color:#e87a2f}h1.cardboard span.red{color:#cb3535}h1.cardboard span.cyan{color:#51af9c}h1.cardboard span.green{color:#9caf51}h1.cardboard span.blue{color:#1490b0}a:active h1.cardboard,a:hover h1.cardboard span{color:#0a0a0a}div#header{padding-top:2.8125rem;padding-bottom:1.875rem;border-bottom:2px #cacaca}a#logo{display:inline-block}a#logo div{background-image:url(/images/header_logo_float.png);background-size:contain;background-repeat:no-repeat;width:60px;height:60px;transition:transform .5s ease}a#logo div:hover{-ms-transform:scale(.8) rotate(.5turn);transform:scale(.8) rotate(.5turn)}a#logo div:active{-ms-transform:scale(.75) rotate(270deg);transform:scale(.75) rotate(270deg)}div#logo-text{display:inline-block;height:60px;line-height:60px;margin-left:10px}div#footer{margin-top:1.875rem;margin-bottom:1.875rem}div.info{color:#555;font-size:14px;font-style:italic;margin-bottom:1.25rem}div.post{margin-bottom:3.125rem}div.callout-quote{font-weight:700;font-style:italic;font-size:120%;max-width:25rem;margin:.625rem auto .9375rem}figcaption{font-style:italic;font-size:80%}figcaption:before{content:"fig. "}.wf-loading h1,.wf-loading p{visibility:hidden}.inline-block{display:inline-block}@media screen and (min-width:40em){.masonry{column-count:3;column-gap:.9375rem}.masonry .callout{margin-bottom:.9375rem;display:inline-block;width:100%}.text-left-medium{text-align:left}}@media screen and (min-width:64em){.masonry{column-count:4;column-gap:.9375rem}}figure{text-align:center}.markdown-icon{width:30px;margin-right:5px;vertical-align:sub}.left-icon{margin-right:8px}.sidebar-text{font-size:.8rem} \ No newline at end of file diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 96d780456faf3a541ef98845dbaa4a5421168684..0000000000000000000000000000000000000000 --- a/gulpfile.js +++ /dev/null @@ -1,31 +0,0 @@ -var gulp = require('gulp'); -var postcss = require('gulp-postcss'); -var $ = require('gulp-load-plugins')(); -var autoprefixer = require('autoprefixer'); -var cssnano = require('cssnano'); - -var sassPaths = [ - 'bower_components/foundation-sites/scss', - 'bower_components/motion-ui/src', - 'bower_components/font-awesome/scss', - 'scss', -]; - -gulp.task('sass', function() { - var processors = [ - autoprefixer({browsers: ['last 2 version', 'ie >= 9']}), - cssnano(), - ]; - - return gulp.src('scss/app.scss') - .pipe($.sass({ - includePaths: sassPaths - }) - .on('error', $.sass.logError)) - .pipe(postcss(processors)) - .pipe(gulp.dest('css')); -}); - -gulp.task('default', ['sass'], function() { - gulp.watch(['scss/**/*.scss'], ['sass']); -}); diff --git a/images/posts/2017-redesign.jpg b/images/posts/2017-redesign.jpg new file mode 100644 index 0000000000000000000000000000000000000000..381d97e90deea779bc0582c2720c6d828b33cada Binary files /dev/null and b/images/posts/2017-redesign.jpg differ diff --git a/index.html b/index.html index 9d5a93b11ecf532634add022b50734d6e0cd6ba3..661995028b69aa60230a68961522feb42a79df3c 100644 --- a/index.html +++ b/index.html @@ -2,27 +2,50 @@ title: Blog --- -<div class="row"> - <div class="medium-9 small-12 columns"> - $posts$ - - $partial("templates/pagination.html")$ +<div class="grid-x leaderboard"> + <div + class="cell large-8 small-12 leaderboard-one" + style="background: linear-gradient(to bottom, rgba(0, 0, 0, 0.80), rgba(0, 0, 0, 0.20)), url(/images/posts/2017-redesign.jpg); background-size: cover;" + > + <h1>A new design</h1> + <p>My notes on how I approached redesigning my blog, and embraced the whitespace.</p> </div> - <div class="medium-3 small-12 columns"> + <div class="cell large-4 medium-6 small-12 leaderboard-about"> <h6><i class="fa fa-coffee left-icon"></i>About</h6> <p class="sidebar-text"> <i>Hi! I'm Eduardo Trujillo</i><br/> Nomad, engineer, avid coffee drinker. <a href="/about">Read more</a> </p> + </div> + <div class="cell large-4 medium-6 small-12 leaderboard-two"> + <h2>Trying out Gentoo</h2> + <p>A look into the Linux distro</p> + </div> + + <div class="cell large-4 medium-6 small-12 leaderboard-rss"> <h6><i class="fa fa-rss left-icon"></i>RSS Feed</h6> <p class="sidebar-text"> Like this blog? Have an old school RSS reader? Great! We have you covered: <a href="/feed.rss">Subscribe!</a> </p> + </div> - $partial("templates/twitter.html")$ + <div + class="cell large-4 medium-6 small-12 leaderboard-three" + style="background: linear-gradient(to bottom, rgba(0, 0, 0, 0.80), rgba(0, 0, 0, 0.20)), url(/images/posts/gentoo-screenfetch.png); background-size: cover;" + > + <h2>Trying out Gentoo</h2> + <p>A look into the Linux distro</p> + </div> +</div> + +<div class="grid-x grid-margin-x"> + <div class="small-12 cell"> + $posts$ + + $partial("templates/pagination.html")$ </div> </div> diff --git a/package.json b/package.json deleted file mode 100644 index 2627790f58131d35b23e867e599fa53be8de965e..0000000000000000000000000000000000000000 --- a/package.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": "chromabits", - "version": "1.0.0", - "description": "Personal blog.", - "main": "gulpfile.js", - "devDependencies": { - "autoprefixer": "^6.3.6", - "cssnano": "^3.6.2", - "gulp": "^3.9.0", - "gulp-autoprefixer": "^2.2.0", - "gulp-load-plugins": "^1.1.0", - "gulp-postcss": "^6.1.1", - "gulp-sass": "^2.1.0" - }, - "scripts": { - "start": "gulp", - "build": "gulp sass" - }, - "repository": { - "type": "git", - "url": "https://github.com/zurb/foundation-sites-template.git" - }, - "author": "Eduardo Trujillo <ed@chromabits.com>", - "license": "MIT", - "private": true, - "dependencies": { - "bower": "~1.7.1" - } -} diff --git a/scss/_code.scss b/scss/_code.scss deleted file mode 100644 index f663db97ca74c1d7d0b307baaac1a54a53a86228..0000000000000000000000000000000000000000 --- a/scss/_code.scss +++ /dev/null @@ -1,70 +0,0 @@ -code { - font-size: 0.8em; - background-color: #fafafa; - border: 1px solid #eee; -} - -div.sourceCode { - line-height: 1; - border: 1px solid #eee; - background-color: #fafafa; - margin-bottom: rem-calc(10); - overflow-x: auto; - - pre { - padding: rem-calc(10); - border: none; - background-color: transparent; - } - - code { - border: none; - background-color: transparent; - padding: 0; - } -} - -table.sourceCode { - width: 100%; - - tbody { - border: none; - } -} - -table.sourceCode, -tr.sourceCode, -td.lineNumbers, -td.sourceCode, -table.sourceCode -pre { - margin: 0; - padding: 0; - border: 0; - vertical-align: baseline; - border: none; -} - -td.lineNumbers { - border-right: 1px solid #AAAAAA; - text-align: right; - color: #AAAAAA; - padding-right: 5px; - padding-left: 5px; - line-height: 1.14; -} - -td.sourceCode { padding-left: rem-calc(10); } -.sourceCode span.kw { color: #007020; font-weight: bold; } -.sourceCode span.dt { color: #902000; } -.sourceCode span.dv { color: #40a070; } -.sourceCode span.bn { color: #40a070; } -.sourceCode span.fl { color: #40a070; } -.sourceCode span.ch { color: #4070a0; } -.sourceCode span.st { color: #4070a0; } -.sourceCode span.co { color: #60a0b0; font-style: italic; } -.sourceCode span.ot { color: #007020; } -.sourceCode span.al { color: red; font-weight: bold; } -.sourceCode span.fu { color: #06287e; } -.sourceCode span.re { } -.sourceCode span.er { color: red; font-weight: bold; } diff --git a/scss/_colors.scss b/scss/_colors.scss index a10bae6fba44ed8f57ea29716442bb19b86d313e..7ddc38a4be032598e727b2ba814b5078fa12a4ba 100644 --- a/scss/_colors.scss +++ b/scss/_colors.scss @@ -3,7 +3,7 @@ $color-white: #ffffff; $color-primary: #010101; $color-header: #111; $color-secondary: #444; -$color-subtle: #DDD; +$color-subtle: #ddd; $color-purple: #c8387b; $color-yellow: #ffcc00; diff --git a/scss/_settings.scss b/scss/_settings.scss index 71b9240a6f479e08c4ede15f36682b1c6b27cecc..9d9a92fb43abbe90769031461a2af042a10ea64d 100644 --- a/scss/_settings.scss +++ b/scss/_settings.scss @@ -38,13 +38,13 @@ // 33. Tooltip // 34. Top Bar -@import 'util/util'; +@import "util/util"; // 1. Global // --------- //$global-width: rem-calc(1200); -$global-width: rem-calc(1000); +$global-width: rem-calc(1140); $global-font-size: 16px; $global-lineheight: 1.5; $primary-color: #2199e8; @@ -52,6 +52,13 @@ $secondary-color: #777; $success-color: #3adb76; $warning-color: #ffae00; $alert-color: #ec5840; +$foundation-palette: ( + primary: #2199e8, + secondary: #777, + success: #3adb76, + warning: #ffae00, + alert: #ec5840 +); $light-gray: #e6e6e6; $medium-gray: #cacaca; $dark-gray: #8a8a8a; @@ -59,7 +66,9 @@ $black: #0a0a0a; $white: #fefefe; $body-background: $white; $body-font-color: $black; -$body-font-family: 'adelle-sans', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif; +$body-font-family: "Inter UI", "Helvetica Neue", Helvetica, Roboto, Arial, + sans-serif; +/*$body-font-family: 'adelle-sans', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;*/ $body-antialiased: true; $global-margin: 1rem; $global-padding: 1rem; @@ -77,7 +86,7 @@ $breakpoints: ( medium: 640px, large: 1024px, xlarge: 1200px, - xxlarge: 1440px, + xxlarge: 1440px ); $breakpoint-classes: (small medium large); @@ -95,24 +104,26 @@ $block-grid-max: 6; $header-font-family: $body-font-family; $header-font-weight: $global-weight-bold; $header-font-style: normal; -$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace; -$header-sizes: ( - small: ( - 'h1': 24, - 'h2': 20, - 'h3': 19, - 'h4': 18, - 'h5': 17, - 'h6': 16, - ), - medium: ( - 'h1': 48, - 'h2': 34, - 'h3': 31, - 'h4': 25, - 'h5': 20, - 'h6': 16, - ), +$font-family-monospace: Consolas, "Liberation Mono", Courier, monospace; +$header-styles: ( + small: + ( + "h1": ("font-size": 24), + "h2": ("font-size": 20), + "h3": ("font-size": 19), + "h4": ("font-size": 18), + "h5": ("font-size": 17), + "h6": ("font-size": 16) + ), + medium: + ( + "h1": ("font-size": 48), + "h2": ("font-size": 40), + "h3": ("font-size": 31), + "h4": ("font-size": 25), + "h5": ("font-size": 20), + "h6": ("font-size": 16) + ) ); $header-color: inherit; $header-lineheight: 1.4; @@ -203,7 +214,9 @@ $accordionmenu-arrow-color: $anchor-color; // -------- $badge-background: $primary-color; -$badge-color: foreground($badge-background); +$badge-color: $white; +$badge-color-alt: $black; +$badge-palette: $foundation-palette; $badge-padding: 0.3em; $badge-minwidth: 2.1em; $badge-font-size: 0.6rem; @@ -231,12 +244,7 @@ $button-background-hover: scale-color($button-background, $lightness: -15%); $button-color: #fff; $button-color-alt: #000; $button-radius: $global-radius; -$button-sizes: ( - tiny: 0.6rem, - small: 0.75rem, - default: 0.9rem, - large: 1.25rem, -); +$button-sizes: (tiny: 0.6rem, small: 0.75rem, default: 0.9rem, large: 1.25rem); $button-opacity-disabled: 0.25; // 12. Button Group @@ -244,7 +252,7 @@ $button-opacity-disabled: 0.25; $buttongroup-margin: 1rem; $buttongroup-spacing: 1px; -$buttongroup-child-selector: '.button'; +$buttongroup-child-selector: ".button"; $buttongroup-expand-max: 6; // 13. Callout @@ -286,11 +294,7 @@ $dropdown-border: 1px solid $medium-gray; $dropdown-font-size: 16rem; $dropdown-width: 300px; $dropdown-radius: $global-radius; -$dropdown-sizes: ( - tiny: 100px, - small: 200px, - large: 400px, -); +$dropdown-sizes: (tiny: 100px, small: 200px, large: 400px); // 17. Dropdown Menu // ----------------- @@ -350,7 +354,9 @@ $input-radius: $global-radius; // --------- $label-background: $primary-color; -$label-color: foreground($label-background); +$label-color: $white; +$label-color-alt: $white; +$label-palette: $foundation-palette; $label-font-size: 0.8rem; $label-padding: 0.33333rem 0.5rem; $label-radius: $global-radius; @@ -374,15 +380,21 @@ $menu-expand-max: 6; // 23. Off-canvas // -------------- -$offcanvas-size: 250px; +$offcanvas-sizes: (small: 250px); +$offcanvas-vertical-sizes: (small: 250px); $offcanvas-background: $light-gray; -$offcanvas-zindex: -1; +$offcanvas-shadow: 0 0 10px rgba($black, 0.7); +$offcanvas-inner-shadow-size: 20px; +$offcanvas-inner-shadow-color: rgba($black, 0.25); +$offcanvas-overlay-zindex: 11; +$offcanvas-push-zindex: 12; +$offcanvas-overlap-zindex: 13; +$offcanvas-reveal-zindex: 12; $offcanvas-transition-length: 0.5s; $offcanvas-transition-timing: ease; $offcanvas-fixed-reveal: true; $offcanvas-exit-background: rgba($white, 0.25); -$maincontent-class: 'off-canvas-content'; -$maincontent-shadow: 0 0 10px rgba($black, 0.5); +$maincontent-class: "off-canvas-content"; // 24. Orbit // --------- @@ -477,7 +489,10 @@ $table-border: 1px solid smart-scale($table-background, $table-color-scale); $table-padding: rem-calc(8 10 10); $table-hover-scale: 2%; $table-row-hover: darken($table-background, $table-hover-scale); -$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale); +$table-row-stripe-hover: darken( + $table-background, + $table-color-scale + $table-hover-scale +); $table-striped-background: smart-scale($table-background, $table-color-scale); $table-stripe: even; $table-head-background: smart-scale($table-background, $table-color-scale / 2); diff --git a/scss/app.scss b/scss/app.scss index 21dd2fa0a2769417cf07b7f7f748b63feb78fbed..84c68fe19903fa04c25797a6dceb3675c70a2b13 100644 --- a/scss/app.scss +++ b/scss/app.scss @@ -1,86 +1,84 @@ -@import 'settings'; +@import url("https://rsms.me/inter/inter-ui.css"); + +@import "settings"; $global-flexbox: true; // Foundation -@import 'foundation'; - -@include foundation-global-styles; -//@include foundation-flex-classes; -@include foundation-flex-grid; -@include foundation-typography; -@include foundation-button; -@include foundation-forms; -@include foundation-visibility-classes; -@include foundation-float-classes; -@include foundation-accordion; -@include foundation-accordion-menu; +@import "foundation"; + +// @include foundation-accordion-menu; +// @include foundation-accordion; +// @include foundation-flex-video; +// @include foundation-off-canvas; +// @include foundation-orbit; +// @include foundation-progress-bar; +// @include foundation-reveal; +// @include foundation-slider; +// @include foundation-sticky; +// @include foundation-switch; +// @include foundation-tabs; +// @include foundation-title-bar; +// @include foundation-tooltip; +// @include foundation-top-bar; @include foundation-badge; @include foundation-breadcrumbs; @include foundation-button-group; +@include foundation-button; @include foundation-callout; @include foundation-close-button; @include foundation-drilldown-menu; -@include foundation-dropdown; @include foundation-dropdown-menu; -@include foundation-flex-video; +@include foundation-dropdown; +@include foundation-flex-classes; +@include foundation-flex-grid; +@include foundation-forms; +@include foundation-global-styles; @include foundation-label; @include foundation-media-object; @include foundation-menu; -@include foundation-off-canvas; -@include foundation-orbit; @include foundation-pagination; -@include foundation-progress-bar; -@include foundation-slider; -@include foundation-sticky; -@include foundation-reveal; -@include foundation-switch; @include foundation-table; -@include foundation-tabs; @include foundation-thumbnail; -@include foundation-title-bar; -@include foundation-tooltip; -@include foundation-top-bar; +@include foundation-typography; +@include foundation-visibility-classes; + +@include foundation-xy-grid-classes; $fa-font-path: "/fonts"; @import "font-awesome"; -@import "code"; @import "colors"; -@import "headers"; -div#header { - padding-top: rem-calc(45); - padding-bottom: rem-calc(30); - border-bottom: 2px $medium-gray; +@import "components/leaderboard"; +@import "components/menu"; +@import "components/logo"; +@import "components/leader"; +@import "layout/footer"; +@import "layout/masonry"; +@import "typography/code"; +@import "typography/headers"; + +html { + height: 100%; + display: flex; + flex-direction: column; } -a#logo { - display: inline-block; +body { + flex-grow: 1; + display: flex; + flex-direction: column; +} - div { - background-image: url('/images/header_logo_float.png'); - background-size: contain; - background-repeat: no-repeat; - width: 60px; - height: 60px; - transition: transform 0.5s ease; - - &:hover { - transform: scale(0.8) rotate(0.5turn); - } - - &:active { - transform: scale(0.75) rotate(0.75turn); - } - } +.content-body { + flex-grow: 1; } -div#logo-text { - display: inline-block; - height: 60px; - line-height: 60px; - margin-left: 10px; +div#header { + padding-top: rem-calc(45); + padding-bottom: rem-calc(30); + border-bottom: 2px $medium-gray; } div#footer { @@ -89,10 +87,9 @@ div#footer { } div.info { - color: #555; - font-size: 14px; - font-style: italic; - margin-bottom: rem-calc(20); + color: #555; + font-size: 14px; + font-style: italic; } div.post { @@ -113,15 +110,19 @@ div.callout-quote { } figcaption { - font-style: italic; - font-size: 80%; + text-align: left; + text-transform: uppercase; + margin-top: 1rem; + font-style: normal; + color: #666; &::before { - content: 'fig. ' + content: "fig. "; } } -.wf-loading h1, .wf-loading p { +.wf-loading h1, +.wf-loading p { visibility: hidden; } @@ -129,32 +130,9 @@ figcaption { display: inline-block; } -@include breakpoint(medium) { - .masonry { - column-count: 3; - column-gap: rem-calc(15); - - .callout { - margin-bottom: rem-calc(15); - display: inline-block; - width: 100%; - } - } - - .text-left-medium { - text-align: left; - } -} - -@include breakpoint(large) { - .masonry { - column-count: 4; - column-gap: rem-calc(15); - } -} - figure { - text-align: center; + text-align: center; + margin-bottom: 1.5rem; } .markdown-icon { @@ -170,3 +148,4 @@ figure { .sidebar-text { font-size: 0.8rem; } + diff --git a/scss/components/_leader.scss b/scss/components/_leader.scss new file mode 100644 index 0000000000000000000000000000000000000000..0c045011fc2e88d47794bca7a2e5e56845126646 --- /dev/null +++ b/scss/components/_leader.scss @@ -0,0 +1,13 @@ +.leader { + text-align: center; + margin-bottom: 3rem; + + .leader-title { + font-weight: bold; + font-size: 5rem; + } + + .leader-subtitle { + color: $color-secondary; + } +} diff --git a/scss/components/_leaderboard.scss b/scss/components/_leaderboard.scss new file mode 100644 index 0000000000000000000000000000000000000000..07dcf781ae3c4a11bea81ba0c914a83c49632f20 --- /dev/null +++ b/scss/components/_leaderboard.scss @@ -0,0 +1,41 @@ +.leaderboard { + margin-bottom: 2rem; +} + +.leaderboard > .cell { + padding: 1rem; + + &.leaderboard-about { + background-color: $color-cyan; + } + + &.leaderboard-rss { + background-color: $color-orange; + } + + &.leaderboard-one, + &.leaderboard-three { + background-size: cover; + } + + &.leaderboard-two { + background-color: $color-yellow; + } + + &.leaderboard-one { + height: 300px; + } + + &.leaderboard-two, + &.leaderboard-three, + &.leaderboard-rss { + height: 200px; + } + + &.leaderboard-one, + &.leaderboard-two, + &.leaderboard-three, + &.leaderboard-rss { + color: #fff; + } +} diff --git a/scss/components/_logo.scss b/scss/components/_logo.scss new file mode 100644 index 0000000000000000000000000000000000000000..e6c08fdd1390fe4aefcb0c52495b52ae070623a7 --- /dev/null +++ b/scss/components/_logo.scss @@ -0,0 +1,27 @@ +a#logo { + /*display: inline-block;*/ + + div { + background-image: url("/images/header_logo_float.png"); + background-size: contain; + background-repeat: no-repeat; + width: 60px; + height: 60px; + transition: transform 0.5s ease; + + &:hover { + transform: scale(0.8) rotate(0.5turn); + } + + &:active { + transform: scale(0.75) rotate(0.75turn); + } + } +} + +div#logo-text { + display: inline-block; + height: 60px; + line-height: 60px; + margin-left: 10px; +} diff --git a/scss/components/_menu.scss b/scss/components/_menu.scss new file mode 100644 index 0000000000000000000000000000000000000000..34ab9995e0a581e126281d7338a5c9cad25a17c9 --- /dev/null +++ b/scss/components/_menu.scss @@ -0,0 +1,9 @@ +.menu a { + color: #bbb; + text-transform: uppercase; + font-size: 0.9rem; +} + +.menu.align-right > li:last-of-type > a { + padding-right: 0; +} diff --git a/scss/layout/_masonry.scss b/scss/layout/_masonry.scss new file mode 100644 index 0000000000000000000000000000000000000000..9ad503ee9dba232cccabf1600c34be68e6dbb4a7 --- /dev/null +++ b/scss/layout/_masonry.scss @@ -0,0 +1,23 @@ +@include breakpoint(medium) { + .masonry { + column-count: 3; + column-gap: rem-calc(15); + + .callout { + margin-bottom: rem-calc(15); + display: inline-block; + width: 100%; + } + } + + .text-left-medium { + text-align: left; + } +} + +@include breakpoint(large) { + .masonry { + column-count: 4; + column-gap: rem-calc(15); + } +} diff --git a/scss/layout/footer.scss b/scss/layout/footer.scss new file mode 100644 index 0000000000000000000000000000000000000000..3aec78c49903b07711e3303c844002563a8190b9 --- /dev/null +++ b/scss/layout/footer.scss @@ -0,0 +1,7 @@ +.footer { + margin-top: 2rem; + padding: 2rem 0; + background-color: #eee; + border-top: 1px solid rgba(10, 10, 10, 0.25); + color: #888; +} diff --git a/scss/typography/_code.scss b/scss/typography/_code.scss new file mode 100644 index 0000000000000000000000000000000000000000..70500189a8d661db99584b29883a285042ad2521 --- /dev/null +++ b/scss/typography/_code.scss @@ -0,0 +1,100 @@ +code { + font-size: 0.8em; + background-color: #fafafa; + border: 1px solid #eee; +} + +div.sourceCode { + line-height: 1; + border: 1px solid #eee; + background-color: #fafafa; + margin: 1.5rem 0; + overflow-x: auto; + + pre { + padding: rem-calc(10); + border: none; + background-color: transparent; + } + + code { + border: none; + background-color: transparent; + padding: 0; + } +} + +table.sourceCode { + width: 100%; + + tbody { + border: none; + } +} + +table.sourceCode, +tr.sourceCode, +td.lineNumbers, +td.sourceCode, +table.sourceCode pre { + margin: 0; + padding: 0; + border: 0; + vertical-align: baseline; + border: none; +} + +td.lineNumbers { + border-right: 1px solid #aaaaaa; + text-align: right; + color: #aaaaaa; + padding-right: 5px; + padding-left: 5px; + line-height: 1.14; +} + +td.sourceCode { + padding-left: rem-calc(10); +} +.sourceCode span.kw { + color: #007020; + font-weight: bold; +} +.sourceCode span.dt { + color: #902000; +} +.sourceCode span.dv { + color: #40a070; +} +.sourceCode span.bn { + color: #40a070; +} +.sourceCode span.fl { + color: #40a070; +} +.sourceCode span.ch { + color: #4070a0; +} +.sourceCode span.st { + color: #4070a0; +} +.sourceCode span.co { + color: #60a0b0; + font-style: italic; +} +.sourceCode span.ot { + color: #007020; +} +.sourceCode span.al { + color: red; + font-weight: bold; +} +.sourceCode span.fu { + color: #06287e; +} +.sourceCode span.re { +} +.sourceCode span.er { + color: red; + font-weight: bold; +} diff --git a/scss/_headers.scss b/scss/typography/_headers.scss similarity index 94% rename from scss/_headers.scss rename to scss/typography/_headers.scss index 4450108ddc5984d69a188eda95f84cf4edfc5e10..8fb9c0be89a09da496a5ee7898310b78b27d2aa9 100644 --- a/scss/_headers.scss +++ b/scss/typography/_headers.scss @@ -1,8 +1,8 @@ -@import "colors"; +@import "../colors"; h1 { &.cardboard { - font-family: 'adelle-sans'; + font-family: "adelle-sans"; font-weight: 400; transition: all 0.3s ease; float: left; diff --git a/stack.yaml b/stack.yaml index e2b255ecb6eb0f8296ad310b470431739ac16afa..64608837963d1cd7224bd2c94ea120ee526532e7 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,15 +1,20 @@ # For more information, see: https://github.com/commercialhaskell/stack/blob/release/doc/yaml_configuration.md # Specifies the GHC version and set of packages available (e.g., lts-3.5, nightly-2015-09-21, ghc-7.10.2) -resolver: lts-6.7 +resolver: lts-9.11 # Local packages, usually specified by relative directory name packages: - '.' +- location: + git: https://phabricator.chromabits.com/source/kawaii.git + commit: 96cf2f5906cefeb51673d0d7aa2b05f603a19ddb + extra-dep: true # Packages to be pulled from upstream that are not in the resolver (e.g., acme-missiles-0.3) extra-deps: -- kawaii-0.0.1.0 +- kawaii-0.0.2.0 +- hsass-0.5.0 # Override default flag values for local packages and extra-deps flags: {} diff --git a/templates/archive.html b/templates/archive.html index 9c7be6532f3f0e32927700db0aa55ab7dd4ae02f..211814ce18f9a611eca1a76adfca3436403cc5fa 100644 --- a/templates/archive.html +++ b/templates/archive.html @@ -1,7 +1,9 @@ -<div class="row"><div class="column"> - <h1 class="cardboard cyan">Archive</h1> -</div></div> +<div class="leader"> + <div class="leader-title">Archive</div> -<p>Here you can find all my previous posts:</p> + <div class="leader-subtitle"> + Every post I've published on this blog: + </div> +</div> $partial("templates/post-list.html")$ diff --git a/templates/default.html b/templates/default.html index 674a85e7ca71842c7f8356c35ef20a6b1dadd806..f91157c8a282317b3f25b18a45406fc542d5a59e 100644 --- a/templates/default.html +++ b/templates/default.html @@ -28,45 +28,95 @@ }(document, 'script', 'facebook-jssdk')); </script> - <div id="header" class="row align-middle"> - <div class="medium-6 small-12 columns text-center text-left-medium"> - <div class="show-for-medium"> - <div class="float-left"><a href="/" id="logo"><div></div></a></div> - <div id="logo-text"><b>CHROMABITS</b></div> - </div> + <div> + <div class="grid-container"> + <div id="header" class="grid-x grid-margin-x align-middle"> + <div class="medium-6 small-12 cell text-center text-left-medium"> + <div class="grid-x show-for-medium"> + <div><a href="/" id="logo"><div></div></a></div> + <div id="logo-text"><b>CHROMABITS</b></div> + </div> - <div class="show-for-small-only"> - <div><a href="/" id="logo"><div></div></a></div> + <div class="show-for-small-only"> + <div><a href="/" id="logo"><div></div></a></div> + </div> </div> - </div> - <div class="medium-6 small-12 columns text-center text-left-medium"> - <ul class="menu align-right show-for-medium"> - <li><a href="/archive">Archive</a></li> - <li><a href="/projects">Projects</a></li> - <li><a href="/about">About</a></li> - <li><a href="/">Home</a></li> - </ul> - <ul class="menu inline-block show-for-small-only"> - <li><a href="/archive">Archive</a></li> - <li><a href="/projects">Projects</a></li> - <li><a href="/about">About</a></li> - </ul> + <div class="medium-6 small-12 cell text-center text-left-medium"> + <ul class="menu align-right show-for-medium"> + <li><a href="/">Home</a></li> + <li><a href="/about">About</a></li> + <li><a href="/projects">Projects</a></li> + <li><a href="/archive">Archive</a></li> + </ul> + <ul class="menu inline-block show-for-small-only"> + <li><a href="/about">About</a></li> + <li><a href="/projects">Projects</a></li> + <li><a href="/archive">Archive</a></li> + </ul> + </div> </div> </div> + </div> - <div class="row"> - <div class="small-12 columns"> - $body$ + <div class="content-body"> + <div class="grid-container"> + <div class="grid-x"> + <div class="small-12 cell"> + $body$ + </div> + </div> </div> </div> - <div id="footer" class="row"> - <div class="column text-right"> - <small> - Site proudly generated by - <a href="http://jaspervdj.be/hakyll">Hakyll</a> - </small> + <div class="footer"> + <div class="grid-container"> + <div class="grid-x grid-margin-x"> + <div class="cell medium-6"> + <div><b>CHROMABITS</b></div> + <div> + <small>Copyright © 2015-2017 - Eduardo Trujillo</small> + </div> + <small> + Except where otherwise noted, content on this site is licensed + under a Attribution-NonCommercial-ShareAlike 4.0 International + (CC BY-NC-SA 4.0) license. + </small> + </div> + <div class="cell medium-2"> + <ul class="menu vertical"> + <li><a href="/">HOME</a></li> + <li><a href="/about">ABOUT</a></li> + <li><a href="/projects">PROJECTS</a></li> + <li><a href="/archive">ARCHIVE</a></li> + </ul> + </div> + <div class="cell medium-2"> + <ul class="menu"> + <li> + <a href="https://fb.com/etcinit"> + <i class="fa fa-facebook-official"></i> + </a> + </li> + <li> + <a href="https://twitter.com/etcinit"> + <i class="fa fa-twitter"></i> + </a> + </li> + <li> + <a href="https://www.linkedin.com/in/etrujillo"> + <i class="fa fa-linkedin"></i> + </a> + </li> + </ul> + </div> + <div class="cell auto text-right"> + <small> + Site proudly generated using + <a href="http://jaspervdj.be/hakyll">Hakyll</a> + </small> + </div> + </div> </div> </div> @@ -76,15 +126,5 @@ <script async type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> </script> - - <script> - (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ - (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), - m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) - })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); - - ga('create', 'UA-47694260-1', 'auto'); - ga('send', 'pageview'); - </script> </body> </html> diff --git a/templates/disqus.html b/templates/disqus.html index eb504ff589be2964ca0f8b3afc6fab080db90cd8..f483ab2710b868d0f2dafa45da65717c00ffd8c8 100644 --- a/templates/disqus.html +++ b/templates/disqus.html @@ -1,9 +1,3 @@ -<div class="fb-like" - data-href="https://chromabits.com$url$" - data-layout="button_count" data-action="like" - data-share="true"> -</div> - <div class="fb-comments" data-href="https://chromabits.com$url$" data-width="100%" diff --git a/templates/full-post.html b/templates/full-post.html index 6cae1c56c59ca8bc1ddcf3575c7cd26f8e6dc0d9..ee202df5e8fe590df84149f0b1b5a2b5e67dfe0a 100644 --- a/templates/full-post.html +++ b/templates/full-post.html @@ -1,13 +1,24 @@ -<div class="row align-center"> - <div class="large-10 small-12 columns"> - $body$ +$body$ - <div class="callout"> - <img src="/images/markdown-mark.svg" class="markdown-icon"/> - This post is also available in Markdown: - <a href="/$identifier$">View source</a> - </div> +<hr/> +<div class="grid-x grid-margin-x"> + <div class="cell medium-2"> + <div class="info">Alternative Formats</div> + </div> + + <div class="cell medium-8"> + <img src="/images/markdown-mark.svg" class="markdown-icon"/> + This post is also available in Markdown: + <a href="/$identifier$">View source</a> + </div> +</div> + +<hr/> + +<div class="grid-x grid-margin-x"> + <div class="cell medium-2"></div> + <div class="cell medium-8"> $partial("templates/disqus.html")$ </div> </div> diff --git a/templates/pagination.html b/templates/pagination.html index 257e2b2a410ca21549674a8670a2d7d45bda557f..33cac9e0b69e57767ae27729aff1a42c51ddbac4 100644 --- a/templates/pagination.html +++ b/templates/pagination.html @@ -1,5 +1,5 @@ -<div class="row"> - <div class="columns text-center"> +<div class="grid-x"> + <div class="cell text-center"> <ul class="pagination" role="navigation" aria-label="Pagination"> $if(previousPageNum)$ <li class="pagination-previous"> diff --git a/templates/post.html b/templates/post.html index 9fda2b86f29df655fe3dfaab51c74aeffca7974c..b141e3bdca8bcab5381921478f3cde0ba4abaf06 100644 --- a/templates/post.html +++ b/templates/post.html @@ -1,6 +1,7 @@ <div class="post"> - <div class="row"> - <div class="columns"> + <div class="grid-x"> + <div class="medium-2 hide-on-small cell"></div> + <div class="medium-8 small-12 cell"> <a href="$url$"> <h1 class="cardboard"> <span class="$color$">$title$</span> @@ -9,12 +10,19 @@ </div> </div> - <div class="info"> - <time datetime="$datetime$" pubdate data-updated="true">$date$</time> - $if(author)$ - by $author$ - $endif$ - </div> + <hr/> + + <div class="grid-x grid-margin-x"> + <div class="medium-2 cell"> + <div class="info"> + $if(author)$ + <div><b>$author$</b></div> + $endif$ - $body$ + <time datetime="$datetime$" pubdate data-updated="true">$date$</time> + </div> + </div> + + <div class="medium-8 cell">$body$</div> + </div> </div> diff --git a/templates/project-teaser.html b/templates/project-teaser.html index 1dd956511e38ffcb1ee451ebba23d1a090e1039d..a839ac998d93fd2f39b0f5b7ccbf8d01d8e6896f 100644 --- a/templates/project-teaser.html +++ b/templates/project-teaser.html @@ -1,9 +1,9 @@ -<div class="row"> - <div class="medium-8 columns"> - <a href="$url$" class="float-left"><h5>$title$</h5></a> +<div class="grid-x"> + <div class="auto cell"> + <a href="$url$"><h5>$title$</h5></a> </div> - <div class="medium-4 columns"> - <div class="float-right"> + <div class="medium-4 cell"> + <div class="grid-x align-right"> <span class="success label">$platform$</span> </div> </div> @@ -11,8 +11,8 @@ $body$ -<div class="row"> - <div class="columns"> +<div class="grid-x"> + <div class="cell"> $if(github)$ <a href="https://github.com/$github$"> <i class="fa fa-github"></i> diff --git a/templates/project.html b/templates/project.html index f4274348a4dfecab7bb7114a5e948add762de6aa..ce25edbce6e37a9aa8e0014258484d2fa58f1120 100644 --- a/templates/project.html +++ b/templates/project.html @@ -1,53 +1,8 @@ -<div class="row align-center"> - <div class="large-10 small-12 columns"> - <div class="row"> - <div class="medium-8 columns"> - <h2>$title$</h2> +<div class="grid-x align-center"> + <div class="large-10 cell"> + <h2>$title$</h2> - <p><span class="success label">$platform$</span></p> - </div> - - <div class="medium-4 columns text-right"> - <ul class="menu vertical"> - $if(github)$ - <li><a href="https://github.com/$github$"> - <i class="fa fa-github"></i> - View on GitHub - </a></li> - $endif$ - $if(docs)$ - <li><a href="$docs$"> - <i class="fa fa-book"></i> - Documentation - </a></li> - $endif$ - $if(sourcegraph)$ - <li><a href="$sourcegraph$"> - <i class="fa fa-asterisk"></i> - Sourcegraph - </a></li> - $endif$ - $if(post)$ - <li><a href="$post$"> - <i class="fa fa-file-text-o"></i> - Read blog post - </a></li> - $endif$ - $if(dockerhub)$ - <li><a href="https://hub.docker.com/$dockerhub$"> - <i class="fa fa-ship"></i> - DockerHub - </a></li> - $endif$ - $if(quay)$ - <li><a href="https://quay.io/$quay$"> - <i class="fa fa-ship"></i> - Quay.io - </a></li> - $endif$ - <ul/> - </div> - </div> + <p><span class="success label">$platform$</span></p> $if(abandoned)$ <div class="callout alert"> @@ -61,11 +16,66 @@ </p> </div> $endif$ + </div> +</div> + +<hr/> - <hr> +<div class="grid-x grid-margin-x"> + <div class="cell large-1"></div> + <div class="cell large-8 medium-9"> $body$ + </div> + + <div class="cell large-3 medium-3"> + <ul class="menu vertical"> + $if(github)$ + <li><a href="https://github.com/$github$"> + <i class="fa fa-github"></i> + GitHub + </a></li> + $endif$ + $if(docs)$ + <li><a href="$docs$"> + <i class="fa fa-book"></i> + Documentation + </a></li> + $endif$ + $if(sourcegraph)$ + <li><a href="$sourcegraph$"> + <i class="fa fa-asterisk"></i> + Sourcegraph + </a></li> + $endif$ + $if(post)$ + <li><a href="$post$"> + <i class="fa fa-file-text-o"></i> + Read blog post + </a></li> + $endif$ + $if(dockerhub)$ + <li><a href="https://hub.docker.com/$dockerhub$"> + <i class="fa fa-ship"></i> + DockerHub + </a></li> + $endif$ + $if(quay)$ + <li><a href="https://quay.io/$quay$"> + <i class="fa fa-ship"></i> + Quay.io + </a></li> + $endif$ + <ul/> + </div> +</div> + +<hr/> + +<div class="grid-x grid-margin-x"> + <div class="cell large-1"></div> + <div class="cell large-8 medium-9"> $partial("templates/disqus.html")$ </div> </div> diff --git a/templates/projects.html b/templates/projects.html index 022c741ede8b2ecc65502a67fc2a8caa85b3dff6..28f28c85ca8ea99dbac7550b63c4503c9945263a 100644 --- a/templates/projects.html +++ b/templates/projects.html @@ -1,36 +1,44 @@ -<div class="row"><div class="column"> - <h1 class="cardboard purple">Projects</h1> -</div></div> +<div class="leader"> + <div class="leader-title"> + Projects + </div> -<p>Some things I've been working on:</p> + <div class="leader-subtitle"> + Some things I've been working on: + </div> +</div> -<div class="masonry"> - $for(posts)$ - <div class="small-12"> - <div class="callout"> - $body$ +<div class="grid-x"> + <div class="cell"> + <div class="masonry"> + $for(posts)$ + <div class="small-12"> + <div class="callout"> + $body$ + </div> </div> - </div> - $endfor$ + $endfor$ + </div> + </div> </div> -<h3>More Open-Source Projects</h3> -<p> - You can find more projects (some of them Open Source) on my personal - Phabricator intance, GitHub and Bitbucket. Feel free to clone them and hack - stuff: -</p> +<div class="grid-x"> + <div class="cell"> + <h3>But wait, there's more!</h3> + <p> + You can find more projects (some of them Open Source) on my personal + Phabricator intance, GitHub and Bitbucket. Feel free to clone them and + hack stuff: + </p> -<div class="button-group"> - <a class="button" href="http://phabricator.chromabits.com"> - <i class="fa fa-cog"></i> - Phabricator - </a> - <a class="button" href="https://github.com/etcinit"> - <i class="fa fa-github"></i> - GitHub</a> - <a class="button" href="https://bitbucket.org/etcinit"> - <i class="fa fa-bitbucket"></i> - Bitbucket - </a> + <div class="button-group"> + <a class="button" href="http://phabricator.chromabits.com"> + <i class="fa fa-cog"></i> + Phabricator + </a> + <a class="button" href="https://github.com/etcinit"> + <i class="fa fa-github"></i> + GitHub</a> + </div> + </div> </div> diff --git a/third_party/font-awesome b/third_party/font-awesome new file mode 160000 index 0000000000000000000000000000000000000000..a8386aae19e200ddb0f6845b5feeee5eb7013687 --- /dev/null +++ b/third_party/font-awesome @@ -0,0 +1 @@ +Subproject commit a8386aae19e200ddb0f6845b5feeee5eb7013687 diff --git a/third_party/foundation-sites b/third_party/foundation-sites new file mode 160000 index 0000000000000000000000000000000000000000..4e21634356da296edd2f1c3e65d91140f991008b --- /dev/null +++ b/third_party/foundation-sites @@ -0,0 +1 @@ +Subproject commit 4e21634356da296edd2f1c3e65d91140f991008b diff --git a/third_party/motion-ui b/third_party/motion-ui new file mode 160000 index 0000000000000000000000000000000000000000..7f1591d629501f6ec2af3e29368299776ac87e60 --- /dev/null +++ b/third_party/motion-ui @@ -0,0 +1 @@ +Subproject commit 7f1591d629501f6ec2af3e29368299776ac87e60