diff --git a/404.html b/404.html
index 1590ef2..a2d250a 100644
--- a/404.html
+++ b/404.html
@@ -1,6 +1,11 @@
---
-title: Not Found
-description: This does not exist
-permalink: /404.html
-sitemap: false
+layout: default
+title: 404
+permalink: /404
+nav_exclude: true
+search_exclude: true
---
+
+
Page not found
+
+
The page you requested could not be found. Try using the navigation {% if site.search_enabled != false %}or search {% endif %}to find what you're looking for or go to this site's home page.
diff --git a/Gemfile b/Gemfile
index a401836..aef0d56 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,11 +1,6 @@
-source 'https://rubygems.org'
+source "https://rubygems.org"
+gemspec
-gem 'jekyll', '~> 4.2.0'
+gem "jekyll-github-metadata", ">= 2.15"
-group :jekyll_plugins do
- gem 'jekyll-archives', '~> 2.2.1'
- gem 'jekyll-feed', '~> 0.15.1'
- gem 'jekyll-paginate', '~> 1.1.0'
- gem 'jekyll-seo-tag', '~> 2.7.1'
- gem 'jekyll-sitemap', '~> 1.4.0'
-end
+gem "webrick", "~> 1.7"
diff --git a/Gemfile.lock b/Gemfile.lock
index d5fad7f..c7ea15d 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,81 +1,98 @@
+PATH
+ remote: .
+ specs:
+ just-the-docs (0.5.2)
+ jekyll (>= 3.8.5)
+ jekyll-seo-tag (>= 2.0)
+ rake (>= 12.3.1)
+
GEM
remote: https://rubygems.org/
specs:
- addressable (2.7.0)
- public_suffix (>= 2.0.2, < 5.0)
+ addressable (2.8.4)
+ public_suffix (>= 2.0.2, < 6.0)
colorator (1.1.0)
- concurrent-ruby (1.1.9)
- em-websocket (0.5.2)
+ concurrent-ruby (1.2.2)
+ em-websocket (0.5.3)
eventmachine (>= 0.12.9)
- http_parser.rb (~> 0.6.0)
+ http_parser.rb (~> 0)
eventmachine (1.2.7)
- ffi (1.15.1)
+ faraday (2.7.6)
+ faraday-net_http (>= 2.0, < 3.1)
+ ruby2_keywords (>= 0.0.4)
+ faraday-net_http (3.0.2)
+ ffi (1.15.5)
forwardable-extended (2.6.0)
- http_parser.rb (0.6.0)
- i18n (1.8.10)
+ google-protobuf (3.23.2-x64-mingw-ucrt)
+ http_parser.rb (0.8.0)
+ i18n (1.14.1)
concurrent-ruby (~> 1.0)
- jekyll (4.2.0)
+ jekyll (4.3.2)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
- jekyll-sass-converter (~> 2.0)
+ jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
- kramdown (~> 2.3)
+ kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
- mercenary (~> 0.4.0)
+ mercenary (>= 0.3.6, < 0.5)
pathutil (~> 0.9)
- rouge (~> 3.0)
+ rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
- terminal-table (~> 2.0)
- jekyll-archives (2.2.1)
- jekyll (>= 3.6, < 5.0)
- jekyll-feed (0.15.1)
- jekyll (>= 3.7, < 5.0)
- jekyll-paginate (1.1.0)
- jekyll-sass-converter (2.1.0)
- sassc (> 2.0.1, < 3.0)
- jekyll-seo-tag (2.7.1)
+ terminal-table (>= 1.8, < 4.0)
+ webrick (~> 1.7)
+ jekyll-github-metadata (2.16.0)
+ jekyll (>= 3.4, < 5.0)
+ octokit (>= 4, < 7, != 4.4.0)
+ jekyll-sass-converter (3.0.0)
+ sass-embedded (~> 1.54)
+ jekyll-seo-tag (2.8.0)
jekyll (>= 3.8, < 5.0)
- jekyll-sitemap (1.4.0)
- jekyll (>= 3.7, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
- kramdown (2.3.1)
+ kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
- liquid (4.0.3)
- listen (3.5.1)
+ liquid (4.0.4)
+ listen (3.8.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
+ octokit (6.1.1)
+ faraday (>= 1, < 3)
+ sawyer (~> 0.9)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
- public_suffix (4.0.6)
- rb-fsevent (0.11.0)
+ public_suffix (5.0.1)
+ rake (13.0.6)
+ rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
- rouge (3.26.0)
+ rouge (4.1.2)
+ ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
- sassc (2.4.0)
- ffi (~> 1.9)
- terminal-table (2.0.0)
- unicode-display_width (~> 1.1, >= 1.1.1)
- unicode-display_width (1.7.0)
+ sass-embedded (1.63.3-x64-mingw-ucrt)
+ google-protobuf (~> 3.23)
+ sawyer (0.9.2)
+ addressable (>= 2.3.5)
+ faraday (>= 0.17.3, < 3)
+ terminal-table (3.0.2)
+ unicode-display_width (>= 1.1.1, < 3)
+ unicode-display_width (2.4.2)
+ webrick (1.8.1)
PLATFORMS
- ruby
+ x64-mingw-ucrt
DEPENDENCIES
- jekyll (~> 4.2.0)
- jekyll-archives (~> 2.2.1)
- jekyll-feed (~> 0.15.1)
- jekyll-paginate (~> 1.1.0)
- jekyll-seo-tag (~> 2.7.1)
- jekyll-sitemap (~> 1.4.0)
+ bundler (>= 2.3.5)
+ jekyll-github-metadata (>= 2.15)
+ just-the-docs!
+ webrick (~> 1.7)
BUNDLED WITH
- 1.17.3
+ 2.4.14
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index a4de04d..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2016-2020 CloudCannon
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/README.md b/README.md
index f55b95d..d8b76b8 100644
--- a/README.md
+++ b/README.md
@@ -1,80 +1,110 @@
-# Hydra
+
+
+
+
+
+
Just the Docs
+
A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search. Easily hosted on GitHub Pages with few dependencies.
+
-Marketing site template for Jekyll. Browse through a [live demo](https://proud-alligator.cloudvent.net/).
-Increase the web presence of your brand with this configurable theme.
+
A video walkthrough of various Just the Docs features
-![Hydra template screenshot](images/_screenshot.png)
+https://user-images.githubusercontent.com/85418632/211225192-7e5d1116-2f4f-4305-bb9b-437fe47df071.mp4
-Hydra was made by [CloudCannon](http://cloudcannon.com/), the Cloud CMS for Jekyll.
+## Installation
-Find more templates, themes and step-by-step Jekyll tutorials at [CloudCannon Academy](https://learn.cloudcannon.com/).
+### Use the template
-[![Deploy to CloudCannon](https://buttons.cloudcannon.com/deploy.svg)](https://app.cloudcannon.com/register#sites/connect/github/CloudCannon/hydra-jekyll-template)
+The [Just the Docs Template] provides the simplest, quickest, and easiest way to create a new website that uses the Just the Docs theme. To get started with creating a site, just click "[use the template]"!
-## Features
+Note: To use the theme, you do ***not*** need to clone or fork the [Just the Docs repo]! You should do that only if you intend to browse the theme docs locally, contribute to the development of the theme, or develop a new theme based on Just the Docs.
-* Contact form
-* Pre-built pages
-* Pre-styled components
-* Blog with pagination
-* Post category pages
-* Disqus comments for posts
-* Staff and author system
-* Configurable footer
-* Optimised for editing in [CloudCannon](http://cloudcannon.com/)
-* RSS/Atom feed
-* SEO tags
-* Google Analytics
+You can easily set the site created by the template to be published on [GitHub Pages] – the [template README] file explains how to do that, along with other details.
-## Setup
+If [Jekyll] is installed on your computer, you can also build and preview the created site *locally*. This lets you test changes before committing them, and avoids waiting for GitHub Pages.[^2] And you will be able to deploy your local build to a different platform than GitHub Pages.
-1. Add your site and author details in `_config.yml`.
-2. Add your Google Analytics and Disqus keys to `_config.yml`.
-3. Get a workflow going to see your site's output (with [CloudCannon](https://app.cloudcannon.com/) or Jekyll locally).
+More specifically, the created site:
-## Develop
+- uses a gem-based approach, i.e. uses a `Gemfile` and loads the `just-the-docs` gem
+- uses the [GitHub Pages / Actions workflow] to build and publish the site on GitHub Pages
-Hydra was built with [Jekyll](http://jekyllrb.com/) version 3.3.1, but should support newer versions as well.
+Other than that, you're free to customize sites that you create with the template, however you like. You can easily change the versions of `just-the-docs` and Jekyll it uses, as well as adding further plugins.
-Install the dependencies with [Bundler](http://bundler.io/):
+### Use RubyGems
-~~~bash
-$ bundle install
-~~~
+Alternatively, you can install the theme as a Ruby Gem, without creating a new site.
-Run `jekyll` commands through Bundler to ensure you're using the right versions:
+Add this line to your Jekyll site's `Gemfile`:
-~~~bash
-$ bundle exec jekyll serve
-~~~
+```ruby
+gem "just-the-docs"
+```
-## Editing
+And add this line to your Jekyll site's `_config.yml`:
-Hydra is already optimised for adding, updating and removing pages, staff, advice, company details and footer elements in CloudCannon.
+```yaml
+theme: just-the-docs
+```
-### Posts
+And then execute:
-* Add, update or remove a post in the *Posts* collection.
-* The **Staff Author** field links to members in the **Staff** collection.
-* Documentation pages are organised in the navigation by category, with URLs based on the path inside the `_docs` folder.
-* Change the defaults when new posts are created in `_posts/_defaults.md`.
+ $ bundle
-### Contact Form
+Or install it yourself as:
-* Preconfigured to work with CloudCannon, but easily changed to another provider (e.g. [FormSpree](https://formspree.io/)).
-* Sends email to the address listed in company details.
+ $ gem install just-the-docs
-### Staff
+Alternatively, you can run it inside Docker while developing your site
-* Reused around the site to save multiple editing locations.
-* Add `excluded_in_search: true` to any documentation page's front matter to exclude that page in the search results.
+ $ docker-compose up
-### Navigation
+## Usage
-* Exposed as a data file to give clients better access.
-* Set in the *Data* / *Navigation* section.
+[View the documentation][Just the Docs] for usage information.
-### Footer
+## Contributing
-* Exposed as a data file to give clients better access.
-* Set in the *Data* / *Footer* section.
+Bug reports, proposals of new features, and pull requests are welcome on GitHub at https://github.com/just-the-docs/just-the-docs. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
+
+### Submitting code changes:
+
+- Submit an [Issue](https://github.com/just-the-docs/just-the-docs/issues) that motivates the changes, using the appropriate template
+- Discuss the proposed changes with other users and the maintainers
+- Open a [Pull Request](https://github.com/just-the-docs/just-the-docs/pulls)
+- Ensure all CI tests pass
+- Provide instructions to check the effect of the changes
+- Await code review
+
+### Design and development principles of this theme:
+
+1. As few dependencies as possible
+2. No build script needed
+3. First class mobile experience
+4. Make the content shine
+
+## Development
+
+To set up your environment to develop this theme: fork this repo, the run `bundle install` from the root directory.
+
+A modern [devcontainer configuration](https://code.visualstudio.com/docs/remote/containers) for VSCode is included.
+
+Your theme is set up just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
+
+When this theme is released, only the files in `_layouts`, `_includes`, and `_sass` tracked with Git will be included in the gem.
+
+## License
+
+The theme is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
+
+[^2]: [It can take up to 10 minutes for changes to your site to publish after you push the changes to GitHub](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll#creating-your-site).
+
+[Jekyll]: https://jekyllrb.com
+[Just the Docs Template]: https://just-the-docs.github.io/just-the-docs-template/
+[Just the Docs]: https://just-the-docs.com
+[Just the Docs repo]: https://github.com/just-the-docs/just-the-docs
+[GitHub Pages]: https://pages.github.com/
+[Template README]: https://github.com/just-the-docs/just-the-docs-template/blob/main/README.md
+[GitHub Pages / Actions workflow]: https://github.blog/changelog/2022-07-27-github-pages-custom-github-actions-workflows-beta/
+[use the template]: https://github.com/just-the-docs/just-the-docs-template/generate
diff --git a/_config.yml b/_config.yml
index 862f4de..1b043d9 100644
--- a/_config.yml
+++ b/_config.yml
@@ -1,106 +1,185 @@
-# ----
-# Site
-
-title: Hydra Template
-url: "https://proud-alligator.cloudvent.net"
-baseurl:
-google_analytics_key:
-google_maps_javascript_api_key:
-disqus_shortname:
-
-# Values for the jekyll-seo-tag gem (https://github.com/jekyll/jekyll-seo-tag)
-logo: /siteicon.png
-description: Product marketing template for Jekyll.
-author:
- name:
- email:
- twitter: # twitter username without the @ symbol
-social:
- name: Hydra Template
- links:
- - https://github.com/CloudCannon/hydra-jekyll-template
-
-# -----
-# Build
-
-timezone: Etc/UTC
-
-collections:
- staff_members:
- _hide_content: true
-
-paginate: 10
-paginate_path: "/blog/:num/"
+# Welcome to Jekyll!
+#
+# This config file is meant for settings that affect your whole site, values
+# which you are expected to set up once and rarely edit after that. If you find
+# yourself editing these this file very often, consider using Jekyll's data files
+# feature for the data you need to update frequently.
+#
+# For technical reasons, this file is *NOT* reloaded automatically when you use
+# 'jekyll serve'. If you change this file, please restart the server process.
+
+# Site settings
+# These are used to personalize your new site. If you look in the HTML files,
+# you will see them accessed via {{ site.title }}, {{ site.github_repo }}, and so on.
+# You can create any custom variable you would like, and they will be accessible
+# in the templates via {{ site.myvariable }}.
+title: Just the Docs
+description: A Jekyll theme for documentation
+baseurl: "" # the subpath of your site, e.g. /blog
+url: "https://just-the-docs.com" # the base hostname & protocol for your site, e.g. http://example.com
+repository: just-the-docs/just-the-docs # for github-metadata
+
permalink: pretty
-defaults:
- - scope:
- path: ""
- type: "posts"
- values:
- layout: "post"
- _options:
- content:
- width: 1500
- height: 2500
- - scope:
- path: ""
- type: "staff_members"
- values:
- _options:
- image_path:
- width: 600
- height: 600
- - scope:
- path: ""
- values:
- layout: "page"
- - scope:
- path: "index.html"
- values:
- layout: "default"
- - scope:
- path: "contact.html"
- values:
- full_width: true
-
-jekyll-archives:
- enabled:
- - categories
+exclude:
+ # from https://github.com/jekyll/jekyll/blob/master/lib/site_template/_config.yml:
+ - .sass-cache/
+ - .jekyll-cache/
+ - gemfiles/
+ - Gemfile
+ - Gemfile.lock
+ - node_modules/
+ - vendor/bundle/
+ - vendor/cache/
+ - vendor/gems/
+ - vendor/ruby/
+ # specific to the theme website:
+ - bin/
+ - lib/
+ - "*.gemspec"
+ - "*.gem"
+ - LICENSE.txt
+ - package.json
+ - package-lock.json
+ - Rakefile
+ - README.md
+ - CODE_OF_CONDUCT.md
+ - docker-compose.yml
+ - Dockerfile
+ # theme test code
+ - fixtures/
+
+# Set a path/url to a logo that will be displayed instead of the title
+#logo: "/assets/images/just-the-docs.png"
+
+# Enable or disable the site search
+# Supports true (default) or false
+search_enabled: true
+search:
+ # Split pages into sections that can be searched individually
+ # Supports 1 - 6, default: 2
+ heading_level: 2
+ # Maximum amount of previews per search result
+ # Default: 3
+ previews: 2
+ # Maximum amount of words to display before a matched word in the preview
+ # Default: 5
+ preview_words_before: 3
+ # Maximum amount of words to display after a matched word in the preview
+ # Default: 10
+ preview_words_after: 3
+ # Set the search token separator
+ # Default: /[\s\-/]+/
+ # Example: enable support for hyphenated search words
+ tokenizer_separator: /[\s/]+/
+ # Display the relative url in search results
+ # Supports true (default) or false
+ rel_url: true
+ # Enable or disable the search button that appears in the bottom right corner of every page
+ # Supports true or false (default)
+ button: false
+
+# For copy button on code
+enable_copy_code_button: true
+
+# By default, consuming the theme as a gem leaves mermaid disabled; it is opt-in
+mermaid:
+ # Version of mermaid library
+ # Pick an available version from https://cdn.jsdelivr.net/npm/mermaid/
+ version: "9.1.6"
+ # Put any additional configuration, such as setting the theme, in _includes/mermaid_config.js
+ # See also docs/ui-components/code
+ # To load mermaid from a local library, also use the `path` key to specify the location of the library; e.g.
+ # for (v10+):
+ # path: "/assets/js/mermaid.esm.min.mjs"
+ # for (MIT license. This site is powered by Netlify."
+
+# Footer last edited timestamp
+last_edit_timestamp: true # show or hide edit time - page must have `last_modified_date` defined in the frontmatter
+last_edit_time_format: "%b %e %Y at %I:%M %p" # uses ruby's time format: https://ruby-doc.org/stdlib-2.7.0/libdoc/time/rdoc/Time.html
+
+
+
+# Footer "Edit this page on GitHub" link text
+gh_edit_link: true # show or hide edit this page link
+gh_edit_link_text: "Edit this page on GitHub"
+gh_edit_repository: "https://github.com/just-the-docs/just-the-docs" # the github URL for your repo
+gh_edit_branch: "main" # the branch that your docs is served from
+# gh_edit_source: docs # the source that your files originate from
+gh_edit_view_mode: "tree" # "tree" or "edit" if you want the user to jump into the editor immediately
+
+# Color scheme currently only supports "dark", "light"/nil (default), or a custom scheme that you define
+color_scheme: nil
+
+callouts_level: quiet # or loud
+callouts:
+ highlight:
+ color: yellow
+ important:
+ title: Important
+ color: blue
+ new:
+ title: New
+ color: green
+ note:
+ title: Note
+ color: purple
+ warning:
+ title: Warning
+ color: red
+
+# Google Analytics Tracking (optional)
+# Supports a CSV of tracking ID strings (eg. "UA-1234567-89,G-1AB234CDE5")
+# Note: the main Just the Docs site does *not* use Google Analytics.
+# ga_tracking: UA-2709176-10,G-5FG1HLH3XQ
+# ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (true/nil by default)
plugins:
- - jekyll-archives
- - jekyll-sitemap
- jekyll-seo-tag
- - jekyll-feed
- - jekyll-paginate
+ - jekyll-github-metadata
-exclude:
- - Gemfile
- - Gemfile.lock
- - README.md
- - LICENCE
-
-# -----------
-# CloudCannon
-
-_select_data:
- social_icons:
- - Facebook
- - Instagram
- - LinkedIn
- - Pinterest
- - Tumblr
- - Twitter
- - YouTube
- - RSS
-
-_comments:
- map: Update the map location and display settings.
- latitude: Coordinates for the center marker on the map.
- longitude: Coordinates for the center marker on the map.
- zoom: The zoom level for the map.
- pricing_table: Update the information in the pricing tables.
- highlight: Emphasis the text
- color: The background colour used in the plan name and call to action.
- new_window: Open link in new window
+kramdown:
+ syntax_highlighter_opts:
+ block:
+ line_numbers: false
+
+compress_html:
+ clippings: all
+ comments: all
+ endings: all
+ startings: []
+ blanklines: false
+ profile: false
+ # ignore:
+ # envs: all
diff --git a/_data/footer.yml b/_data/footer.yml
deleted file mode 100644
index ae3f9d7..0000000
--- a/_data/footer.yml
+++ /dev/null
@@ -1,39 +0,0 @@
-- links:
- - name: Pricing
- link: /pricing/
- - name: Blog
- link: /blog/
- - name: About
- link: /about/
- - name: Contact
- link: /contact/
-- links:
- - name: Login
- link: /
- new_window: true
- - name: Sign Up
- link: /
- new_window: true
- - name: Docs
- link: /
- new_window: true
- - name: Status
- link: /
- new_window: true
-- links:
- - name: Facebook
- link: https://facebook.com/cloudcannon/
- new_window: true
- social_icon: Facebook
- - name: Twitter
- link: https://twitter.com/cloudcannon/
- social_icon: Twitter
- new_window: true
- - name: YouTube
- link: https://youtube.com/cloudcannon/
- social_icon: YouTube
- new_window: true
- - name: RSS
- link: /feed.xml
- social_icon: RSS
- new_window: false
diff --git a/_data/navigation.yml b/_data/navigation.yml
deleted file mode 100644
index 5f05455..0000000
--- a/_data/navigation.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-- name: Pricing
- link: /pricing/
- new_window: false
- highlight: false
-- name: Blog
- link: /blog/
- new_window: false
- highlight: false
-- name: About
- link: /about/
- new_window: false
- highlight: false
-- name: Contact
- link: /contact/
- new_window: false
- highlight: false
-- name: Login
- link: /
- new_window: true
- highlight: false
-- name: Sign Up
- link: /
- new_window: true
- highlight: true
diff --git a/_includes/list-posts.html b/_includes/list-posts.html
deleted file mode 100644
index 0dd91fa..0000000
--- a/_includes/list-posts.html
+++ /dev/null
@@ -1,10 +0,0 @@
-{% for post in include.posts %}
-
-
- {% if site.disqus_shortname and page.comments %}
-
-
-
- {% endif %}
-
-
+{{ content }}
diff --git a/_posts/2016-07-20-the-process-for-direct-sales.md b/_posts/2016-07-20-the-process-for-direct-sales.md
deleted file mode 100644
index 6302e81..0000000
--- a/_posts/2016-07-20-the-process-for-direct-sales.md
+++ /dev/null
@@ -1,35 +0,0 @@
----
-date: 2020-07-20
-title: The process for direct sales
-categories:
- - sales
-author_staff_member: anna
----
-
-Direct selling is the marketing and selling of products directly to consumers away from a fixed retail location. Peddling is the oldest form of direct selling. Modern direct selling includes sales made through the party plan, one-on-one demonstrations, and other personal contact arrangements as well as internet sales.
-
-![Checkmate](https://source.unsplash.com/random/1500x1145)
-
-## Textbook definition
-
-A textbook definition is: "The direct personal presentation, demonstration, and sale of products and services to consumers, usually in their homes or at their jobs."
-
-## How effective is direct selling?
-
-Industry representative, the World Federation of Direct Selling Associations (WFDSA), reports that its 59 regional member associations accounted for more than US$183 billion in retail sales in 2014, through the activities of more than 62 million independent sales representatives. The United States Direct Selling Association (DSA) reported that in 2000, 55% of adult Americans had at some time purchased goods or services from a direct selling representative and 20% reported that they were currently(6%) or had been in the past(14%) a direct selling representative.
-
-![Office](https://source.unsplash.com/random/1500x1146)
-
-According to the WFDSA, consumers benefit from direct selling because of the convenience and service it provides, including personal demonstration and explanation of products, home delivery, and generous satisfaction guarantees. In contrast to franchising, the cost for an individual to start an independent direct selling business is typically very low with little or no required inventory or other cash commitments to begin.
-
-Most direct selling associations around the world require their members to abide by a code of conduct towards a fair partnership both with customers and salesmen...
-
-Most national direct selling associations are represented in the World Federation of Direct Selling Associations (WFDSA).
-
-## How's it different to marketing?
-
-Direct selling is distinct from direct marketing because it is about individual sales agents reaching and dealing directly with clients. Direct marketing is about business organizations seeking a relationship with their customers without going through an agent/consultant or retail outlet.
-
-Direct selling consists of two main business models: single-level marketing, in which a direct seller makes money by buying products from a parent organization and selling them directly to customers, and multi-level marketing (also known as network marketing or person-to-person marketing), in which the direct seller makes money from both direct sales to customers and by sponsoring new direct sellers and earning a commission from their efforts.
-
-![Raspberries](https://source.unsplash.com/random/1500x1147)
diff --git a/_posts/2016-07-28-effective-upselling-techniques.md b/_posts/2016-07-28-effective-upselling-techniques.md
deleted file mode 100644
index d2bf28b..0000000
--- a/_posts/2016-07-28-effective-upselling-techniques.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-date: 2020-07-28
-title: Effective upselling techniques
-categories:
- - sales
- - tips
-author_staff_member: betty
----
-
-Upselling is a sales technique whereby a seller induces the customer to purchase more expensive items, upgrades or other add-ons in an attempt to make a more profitable sale. While it usually involves marketing more profitable services or products, it can be simply exposing the customer to other options that were perhaps not considered.
-
-In practice, large businesses usually combine upselling and cross-selling to maximize profit. In doing so, an organization must ensure that its relationship with the client is not disrupted.
-
-![Fair](https://source.unsplash.com/random/1500x1146)
-
-In restaurants and other similar settings, upselling is commonplace and an accepted form of business. In other businesses (e.g. car sales), the customer’s perception of the attempted upsell can be viewed negatively and impact the desired result.
-
-## Why should you upsell?
-
-Upselling is a common practice for service providers that offer different service classes such as airlines (cf. Bohutinsky, 1990). According to “the journal of business and industrial marketing; written collaboratively by Michael J, Sheehan and Paul R, Prabhaker “It is five times more expensive to get a new customer as it is to hold onto a current one.” Selling to a new customer would mean having to start the sales process from the very beginning thus having to establish a new relationship with a different customer. This can be time consuming and often not very effective.
-
-![Gleise](https://source.unsplash.com/random/1500x1147)
-
-## The benefits
-
-Upselling to a customer that you have already built a rapport with, means that they are more likely to buy from you, listen to your suggestions and opinions and trust you. Selling to the same customer can lead to loyal customers and repeat sales. Upselling brings up the profit that the business makes and the value of the sale. However it is important to understand that although your main objective is to bring up revenue and increase the amount of the sale, a customers experience and their time with you influences future decisions that they make. An upsell can be beneficial to both the seller and the consumer if relevant products are being shown to the customer. For instance, if you had a strict budget of $20,000 for a car, you would not want to be sold a car for twice the amount.
-
-[source](https://en.wikipedia.org/wiki/Upselling): Wikipedia
diff --git a/_posts/2016-08-02-sales-effectiveness.md b/_posts/2016-08-02-sales-effectiveness.md
deleted file mode 100644
index 17c7b57..0000000
--- a/_posts/2016-08-02-sales-effectiveness.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-date: 2020-08-02
-title: Sales effectiveness
-categories:
- - sales
- - tips
-author_staff_member: gerald
----
-Sales effectiveness refers to the ability of a company’s sales professionals to “win” at each stage of the customer’s buying process, and ultimately earn the business on the right terms and in the right timeframe.
-
-![American River](https://source.unsplash.com/random/1500x1146)
-
-## How do you improve sales effectiveness?
-
-Improving sales effectiveness is not just a sales function issue; it’s a company issue, as it requires deep collaboration between sales and marketing to understand what's working and not working, and continuous improvement of the knowledge, messages, skills, and strategies that sales people apply as they work sales opportunities.
-
-Sales effectiveness has historically been used to describe a category of technologies and consulting services aimed at helping companies improve their sales results.
-
-Many companies are creating sales effectiveness functions and have even given people titles such as VP of Sales Effectiveness.
-
-![Coins](https://source.unsplash.com/random/1500x1147)
-
-"By analyzing sales force performance, managers can make changes to optimize sales going forward. Toward that end, there are many ways to gauge the performance of individual salespeople and of the sales force as a whole, in addition to total annual sales." In a survey of nearly 200 senior marketing managers, 54 percent responded that they found the "sales force effectiveness" metric very useful.
-
-[source](https://en.wikipedia.org/wiki/Sales_effectiveness): Wikipedia
diff --git a/_posts/2016-08-06-definition-of-sales.md b/_posts/2016-08-06-definition-of-sales.md
deleted file mode 100644
index f16319a..0000000
--- a/_posts/2016-08-06-definition-of-sales.md
+++ /dev/null
@@ -1,39 +0,0 @@
----
-date: 2020-08-06
-title: Definition of sales
-categories:
- - sales
-author_staff_member: james
----
-A person or organization expressing an interest in acquiring the offered item of value is referred to as a potential buyer, prospective customer or prospect. Buying and selling are understood to be two sides of the same "coin" or transaction. Both seller and buyer engage in a process of negotiation to consummate the exchange of values. The exchange, or selling, process has implied rules and identifiable stages.
-
-![Cat](https://source.unsplash.com/random/1500x1146)
-
-It is implied that the selling process will proceed fairly and ethically so that the parties end up nearly equally rewarded. The stages of selling, and buying, involve getting acquainted, assessing each party’s need for the other’s item of value, and determining if the values to be exchanged are equivalent or nearly so, or, in buyer's terms, "worth the price.” Sometimes, sellers have to use their own experiences when selling products with appropriate discounts.
-
-## Management point of view
-
-From a management viewpoint it is thought of as a part of marketing, although the skills required are different. Sales often forms a separate grouping in a corporate structure, employing separate specialist operatives known as salespersons (singular: salesperson). Selling is considered by many to be a sort of persuading "art". Contrary to popular belief, the methodological approach of selling refers to a systematic process of repetitive and measurable milestones, by which a salesman relates his or her offering of a product or service in return enabling the buyer to achieve their goal in an economic way. While the sales process refers to a systematic process of repetitive and measurable milestones, the definition of the selling is somewhat ambiguous due to the close nature of advertising, promotion, public relations, and direct marketing.
-
-![apricot](https://source.unsplash.com/random/1500x1147)
-
-Selling is the profession-wide term, much like marketing defines a profession. Recently, attempts have been made to clearly understand who is in the sales profession, and who is not. There are many articles looking at marketing, advertising, promotions, and even public relations as ways to create a unique transaction.
-
-## Common terms
-
-Two common terms used to describe a salesperson are "Farmer" and "Hunter". The reality is that most professional sales people have a little of both. A hunter is often associated with aggressive personalities who use aggressive sales technique. In terms of sales methodology a hunter refers to a person whose focus is on bringing in and closing deals. This process is called “sales capturing”. An example is a commodity sale such as a long distance sales person, shoe sales person and to a degree a car sales person. Their job is to find and convert buyers. A sales farmer is someone who creates sales demand by activities that directly influence and alter the buying process.
-
-![Marketing](https://source.unsplash.com/random/1500x1148)
-
-## Systems approach
-
-Many believe that the focus of selling is on the human agents involved in the exchange between buyer and seller. Effective selling also requires a systems approach, at minimum involving roles that sell, enable selling, and develop sales capabilities. Selling also involves salespeople who possess a specific set of sales skills and the knowledge required to facilitate the exchange of value between buyers and sellers that is unique from marketing, advertising, etc.
-
-![Lady bugs](https://source.unsplash.com/random/1500x1149)
-
-Within these three tenets, the following definition of professional selling is offered by the American Society for Training and Development (ASTD):
-
-“The holistic business system required to effectively develop, manage, enable, and execute a mutually beneficial, interpersonal exchange of goods and/or services for equitable value.”
-Team selling is one way to influence sales. Team selling is “a group of people representing the sales department and other functional areas in the firm, such as finance, production, and research and development”. (Spiro) Team selling came about in the 1990s through total quality management (TQM). TQM occurs when companies work to improve their customer satisfaction by constantly improving all of their operations.
-
-[source](https://en.wikipedia.org/wiki/Sales): Wikipedia
diff --git a/_posts/2016-08-12-the-history-of-marketing.md b/_posts/2016-08-12-the-history-of-marketing.md
deleted file mode 100644
index 8aca72f..0000000
--- a/_posts/2016-08-12-the-history-of-marketing.md
+++ /dev/null
@@ -1,32 +0,0 @@
----
-date: 2020-08-12
-title: The history of marketing
-categories:
- - marketing
-author_staff_member: robin
----
-The beginnings of digital marketing technology can be traced back to the 1980's, when computers became sophisticated enough to store huge volumes of customer information. For a brief moment, no one knew what would happen in digital marketing, but by the 90's it all became clear.
-
-![Man](https://source.unsplash.com/random/1500x1146)
-
-The history of marketing is to a large extent a product of Internet's history as markets have adapted to keep abreast of changes and keep up with the way the major Search Engines rank web pages. Major changes include, in chronological order:
-
-1991- Gopher: A network protocol, one of the very first query and search tools. Gopher was widely used for a couple of years, but usage has now fallen off, with barely 100 Gopher servers now indexed. 2. 1994- Launch of Yahoo, which was formerly known as "Jerry´s Guide to the World Wide Web" after one of its founders, Jerry Yang. Yahoo received in its first year over 1 million hits.
-
-## Academic studies
-
-The study of the history of marketing as an academic field emerged only recently. Controversies and disputes abound in the field. The publication in 1976 of the book The History of Marketing Thought, by Robert Bartels marks a turning-point in marketing thought. Since then, academics specializing in marketing decided to imitate economics, distinguishing theory and practice. Two different fields of study emerged:
-
-the history of marketing thought, giving theoretical accounts
-marketing history, focusing on the history of marketing practice
-This division parallels the distinction between the history of economic thought and economic history.
-
-![Thai](https://source.unsplash.com/random/1500x1147)
-
-Practitioners of the history of marketing thought note that both practitioners and academics know relatively little about the field.[citation needed] But history has significance for academics because it helps to define the baselines upon which they can recognize change and evolve marketing theory.On the other hand, proponents of marketing history argue that one cannot fully compare the marketing field with economics and hence suggest the impracticality of divorcing theory and practice. First, marketing scholars seldom engage in the practice of marketing as much as economists engage in the development and execution of public policies. Second, business people innovate in the marketing field, and the history of marketing will remain incomplete if one dissociates academia from practitioners.
-
-![lavender flowers](https://source.unsplash.com/random/1500x1148)
-
-The following sections discuss both approaches to the history of marketing, closing with a debate about the standard chronology of marketing, a widely known hypothesis about the history of marketing, but one that historians in the marketing field have challenged.
-
-[source](https://en.wikipedia.org/wiki/History_of_marketing): Wikipedia
diff --git a/_posts/2023-06-12-welcome-to-jekyll.markdown b/_posts/2023-06-12-welcome-to-jekyll.markdown
deleted file mode 100644
index 49b15a0..0000000
--- a/_posts/2023-06-12-welcome-to-jekyll.markdown
+++ /dev/null
@@ -1,29 +0,0 @@
----
-layout: post
-title: "Welcome to Jekyll!"
-date: 2023-06-12 22:45:41 +0800
-categories: jekyll update
----
-You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
-
-Jekyll requires blog post files to be named according to the following format:
-
-`YEAR-MONTH-DAY-title.MARKUP`
-
-Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
-
-Jekyll also offers powerful support for code snippets:
-
-{% highlight ruby %}
-def print_hi(name)
- puts "Hi, #{name}"
-end
-print_hi('Tom')
-#=> prints 'Hi, Tom' to STDOUT.
-{% endhighlight %}
-
-Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].
-
-[jekyll-docs]: https://jekyllrb.com/docs/home
-[jekyll-gh]: https://github.com/jekyll/jekyll
-[jekyll-talk]: https://talk.jekyllrb.com/
diff --git a/_posts/_defaults.md b/_posts/_defaults.md
deleted file mode 100644
index 2da5b82..0000000
--- a/_posts/_defaults.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title:
-categories:
-author_staff_member:
-date:
----
diff --git a/_sass/blog.scss b/_sass/blog.scss
deleted file mode 100644
index cbae2ba..0000000
--- a/_sass/blog.scss
+++ /dev/null
@@ -1,125 +0,0 @@
-.blog-posts {
- list-style: none;
- padding: 0;
-
- li {
- margin: 100px 0;
- }
-}
-
-.blog-post {
- .author {
- padding: 30px 0 0 0;
- border: 1px solid #eee;
- margin: 30px 0;
- font-size: .8em;
-
- .square-image {
- width: 125px;
- height: 125px;
- margin-top: 0;
- }
- .blurb {
- text-align: center;
- }
- }
-
- h3 {
- margin: 0;
- a {
- color: #000;
- text-decoration: none;
- font-weight: normal;
- font-size: 1.3em;
- }
- }
-
- h2 {
- text-align: left;
- }
-
- .blog-navigation {
- font-size: 14px;
- display: block;
- width: auto;
- overflow: hidden;
- a {
- display: block;
- width: 50%;
- float: left;
- margin: 1em 0;
- }
-
- .next {
- text-align: right;
- }
- }
-
- .post-details {
- border-bottom: 1px solid #eee;
- font-size: .9em;
-
- .blog-filter {
- display: inline-block;
- text-align: left;
-
- a {
- position: relative;
- top: -5px;
- }
- }
-
- a {
- text-decoration: none;
- }
-
- .post-date {
- float: right;
- }
-
- &:after {
- content: "";
- display: table;
- clear: both;
- }
- }
-
- .post-content {
- .button {
- margin: 30px 0 0 0;
- }
- }
-}
-
-.pagination {
- text-align: center;
-}
-
-.blog-filter {
- text-align: center;
- a {
- background: #eee;
- padding: 3px 5px;
- font-size: .8em;
- border-radius: 5px;
- color: #888;
- transition: .2s ease-in-out;
-
- &:hover {
- color: #555;
- text-decoration: none;
- }
- }
-}
-
-.blog-filter.cross a {
- padding-right: 8px;
-
- &:after {
- content: "x";
- font-size: .5em;
- position: relative;
- bottom: 4px;
- right: -3px;
- }
-}
diff --git a/_sass/cloudcannon.scss b/_sass/cloudcannon.scss
deleted file mode 100644
index 0c27b69..0000000
--- a/_sass/cloudcannon.scss
+++ /dev/null
@@ -1,37 +0,0 @@
-.editor-link, .nav-open nav .editor-link {
- display: none;
- margin-top: 0;
-
- .btn {
- border: 0;
- border-radius: 2px;
- width: 100%;
- max-width: 500px;
- box-sizing: border-box;
- font-size: 2rem;
- text-decoration: none;
- padding: 10px 15px;
- margin: 0;
- font-size: 18px;
- }
-
- nav &, .btn {
- cursor: pointer;
- background-color: #f7e064;
- color: #333;
- box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2);
-
- &:hover {
- background-color: #f4d525;
- color: #333;
- }
- }
-}
-
-.cms-editor-active .editor-link {
- display: block;
-}
-
-.cms-editor-active nav .editor-link {
- display: inline;
-}
diff --git a/_sass/contact.scss b/_sass/contact.scss
deleted file mode 100644
index c380079..0000000
--- a/_sass/contact.scss
+++ /dev/null
@@ -1,32 +0,0 @@
-.map {
- width: 100%;
- margin: 100px 0;
- height: 400px;
-}
-
-.contact-box {
- @extend %flexbox;
- @include flex-flow(wrap);
- max-width: 750px;
- margin: 0 auto;
-
- form {
- width: 100%
- }
-
- p {
- margin: 0;
- }
-
- .contact-form, .contact-details {
- @media #{$desktop} {
- -webkit-flex: 1;
- flex: 1;
- }
- margin: 0 30px;
- }
-
- .contact-details {
- font-size: .9em;
- }
-}
diff --git a/_sass/elements.scss b/_sass/elements.scss
deleted file mode 100644
index 7432e6b..0000000
--- a/_sass/elements.scss
+++ /dev/null
@@ -1,54 +0,0 @@
-html {
- background: #2b2b40;
-}
-
-html, body {
- margin: 0;
- padding: 0;
-}
-
-body {
- font-family: "San Francisco", "Helvetica Neue", "Helvetica", "Arial";
-}
-
-a {
- color: #00a4ca;
- text-decoration: none;
-}
-
-a:hover {
- text-decoration: underline;
-}
-
-img {
- width: 100%;
-}
-
-h1 strong, h2 strong {
- font-weight: 700;
-}
-
-h1 {
- font-weight: 300;
- font-size: 2.3em;
- margin: 0;
-}
-
-h2 {
- font-weight: 300;
- font-size: 2.2em;
- margin: 0 0 30px 0;
-}
-
-h3 {
- margin: 20px 0 10px 0;
-}
-
-
-p, address {
- font-size: 1.38em;
- color: #666;
- margin-bottom: 20px;
- font-weight: 300;
- line-height: 1.4em;
-}
diff --git a/_sass/footer.scss b/_sass/footer.scss
deleted file mode 100644
index 44fa4fb..0000000
--- a/_sass/footer.scss
+++ /dev/null
@@ -1,121 +0,0 @@
-.footer-links {
- width: 100%;
- margin: 10px;
- padding: 0;
-
- @media #{$tablet} {
- -webkit-flex: 1 0 180px;
- flex: 1 0 180px;
- }
-
- li {
- list-style: none;
- margin: 15px auto;
-
- @media #{$tablet} {
- max-width: 150px;
- }
- a {
-
- &:hover {
- text-decoration: none;
- }
- svg {
- fill: #999;
- margin-right: 10px;
- transition: fill 0.2s ease;
- vertical-align: middle;
- position: relative;
- top: -2px;
- width: 22px;
- height: 22px;
- }
-
- &:hover svg {
- fill: #fff;
- }
-
- &.twitter-icon:hover svg {
- fill: #55acee;
- }
-
- &.google-plus-icon:hover svg {
- fill: #db4437;
- }
-
- &.youtube-icon:hover svg {
- fill: #cd201f;
- }
-
- &.instagram-icon:hover svg {
- fill: #f167f5;
- }
-
- &.linkedin-icon:hover svg {
- fill: #0077b5;
- }
-
- &.pinterest-icon:hover svg {
- fill: #bd081c;
- }
-
- &.rss-icon:hover svg {
- fill: #f26522;
- }
- }
- }
-}
-
-footer {
- padding: 50px 0 50px 0;
- font-size: 1.1em;
- position: relative;
- background: #2b2b40;
- color: #fff;
-
- .copyright {
- font-size: .8em;
- margin: 0 auto;
-
- @media #{$tablet} {
- text-align: center;
- }
-
- }
-
- &,
- a {
- color: #999;
- }
-
- h2 {
- font-size: 1.4em;
- margin: 30px 0;
- color: #ccc;
- }
-
- .footer-columns {
- @extend %flexbox;
- @include flex-flow(wrap);
- margin: -10px -10px 10px -10px;
- }
-
- a {
- text-decoration: none;
-
- &:hover {
- color: #fff;
- }
- }
-
- .legal-line {
- width: 100%;
- padding: 30px 0;
- margin: 0;
- background-color: #222527;
-
- a {
- font-weight: 600;
- }
- }
-}
diff --git a/_sass/forms.scss b/_sass/forms.scss
deleted file mode 100644
index 0011e06..0000000
--- a/_sass/forms.scss
+++ /dev/null
@@ -1,67 +0,0 @@
-.button a, input[type=submit] {
- color: #fff;
- text-decoration: none;
- padding: 10px 30px;
- background: $brand-color;
- border-radius: 3px;
- border: 1px solid rgba(255,255,255,.5);
- transition: .2s ease-in-out;
-}
-
-.button a:hover, input[type=submit]:hover {
- border: 1px solid #fff;
- background: $secondary-brand-color;
- cursor: pointer;
-}
-
-.button.alt a {
- background: rgba(255,255,255,0.15);
- border-radius: 3px;
- border: 1px solid rgba(255, 255, 255, 0.3);
- padding: 16px 50px;
-}
-
-.button.alt a:hover {
- background: #fff;
- color: $brand-color;
-}
-
-textarea, input, button, select { font-family: inherit; font-size: inherit; }
-
-input[type=submit] {
- margin: 20px 0 0 0;
-}
-
-label, input, textarea {
- display: block;
- width: 100%;
- box-sizing: border-box;
-}
-
-textarea {
- resize: vertical;
- height: 150px;
-}
-
-label {
- margin: 20px 0 5px 0;
-}
-
-input, textarea {
- padding: 10px;
- font-size: 1em;
-}
-
-input, textarea {
- -webkit-transition: all 0.30s ease-in-out;
- -moz-transition: all 0.30s ease-in-out;
- -ms-transition: all 0.30s ease-in-out;
- -o-transition: all 0.30s ease-in-out;
- outline: none;
- border: 1px solid #DDDDDD;
-}
-
-input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, textarea:focus {
- box-shadow: 0 0 5px rgba(81, 203, 238, 1);
- border: 1px solid rgba(81, 203, 238, 1);
-}
diff --git a/_sass/landing-page.scss b/_sass/landing-page.scss
deleted file mode 100644
index 4223f4e..0000000
--- a/_sass/landing-page.scss
+++ /dev/null
@@ -1,62 +0,0 @@
-.bottom-cta {
- background: linear-gradient(to bottom, $brand-color 0%, $middle-gradient-color 100%);
- color: #fff;
- text-align: center;
- margin: 0;
- padding: 100px 0;
-
- h2 {
- margin-bottom: 50px;
- }
-}
-
-.testimonial {
- background: #f5f5f5;
- margin: 0;
- padding: 100px 0;
-
- .testimonial-block {
- max-width: 750px;
- width: 98%;
- margin: 0 auto;
-
- @media #{$tablet} {
- @include flexbox;
-
- blockquote {
- -webkit-flex: 1;
- flex: 1;
- }
- }
- }
-}
-
-.hero {
- color: #ffffff;
- text-align: center;
- background: linear-gradient(to bottom, $middle-gradient-color 0%, $secondary-brand-color 100%) no-repeat #a05fb7;
- padding-top: 50px;
-
- p {
- color: #fff;
- }
-}
-
-
-@media #{$desktop} {
- .flex {
- @include flexbox;
- align-items: center;
- flex-direction: row;
-
- .text, .image {
- -webkit-flex: 1;
- flex: 1;
- padding: 0 20px;
- }
- }
-
- .content section:nth-child(even) .flex {
- flex-direction: row-reverse;
- }
-}
diff --git a/_sass/layout.scss b/_sass/layout.scss
index 8467ba8..027b388 100644
--- a/_sass/layout.scss
+++ b/_sass/layout.scss
@@ -1,174 +1,209 @@
-.container, .text-container {
- margin: 0 auto;
- position: relative;
- padding: 0 20px;
-}
+// The basic two column layout
+
+.side-bar {
+ z-index: 0;
+ display: flex;
+ flex-wrap: wrap;
+ background-color: $sidebar-color;
+
+ @include mq(md) {
+ flex-flow: column nowrap;
+ position: fixed;
+ width: $nav-width-md;
+ height: 100%;
+ border-right: $border $border-color;
+ align-items: flex-end;
+ }
+
+ @include mq(lg) {
+ width: calc((100% - #{$nav-width + $content-width}) / 2 + #{$nav-width});
+ min-width: $nav-width;
+ }
+}
+
+.main {
+ @include mq(md) {
+ position: relative;
+ max-width: $content-width;
+ margin-left: $nav-width-md;
+ }
+
+ @include mq(lg) {
+ // stylelint-disable function-name-case
+ // disable for Max(), we want to use the CSS max() function
+ margin-left: Max(
+ #{$nav-width},
+ calc((100% - #{$nav-width + $content-width}) / 2 + #{$nav-width})
+ );
+ // stylelint-enable function-name-case
+ }
+}
+
+.main-content-wrap {
+ @include container;
+
+ padding-top: $gutter-spacing-sm;
+ padding-bottom: $gutter-spacing-sm;
+
+ @include mq(md) {
+ padding-top: $gutter-spacing;
+ padding-bottom: $gutter-spacing;
+ }
+}
+
+.main-header {
+ z-index: 0;
+ display: none;
+ background-color: $sidebar-color;
+
+ @include mq(md) {
+ display: flex;
+ justify-content: space-between;
+ height: $header-height;
+ background-color: $body-background-color;
+ border-bottom: $border $border-color;
+ }
+
+ &.nav-open {
+ display: block;
+
+ @include mq(md) {
+ display: flex;
+ }
+ }
+}
+
+.site-nav,
+.site-header,
+.site-footer {
+ width: 100%;
+
+ @include mq(lg) {
+ width: $nav-width;
+ }
+}
+
+.site-nav {
+ display: none;
+
+ &.nav-open {
+ display: block;
+ }
+
+ @include mq(md) {
+ display: block;
+ padding-top: $sp-8;
+ padding-bottom: $gutter-spacing-sm;
+ overflow-y: auto;
+ flex: 1 1 auto;
+ }
+}
+
+.site-header {
+ display: flex;
+ min-height: $header-height;
+ align-items: center;
+
+ @include mq(md) {
+ height: $header-height;
+ max-height: $header-height;
+ border-bottom: $border $border-color;
+ }
+}
+
+.site-title {
+ @include container;
-.text-container {
- max-width: 750px;
+ flex-grow: 1;
+ display: flex;
+ height: 100%;
+ align-items: center;
+ padding-top: $sp-3;
+ padding-bottom: $sp-3;
+ color: $body-heading-color;
+ @include fs-6;
+
+ @include mq(md) {
+ padding-top: $sp-2;
+ padding-bottom: $sp-2;
+ }
}
-.container {
- max-width: 1140px;
-
- &.max-container {
- max-width: 100%;
- padding: 0;
- }
+@if variable-exists(logo) {
+ .site-logo {
+ width: 100%;
+ height: 100%;
+ background-image: url($logo);
+ background-repeat: no-repeat;
+ background-position: left center;
+ background-size: contain;
+ }
}
-header {
- color: #fff;
- padding: 20px 0;
- background: $brand-color; /* Old browsers */
- background: linear-gradient(to bottom, $brand-color 0%, $middle-gradient-color 100%) no-repeat $brand-color;
-
- a {
- color: #fff;
- text-decoration: none;
- z-index: 1;
- position: relative;
-
- &:hover {
- text-decoration: none;
- }
- }
-
- .company-name {
- font-size: 1.7em;
- line-height: 0;
-
- a {
- display: inline-block;
- }
-
- img {
- display: block;
- width: auto;
- }
- }
+.site-button {
+ display: flex;
+ height: 100%;
+ padding: $gutter-spacing-sm;
+ align-items: center;
}
-.content {
- background: #fff;
- padding: 1px 0 0 0;
- position: relative;
+@include mq(md) {
+ .site-header .site-button {
+ display: none;
+ }
}
-.screenshot{
- max-width: 100%;
- height: auto;
- display: block;
- box-shadow: 0 1px 0 #ccc, 0 1px 0 1px #eee;
- border-radius: 2px;
- margin-left: auto;
- margin-right: auto;
- background: #DDD url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2244%22%20height%3D%2212%22%20viewBox%3D%220%200%2044%2012%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%224%22%20fill%3D%22%23eee%22%20%2F%3E%3Ccircle%20cx%3D%2222%22%20cy%3D%226%22%20r%3D%224%22%20fill%3D%22%23eee%22%20%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%226%22%20r%3D%224%22%20fill%3D%22%23eee%22%20%2F%3E%3C%2Fsvg%3E') 4px 4px no-repeat;
- padding: 20px 0 0 0;
- position: relative;
+.site-title:hover {
+ background-image: linear-gradient(
+ -90deg,
+ rgba($feedback-color, 1) 0%,
+ rgba($feedback-color, 0.8) 80%,
+ rgba($feedback-color, 0) 100%
+ );
}
-section {
- padding: 100px 0;
+.site-button:hover {
+ background-image: linear-gradient(
+ -90deg,
+ rgba($feedback-color, 1) 0%,
+ rgba($feedback-color, 0.8) 100%
+ );
}
-section + section {
- padding-top: 0;
-}
+// stylelint-disable selector-max-type
-.subtext {
- margin-top: 10px;
- text-align: center;
-}
+body {
+ position: relative;
+ padding-bottom: $sp-10;
+ overflow-y: scroll;
-
-.cta {
- margin: 60px 0;
+ @include mq(md) {
+ position: static;
+ padding-bottom: 0;
+ }
}
-.page h2 {
- text-align: center;
-}
+// stylelint-enable selector-max-type
-blockquote {
- padding: 18px 25px;
- margin: 0;
- quotes: "\201C""\201D""\2018""\2019";
- font-style: italic;
+.site-footer {
+ @include container;
- .author {
- display: block;
- font-weight: bold;
- margin: 10px 0 0 0;
- font-size: .85em;
- font-style: normal;
- }
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ padding-top: $sp-4;
+ padding-bottom: $sp-4;
+ color: $grey-dk-000;
+ @include fs-2;
- p {
- display: inline;
- }
+ @include mq(md) {
+ position: static;
+ justify-self: end;
+ }
}
-blockquote:before {
- color: #ccc;
- content: open-quote;
- font-size: 4em;
- line-height: 0.1em;
- margin-right: 0.25em;
- vertical-align: -0.4em;
-}
-
-.square-image {
- width: 150px;
- height: 150px;
- overflow: hidden;
- margin: 25px auto 0 auto;
- position: relative;
- border-radius: 200px;
-
- img {
- position: absolute;
- left: -1000%;
- right: -1000%;
- top: -1000%;
- bottom: -1000%;
- margin: auto;
- width: 300px;
- }
-}
-
-.page {
- margin-bottom: 0;
- padding-bottom: 80px;
-}
-
-.center-text {
- text-align: center;
-}
-
-.editor-link {
- display: none;
- margin-top: 0;
- .btn {
- border: 0;
- border-radius: 2px;
- width: 100%;
- max-width: 500px;
- box-sizing: border-box;
- font-size: 2rem;
- text-decoration: none;
- padding: 10px 15px;
- margin: 0;
- font-size: 18px;
- cursor: pointer;
- background-color: #f7e064;
- color: #333;
- box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2);
-
- &:hover {
- background-color: #f4d525;
- color: #333;
- }
- }
-
+.icon {
+ width: $sp-5;
+ height: $sp-5;
+ color: $link-color;
}
diff --git a/_sass/mixins/columns.scss b/_sass/mixins/columns.scss
deleted file mode 100644
index 010eae9..0000000
--- a/_sass/mixins/columns.scss
+++ /dev/null
@@ -1,5 +0,0 @@
-@mixin columns($value) {
- columns: $value;
- -webkit-columns: $value;
- -moz-columns: $value;
-}
diff --git a/_sass/mixins/flexbox.scss b/_sass/mixins/flexbox.scss
deleted file mode 100644
index 92a03fd..0000000
--- a/_sass/mixins/flexbox.scss
+++ /dev/null
@@ -1,394 +0,0 @@
-// Flexbox Mixins
-// http://philipwalton.github.io/solved-by-flexbox/
-// https://github.com/philipwalton/solved-by-flexbox
-//
-// Copyright (c) 2013 Brian Franco
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-// This is a set of mixins for those who want to mess around with flexbox
-// using the native support of current browsers. For full support table
-// check: http://caniuse.com/flexbox
-//
-// Basically this will use:
-//
-// * Fallback, old syntax (IE10, mobile webkit browsers - no wrapping)
-// * Final standards syntax (FF, Safari, Chrome, IE11, Opera)
-//
-// This was inspired by:
-//
-// * http://dev.opera.com/articles/view/advanced-cross-browser-flexbox/
-//
-// With help from:
-//
-// * http://w3.org/tr/css3-flexbox/
-// * http://the-echoplex.net/flexyboxes/
-// * http://msdn.microsoft.com/en-us/library/ie/hh772069(v=vs.85).aspx
-// * http://css-tricks.com/using-flexbox/
-// * http://dev.opera.com/articles/view/advanced-cross-browser-flexbox/
-// * https://developer.mozilla.org/en-us/docs/web/guide/css/flexible_boxes
-
-//----------------------------------------------------------------------
-
-// Flexbox Containers
-//
-// The 'flex' value causes an element to generate a block-level flex
-// container box.
-//
-// The 'inline-flex' value causes an element to generate a inline-level
-// flex container box.
-//
-// display: flex | inline-flex
-//
-// http://w3.org/tr/css3-flexbox/#flex-containers
-//
-// (Placeholder selectors for each type, for those who rather @extend)
-
-@mixin flexbox {
- display: -webkit-box;
- display: -webkit-flex;
- display: -moz-flex;
- display: -ms-flexbox;
- display: flex;
-}
-
-%flexbox { @include flexbox; }
-
-//----------------------------------
-
-@mixin inline-flex {
- display: -webkit-inline-box;
- display: -webkit-inline-flex;
- display: -moz-inline-flex;
- display: -ms-inline-flexbox;
- display: inline-flex;
-}
-
-%inline-flex { @include inline-flex; }
-
-//----------------------------------------------------------------------
-
-// Flexbox Direction
-//
-// The 'flex-direction' property specifies how flex items are placed in
-// the flex container, by setting the direction of the flex container's
-// main axis. This determines the direction that flex items are laid out in.
-//
-// Values: row | row-reverse | column | column-reverse
-// Default: row
-//
-// http://w3.org/tr/css3-flexbox/#flex-direction-property
-
-@mixin flex-direction($value: row) {
- @if $value == row-reverse {
- -webkit-box-direction: reverse;
- -webkit-box-orient: horizontal;
- } @else if $value == column {
- -webkit-box-direction: normal;
- -webkit-box-orient: vertical;
- } @else if $value == column-reverse {
- -webkit-box-direction: reverse;
- -webkit-box-orient: vertical;
- } @else {
- -webkit-box-direction: normal;
- -webkit-box-orient: horizontal;
- }
- -webkit-flex-direction: $value;
- -moz-flex-direction: $value;
- -ms-flex-direction: $value;
- flex-direction: $value;
-}
- // Shorter version:
- @mixin flex-dir($args...) { @include flex-direction($args...); }
-
-//----------------------------------------------------------------------
-
-// Flexbox Wrap
-//
-// The 'flex-wrap' property controls whether the flex container is single-line
-// or multi-line, and the direction of the cross-axis, which determines
-// the direction new lines are stacked in.
-//
-// Values: nowrap | wrap | wrap-reverse
-// Default: nowrap
-//
-// http://w3.org/tr/css3-flexbox/#flex-wrap-property
-
-@mixin flex-wrap($value: nowrap) {
- // No Webkit Box fallback.
- -webkit-flex-wrap: $value;
- -moz-flex-wrap: $value;
- @if $value == nowrap {
- -ms-flex-wrap: none;
- } @else {
- -ms-flex-wrap: $value;
- }
- flex-wrap: $value;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Flow (shorthand)
-//
-// The 'flex-flow' property is a shorthand for setting the 'flex-direction'
-// and 'flex-wrap' properties, which together define the flex container's
-// main and cross axes.
-//
-// Values: |
-// Default: row nowrap
-//
-// http://w3.org/tr/css3-flexbox/#flex-flow-property
-
-@mixin flex-flow($values: (row nowrap)) {
- // No Webkit Box fallback.
- -webkit-flex-flow: $values;
- -moz-flex-flow: $values;
- -ms-flex-flow: $values;
- flex-flow: $values;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Order
-//
-// The 'order' property controls the order in which flex items appear within
-// their flex container, by assigning them to ordinal groups.
-//
-// Default: 0
-//
-// http://w3.org/tr/css3-flexbox/#order-property
-
-@mixin order($int: 0) {
- -webkit-box-ordinal-group: $int + 1;
- -webkit-order: $int;
- -moz-order: $int;
- -ms-flex-order: $int;
- order: $int;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Grow
-//
-// The 'flex-grow' property sets the flex grow factor. Negative numbers
-// are invalid.
-//
-// Default: 0
-//
-// http://w3.org/tr/css3-flexbox/#flex-grow-property
-
-@mixin flex-grow($int: 0) {
- -webkit-box-flex: $int;
- -webkit-flex-grow: $int;
- -moz-flex-grow: $int;
- -ms-flex-positive: $int;
- flex-grow: $int;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Shrink
-//
-// The 'flex-shrink' property sets the flex shrink factor. Negative numbers
-// are invalid.
-//
-// Default: 1
-//
-// http://w3.org/tr/css3-flexbox/#flex-shrink-property
-
-@mixin flex-shrink($int: 1) {
- -webkit-flex-shrink: $int;
- -moz-flex-shrink: $int;
- -ms-flex-negative: $int;
- flex-shrink: $int;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Basis
-//
-// The 'flex-basis' property sets the flex basis. Negative lengths are invalid.
-//
-// Values: Like "width"
-// Default: auto
-//
-// http://www.w3.org/TR/css3-flexbox/#flex-basis-property
-
-@mixin flex-basis($value: auto) {
- -webkit-flex-basis: $value;
- -moz-flex-basis: $value;
- -ms-flex-preferred-size: $value;
- flex-basis: $value;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox "Flex" (shorthand)
-//
-// The 'flex' property specifies the components of a flexible length: the
-// flex grow factor and flex shrink factor, and the flex basis. When an
-// element is a flex item, 'flex' is consulted instead of the main size
-// property to determine the main size of the element. If an element is
-// not a flex item, 'flex' has no effect.
-//
-// Values: none | ||
-// Default: See individual properties (1 1 0).
-//
-// http://w3.org/tr/css3-flexbox/#flex-property
-
-@mixin flex($fg: 1, $fs: null, $fb: null) {
-
- // Set a variable to be used by box-flex properties
- $fg-boxflex: $fg;
-
- // Box-Flex only supports a flex-grow value so let's grab the
- // first item in the list and just return that.
- @if type-of($fg) == 'list' {
- $fg-boxflex: nth($fg, 1);
- }
-
- -webkit-box-flex: $fg-boxflex;
- -webkit-flex: $fg $fs $fb;
- -moz-box-flex: $fg-boxflex;
- -moz-flex: $fg $fs $fb;
- -ms-flex: $fg $fs $fb;
- flex: $fg $fs $fb;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Justify Content
-//
-// The 'justify-content' property aligns flex items along the main axis
-// of the current line of the flex container. This is done after any flexible
-// lengths and any auto margins have been resolved. Typically it helps distribute
-// extra free space leftover when either all the flex items on a line are
-// inflexible, or are flexible but have reached their maximum size. It also
-// exerts some control over the alignment of items when they overflow the line.
-//
-// Note: 'space-*' values not supported in older syntaxes.
-//
-// Values: flex-start | flex-end | center | space-between | space-around
-// Default: flex-start
-//
-// http://w3.org/tr/css3-flexbox/#justify-content-property
-
-@mixin justify-content($value: flex-start) {
- @if $value == flex-start {
- -webkit-box-pack: start;
- -ms-flex-pack: start;
- } @else if $value == flex-end {
- -webkit-box-pack: end;
- -ms-flex-pack: end;
- } @else if $value == space-between {
- -webkit-box-pack: justify;
- -ms-flex-pack: justify;
- } @else if $value == space-around {
- -ms-flex-pack: distribute;
- } @else {
- -webkit-box-pack: $value;
- -ms-flex-pack: $value;
- }
- -webkit-justify-content: $value;
- -moz-justify-content: $value;
- justify-content: $value;
-}
- // Shorter version:
- @mixin flex-just($args...) { @include justify-content($args...); }
-
-//----------------------------------------------------------------------
-
-// Flexbox Align Items
-//
-// Flex items can be aligned in the cross axis of the current line of the
-// flex container, similar to 'justify-content' but in the perpendicular
-// direction. 'align-items' sets the default alignment for all of the flex
-// container's items, including anonymous flex items. 'align-self' allows
-// this default alignment to be overridden for individual flex items. (For
-// anonymous flex items, 'align-self' always matches the value of 'align-items'
-// on their associated flex container.)
-//
-// Values: flex-start | flex-end | center | baseline | stretch
-// Default: stretch
-//
-// http://w3.org/tr/css3-flexbox/#align-items-property
-
-@mixin align-items($value: stretch) {
- @if $value == flex-start {
- -webkit-box-align: start;
- -ms-flex-align: start;
- } @else if $value == flex-end {
- -webkit-box-align: end;
- -ms-flex-align: end;
- } @else {
- -webkit-box-align: $value;
- -ms-flex-align: $value;
- }
- -webkit-align-items: $value;
- -moz-align-items: $value;
- align-items: $value;
-}
-
-//----------------------------------
-
-// Flexbox Align Self
-//
-// Values: auto | flex-start | flex-end | center | baseline | stretch
-// Default: auto
-
-@mixin align-self($value: auto) {
- // No Webkit Box Fallback.
- -webkit-align-self: $value;
- -moz-align-self: $value;
- @if $value == flex-start {
- -ms-flex-item-align: start;
- } @else if $value == flex-end {
- -ms-flex-item-align: end;
- } @else {
- -ms-flex-item-align: $value;
- }
- align-self: $value;
-}
-
-//----------------------------------------------------------------------
-
-// Flexbox Align Content
-//
-// The 'align-content' property aligns a flex container's lines within the
-// flex container when there is extra space in the cross-axis, similar to
-// how 'justify-content' aligns individual items within the main-axis. Note,
-// this property has no effect when the flexbox has only a single line.
-//
-// Values: flex-start | flex-end | center | space-between | space-around | stretch
-// Default: stretch
-//
-// http://w3.org/tr/css3-flexbox/#align-content-property
-
-@mixin align-content($value: stretch) {
- // No Webkit Box Fallback.
- -webkit-align-content: $value;
- -moz-align-content: $value;
- @if $value == flex-start {
- -ms-flex-line-pack: start;
- } @else if $value == flex-end {
- -ms-flex-line-pack: end;
- } @else {
- -ms-flex-line-pack: $value;
- }
- align-content: $value;
-}
diff --git a/_sass/navigation.scss b/_sass/navigation.scss
index b2a4b62..011a32e 100644
--- a/_sass/navigation.scss
+++ b/_sass/navigation.scss
@@ -1,86 +1,235 @@
-.nav-open nav {
- border-bottom: 1px dotted rgba(255, 255, 255, .2);
- padding: 10px 0;
- a {
- display: block;
- }
-
- @media #{$mid-point} {
- border: 0;
- padding: 0 20px;
-
- a {
- display: inline;
- }
- }
+// Main nav, breadcrumb, etc...
+// stylelint-disable selector-no-type, max-nesting-depth, selector-max-compound-selectors, selector-max-type, selector-max-specificity
+
+.nav-list {
+ padding: 0;
+ margin-top: 0;
+ margin-bottom: 0;
+ list-style: none;
+
+ .nav-list-item {
+ @include fs-4;
+
+ position: relative;
+ margin: 0;
+
+ @include mq(md) {
+ @include fs-3;
+ }
+
+ .nav-list-link {
+ display: block;
+ min-height: $nav-list-item-height-sm;
+ padding-top: $sp-1;
+ padding-bottom: $sp-1;
+ line-height: #{$nav-list-item-height-sm - 2 * $sp-1};
+ @if $nav-list-expander-right {
+ padding-right: $nav-list-item-height-sm;
+ padding-left: $gutter-spacing-sm;
+ } @else {
+ padding-right: $gutter-spacing-sm;
+ padding-left: $nav-list-item-height-sm;
+ }
+
+ @include mq(md) {
+ min-height: $nav-list-item-height;
+ line-height: #{$nav-list-item-height - 2 * $sp-1};
+ @if $nav-list-expander-right {
+ padding-right: $nav-list-item-height;
+ padding-left: $gutter-spacing;
+ } @else {
+ padding-right: $gutter-spacing;
+ padding-left: $nav-list-item-height;
+ }
+ }
+
+ &.external > svg {
+ width: $sp-4;
+ height: $sp-4;
+ vertical-align: text-bottom;
+ }
+
+ &.active {
+ font-weight: 600;
+ text-decoration: none;
+ }
+
+ &:hover,
+ &.active {
+ background-image: linear-gradient(
+ -90deg,
+ rgba($feedback-color, 1) 0%,
+ rgba($feedback-color, 0.8) 80%,
+ rgba($feedback-color, 0) 100%
+ );
+ }
+ }
+
+ .nav-list-expander {
+ position: absolute;
+ @if $nav-list-expander-right {
+ right: 0;
+ }
+
+ width: $nav-list-item-height-sm;
+ height: $nav-list-item-height-sm;
+ padding: #{$nav-list-item-height-sm * 0.25};
+ color: $link-color;
+
+ @include mq(md) {
+ width: $nav-list-item-height;
+ height: $nav-list-item-height;
+ padding: #{$nav-list-item-height * 0.25};
+ }
+
+ &:hover {
+ background-image: linear-gradient(
+ -90deg,
+ rgba($feedback-color, 1) 0%,
+ rgba($feedback-color, 0.8) 100%
+ );
+ }
+
+ @if $nav-list-expander-right {
+ svg {
+ transform: rotate(90deg);
+ }
+ }
+ }
+
+ > .nav-list {
+ display: none;
+ padding-left: $sp-3;
+ list-style: none;
+
+ .nav-list-item {
+ position: relative;
+
+ .nav-list-link {
+ color: $nav-child-link-color;
+ }
+
+ .nav-list-expander {
+ color: $nav-child-link-color;
+ }
+ }
+ }
+
+ &.active {
+ > .nav-list-expander svg {
+ @if $nav-list-expander-right {
+ transform: rotate(-90deg);
+ } @else {
+ transform: rotate(90deg);
+ }
+ }
+
+ > .nav-list {
+ display: block;
+ }
+ }
+ }
}
-nav {
- text-transform: uppercase;
- font-size: .8em;
- width: 100%;
-
- @media #{$mid-point} {
- text-align: right;
- position: absolute;
- top: 13px;
- right: 0;
- padding: 0 20px;
- }
-
-
- a {
- margin: 0 3px;
- padding: 20px 10px;
- border-bottom: 1px solid rgba(255,255,255,0);
- color: rgba(255,255,255,.8);
- transition: .2s ease-in-out;
- display: none;
-
- @media #{$mid-point} {
- display: inline;
- padding: 10px;
- }
-
-
- &.nav-toggle {
- display: inline;
- position: absolute;
- right: 10px;
- top: -22px;
- font-size: 1.9em;
- border: 0;
-
- @media #{$mid-point} {
- display: none;
- }
-
- &:hover {
- border: 0;
- }
- }
- }
-
- a:hover {
-
- border-bottom: 1px solid rgba(255,255,255,.3);
- color: #fff;
- }
-
- @media #{$mid-point} {
- a.highlight {
- border: 1px #ccc solid;
- border-radius: 5px;
-
- &:hover {
- background: #fff;
- color: $brand-color;
- }
- }
- }
-
- a.active {
- color: #fff;
- }
+.nav-category {
+ padding: $sp-2 $gutter-spacing-sm;
+ font-weight: 600;
+ text-align: start;
+ text-transform: uppercase;
+ border-bottom: $border $border-color;
+ @include fs-2;
+
+ @include mq(md) {
+ padding: $sp-2 $gutter-spacing;
+ margin-top: $gutter-spacing-sm;
+ text-align: start;
+
+ &:first-child {
+ margin-top: 0;
+ }
+ }
+}
+
+.nav-list.nav-category-list {
+ > .nav-list-item {
+ margin: 0;
+
+ > .nav-list {
+ padding: 0;
+
+ > .nav-list-item {
+ > .nav-list-link {
+ color: $link-color;
+ }
+
+ > .nav-list-expander {
+ color: $link-color;
+ }
+ }
+ }
+ }
+}
+
+// Aux nav
+
+.aux-nav {
+ height: 100%;
+ overflow-x: auto;
+ @include fs-2;
+
+ .aux-nav-list {
+ display: flex;
+ height: 100%;
+ padding: 0;
+ margin: 0;
+ list-style: none;
+ }
+
+ .aux-nav-list-item {
+ display: inline-block;
+ height: 100%;
+ padding: 0;
+ margin: 0;
+ }
+
+ @include mq(md) {
+ padding-right: $gutter-spacing-sm;
+ }
+}
+
+// Breadcrumb nav
+
+.breadcrumb-nav {
+ @include mq(md) {
+ margin-top: -$sp-4;
+ }
+}
+
+.breadcrumb-nav-list {
+ padding-left: 0;
+ margin-bottom: $sp-3;
+ list-style: none;
+}
+.breadcrumb-nav-list-item {
+ display: table-cell;
+ @include fs-2;
+
+ &::before {
+ display: none;
+ }
+
+ &::after {
+ display: inline-block;
+ margin-right: $sp-2;
+ margin-left: $sp-2;
+ color: $grey-dk-000;
+ content: "/";
+ }
+
+ &:last-child {
+ &::after {
+ content: "";
+ }
+ }
}
diff --git a/_sass/pricing.scss b/_sass/pricing.scss
deleted file mode 100644
index 19b92ed..0000000
--- a/_sass/pricing.scss
+++ /dev/null
@@ -1,71 +0,0 @@
-.plans {
- @extend %flexbox;
- @include flex-flow(wrap);
- padding: 50px 0 30px 0;
-
- .plan {
- list-style: none;
- padding: 0;
- margin: 0 10px 50px 10px;
- text-align: center;
- border: 1px solid #eee;
- border-radius: 5px;
- box-shadow: 0px 0px 10px #eee;
- width: 100%;
-
- .highlighted {
- font-size: 1.2em
- }
-
- .pricing-cta {
- padding: 0;
-
- a {
- display: block;
- box-sizing: border-box;
- padding: 20px 0;
- border-radius: 0 0 2px 2px;
- border: 0;
- }
- }
-
- @media #{$desktop} {
- -webkit-flex: 1;
- flex: 1;
- }
-
- li {
- border-top-right-radius: 5px;
- border-top-left-radius: 5px;
- padding: 20px 0;
- h3 {
- padding: 0;
- margin: 0;
- color: #fff;
- font-weight: normal;
- }
- }
- }
-}
-
-.faq {
- @media #{$desktop} {
- @include columns(2);
- }
- color: #666;
- div {
- break-inside: avoid;
- padding: 25px 0;
- }
-
- dt {
- font-weight: bold;
- margin: 0 0 5px 0;
- }
-
- dd {
- padding: 0;
- margin: 0;
-
- }
-}
diff --git a/_sass/staff.scss b/_sass/staff.scss
deleted file mode 100644
index 78cc262..0000000
--- a/_sass/staff.scss
+++ /dev/null
@@ -1,38 +0,0 @@
-.staff {
- padding: 0;
- list-style: none;
- @extend %flexbox;
- @include flex-flow(wrap);
- text-align: center;
- li {
- padding: 30px 20px;
- box-sizing: border-box;
- width: 100%;
-
- @media #{$tablet} {
- @include flex(1, 1, 45%);
- }
-
- @media #{$desktop} {
- @include flex(1, 1, 29%);
- }
-
- }
-
- .square-image {
- width: 200px;
- height: 200px;
- img {
- border-radius: 200px;
- }
- }
-
- .name {
- font-size: 1.3em;
- margin-top: 20px;
- }
-
- .position {
- color: #666;
- }
-}
diff --git a/_sass/variables.scss b/_sass/variables.scss
deleted file mode 100644
index 620beb8..0000000
--- a/_sass/variables.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-$brand-color: #4182e4;
-$secondary-brand-color: #4182e4;
-$middle-gradient-color: mix($brand-color, $secondary-brand-color, 95%);
-
-// Breakpoints
-$tablet: "(min-width: 450px)";
-$mid-point: "(min-width: 620px)";
-$desktop: "(min-width: 768px)";
diff --git a/_staff_members/_defaults.md b/_staff_members/_defaults.md
deleted file mode 100644
index 38ce5dc..0000000
--- a/_staff_members/_defaults.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name:
-position:
-image_path:
-twitter:
-blurb:
----
diff --git a/_staff_members/anna.md b/_staff_members/anna.md
deleted file mode 100644
index a1c3083..0000000
--- a/_staff_members/anna.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Anna Thompson
-position: Marketing
-image_path: https://source.unsplash.com/collection/139386/601x601?a=.png
-twitter: CloudCannonApp
-blurb: Anna likes long walks on the beach and buffet breakfast.
----
diff --git a/_staff_members/betty.md b/_staff_members/betty.md
deleted file mode 100644
index b3b622d..0000000
--- a/_staff_members/betty.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Betty Jefferson
-position: Developer
-image_path: https://source.unsplash.com/collection/139386/602x602?a=.png
-twitter: CloudCannonApp
-blurb: Betty is a bookworm who will typically have four books on the go.
----
diff --git a/_staff_members/gerald.md b/_staff_members/gerald.md
deleted file mode 100644
index 012df97..0000000
--- a/_staff_members/gerald.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Gerald Freeman
-position: Sales
-image_path: https://source.unsplash.com/collection/139386/603x603?a=.png
-twitter: CloudCannonApp
-blurb: Gerald loves going to bike rides and spending time with his family.
----
diff --git a/_staff_members/james.md b/_staff_members/james.md
deleted file mode 100644
index b1a9745..0000000
--- a/_staff_members/james.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: James Lopez
-position: Developer
-image_path: https://source.unsplash.com/collection/139386/604x604?a=.png
-twitter: CloudCannonApp
-blurb: James spends his weekends watching his favourite NBA team - L.A. Clippers.
----
diff --git a/_staff_members/robin.md b/_staff_members/robin.md
deleted file mode 100644
index 9667a41..0000000
--- a/_staff_members/robin.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Robin Herrera
-position: CEO
-image_path: https://source.unsplash.com/collection/139386/605x605?a=.png
-twitter: CloudCannonApp
-blurb: Robin is often found tending to her majestic vegetable garden.
----
diff --git a/_staff_members/tom.md b/_staff_members/tom.md
deleted file mode 100644
index 60d01e4..0000000
--- a/_staff_members/tom.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Tom Wilson
-position: CTO
-image_path: https://source.unsplash.com/collection/139386/600x600?a=.png
-twitter: CloudCannonApp
-blurb: Tom likes to travel and has visited over 50 countries.
----
diff --git a/about.html b/about.html
deleted file mode 100644
index b9978db..0000000
--- a/about.html
+++ /dev/null
@@ -1,17 +0,0 @@
----
-title: Our team
-description: >-
- We've built an amazing, fantastic team of developers, marketers, designers and
- sales people.
----
-
-
diff --git a/about.markdown b/about.markdown
deleted file mode 100644
index 8b4e0b2..0000000
--- a/about.markdown
+++ /dev/null
@@ -1,18 +0,0 @@
----
-layout: page
-title: About
-permalink: /about/
----
-
-This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](https://jekyllrb.com/)
-
-You can find the source code for Minima at GitHub:
-[jekyll][jekyll-organization] /
-[minima](https://github.com/jekyll/minima)
-
-You can find the source code for Jekyll at GitHub:
-[jekyll][jekyll-organization] /
-[jekyll](https://github.com/jekyll/jekyll)
-
-
-[jekyll-organization]: https://github.com/jekyll
diff --git a/apple-touch-icon.png b/apple-touch-icon.png
deleted file mode 100644
index 65b56de..0000000
Binary files a/apple-touch-icon.png and /dev/null differ
diff --git a/blog/index.html b/blog/index.html
deleted file mode 100644
index 80ce1e3..0000000
--- a/blog/index.html
+++ /dev/null
@@ -1,26 +0,0 @@
----
-title: Blog
-description: Keep up with the latest news.
----
-
-
张强,浙江大学“科创百人”研究员,博士生导师。曾在2020-2021年在英国伦敦大学学院(University College London)计算机系担任博后研究员, 2017-2020年曾在该系攻读博士学位,导师是Emine Yilmaz教授。 他于2014-2017年在中国科学院攻读硕士,2010-2014年在山东大学攻取学士学位。 他的研究主要涉及到机器学习、数据挖掘、自然语言处理和生物分子智造等领域, 曾参加多项英国政府EPSRC和企业的资助研究项目,在NeurIPS、ICML、WWW等人工智能顶级学术会议和SCI期刊发表十余篇文章。 他曾获得Google NLP Grant 和Nvidia GPU Grant, 在Facebook AI Research 和Amazon Alexa 等国际知名公司团队担任过研究型科学家实习生,拥有丰富的学术研究和工业项目经历。
※Yin Fang, Qiang Zhang, Haihong Yang, Xiang Zhuang, Shumin Deng, Wen Zhang, Ming Qin, Zhuo Chen, Xiaohui Fan, Huajun Chen. Molecular Contrastive Learning with Chemical Element Knowledge Graph[J]. 2021.
- (accepted in AAAI 2022 Main track)
-
※Yushan Zhu, Wen Zhang, Mingyang Chen, Hui Chen, Xu Cheng, Wei Zhang, and Huajun Chen. 2022. DualDE: Dually Distilling Knowledge Graph Embedding for Faster and Cheaper Reasoning. In Proceedings of the Fifteenth ACM International Conference on Web Search and Data Mining (WSDM '22). Association for Computing Machinery, New York, NY, USA, 1516–1524. DOI:https://doi.org/10.1145/3488560.3498437
-
※Hongbin Ye, Ningyu Zhang, Zhen Bi, Shumin Deng, Chuanqi Tan, Hui Chen, Fei Huang, Haujun Chen. Learning to Ask for Data-Efficient Event Argument Extraction (Student Abstract)[J]. Argument, 2022, 80(90): 100.
-
※Xin Shao, Haihong Yang, Xiang Zhuang, Jie Liao, Penghui Yang, Junyun Cheng, Xiaoyan Lu, Huajun Chen. "scDeepSort: a pre-trained cell-type annotation method for single-cell transcriptomics using deep learning with a weighted graph neural network." Nucleic acids research 49.21 (2021): e122-e122.
-
※Chen, Huajun, Shumin Deng, Wen Zhang, Zezhong Xu, Juan Li, Evgeny Kharlamov. "Neural symbolic reasoning with knowledge graphs: Knowledge extraction, relational reasoning, and inconsistency checking." Fundamental Research 1.5 (2021): 565-573.
-
※Geng, Yuxia, Jiaoyan Chen, Zhuo Chen, Jeff Z.Pan, Zhiquan Ye, Zonggang Yuan, Yantao Jia, Huajun Chen. "OntoZSL: Ontology-enhanced zero-shot learning." Proceedings of the Web Conference 2021. 2021.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/index.html b/index.html
deleted file mode 100644
index ab6e383..0000000
--- a/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: The last sales CRM you'll ever need
-description: Track and optimize your sales team in real time
----
-
-
Hydra learns your business. By analyzing your sales data, Hydra optimizes your sales process and show you where you should be spending your resources.
-
-
-
-
-
-
-
-
-
-
-
How can I keep track of my sales team?
-
Hydra learns your business. By analyzing your sales data, Hydra optimizes your sales process and show you where you should be spending your resources.
-
-
-
-
-
-
-
-
-
-
-
How can I forecast the next 90 days?
-
Hydra learns your business. By analyzing your sales data, Hydra optimizes your sales process and show you where you should be spending your resources.
-
-
-
-
-
-
-
-
-
-
-
-
-
Hydra has shaped the business we have today. We have a repeatable sales process and a strategy to scale our team. I recommend Hydra to any business looking to improve their sales.
"),x={"float":"left",position:"relative",opacity:1,zIndex:2},y={"float":"none",position:"absolute",opacity:0,zIndex:1},F=function(){var b=(document.body||document.documentElement).style,a="transition";if("string"===typeof b[a])return!0;s=["Moz","Webkit","Khtml","O","ms"];var a=a.charAt(0).toUpperCase()+a.substr(1),c;for(c=0;c"+a+""});k.append(A);l.navContainer?c(a.navContainer).append(k):f.after(k)}a.manualControls&&(k=c(a.manualControls),k.addClass(g+"_tabs "+d+"_tabs"));(a.pager||a.manualControls)&&k.find("li").each(function(a){c(this).addClass(w+(a+1))});if(a.pager||a.manualControls)q=
-k.find("a"),r=function(a){q.closest("li").removeClass(v).eq(a).addClass(v)};a.auto&&(t=function(){p=setInterval(function(){e.stop(!0,!0);var b=n+1"+a.prevText+""+a.nextText+"";l.navContainer?c(a.navContainer).append(g):f.after(g);var d=c("."+d+"_nav"),G=d.filter(".prev");d.bind("click",function(b){b.preventDefault();b=c("."+j);if(!b.queue("fx").length){var d=e.index(b);b=d-1;d=d+1u&&f.css("width",u)};H();c(I).bind("resize",function(){H()})}})}})(jQuery,this,0);
diff --git a/pricing.html b/pricing.html
deleted file mode 100644
index 848d402..0000000
--- a/pricing.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: Pricing
-heading: Find the perfect plan for your business
-description: All plans include our award winning sales optimization solution to track your sales in real time.
-pricing_table:
- - name: Basic
- color: "#8e8e8e"
- features:
- - text: $25 per month
- highlight: true
- - text: Up to 5 users
- highlight: false
- - text: Basic lead scoring
- highlight: false
- - text: CRM
- highlight: false
- - text: Basic reporting
- highlight: false
- - text: Sales map
- highlight: false
- call_to_action:
- link: http://mysite.com?plan=basic
- text: Get started
- - name: Pro
- color: "#4a4a4a"
- features:
- - text: $99 per month
- highlight: true
- - text: Everything in Basic
- highlight: false
- - text: Up to 25 users
- highlight: false
- - text: Advanced lead scoring
- highlight: false
- - text: Pipeline management
- highlight: false
- - text: Advanced reporting
- highlight: false
- call_to_action:
- link: http://mysite.com?plan=pro
- text: Get started
- - name: Professional
- color: "#000000"
- features:
- - text: $299 per month
- highlight: true
- - text: Everything in Basic and Pro
- highlight: false
- - text: Up to 100 users
- highlight: false
- - text: Campaign builder
- highlight: false
- - text: Machine learning
- highlight: false
- - text: Calendar
- highlight: false
- call_to_action:
- link: http://mysite.com?plan=professional
- text: Get started
-faq:
- - question: What types of payment do you accept?
- answer: Credit cards including MasterCard, Visa or American Express.
- - question: Can I change my plan at a later time?
- answer: Yes, you can upgrade and downgrade your plan at anytime.
- - question: Do you offer pricing for nonprofit organizations?
- answer: Yes, send us a message and we'll set you up on our nonprofit pricing.
- - question: Questions?
- answer: Contact us for any further questions at john@business.com.
----
-