{{ page.subheadline }}
{% endif %} +diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000000..c2b8acd53f --- /dev/null +++ b/Gemfile @@ -0,0 +1,5 @@ +source 'https://rubygems.org' + +gem 'jekyll', '3.0.2' +gem 'jekyll-gist' +gem 'jekyll-paginate' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000000..86f041e52e --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,53 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.3.8) + colorator (0.1) + faraday (0.9.2) + multipart-post (>= 1.2, < 3) + ffi (1.9.10) + jekyll (3.0.2) + colorator (~> 0.1) + jekyll-sass-converter (~> 1.0) + jekyll-watch (~> 1.1) + kramdown (~> 1.3) + liquid (~> 3.0) + mercenary (~> 0.3.3) + rouge (~> 1.7) + safe_yaml (~> 1.0) + jekyll-gist (1.4.0) + octokit (~> 4.2) + jekyll-paginate (1.1.0) + jekyll-sass-converter (1.4.0) + sass (~> 3.4) + jekyll-watch (1.3.1) + listen (~> 3.0) + kramdown (1.9.0) + liquid (3.0.6) + listen (3.0.5) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + mercenary (0.3.5) + multipart-post (2.0.0) + octokit (4.2.0) + sawyer (~> 0.6.0, >= 0.5.3) + rb-fsevent (0.9.7) + rb-inotify (0.9.7) + ffi (>= 0.5.0) + rouge (1.10.1) + safe_yaml (1.0.4) + sass (3.4.21) + sawyer (0.6.0) + addressable (~> 2.3.5) + faraday (~> 0.8, < 0.10) + +PLATFORMS + ruby + +DEPENDENCIES + jekyll (= 3.0.2) + jekyll-gist + jekyll-paginate + +BUNDLED WITH + 1.10.6 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000..67bbcc8323 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 Moritz »mo.« Sauer // Phlow.de + +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 31134f9162..bb4e2484d1 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # InnerSource Commons -This repo primarily serves to host the pages for InnerSource Commons. There's not much to be done in this branch yet. +This repo primarily serves to host the pages for InnerSource Commons. The master branch holds the source and the gh-pages branch holds the [Jekyll](https://jekyllrb.com/) rendered output. -If you'd like to add your case study to the collection, you'll want to switch to the gh-pages branch. \ No newline at end of file +## Contributing + +TODO: Add contributing guidelines. \ No newline at end of file diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000000..1a7ac22fb3 --- /dev/null +++ b/_config.yml @@ -0,0 +1,247 @@ +# ASCII-Font › http://patorjk.com/software/taag/#p=display&f=Slant&t=Phlow +# +# _____ _ __ _____ __ __ _ +# / ___/(_) /____ / ___/___ / /_/ /_(_)___ ____ ______ +# \__ \/ / __/ _ \ \__ \/ _ \/ __/ __/ / __ \/ __ `/ ___/ +# ___/ / / /_/ __/ ___/ / __/ /_/ /_/ / / / / /_/ (__ ) +# /____/_/\__/\___/ /____/\___/\__/\__/_/_/ /_/\__, /____/ +# /____/ +# +# Title of your website +title: 'InnerSource Commons' + +# The slogan describes your website and is used on homepage in
Maintained by PayPal and the InnerSource community.
' + +# Main author of the website +# See > authors.yml +author: cewilliams + +# This URL is the main address for absolute links. Don't include a slash at the end. +# +url: '' +baseurl: '' + +# This is for the editing function in _/includes/improve_content +# Leave it empty if your site is not on GitHub/GitHub Pages +improve_content: https://github.com/paypal/InnerSourceCommons/edit/gh-pages + +# This URL points directly to the images directory making +# things easier to link to images in posts and templates. It needs a slash at the end. +# +# Example: +# Markdown-Example for posts ![Image Text]({{ site.urlimg }}image.jpg) +# +urlimg: 'https://paypal.github.io/InnerSourceCommons/images/' + + +# Logo size is 600x80 pixels +logo: "logo.png" + + +# ____ _ __ _ +# / __ \____ _____ _(_)___ ____ _/ /_(_)___ ____ +# / /_/ / __ `/ __ `/ / __ \/ __ `/ __/ / __ \/ __ \ +# / ____/ /_/ / /_/ / / / / / /_/ / /_/ / /_/ / / / / +# /_/ \__,_/\__, /_/_/ /_/\__,_/\__/_/\____/_/ /_/ +# /____/ +# +gems: + - jekyll-gist + - jekyll-paginate +paginate: 5 # Paginates all X entries +paginate_path: "blog/page:num" # Pagination path › Important for blog page in /blog/ to work + + + + +# Theme works best with Kramdown (using the table of contents function) +markdown: kramdown +permalink: /:categories/:title/ +highlight: rouge +excerpt_separator: "" +include: ['.htaccess'] +# Exclude these files from your production _site +exclude: + - .sass-cache + - Gemfile + - Gemfile.lock + - LICENSE + - README.md + - INSTALL.md + + +# The language setting is used in /includes/header.html for html-settings +language: 'en' + + +# Used › default.html front-matter and compress.html +# Options › http://jch.penibelst.de +compress_html: + clippings: all + comments: [""] + endings: all + profile: false + ignore: + envs: [development] + + +# +# ____ ____ ____ +# / __ \___ / __/___ ___ __/ / /_ +# / / / / _ \/ /_/ __ `/ / / / / __/ +# / /_/ / __/ __/ /_/ / /_/ / / /_ +# /_____/\___/_/ \__,_/\__,_/_/\__/ +# +# Default Settings + +defaults: + - + scope: + path: '' # an empty string here means all files in the project + type: 'pages' + values: + show_meta: false # Hide metadata for all pages + # sidebar: # Possible values › left, right › by default there will be no sidebar + comments: false + author: cewilliams # Default author for pages + - + scope: + path: '' + type: 'posts' + values: + show_meta: true # Show metadata for all posts + # sidebar: # Possible values › left, right › by default there will be no sidebar + comments: false + author: cewilliams # Default author for posts + + + +# _ __ _ __ _ +# / | / /___ __ __(_)___ _____ _/ /_(_)___ ____ +# / |/ / __ `/ | / / / __ `/ __ `/ __/ / __ \/ __ \ +# / /| / /_/ /| |/ / / /_/ / /_/ / /_/ / /_/ / / / / +# /_/ |_/\__,_/ |___/_/\__, /\__,_/\__/_/\____/_/ /_/ +# /____/ +# +# Open _data/navigation.yml to adjust the left and right topbar navigation +# + + + +# _____ __________ +# / ___// ____/ __ \ +# \__ \/ __/ / / / / +# ___/ / /___/ /_/ / +# /____/_____/\____/ Verify Website to Webmaster Tools + +# google_author: 'https://plus.google.com/u/0/118311555303973066167' +# google_site_verification: 'Vk0IOJ2jwG_qEoG7fuEXYqv0m2rLa8P778Fi_GrsgEQ' +# bing_webmastertools_id: '0FB4C028ABCF07C908C54386ABD2D97F' +# alexa_verify_id: '' + + + +# ______ _ +# / ____/___ __ __(_)________ ____ _____ +# / /_ / __ `/ | / / / ___/ __ \/ __ \/ ___/ +# / __/ / /_/ /| |/ / / /__/ /_/ / / / (__ ) +# /_/ \__,_/ |___/_/\___/\____/_/ /_/____/ Favicon-Crap: Favicons, Chrome, Android & Apple Touch Buttons +# More information » https://mathiasbynens.be/notes/touch-icons + +favicon-32x32: 'favicon-32x32.png' +touch-icon-192x192: 'isc-logo-192.png' +apple-touch-icon-180x180-precomposed: 'isc-logo-180.png' +apple-touch-icon-152x152-precomposed: 'isc-logo-152-precomposed.png' +apple-touch-icon-144x144-precomposed: 'isc-logo-144-precomposed.png' +apple-touch-icon-120x120-precomposed: 'isc-logo-120-precomposed.png' +apple-touch-icon-114x114-precomposed: 'isc-logo-114-precomposed.png' +apple-touch-icon-76x76-precomposed: 'isc-logo-76-precomposed.png' +apple-touch-icon-72x72-precomposed: 'isc-logo-72-precomposed.png' +apple-touch-icon-precomposed: 'logo.png' +msapplication_tileimage: 'isc-logo-144.png' # Size 144x144 +msapplication_tilecolor: '#fabb00' + + +# ______ __ __ +# / ____/___ _________ / /_ ____ ____ / /__ +# / /_ / __ `/ ___/ _ \/ __ \/ __ \/ __ \/ //_/ +# / __/ / /_/ / /__/ __/ /_/ / /_/ / /_/ / ,< +# /_/ \__,_/\___/\___/_.___/\____/\____/_/|_| Facebook-Optimization › http://j.mp/fb_optimize + +# og_image: 'http://images.phlow.de/phlow/phlow_de-logo-512x.png' +# og_locale: 'en_EN' +# og_type: 'website' + + +# _____ _ __ __ ___ ___ +# / ___/____ _____(_)___ _/ / / |/ /__ ____/ (_)___ _ +# \__ \/ __ \/ ___/ / __ `/ / / /|_/ / _ \/ __ / / __ `/ +# ___/ / /_/ / /__/ / /_/ / / / / / / __/ /_/ / / /_/ / +# /____/\____/\___/_/\__,_/_/ /_/ /_/\___/\__,_/_/\__,_/ +# +# Open _data/socialmedia.yml to adjust the left and right topbar navigation +# + +socialmedia: + twitter: PayPalFLOW +# facebook: phlow.media + + +# ____ _ +# / __ \(_)________ ___ _______ +# / / / / / ___/ __ `/ / / / ___/ +# / /_/ / (__ ) /_/ / /_/ (__ ) +# /_____/_/____/\__, /\__,_/____/ +# /_/ +# +# used in _includes/comments + +# disqus_shortname: feelingresponsive + + +# _____ +# / ___/____ ___________ +# \__ \/ __ `/ ___/ ___/ +# ___/ / /_/ (__ |__ ) More › http://sass-lang.com/ +# /____/\__,_/____/____/ More › http://jekyllrb.com/docs/assets/#sassscss +# + +sass: + sass_dir: _sass + style: :compressed + + +# ___ __ __ _ +# / | ____ ____ _/ /_ __/ /_(_)_________ +# / /| | / __ \/ __ `/ / / / / __/ / ___/ ___/ +# / ___ |/ / / / /_/ / / /_/ / /_/ / /__(__ ) +# /_/ |_/_/ /_/\__,_/_/\__, /\__/_/\___/____/ https://www.google.com/analytics/ +# /____/ +# +# used in _includes/footer_scripts + +# google_analytics_tracking_id: UA-60112281-1 + + + +# _ _ _ +# | |_ __ ___ _| | __| |_ ___ +# | __/ _` \ \ /\ / / |/ /| __/ _ \ +# | || (_| |\ V V /| < | || (_) | +# \__\__,_| \_/\_/ |_|\_(_)__\___/ More › https://www.tawk.to/knowledgebase/ +# +# tawk.to is a free live chat app that lets you monitor and chat +# with visitors on your website or from a free customizable page +# +# To load the script add tawkto: true in front matter of each page +# +# used in _includes/footer_scripts + +# tawkto_embed_uri: diff --git a/_config_dev.yml b/_config_dev.yml new file mode 100644 index 0000000000..2b7844f242 --- /dev/null +++ b/_config_dev.yml @@ -0,0 +1,26 @@ +# +# This config-file is only needed for development. Instead of changing the url +# everytime you work locally on the project, you start both config-files, overwriting +# the first one with the development variables needed. +# +# Start development with › $ jekyll serve --config _config.yml,_config_dev.yml + +url: 'http://localhost:4000' +baseurl: '' +urlimg: 'http://localhost:4000/images/' + +# See › https://github.com/jekyll/jekyll-gist#disabling-noscript-support +gist: + noscript: false + +sass: + # http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style + style: :expanded + line_numbers: true + # trace_selectors: true + # debug_info: true + # FUTURE https://github.com/jekyll/jekyll-sass-converter/issues/12 + sourcemap: true + +# Disable when not in production +google_analytics_tracking_id: diff --git a/_data/authors.yml b/_data/authors.yml new file mode 100644 index 0000000000..3ddb4764db --- /dev/null +++ b/_data/authors.yml @@ -0,0 +1,16 @@ +# Author details +# +# 1. Edit information below +# 2. Change site author in config.yml +# 3. Change default post/page authors in config.yml +# +# Resource › http://blog.sorryapp.com/blogging-with-jekyll/2014/02/06/adding-authors-to-your-jekyll-site.html + +cewilliams: + name: "Cedric Williams" + siterole: "webmaster, copywriter, designer" + uri: + email: + twitter: "@AskCedricW" + +# you can add more authors here \ No newline at end of file diff --git a/_data/language.yml b/_data/language.yml new file mode 100644 index 0000000000..e107f3ea45 --- /dev/null +++ b/_data/language.yml @@ -0,0 +1,24 @@ +info_website: "About This Site" +archive: "Archive" +blog_archive: "Blog Archive" +blog: "Blog" +comments_headline: "Dialogue & Discussion" +more: "More ›" +more_articles: "More Articles" +navigation_title: "Navigation" +new_blog_entries: "New Blog Articles" +next: "Next" +next_posts: "Next Posts" +previous: "Previous" +previous_posts: "Previous Posts" +read: "Read" +read_more: "Read More ›" +if_you_are_not_redirected_automatically: "If you are not redirected automatically," +click_here: "click here" +next_post_in: "Next Post in" +previous_post_in: "Previous Post in" +breadcrumb_start: "Start" +edit: "Edit" +this_content_is_open_source: "This content is open source." +help_improve_it: "Help improve it" +enter_search_term: "Enter search term and hit enter" \ No newline at end of file diff --git a/_data/language_de.yml b/_data/language_de.yml new file mode 100644 index 0000000000..59b58dda33 --- /dev/null +++ b/_data/language_de.yml @@ -0,0 +1,24 @@ +info_website: "Über diese Website" +archive: "Archiv" +blog_archive: "Blog Archiv" +blog: "Blog" +comments_headline: "Dialog & Diskussion" +more: "Mehr ›" +more_articles: "Mehr Artikel" +navigation_title: "Navigation" +new_blog_entries: "Neue Blog Artikel" +next: "Nächste" +next_posts: "Nächster Beitrag" +previous: "Vorherige" +previous_posts: "Vorheriger Beitrag" +read: "Lesen" +read_more: "Mehr lesen ›" +if_you_are_not_redirected_automatically: "Wenn Du nicht automatisch weitergeleitet wirst," +click_here: "klick hier" +next_post_in: "Nächster Beitrag in" +previous_post_in: "Vorheriger Beitrag in" +breadcrumb_start: "Start" +edit: "Editieren" +this_content_is_open_source: "Der Inhalt ist Open Source." +help_improve_it: "Hilf ihn zu verbessern" +enter_search_term: "Suchbegriff eingeben und Eingabetaste drücken" \ No newline at end of file diff --git a/_data/navigation.yml b/_data/navigation.yml new file mode 100644 index 0000000000..ba508d7f35 --- /dev/null +++ b/_data/navigation.yml @@ -0,0 +1,31 @@ +- title: Home + url: "/" + side: left + +- title: Getting Started + url: "/getting-started/" + side: left + +- title: Upcoming Events + url: "/events/isc-spring-2016/" + side: left + dropdown: + - title: "ISC Summit Spring 2016" + url: "/events/isc-spring-2016/" + - title: "OSCON US 2016" + url: "/events/oscon-us-2016/" + +- title: Contribute + url: "/contribute/" + side: left + +#- title: Blog +# url: "/blog/" +# side: left +# dropdown: +# - title: "Blog Archive" +# url: "/blog/archive/" + +- title: "Contact" + url: "/contact/" + side: right diff --git a/_data/network.yml b/_data/network.yml new file mode 100644 index 0000000000..230b9fff2b --- /dev/null +++ b/_data/network.yml @@ -0,0 +1,30 @@ +- menu_name: "Dankeschön" + +- name: "Icons by Daniel Bruce" + url: "http://entypo.com/" + class: "network-entypo" + title: "Icons by Daniel Bruce" + +- name: "Built on Foundation" + url: "http://foundation.zurb.com/" + class: "services-newsletter" + title: "Built on Foundation" + +- name: "Images by Unsplash" + url: "http://unsplash.com/" + class: "rss-link" + title: "Images by Unsplash" + +- name: "Using Backstretch by Scott Robbin" + url: "http://srobbin.com/jquery-plugins/backstretch/" + class: "sitemap-link" + title: "Using Backstretch by Scott Robbin" + +- name: "Feeling Responsive theme by Phlow" + url: "http://phlow.github.io/feeling-responsive/" + title: "Feeling Responsive theme by Phlow" + +- name: "Hosting by GitHub Pages" + url: "https://pages.github.com/" + title: "Hosting by GitHub Pages" + \ No newline at end of file diff --git a/_data/services.yml b/_data/services.yml new file mode 100644 index 0000000000..d93ff22052 --- /dev/null +++ b/_data/services.yml @@ -0,0 +1,17 @@ +- menu_name: "Services" + +- name: "Contact" + url: "/contact/" + title: "Contact" + +- name: "RSS" + url: "/feed.xml" + title: "Subscribe to RSS Feed" + +- name: "Atom" + url: "/atom.xml" + title: "Subscribe to Atom Feed" + +- name: "sitemap.xml" + url: "/sitemap.xml" + title: "Sitemap for Google Webmaster Tools" diff --git a/_data/socialmedia.yml b/_data/socialmedia.yml new file mode 100644 index 0000000000..029306d053 --- /dev/null +++ b/_data/socialmedia.yml @@ -0,0 +1,49 @@ +- name: GitHub + url: http://github.com/paypal/InnerSourceCommons + class: icon-github + title: Code und mehr... + +# - name: YouTube +# url: http://www.youtube.com/PhlowMedia +# class: icon-youtube +# title: "Videos, Video-Anleitungen und Filme von Phlow auf YouTube" + +- name: Twitter + url: http://twitter.com/PayPalFLOW + class: icon-twitter + title: "PayPal FLOW on Twitter" + +# - name: Mixcloud +# url: http://www.mixcloud.com/phlow/ +# class: icon-cloud +# title: "Mixe, was sonst?" + +# - name: Phlow YouTube Google+ +# url: https://plus.google.com/u/0/+Phlow +# class: icon-googleplus +# title: "YouTube Google+" + +# - name: Facebook +# url: http://www.facebook.com/ +# class: icon-facebook +# title: "" + +# - name: Soundcloud +# url: http://soundcloud.com/ +# class: icon-soundcloud +# title: "" + +# - name: Instagram +# url: http://instagram.com/ +# class: icon-instagram +# title: "" + +# - name: Pinterest +# url: http://www.pinterest.com/ +# class: icon-pinterest +# title: "" + +# - name: Xing +# url: https://www.xing.com/profile/ +# class: icon-xing +# title: Xing Profil diff --git a/_includes/__INSTRUCTIONS.md b/_includes/__INSTRUCTIONS.md new file mode 100644 index 0000000000..e54fb6d5ab --- /dev/null +++ b/_includes/__INSTRUCTIONS.md @@ -0,0 +1,25 @@ +# Includes + +There are two types of includes... + + + +## 1. includes for templates. + +All includes with `_` are used for templates, like for example the `_head.html` or `_footer.html`. + + + +## 2. includes as commands + +Includes without an underscore are commands you can use in posts and pages. I left out the `.html`-ending to reduce the typing and though the commands look cleaner. They only look messy when you open them in your coding-editor of choice. + +Checkout for example `alert`: + +{% include alert success="Yay! you did it!" %} + +or + +{% include gallery %} + +Enjoy :) \ No newline at end of file diff --git a/_includes/_breadcrumb.html b/_includes/_breadcrumb.html new file mode 100644 index 0000000000..fc3074d57d --- /dev/null +++ b/_includes/_breadcrumb.html @@ -0,0 +1,17 @@ +{% comment %} +* +* http://stackoverflow.com/questions/9612235/what-are-some-good-ways-to-implement-breadcrumbs-on-a-jekyll-site +* +{% endcomment %} + + diff --git a/_includes/_comments.html b/_includes/_comments.html new file mode 100644 index 0000000000..4d8b0b361d --- /dev/null +++ b/_includes/_comments.html @@ -0,0 +1,19 @@ + {% if page.comments %} ++ {{ site.data.language.this_content_is_open_source }} + {{ site.data.language.help_improve_it }}.
+
+
+ {% assign author = site.data.authors[page.author] %}
+
+ {% if author %}
+ {{ author.name }}
+
+ {% endif %}
+
+ {% if page.date %}
+
+ {% endif %}
+
+ {% if page.categories %} {{ page.categories | join: ' · ' | upcase }}{% endif %}
+
+ {% for tag in page.tags %} {{tag}} {% endfor %}
+
{{ post.categories | join: ' · ' | prepend: '' | append: '' }}{% if post.categories != empty and post.subheadline != NULL %} – {% endif %}{{ post.subheadline }}
++ {% if post.image.thumb %}{% endif %} + + {% if post.meta_description %}{{ post.meta_description | strip_html | escape }}{% elsif post.teaser %}{{ post.teaser | strip_html | escape }}{% endif %} + + {{ site.data.language.read_more }} +
+" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "" %}
{% endif %}{% unless _pre_before contains "" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = "
Step | Bytes |
raw | {{ content | size }}{% if _profile_endings %} |
endings | {{ _profile_endings }}{% endif %}{% if _profile_startings %} |
startings | {{ _profile_startings }}{% endif %}{% if _profile_comments %} |
comments | {{ _profile_comments }}{% endif %}{% if _profile_collapse %} |
collapse | {{ _profile_collapse }}{% endif %}{% if _profile_clippings %} |
clippings | {{ _profile_clippings }}{% endif %} |
{{ post.subheadline }}
{% endif %} ++ {% if post.meta_description %}{{ post.meta_description | strip_html | escape }}{% else post.teaser %}{{ post.teaser | strip_html | escape }}{% endif %} + {{ site.data.language.read_more }} +
+ {% endfor %} +{{ site.data.language.more_articles }}
+ {% include list-posts entries='3' offset='1' %} +{{ page.subheadline }}
{% endif %} +{{ page.subheadline }}
{% endif %} + tags
+// $code-color: $oil;
+// $code-font-family: $font-family-monospace;
+// $code-font-weight: $font-weight-normal;
+// $code-background-color: scale-color($secondary-color, $lightness: 70%);
+// $code-border-size: 1px;
+// $code-border-style: solid;
+// $code-border-color: scale-color($code-background-color, $lightness: -10%);
+// $code-padding: rem-calc(2) rem-calc(5) rem-calc(1);
+
+// We use these to style anchors
+// $anchor-text-decoration: none;
+// $anchor-text-decoration-hover: none;
+// $anchor-font-color: $primary-color;
+// $anchor-font-color-hover: scale-color($primary-color, $lightness: -14%);
+
+// We use these to style the
element
+// $hr-border-width: 1px;
+// $hr-border-style: solid;
+$hr-border-color: $grey-3;
+// $hr-margin: rem-calc(20);
+
+// We use these to style lists
+// $list-font-family: $paragraph-font-family;
+// $list-font-size: $paragraph-font-size;
+// $list-line-height: $paragraph-line-height;
+// $list-margin-bottom: $paragraph-margin-bottom;
+// $list-style-position: outside;
+$list-side-margin: 1.3rem;
+// $list-ordered-side-margin: 1.4rem;
+// $list-side-margin-no-bullet: 0;
+// $list-nested-margin: rem-calc(20);
+// $definition-list-header-weight: $font-weight-bold;
+// $definition-list-header-margin-bottom: .3rem;
+// $definition-list-margin-bottom: rem-calc(12);
+
+// We use these to style blockquotes
+// $blockquote-font-color: scale-color($header-font-color, $lightness: 35%);
+// $blockquote-padding: rem-calc(9 20 0 19);
+// $blockquote-border: 1px solid $gainsboro;
+// $blockquote-cite-font-size: rem-calc(13);
+// $blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%);
+// $blockquote-cite-link-color: $blockquote-cite-font-color;
+
+// Acronym styles
+// $acronym-underline: 1px dotted $gainsboro;
+
+// We use these to control padding and margin
+// $microformat-padding: rem-calc(10 12);
+// $microformat-margin: rem-calc(0 0 20 0);
+
+// We use these to control the border styles
+// $microformat-border-width: 1px;
+// $microformat-border-style: solid;
+// $microformat-border-color: $gainsboro;
+
+// We use these to control full name font styles
+// $microformat-fullname-font-weight: $font-weight-bold;
+// $microformat-fullname-font-size: rem-calc(15);
+
+// We use this to control the summary font styles
+// $microformat-summary-font-weight: $font-weight-bold;
+
+// We use this to control abbr padding
+// $microformat-abbr-padding: rem-calc(0 1);
+
+// We use this to control abbr font styles
+// $microformat-abbr-font-weight: $font-weight-bold;
+// $microformat-abbr-font-decoration: none;
+
+// 01. Accordion
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-accordion-classes: $include-html-classes;
+
+$accordion-navigation-padding: rem-calc(12);
+// $accordion-navigation-bg-color: #ffffff;
+// $accordion-navigation-hover-bg-color: $grey-1;
+// $accordion-navigation-active-bg-color: $grey-1;
+// $accordion-navigation-font-color: $jet;
+// $accordion-navigation-font-size: rem-calc(16);
+// $accordion-navigation-font-family: $body-font-family;
+
+// $accordion-content-padding: $column-gutter/2;
+$accordion-content-active-bg-color: $body-bg;
+
+// 02. Alert Boxes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-alert-classes: $include-html-classes;
+
+// We use this to control alert padding.
+// $alert-padding-top: rem-calc(14);
+// $alert-padding-default-float: $alert-padding-top;
+// $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10);
+// $alert-padding-bottom: $alert-padding-top;
+
+// We use these to control text style.
+// $alert-font-weight: $font-weight-normal;
+$alert-font-size: rem-calc(15);
+// $alert-font-color: $white;
+// $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%);
+
+// We use this for close hover effect.
+// $alert-function-factor: -14%;
+
+// We use these to control border styles.
+// $alert-border-style: solid;
+// $alert-border-width: 1px;
+// $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor);
+// $alert-bottom-margin: rem-calc(20);
+
+// We use these to style the close buttons
+// $alert-close-color: $oil;
+// $alert-close-top: 50%;
+// $alert-close-position: rem-calc(4);
+// $alert-close-font-size: rem-calc(22);
+// $alert-close-opacity: 0.3;
+// $alert-close-opacity-hover: 0.5;
+// $alert-close-padding: 9px 6px 4px;
+
+// We use this to control border radius
+// $alert-radius: $global-radius;
+
+// We use this to control transition effects
+// $alert-transition-speed: 300ms;
+// $alert-transition-ease: ease-out;
+
+// 03. Block Grid
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-block-grid-classes: $include-html-classes;
+// $include-xl-html-block-grid-classes: false;
+
+// We use this to control the maximum number of block grid elements per row
+// $block-grid-elements: 12;
+// $block-grid-default-spacing: rem-calc(20);
+// $align-block-grid-to-grid: false;
+
+// Enables media queries for block-grid classes. Set to false if writing semantic HTML.
+// $block-grid-media-queries: true;
+
+// 04. Breadcrumbs
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use this to set the background color for the breadcrumb container.
+$crumb-bg: $grey-1;
+
+// We use these to set the padding around the breadcrumbs.
+// $crumb-padding: rem-calc(9 9 14 0);
+// $crumb-side-padding: rem-calc(12);
+
+// We use these to control border styles.
+// $crumb-function-factor: -10%;
+$crumb-border-size: 0;
+// $crumb-border-style: solid;
+$crumb-border-color: $grey-1;
+$crumb-radius: 0;
+
+// We use these to set various text styles for breadcrumbs.
+// $crumb-font-size: rem-calc(11);
+// $crumb-font-color: $primary-color;
+// $crumb-font-color-current: $oil;
+// $crumb-font-color-unavailable: $aluminum;
+// $crumb-font-transform: uppercase;
+// $crumb-link-decor: underline;
+
+// We use these to control the slash between breadcrumbs
+// $crumb-slash-color: $base;
+$crumb-slash: "/";
+
+// 05. Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to build padding for buttons.
+// $button-tny: rem-calc(10);
+// $button-sml: rem-calc(14);
+// $button-med: rem-calc(16);
+// $button-lrg: rem-calc(18);
+
+// We use this to control the display property.
+// $button-display: inline-block;
+// $button-margin-bottom: rem-calc(20);
+
+// We use these to control button text styles.
+// $button-font-family: $body-font-family;
+// $button-font-color: $white;
+// $button-font-color-alt: $oil;
+// $button-font-tny: rem-calc(11);
+// $button-font-sml: rem-calc(13);
+// $button-font-med: rem-calc(16);
+// $button-font-lrg: rem-calc(20);
+// $button-font-weight: $font-weight-normal;
+// $button-font-align: center;
+
+// We use these to control various hover effects.
+// $button-function-factor: -20%;
+
+// We use these to control button border and hover styles.
+// $button-border-width: 0px;
+// $button-border-style: solid;
+// $button-bg-color: $primary-color;
+// $button-bg-hover: scale-color($button-bg-color, $lightness: $button-function-factor);
+// $button-border-color: $button-bg-hover;
+// $secondary-button-bg-hover: scale-color($secondary-color, $lightness: $button-function-factor);
+// $secondary-button-border-color: $secondary-button-bg-hover;
+// $success-button-bg-hover: scale-color($success-color, $lightness: $button-function-factor);
+// $success-button-border-color: $success-button-bg-hover;
+// $alert-button-bg-hover: scale-color($alert-color, $lightness: $button-function-factor);
+// $alert-button-border-color: $alert-button-bg-hover;
+
+// We use this to set the default radius used throughout the core.
+// $button-radius: $global-radius;
+// $button-round: $global-rounded;
+
+// We use this to set default opacity and cursor for disabled buttons.
+// $button-disabled-opacity: 0.7;
+// $button-disabled-cursor: $cursor-default-value;
+
+// 06. Button Groups
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// Sets the margin for the right side by default, and the left margin if right-to-left direction is used
+// $button-bar-margin-opposite: rem-calc(10);
+// $button-group-border-width: 1px;
+
+// 07. Clearing
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-clearing-classes: $include-html-classes;
+
+// We use these to set the background colors for parts of Clearing.
+// $clearing-bg: $oil;
+// $clearing-caption-bg: $clearing-bg;
+// $clearing-carousel-bg: rgba(51,51,51,0.8);
+// $clearing-img-bg: $clearing-bg;
+
+// We use these to style the close button
+// $clearing-close-color: $iron;
+// $clearing-close-size: 30px;
+
+// We use these to style the arrows
+// $clearing-arrow-size: 12px;
+// $clearing-arrow-color: $clearing-close-color;
+
+// We use these to style captions
+// $clearing-caption-font-color: $iron;
+// $clearing-caption-font-size: 0.875em;
+// $clearing-caption-padding: 10px 30px 20px;
+
+// We use these to make the image and carousel height and style
+// $clearing-active-img-height: 85%;
+// $clearing-carousel-height: 120px;
+// $clearing-carousel-thumb-width: 120px;
+// $clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255);
+
+// 08. Dropdown
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-dropdown-classes: $include-html-classes;
+
+// We use these to controls height and width styles.
+// $f-dropdown-max-width: 200px;
+// $f-dropdown-height: auto;
+// $f-dropdown-max-height: none;
+
+// Used for bottom position
+// $f-dropdown-margin-top: 2px;
+
+// Used for right position
+// $f-dropdown-margin-left: $f-dropdown-margin-top;
+
+// Used for left position
+// $f-dropdown-margin-right: $f-dropdown-margin-top;
+
+// Used for top position
+// $f-dropdown-margin-bottom: $f-dropdown-margin-top;
+
+// We use this to control the background color
+// $f-dropdown-bg: $white;
+
+// We use this to set the border styles for dropdowns.
+// $f-dropdown-border-style: solid;
+// $f-dropdown-border-width: 1px;
+// $f-dropdown-border-color: scale-color($white, $lightness: -20%);
+
+// We use these to style the triangle pip.
+// $f-dropdown-triangle-size: 6px;
+// $f-dropdown-triangle-color: $white;
+// $f-dropdown-triangle-side-offset: 10px;
+
+// We use these to control styles for the list elements.
+// $f-dropdown-list-style: none;
+// $f-dropdown-font-color: $charcoal;
+// $f-dropdown-font-size: rem-calc(14);
+// $f-dropdown-list-padding: rem-calc(5, 10);
+// $f-dropdown-line-height: rem-calc(18);
+// $f-dropdown-list-hover-bg: $smoke ;
+// $dropdown-mobile-default-float: 0;
+
+// We use this to control the styles for when the dropdown has custom content.
+// $f-dropdown-content-padding: rem-calc(20);
+
+// Default radius for dropdown.
+// $f-dropdown-radius: $global-radius;
+
+
+// 09. Dropdown Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to set the color of the pip in dropdown buttons
+// $dropdown-button-pip-color: $white;
+// $dropdown-button-pip-color-alt: $oil;
+
+// $button-pip-tny: rem-calc(6);
+// $button-pip-sml: rem-calc(7);
+// $button-pip-med: rem-calc(9);
+// $button-pip-lrg: rem-calc(11);
+
+// We use these to style tiny dropdown buttons
+// $dropdown-button-padding-tny: $button-pip-tny * 7;
+// $dropdown-button-pip-size-tny: $button-pip-tny;
+// $dropdown-button-pip-opposite-tny: $button-pip-tny * 3;
+// $dropdown-button-pip-top-tny: -$button-pip-tny / 2 + rem-calc(1);
+
+// We use these to style small dropdown buttons
+// $dropdown-button-padding-sml: $button-pip-sml * 7;
+// $dropdown-button-pip-size-sml: $button-pip-sml;
+// $dropdown-button-pip-opposite-sml: $button-pip-sml * 3;
+// $dropdown-button-pip-top-sml: -$button-pip-sml / 2 + rem-calc(1);
+
+// We use these to style medium dropdown buttons
+// $dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3);
+// $dropdown-button-pip-size-med: $button-pip-med - rem-calc(3);
+// $dropdown-button-pip-opposite-med: $button-pip-med * 2.5;
+// $dropdown-button-pip-top-med: -$button-pip-med / 2 + rem-calc(2);
+
+// We use these to style large dropdown buttons
+// $dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3);
+// $dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6);
+// $dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5;
+// $dropdown-button-pip-top-lrg: -$button-pip-lrg / 2 + rem-calc(3);
+
+// 10. Flex Video
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use these to control video container padding and margins
+// $flex-video-padding-top: rem-calc(25);
+// $flex-video-padding-bottom: 67.5%;
+// $flex-video-margin-bottom: rem-calc(16);
+
+// We use this to control widescreen bottom padding
+// $flex-video-widescreen-padding-bottom: 56.34%;
+
+// 11. Forms
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-form-classes: $include-html-classes;
+
+// We use this to set the base for lots of form spacing and positioning styles
+// $form-spacing: rem-calc(16);
+
+// We use these to style the labels in different ways
+// $form-label-pointer: pointer;
+// $form-label-font-size: rem-calc(14);
+// $form-label-font-weight: $font-weight-normal;
+// $form-label-line-height: 1.5;
+// $form-label-font-color: scale-color($black, $lightness: 30%);
+// $form-label-small-transform: capitalize;
+// $form-label-bottom-margin: 0;
+// $input-font-family: inherit;
+// $input-font-color: rgba(0,0,0,0.75);
+// $input-font-size: rem-calc(14);
+// $input-bg-color: $white;
+// $input-focus-bg-color: scale-color($white, $lightness: -2%);
+// $input-border-color: scale-color($white, $lightness: -20%);
+// $input-focus-border-color: scale-color($white, $lightness: -40%);
+// $input-border-style: solid;
+// $input-border-width: 1px;
+// $input-border-radius: $global-radius;
+// $input-disabled-bg: $gainsboro;
+// $input-disabled-cursor: $cursor-default-value;
+// $input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);
+
+// We use these to style the fieldset border and spacing.
+// $fieldset-border-style: solid;
+// $fieldset-border-width: 1px;
+// $fieldset-border-color: $gainsboro;
+// $fieldset-padding: rem-calc(20);
+// $fieldset-margin: rem-calc(18 0);
+
+// We use these to style the legends when you use them
+// $legend-bg: $white;
+// $legend-font-weight: $font-weight-bold;
+// $legend-padding: rem-calc(0 3);
+
+// We use these to style the prefix and postfix input elements
+// $input-prefix-bg: scale-color($white, $lightness: -5%);
+// $input-prefix-border-color: scale-color($white, $lightness: -20%);
+// $input-prefix-border-size: 1px;
+// $input-prefix-border-type: solid;
+// $input-prefix-overflow: hidden;
+// $input-prefix-font-color: $oil;
+// $input-prefix-font-color-alt: $white;
+
+// We use this setting to turn on/off HTML5 number spinners (the up/down arrows)
+// $input-number-spinners: true;
+
+// We use these to style the error states for inputs and labels
+// $input-error-message-padding: rem-calc(6 9 9);
+// $input-error-message-top: -1px;
+// $input-error-message-font-size: rem-calc(12);
+// $input-error-message-font-weight: $font-weight-normal;
+// $input-error-message-font-style: italic;
+// $input-error-message-font-color: $white;
+// $input-error-message-font-color-alt: $oil;
+
+// We use this to style the glowing effect of inputs when focused
+// $input-include-glowing-effect: true;
+// $glowing-effect-fade-time: 0.45s;
+// $glowing-effect-color: $input-focus-border-color;
+
+// Select variables
+// $select-bg-color: $ghost;
+// $select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%);
+
+// 12. Icon Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// We use these to style the icon-bar and items
+// $include-html-icon-bar-classes: $include-html-classes;
+// $icon-bar-bg: $oil;
+// $icon-bar-font-color: $white;
+// $icon-bar-font-size: 1rem;
+// $icon-bar-hover-color: $primary-color;
+// $icon-bar-icon-color: $white;
+// $icon-bar-icon-size: 1.875rem;
+// $icon-bar-image-width: 1.875rem;
+// $icon-bar-image-height: 1.875rem;
+// $icon-bar-active-color: $primary-color;
+// $icon-bar-item-padding: 1.25rem;
+
+// 13. Inline Lists
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-inline-list-classes: $include-html-classes;
+
+// We use this to control the margins and padding of the inline list.
+// $inline-list-top-margin: 0;
+// $inline-list-opposite-margin: 0;
+// $inline-list-bottom-margin: rem-calc(17);
+// $inline-list-default-float-margin: rem-calc(-22);
+// $inline-list-default-float-list-margin: rem-calc(22);
+
+// $inline-list-padding: 0;
+
+// We use this to control the overflow of the inline list.
+// $inline-list-overflow: hidden;
+
+// We use this to control the list items
+// $inline-list-display: block;
+
+// We use this to control any elements within list items
+// $inline-list-children-display: block;
+
+// 14. Joyride
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-joyride-classes: $include-html-classes;
+
+// Controlling default Joyride styles
+// $joyride-tip-bg: $oil;
+// $joyride-tip-default-width: 300px;
+// $joyride-tip-padding: rem-calc(18 20 24);
+// $joyride-tip-border: solid 1px $charcoal;
+// $joyride-tip-radius: 4px;
+// $joyride-tip-position-offset: 22px;
+
+// Here, we're setting the tip font styles
+// $joyride-tip-font-color: $white;
+// $joyride-tip-font-size: rem-calc(14);
+// $joyride-tip-header-weight: $font-weight-bold;
+
+// This changes the nub size
+// $joyride-tip-nub-size: 10px;
+
+// This adjusts the styles for the timer when its enabled
+// $joyride-tip-timer-width: 50px;
+// $joyride-tip-timer-height: 3px;
+// $joyride-tip-timer-color: $steel;
+
+// This changes up the styles for the close button
+// $joyride-tip-close-color: $monsoon;
+// $joyride-tip-close-size: 24px;
+// $joyride-tip-close-weight: $font-weight-normal;
+
+// When Joyride is filling the screen, we use this style for the bg
+// $joyride-screenfill: rgba(0,0,0,0.5);
+
+// 15. Keystrokes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-keystroke-classes: $include-html-classes;
+
+// We use these to control text styles.
+// $keystroke-font: "Consolas", "Menlo", "Courier", monospace;
+// $keystroke-font-size: inherit;
+// $keystroke-font-color: $jet;
+// $keystroke-font-color-alt: $white;
+// $keystroke-function-factor: -7%;
+
+// We use this to control keystroke padding.
+// $keystroke-padding: rem-calc(2 4 0);
+
+// We use these to control background and border styles.
+// $keystroke-bg: scale-color($white, $lightness: $keystroke-function-factor);
+// $keystroke-border-style: solid;
+// $keystroke-border-width: 1px;
+// $keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor);
+// $keystroke-radius: $global-radius;
+
+// 16. Labels
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-label-classes: $include-html-classes;
+
+// We use these to style the labels
+// $label-padding: rem-calc(4 8 4);
+// $label-radius: $global-radius;
+
+// We use these to style the label text
+// $label-font-sizing: rem-calc(11);
+// $label-font-weight: $font-weight-normal;
+// $label-font-color: $oil;
+// $label-font-color-alt: $white;
+// $label-font-family: $body-font-family;
+
+// 17. Magellan
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-magellan-classes: $include-html-classes;
+
+// $magellan-bg: $white;
+// $magellan-padding: 0 !important;
+
+// 18. Off-canvas
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-off-canvas-classes: $include-html-classes;
+
+// $tabbar-bg: $oil;
+// $tabbar-height: rem-calc(45);
+// $tabbar-icon-width: $tabbar-height;
+// $tabbar-line-height: $tabbar-height;
+// $tabbar-color: $white;
+// $tabbar-middle-padding: 0 rem-calc(10);
+
+// Off Canvas Divider Styles
+// $tabbar-right-section-border: solid 1px scale-color($tabbar-bg, $lightness: 13%);
+// $tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%);
+
+// Off Canvas Tab Bar Headers
+// $tabbar-header-color: $white;
+// $tabbar-header-weight: $font-weight-bold;
+// $tabbar-header-line-height: $tabbar-height;
+// $tabbar-header-margin: 0;
+
+// Off Canvas Menu Variables
+// $off-canvas-width: rem-calc(250);
+// $off-canvas-bg: $oil;
+// $off-canvas-bg-hover: scale-color($tabbar-bg, $lightness: -30%);
+
+// Off Canvas Menu List Variables
+// $off-canvas-label-padding: 0.3rem rem-calc(15);
+// $off-canvas-label-color: $aluminum;
+// $off-canvas-label-text-transform: uppercase;
+// $off-canvas-label-font-size: rem-calc(12);
+// $off-canvas-label-font-weight: $font-weight-bold;
+// $off-canvas-label-bg: $tuatara;
+// $off-canvas-label-border-top: 1px solid scale-color($tuatara, $lightness: 14%);
+// $off-canvas-label-border-bottom: none;
+// $off-canvas-label-margin:0;
+// $off-canvas-link-padding: rem-calc(10, 15);
+// $off-canvas-link-color: rgba($white, 0.7);
+// $off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%);
+// $off-canvas-back-bg: $tuatara;
+// $off-canvas-back-border-top: $off-canvas-label-border-top;
+// $off-canvas-back-border-bottom: $off-canvas-label-border-bottom;
+// $off-canvas-back-hover-bg: scale-color($off-canvas-back-bg, $lightness: -30%);
+// $off-canvas-back-hover-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%);
+// $off-canvas-back-hover-border-bottom: none;
+
+// Off Canvas Menu Icon Variables
+// $tabbar-menu-icon-color: $white;
+// $tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%);
+
+// $tabbar-menu-icon-text-indent: rem-calc(35);
+// $tabbar-menu-icon-width: $tabbar-height;
+// $tabbar-menu-icon-height: $tabbar-height;
+// $tabbar-menu-icon-padding: 0;
+
+// $tabbar-hamburger-icon-width: rem-calc(16);
+// $tabbar-hamburger-icon-left: false;
+// $tabbar-hamburger-icon-top: false;
+// $tabbar-hamburger-icon-thickness: 1px;
+// $tabbar-hamburger-icon-gap: 6px;
+
+// Off Canvas Back-Link Overlay
+// $off-canvas-overlay-transition: background 300ms ease;
+// $off-canvas-overlay-cursor: pointer;
+// $off-canvas-overlay-box-shadow: -4px 0 4px rgba($black, 0.5), 4px 0 4px rgba($black, 0.5);
+// $off-canvas-overlay-background: rgba($white, 0.2);
+// $off-canvas-overlay-background-hover: rgba($white, 0.05);
+
+// Transition Variables
+// $menu-slide: "transform 500ms ease";
+
+// 19. Orbit
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-orbit-classes: $include-html-classes;
+
+// We use these to control the caption styles
+// $orbit-container-bg: none;
+// $orbit-caption-bg: rgba(51,51,51, 0.8);
+// $orbit-caption-font-color: $white;
+// $orbit-caption-font-size: rem-calc(14);
+// $orbit-caption-position: "bottom"; // Supported values: "bottom", "under"
+// $orbit-caption-padding: rem-calc(10 14);
+// $orbit-caption-height: auto;
+
+// We use these to control the left/right nav styles
+// $orbit-nav-bg: transparent;
+// $orbit-nav-bg-hover: rgba(0,0,0,0.3);
+// $orbit-nav-arrow-color: $white;
+// $orbit-nav-arrow-color-hover: $white;
+
+// We use these to control the timer styles
+// $orbit-timer-bg: rgba(255,255,255,0.3);
+// $orbit-timer-show-progress-bar: true;
+
+// We use these to control the bullet nav styles
+// $orbit-bullet-nav-color: $iron;
+// $orbit-bullet-nav-color-active: $aluminum;
+// $orbit-bullet-radius: rem-calc(9);
+
+// We use these to controls the style of slide numbers
+// $orbit-slide-number-bg: rgba(0,0,0,0);
+// $orbit-slide-number-font-color: $white;
+// $orbit-slide-number-padding: rem-calc(5);
+
+// Hide controls on small
+// $orbit-nav-hide-for-small: true;
+// $orbit-bullet-hide-for-small: true;
+// $orbit-timer-hide-for-small: true;
+
+// Graceful Loading Wrapper and preloader
+// $wrapper-class: "slideshow-wrapper";
+// $preloader-class: "preloader";
+
+// 20. Pagination
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-pagination-classes: $include-html-classes;
+
+// We use these to control the pagination container
+// $pagination-height: rem-calc(24);
+// $pagination-margin: rem-calc(-5);
+
+// We use these to set the list-item properties
+// $pagination-li-float: $default-float;
+// $pagination-li-height: rem-calc(24);
+// $pagination-li-font-color: $jet;
+// $pagination-li-font-size: rem-calc(14);
+// $pagination-li-margin: rem-calc(5);
+
+// We use these for the pagination anchor links
+// $pagination-link-pad: rem-calc(1 10 1);
+// $pagination-link-font-color: $aluminum;
+// $pagination-link-active-bg: scale-color($white, $lightness: -10%);
+
+// We use these for disabled anchor links
+// $pagination-link-unavailable-cursor: default;
+// $pagination-link-unavailable-font-color: $aluminum;
+// $pagination-link-unavailable-bg-active: transparent;
+
+// We use these for currently selected anchor links
+// $pagination-link-current-background: $primary-color;
+// $pagination-link-current-font-color: $white;
+// $pagination-link-current-font-weight: $font-weight-bold;
+// $pagination-link-current-cursor: default;
+// $pagination-link-current-active-bg: $primary-color;
+
+// 21. Panels
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-panel-classes: $include-html-classes;
+
+// We use these to control the background and border styles
+$panel-bg: $grey-1;
+// $panel-border-style: solid;
+// $panel-border-size: 1px;
+
+// We use this % to control how much we darken things on hover
+// $panel-function-factor: -11%;
+// $panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor);
+
+// We use these to set default inner padding and bottom margin
+// $panel-margin-bottom: rem-calc(20);
+// $panel-padding: rem-calc(20);
+
+// We use these to set default font colors
+// $panel-font-color: $oil;
+// $panel-font-color-alt: $white;
+
+// $panel-header-adjust: true;
+// $callout-panel-link-color: $primary-color;
+
+// 22. Pricing Tables
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-pricing-classes: $include-html-classes;
+
+// We use this to control the border color
+// $price-table-border: solid 1px $gainsboro;
+
+// We use this to control the bottom margin of the pricing table
+// $price-table-margin-bottom: rem-calc(20);
+
+// We use these to control the title styles
+// $price-title-bg: $oil;
+// $price-title-padding: rem-calc(15 20);
+// $price-title-align: center;
+// $price-title-color: $smoke;
+// $price-title-weight: $font-weight-normal;
+// $price-title-size: rem-calc(16);
+// $price-title-font-family: $body-font-family;
+
+// We use these to control the price styles
+// $price-money-bg: $vapor ;
+// $price-money-padding: rem-calc(15 20);
+// $price-money-align: center;
+// $price-money-color: $oil;
+// $price-money-weight: $font-weight-normal;
+// $price-money-size: rem-calc(32);
+// $price-money-font-family: $body-font-family;
+
+// We use these to control the description styles
+// $price-bg: $white;
+// $price-desc-color: $monsoon;
+// $price-desc-padding: rem-calc(15);
+// $price-desc-align: center;
+// $price-desc-font-size: rem-calc(12);
+// $price-desc-weight: $font-weight-normal;
+// $price-desc-line-height: 1.4;
+// $price-desc-bottom-border: dotted 1px $gainsboro;
+
+// We use these to control the list item styles
+// $price-item-color: $oil;
+// $price-item-padding: rem-calc(15);
+// $price-item-align: center;
+// $price-item-font-size: rem-calc(14);
+// $price-item-weight: $font-weight-normal;
+// $price-item-bottom-border: dotted 1px $gainsboro;
+
+// We use these to control the CTA area styles
+// $price-cta-bg: $white;
+// $price-cta-align: center;
+// $price-cta-padding: rem-calc(20 20 0);
+
+// 23. Progress Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use this to set the progress bar height
+// $progress-bar-height: rem-calc(25);
+// $progress-bar-color: $vapor ;
+
+// We use these to control the border styles
+// $progress-bar-border-color: scale-color($white, $lightness: 20%);
+// $progress-bar-border-size: 1px;
+// $progress-bar-border-style: solid;
+// $progress-bar-border-radius: $global-radius;
+
+// We use these to control the margin & padding
+// $progress-bar-pad: rem-calc(2);
+// $progress-bar-margin-bottom: rem-calc(10);
+
+// We use these to set the meter colors
+// $progress-meter-color: $primary-color;
+// $progress-meter-secondary-color: $secondary-color;
+// $progress-meter-success-color: $success-color;
+// $progress-meter-alert-color: $alert-color;
+
+// 24. Range Slider
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-range-slider-classes: $include-html-classes;
+
+// These variables define the slider bar styles
+// $range-slider-bar-width: 100%;
+// $range-slider-bar-height: rem-calc(16);
+
+// $range-slider-bar-border-width: 1px;
+// $range-slider-bar-border-style: solid;
+// $range-slider-bar-border-color: $gainsboro;
+// $range-slider-radius: $global-radius;
+// $range-slider-round: $global-rounded;
+// $range-slider-bar-bg-color: $ghost;
+
+// Vertical bar styles
+// $range-slider-vertical-bar-width: rem-calc(16);
+// $range-slider-vertical-bar-height: rem-calc(200);
+
+// These variables define the slider handle styles
+// $range-slider-handle-width: rem-calc(32);
+// $range-slider-handle-height: rem-calc(22);
+// $range-slider-handle-position-top: rem-calc(-5);
+// $range-slider-handle-bg-color: $primary-color;
+// $range-slider-handle-border-width: 1px;
+// $range-slider-handle-border-style: solid;
+// $range-slider-handle-border-color: none;
+// $range-slider-handle-radius: $global-radius;
+// $range-slider-handle-round: $global-rounded;
+// $range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%);
+// $range-slider-handle-cursor: pointer;
+
+// 25. Reveal
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-reveal-classes: $include-html-classes;
+
+// We use these to control the style of the reveal overlay.
+// $reveal-overlay-bg: rgba($black, .45);
+// $reveal-overlay-bg-old: $black;
+
+// We use these to control the style of the modal itself.
+// $reveal-modal-bg: $white;
+// $reveal-position-top: rem-calc(100);
+// $reveal-default-width: 80%;
+// $reveal-max-width: $row-width;
+// $reveal-modal-padding: rem-calc(20);
+// $reveal-box-shadow: 0 0 10px rgba($black,.4);
+
+// We use these to style the reveal close button
+// $reveal-close-font-size: rem-calc(40);
+// $reveal-close-top: rem-calc(8);
+// $reveal-close-side: rem-calc(11);
+// $reveal-close-color: $base;
+// $reveal-close-weight: $font-weight-bold;
+
+// We use this to set the default radius used throughout the core.
+// $reveal-radius: $global-radius;
+// $reveal-round: $global-rounded;
+
+// We use these to control the modal border
+// $reveal-border-style: solid;
+// $reveal-border-width: 1px;
+// $reveal-border-color: $steel;
+
+// $reveal-modal-class: "reveal-modal";
+// $close-reveal-modal-class: "close-reveal-modal";
+
+// 26. Side Nav
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use this to control padding.
+$side-nav-padding: rem-calc(0 0 0 0);
+
+// We use these to control list styles.
+// $side-nav-list-type: none;
+// $side-nav-list-position: inside;
+$side-nav-list-margin: rem-calc(0 0 0 0);
+
+// We use these to control link styles.
+$side-nav-link-color: $primary-color;
+$side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: -40%);
+$side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: -40%);
+$side-nav-font-size: rem-calc(16);
+
+// $side-nav-link-bg-hover: hsla(0, 0, 0, 0.025);
+// $side-nav-link-margin: 0;
+// $side-nav-link-padding: rem-calc(7 14);
+// $side-nav-font-size: rem-calc(14);
+// $side-nav-font-weight: $font-weight-normal;
+// $side-nav-font-weight-active: $side-nav-font-weight;
+// $side-nav-font-family: $body-font-family;
+// $side-nav-font-family-active: $side-nav-font-family;
+
+// We use these to control heading styles.
+// $side-nav-heading-color: $side-nav-link-color;
+// $side-nav-heading-font-size: $side-nav-font-size;
+// $side-nav-heading-font-weight: bold;
+// $side-nav-heading-text-transform: uppercase;
+
+// We use these to control border styles
+$side-nav-divider-size: 1px;
+$side-nav-divider-style: solid;
+$side-nav-divider-color: $grey-1;
+
+
+
+// 27. Split Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to control different shared styles for Split Buttons
+// $split-button-function-factor: 10%;
+// $split-button-pip-color: $white;
+// $split-button-pip-color-alt: $oil;
+// $split-button-active-bg-tint: rgba(0,0,0,0.1);
+
+// We use these to control tiny split buttons
+// $split-button-padding-tny: $button-pip-tny * 10;
+// $split-button-span-width-tny: $button-pip-tny * 6;
+// $split-button-pip-size-tny: $button-pip-tny;
+// $split-button-pip-top-tny: $button-pip-tny * 2;
+// $split-button-pip-default-float-tny: rem-calc(-6);
+
+// We use these to control small split buttons
+// $split-button-padding-sml: $button-pip-sml * 10;
+// $split-button-span-width-sml: $button-pip-sml * 6;
+// $split-button-pip-size-sml: $button-pip-sml;
+// $split-button-pip-top-sml: $button-pip-sml * 1.5;
+// $split-button-pip-default-float-sml: rem-calc(-6);
+
+// We use these to control medium split buttons
+// $split-button-padding-med: $button-pip-med * 9;
+// $split-button-span-width-med: $button-pip-med * 5.5;
+// $split-button-pip-size-med: $button-pip-med - rem-calc(3);
+// $split-button-pip-top-med: $button-pip-med * 1.5;
+// $split-button-pip-default-float-med: rem-calc(-6);
+
+// We use these to control large split buttons
+// $split-button-padding-lrg: $button-pip-lrg * 8;
+// $split-button-span-width-lrg: $button-pip-lrg * 5;
+// $split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6);
+// $split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5);
+// $split-button-pip-default-float-lrg: rem-calc(-6);
+
+// 28. Sub Nav
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use these to control margin and padding
+// $sub-nav-list-margin: rem-calc(-4 0 18);
+// $sub-nav-list-padding-top: rem-calc(4);
+
+// We use this to control the definition
+// $sub-nav-font-family: $body-font-family;
+// $sub-nav-font-size: rem-calc(14);
+// $sub-nav-font-color: $aluminum;
+// $sub-nav-font-weight: $font-weight-normal;
+// $sub-nav-text-decoration: none;
+// $sub-nav-padding: rem-calc(3 16);
+// $sub-nav-border-radius: 3px;
+// $sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%);
+
+// We use these to control the active item styles
+// $sub-nav-active-font-weight: $font-weight-normal;
+// $sub-nav-active-bg: $primary-color;
+// $sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%);
+// $sub-nav-active-color: $white;
+// $sub-nav-active-padding: $sub-nav-padding;
+// $sub-nav-active-cursor: default;
+
+// $sub-nav-item-divider: "";
+// $sub-nav-item-divider-margin: rem-calc(12);
+
+// 29. Switch
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-form-classes: $include-html-classes;
+
+// Controlling border styles and background colors for the switch container
+// $switch-border-color: scale-color($white, $lightness: -20%);
+// $switch-border-style: solid;
+// $switch-border-width: 1px;
+// $switch-bg: $white;
+
+// We use these to control the switch heights for our default classes
+// $switch-height-tny: rem-calc(22);
+// $switch-height-sml: rem-calc(28);
+// $switch-height-med: rem-calc(36);
+// $switch-height-lrg: rem-calc(44);
+// $switch-bottom-margin: rem-calc(20);
+
+// We use these to control default font sizes for our classes.
+// $switch-font-size-tny: 11px;
+// $switch-font-size-sml: 12px;
+// $switch-font-size-med: 14px;
+// $switch-font-size-lrg: 17px;
+// $switch-label-side-padding: 6px;
+
+// We use these to style the switch-paddle
+// $switch-paddle-bg: $white;
+// $switch-paddle-fade-to-color: scale-color($switch-paddle-bg, $lightness: -10%);
+// $switch-paddle-border-color: scale-color($switch-paddle-bg, $lightness: -35%);
+// $switch-paddle-border-width: 1px;
+// $switch-paddle-border-style: solid;
+// $switch-paddle-transition-speed: .1s;
+// $switch-paddle-transition-ease: ease-out;
+// $switch-positive-color: scale-color($success-color, $lightness: 94%);
+// $switch-negative-color: $white-smoke;
+
+// Outline Style for tabbing through switches
+// $switch-label-outline: 1px dotted $jumbo;
+
+// 30. Tables
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-table-classes: $include-html-classes;
+
+// These control the background color for the table and even rows
+// $table-bg: $white;
+$table-even-row-bg: $grey-1;
+
+// These control the table cell border style
+// $table-border-style: solid;
+// $table-border-size: 1px;
+// $table-border-color: $gainsboro;
+
+// These control the table head styles
+$table-head-bg: $grey-2;
+// $table-head-font-size: rem-calc(14);
+// $table-head-font-color: $jet;
+// $table-head-font-weight: $font-weight-bold;
+// $table-head-padding: rem-calc(8 10 10);
+
+// These control the row padding and font styles
+// $table-row-padding: rem-calc(9 10);
+// $table-row-font-size: rem-calc(14);
+// $table-row-font-color: $jet;
+// $table-line-height: rem-calc(18);
+
+// These are for controlling the layout, display and margin of tables
+// $table-layout: auto;
+// $table-display: table-cell;
+// $table-margin-bottom: rem-calc(20);
+
+// 31. Tabs
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-tabs-classes: $include-html-classes;
+
+// $tabs-navigation-padding: rem-calc(16);
+// $tabs-navigation-bg-color: $silver ;
+// $tabs-navigation-active-bg-color: $white;
+// $tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%);
+// $tabs-navigation-font-color: $jet;
+// $tabs-navigation-active-font-color: $tabs-navigation-font-color;
+// $tabs-navigation-font-size: rem-calc(16);
+// $tabs-navigation-font-family: $body-font-family;
+
+// $tabs-content-margin-bottom: rem-calc(24);
+// $tabs-content-padding: $column-gutter/2;
+
+// $tabs-vertical-navigation-margin-bottom: 1.25rem;
+
+// 32. Thumbnails
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use these to control border styles
+// $thumb-border-style: solid;
+// $thumb-border-width: 4px;
+// $thumb-border-color: $white;
+// $thumb-box-shadow: 0 0 0 1px rgba($black,.2);
+// $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5);
+
+// Radius and transition speed for thumbs
+// $thumb-radius: $global-radius;
+// $thumb-transition-speed: 200ms;
+
+// 33. Tooltips
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-tooltip-classes: $include-html-classes;
+
+// $has-tip-border-bottom: dotted 1px $iron;
+// $has-tip-font-weight: $font-weight-bold;
+// $has-tip-font-color: $oil;
+// $has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%);
+// $has-tip-font-color-hover: $primary-color;
+// $has-tip-cursor-type: help;
+
+// $tooltip-padding: rem-calc(12);
+// $tooltip-bg: $oil;
+// $tooltip-font-size: rem-calc(14);
+// $tooltip-font-weight: $font-weight-normal;
+// $tooltip-font-color: $white;
+// $tooltip-line-height: 1.3;
+// $tooltip-close-font-size: rem-calc(10);
+// $tooltip-close-font-weight: $font-weight-normal;
+// $tooltip-close-font-color: $monsoon;
+// $tooltip-font-size-sml: rem-calc(14);
+// $tooltip-radius: $global-radius;
+// $tooltip-rounded: $global-rounded;
+// $tooltip-pip-size: 5px;
+// $tooltip-max-width: 300px;
+
+// 34. Top Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-top-bar-classes: $include-html-classes;
+
+// Height and margin
+$topbar-height: rem-calc(50);
+// $topbar-margin-bottom: 0;
+
+// Controlling the styles for the title in the top bar
+$topbar-title-weight: $font-weight-bold;
+$topbar-title-font-size: rem-calc(19);
+
+// Style the top bar dropdown elements
+// $topbar-dropdown-bg: $oil;
+// $topbar-dropdown-link-color: $white;
+// $topbar-dropdown-link-bg: $ci-2;
+// $topbar-dropdown-link-weight: $font-weight-normal;
+// $topbar-dropdown-toggle-size: 5px;
+// $topbar-dropdown-toggle-color: $ci-2;
+// $topbar-dropdown-toggle-alpha: 0.4;
+
+// Set the link colors and styles for top-level nav
+// $topbar-link-color: #000;
+// $topbar-link-color-hover: #000;
+// $topbar-link-color-active: #000;
+// $topbar-link-color-active-hover: #000;
+// $topbar-link-weight: $font-weight-normal;
+$topbar-link-font-size: rem-calc(15);
+// $topbar-link-hover-lightness: -10%; // Darken by 10%
+// $topbar-link-bg: $topbar-bg;
+// $topbar-link-bg-color-hover: #ff0;
+// $topbar-link-bg-hover: #f00;
+// $topbar-link-bg-active: $primary-color;
+// $topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%);
+// $topbar-link-font-family: $body-font-family;
+$topbar-link-text-transform: uppercase;
+// $topbar-link-padding: $topbar-height / 3;
+// $topbar-back-link-size: $h5-font-size;
+// $topbar-link-dropdown-padding: 20px;
+
+// $topbar-button-font-size: 0.75rem;
+// $topbar-button-top: 7px;
+
+// $topbar-dropdown-label-color: #f77;
+// $topbar-dropdown-label-text-transform: uppercase;
+// $topbar-dropdown-label-font-weight: $font-weight-bold;
+// $topbar-dropdown-label-font-size: rem-calc(10);
+// $topbar-dropdown-label-bg: $oil;
+
+// Top menu icon styles
+$topbar-menu-link-transform: uppercase;
+// $topbar-menu-link-font-size: rem-calc(13);
+// $topbar-menu-link-weight: $font-weight-bold;
+// $topbar-menu-link-color: $white;
+// $topbar-menu-icon-color: $white;
+// $topbar-menu-link-color-toggled: $ci-6;
+// $topbar-menu-icon-color-toggled: $ci-6;
+
+// Transitions and breakpoint styles
+// $topbar-transition-speed: 300ms;
+// Using rem-calc for the below breakpoint causes issues with top bar
+$topbar-breakpoint: #{lower-bound($large-range)}; // Change to 9999px for always mobile layout
+$topbar-media-query: "only screen and (min-width: #{$topbar-breakpoint})" !default;
+
+// Divider Styles
+$topbar-divider-border-bottom: solid 0px scale-color($topbar-bg-color, $lightness: 23%);
+$topbar-divider-border-top: solid 0px scale-color($topbar-bg-color, $lightness: -50%);
+
+// Sticky Class
+// $topbar-sticky-class: ".sticky";
+// $topbar-arrows: true; //Set false to remove the triangle icon from the menu item
+
+// 36. Visibility Classes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-visibility-classes: $include-html-classes;
+// $include-table-visibility-classes: true;
+// $include-legacy-visibility-classes: true;
+// $include-accessibility-classes: true;
diff --git a/_sass/_05_normalize.scss b/_sass/_05_normalize.scss
new file mode 100644
index 0000000000..690df84c6b
--- /dev/null
+++ b/_sass/_05_normalize.scss
@@ -0,0 +1,428 @@
+@charset "utf-8";
+/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
+
+/**
+ * 1. Set default font family to sans-serif.
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
+ * user zoom.
+ */
+
+html {
+ font-family: sans-serif; /* 1 */
+ -ms-text-size-adjust: 100%; /* 2 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+}
+
+/**
+ * Remove default margin.
+ */
+
+body {
+ margin: 0;
+}
+
+/* HTML5 display definitions
+ ========================================================================== */
+
+/**
+ * Correct `block` display not defined for any HTML5 element in IE 8/9.
+ * Correct `block` display not defined for `details` or `summary` in IE 10/11
+ * and Firefox.
+ * Correct `block` display not defined for `main` in IE 11.
+ */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+menu,
+nav,
+section,
+summary {
+ display: block;
+}
+
+/**
+ * 1. Correct `inline-block` display not defined in IE 8/9.
+ * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
+ */
+
+audio,
+canvas,
+progress,
+video {
+ display: inline-block; /* 1 */
+ vertical-align: baseline; /* 2 */
+}
+
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
+ * Remove excess height in iOS 5 devices.
+ */
+
+audio:not([controls]) {
+ display: none;
+ height: 0;
+}
+
+/**
+ * Address `[hidden]` styling not present in IE 8/9/10.
+ * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
+ */
+
+[hidden],
+template {
+ display: none;
+}
+
+/* Links
+ ========================================================================== */
+
+/**
+ * Remove the gray background color from active links in IE 10.
+ */
+
+a {
+ background-color: transparent;
+}
+
+/**
+ * Improve readability when focused and also mouse hovered in all browsers.
+ */
+
+a:active,
+a:hover {
+ outline: 0;
+}
+
+/* Text-level semantics
+ ========================================================================== */
+
+/**
+ * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
+ */
+
+abbr[title] {
+ border-bottom: 1px dotted;
+}
+
+/**
+ * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
+ */
+
+b,
+strong {
+ font-weight: bold;
+}
+
+/**
+ * Address styling not present in Safari and Chrome.
+ */
+
+dfn {
+ font-style: italic;
+}
+
+/**
+ * Address variable `h1` font-size and margin within `section` and `article`
+ * contexts in Firefox 4+, Safari, and Chrome.
+ */
+
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
+}
+
+/**
+ * Address styling not present in IE 8/9.
+ */
+
+mark {
+ background: #ff0;
+ color: #000;
+}
+
+/**
+ * Address inconsistent and variable font size in all browsers.
+ */
+
+small {
+ font-size: 80%;
+}
+
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
+ */
+
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+
+sup {
+ top: -0.5em;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+/* Embedded content
+ ========================================================================== */
+
+/**
+ * Remove border when inside `a` element in IE 8/9/10.
+ */
+
+img {
+ border: 0;
+}
+
+/**
+ * Correct overflow not hidden in IE 9/10/11.
+ */
+
+svg:not(:root) {
+ overflow: hidden;
+}
+
+/* Grouping content
+ ========================================================================== */
+
+/**
+ * Address margin not present in IE 8/9 and Safari.
+ */
+
+figure {
+ margin: 1em 40px;
+}
+
+/**
+ * Address differences between Firefox and other browsers.
+ */
+
+hr {
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+ height: 0;
+}
+
+/**
+ * Contain overflow in all browsers.
+ */
+
+pre {
+ overflow: auto;
+}
+
+/**
+ * Address odd `em`-unit font size rendering in all browsers.
+ */
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em;
+}
+
+/* Forms
+ ========================================================================== */
+
+/**
+ * Known limitation: by default, Chrome and Safari on OS X allow very limited
+ * styling of `select`, unless a `border` property is set.
+ */
+
+/**
+ * 1. Correct color not being inherited.
+ * Known issue: affects color of disabled elements.
+ * 2. Correct font properties not being inherited.
+ * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
+ */
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ color: inherit; /* 1 */
+ font: inherit; /* 2 */
+ margin: 0; /* 3 */
+}
+
+/**
+ * Address `overflow` set to `hidden` in IE 8/9/10/11.
+ */
+
+button {
+ overflow: visible;
+}
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
+ * Correct `select` style inheritance in Firefox.
+ */
+
+button,
+select {
+ text-transform: none;
+}
+
+/**
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
+ * `input` and others.
+ */
+
+button,
+html input[type="button"], /* 1 */
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
+}
+
+/**
+ * Re-set default cursor for disabled elements.
+ */
+
+button[disabled],
+html input[disabled] {
+ cursor: default;
+}
+
+/**
+ * Remove inner padding and border in Firefox 4+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+/**
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+input {
+ line-height: normal;
+}
+
+/**
+ * It's recommended that you don't attempt to style these elements.
+ * Firefox's implementation doesn't respect box-sizing, padding, or width.
+ *
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
+ * 2. Remove excess padding in IE 8/9/10.
+ */
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Fix the cursor style for Chrome's increment/decrement buttons. For certain
+ * `font-size` values of the `input`, it causes the cursor style of the
+ * decrement button to change from `default` to `text`.
+ */
+
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
+ * (include `-moz` to future-proof).
+ */
+
+input[type="search"] {
+ -webkit-appearance: textfield; /* 1 */
+ -moz-box-sizing: content-box;
+ -webkit-box-sizing: content-box; /* 2 */
+ box-sizing: content-box;
+}
+
+/**
+ * Remove inner padding and search cancel button in Safari and Chrome on OS X.
+ * Safari (but not Chrome) clips the cancel button when the search input has
+ * padding (and `textfield` appearance).
+ */
+
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/**
+ * Define consistent border, margin, and padding.
+ */
+
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em;
+}
+
+/**
+ * 1. Correct `color` not being inherited in IE 8/9/10/11.
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets.
+ */
+
+legend {
+ border: 0; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Remove default vertical scrollbar in IE 8/9/10/11.
+ */
+
+textarea {
+ overflow: auto;
+}
+
+/**
+ * Don't inherit the `font-weight` (applied by a rule above).
+ * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
+ */
+
+optgroup {
+ font-weight: bold;
+}
+
+/* Tables
+ ========================================================================== */
+
+/**
+ * Remove most spacing between table cells.
+ */
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+td,
+th {
+ padding: 0;
+}
\ No newline at end of file
diff --git a/_sass/_06_typography.scss b/_sass/_06_typography.scss
new file mode 100644
index 0000000000..5df1b39eb9
--- /dev/null
+++ b/_sass/_06_typography.scss
@@ -0,0 +1,500 @@
+@charset "utf-8";
+/* TOC – Typography
+
+Check typography variables › _3_typography_settings.scss
+
+- Links
+- Customize Foundation Typography
+- Headlines
+- Images
+- Lists
+- Tables
+- Code
+- Quotes
+- Typography for Articles
+- Smaller Fontsize for Bigteaser on small devices
+- Additional typographical elements
+- Footnotes
+- Icon Font
+
+*/
+
+
+
+/* Links
+------------------------------------------------------------------- */
+
+a,
+a:link {
+ transition: all .4s;
+}
+
+a:visited {
+ border-bottom: $grey-2;
+}
+
+a:hover {
+ color: darken( $ci-1, 10% );
+}
+
+a:focus {
+ color: lighten( $ci-1, 20% );
+}
+
+a:active {
+ color: darken( $ci-1, 20% );
+}
+
+
+
+/* Customize Foundation Typography
+------------------------------------------------------------------- */
+
+p {
+ -webkit-hyphens: auto;
+ -moz-hyphens: auto;
+ -ms-hyphens: auto;
+ hyphens: auto;
+ -ms-word-break: normal;
+ /* Non standard for webkit */
+ word-break: normal;
+}
+p a,
+article a {
+ font-weight: bold;
+ border-bottom: 1px dotted;
+}
+p a:hover,
+article a:hover {
+ border-bottom: 2px solid;
+}
+p a.button,
+.button,
+.button:hover {
+ border: 0;
+ color: #fff;
+}
+p.button a {
+ border: 0;
+ color: #fff;
+ text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
+}
+
+
+
+/* Headlines
+------------------------------------------------------------------- */
+
+h1, h2, h3, h4, h5, h6 {
+ font-family: $header-font-family;
+ font-weight: normal;
+ padding: 0;
+}
+
+h1 {
+ font-size: $font-size-h1;
+ margin-top: 0;
+}
+h2 {
+ font-size: $font-size-h2;
+ margin: 1.563em 0 0 0;
+}
+ .blog-index h2 {
+ margin-top: 0;
+ }
+h3 {
+ font-size: $font-size-h3;
+ margin: 1.152em 0 0 0;
+}
+h4 {
+ font-size: $font-size-h4;
+ margin: 1.152em 0 0 0;
+}
+h5 {
+ font-size: $font-size-h5;
+ margin: 1em 0 0 0;
+}
+
+
+
+/* Images
+------------------------------------------------------------------- */
+
+img { border-radius: $global-radius;}
+ img.alignleft,
+ img.left { float: left; margin:5px 15px 5px 0; }
+ img.alignright,
+ img.right { float: right; margin:5px 0 5px 15px; }
+ img.aligncenter,
+ img.center { display: block; margin:0 auto 10px; }
+
+figure {
+ margin: 0 0 rem-calc(30) 0;
+}
+#masthead-with-background-color figure,
+#masthead-with-pattern figure {
+ margin: 0;
+}
+figcaption,
+.masthead-caption {
+ color: $grey-10;
+ font-family: $font-family-sans-serif;
+ font-size: rem-calc(13);
+ padding-top: rem-calc(2);
+}
+figcaption a,
+.masthead-caption a {
+ border-bottom: 1px dotted $grey-4;
+ color: $grey-10;
+}
+figcaption a:hover,
+.masthead-caption a:hover {
+ border-bottom: 2px solid $primary-color;
+ color: $primary-color;
+}
+.masthead-caption {
+ padding-right: 10px;
+ text-align: right;
+}
+
+
+
+/* Tables
+------------------------------------------------------------------- */
+
+td {
+ vertical-align: top;
+}
+
+
+
+/* Code
+------------------------------------------------------------------- */
+
+pre {
+ overflow: auto;
+ margin-bottom: rem-calc(20);
+ padding: 5px;
+ background-color: $code-background-color;
+ border-radius: $global-radius;
+}
+pre code {
+ padding: rem-calc(2) rem-calc(5) rem-calc(1) rem-calc(0);
+ border: 0;
+}
+
+code {
+ font-size: rem-calc(14);
+ line-height: 1.5;
+}
+
+
+
+/* Lists
+------------------------------------------------------------------- */
+
+ul, ol {
+ margin-left: 20px;
+ padding: 0;
+}
+li {
+ margin-left: 0;
+}
+
+.no-bullet {
+ list-style: none;
+ margin-left: 0;
+}
+
+li {
+ > ul,
+ > ol {
+ margin-bottom: 0;
+ }
+}
+
+dl {
+
+}
+dt:first-child {
+ padding-top: 0px;
+}
+dt {
+ font-weight: bold;
+ padding-top: 30px;
+}
+dd {
+}
+article dl dt { line-height: 1.3; }
+article dl dd { line-height: 1.6; margin-bottom: rem-calc(12); margin-left: rem-calc(24); }
+
+
+
+/* Quotes
+------------------------------------------------------------------- */
+
+blockquote {
+ font-style: italic;
+ position: relative;
+ border: none;
+ margin: 0 30px 30px 30px;
+ color: $grey-11;
+}
+
+ blockquote p {font-style: italic; color: $grey-10; }
+
+ blockquote:before {
+ display:block;content:"\00BB";
+ font-size:80px;
+ line-height: 0;
+ position:absolute;
+ left:-25px;
+ top: auto;
+ color: $grey-11;
+ }
+ blockquote:after {
+ display:block;
+ content:"\00AB";
+ font-size:80px;
+ line-height: 0;
+ position:absolute;
+ right:-10px;
+ bottom: 20px;
+ color: $grey-11;
+ }
+ blockquote cite:before {
+ content:"\2014 \0020"
+ }
+ blockquote cite a,blockquote cite a:visited {
+ color: $grey-10;
+ }
+cite {
+ padding-top: 5px;
+}
+
+button, .button {
+ letter-spacing: 1px;
+}
+
+mark {
+ background-color: scale-color($warning-color, $lightness: 60%);
+}
+
+
+
+/* Typography for Articles
+------------------------------------------------------------------- */
+
+.subheadline {
+ font-size: rem-calc(16);
+ margin: 0;
+ text-transform: uppercase;
+}
+.teaser {
+ font-size: rem-calc(20);
+}
+.big-teaser {
+ font-style: italic; font-weight: 300;
+}
+.big-teaser a {
+ font-style: italic; font-weight: 400;
+}
+
+/* Smaller Fontsize for Bigteaser on small devices */
+@media only screen {
+ .big-teaser {
+ font-size: rem-calc(20);
+ }
+}
+@media only screen and (min-width: 40.063em) {
+ .big-teaser {
+ font-size: rem-calc(29);
+ }
+}
+
+
+
+/* Additional typographical elements
+------------------------------------------------------------------- */
+
+.sans { font-family: $font-family-sans-serif; }
+.serif { font-family: $font-family-serif; }
+
+.font-size-h1 { font-size: $font-size-h1; }
+.font-size-h2 { font-size: $font-size-h2; }
+.font-size-h3 { font-size: $font-size-h3; }
+.font-size-h4 { font-size: $font-size-h4; }
+.font-size-h5 { font-size: $font-size-h5; }
+.font-size-p { font-size: $font-size-p; }
+
+
+
+/* Footnotes
+------------------------------------------------------------------- */
+
+.footnotes:before {
+ content: "";
+ position: absolute;
+ height: 1px;
+ width: 60px;
+ margin-top: -10px;
+ border-bottom: 1px solid $grey-2;
+}
+.footnotes {
+ margin-top: 60px;
+}
+.footnotes ol {
+ font-size: $font-size-small;
+}
+.footnotes p {
+ font-size: inherit;
+ margin-bottom: 0;
+}
+
+
+
+
+/* Icon Font
+ See the icon-set/preview in /assets/fonts/iconfont-preview.html
+------------------------------------------------------------------- */
+
+@font-face {
+ font-family: 'iconfont';
+ src: url('../fonts/iconfont.eot'); /* IE9 Compat Modes */
+ src: url('../fonts/iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
+ url('../fonts/iconfont.woff') format('woff'), /* Pretty Modern Browsers */
+ url('../fonts/iconfont.ttf') format('truetype'), /* Safari, Android, iOS */
+ url('../fonts/iconfont.svg#svgFontName') format('svg'); /* Legacy iOS */
+}
+
+.iconfont { font-family: iconfont; }
+.iconfont-48 { font-size: 48px; }
+
+
+[data-icon]:before { content: attr(data-icon); }
+
+[data-icon]:before,
+.icon-archive:before,
+.icon-browser:before,
+.icon-calendar:before,
+.icon-camera:before,
+.icon-chat:before,
+.icon-check:before,
+.icon-chevron-down:before,
+.icon-chevron-left:before,
+.icon-chevron-right:before,
+.icon-chevron-up:before,
+.icon-circle-with-cross:before,
+.icon-circle-with-minus:before,
+.icon-circle-with-plus:before,
+.icon-cloud:before,
+.icon-code:before,
+.icon-cog:before,
+.icon-dropbox:before,
+.icon-edit:before,
+.icon-export:before,
+.icon-eye:before,
+.icon-facebook:before,
+.icon-feather:before,
+.icon-github:before,
+.icon-globe:before,
+.icon-googleplus:before,
+.icon-heart:before,
+.icon-heart-outlined:before,
+.icon-home:before,
+.icon-instagram:before,
+.icon-lab-flask:before,
+.icon-leaf:before,
+.icon-linkedin:before,
+.icon-mail:before,
+.icon-message:before,
+.icon-mic:before,
+.icon-network:before,
+.icon-paper-plane:before,
+.icon-pinterest:before,
+.icon-price-tag:before,
+.icon-rocket:before,
+.icon-rss:before,
+.icon-soundcloud:before,
+.icon-star:before,
+.icon-star-outlined:before,
+.icon-thumbs-down:before,
+.icon-thumbs-up:before,
+.icon-tree:before,
+.icon-tumblr:before,
+.icon-twitter:before,
+.icon-upload-to-cloud:before,
+.icon-video:before,
+.icon-vimeo:before,
+.icon-warning:before,
+.icon-xing:before,
+.icon-youtube:before {
+ display: inline-block;
+font-family: "iconfont";
+font-style: normal;
+font-weight: normal;
+font-variant: normal;
+line-height: 1;
+text-decoration: inherit;
+text-rendering: optimizeLegibility;
+text-transform: none;
+-moz-osx-font-smoothing: grayscale;
+-webkit-font-smoothing: antialiased;
+font-smoothing: antialiased;
+}
+
+.icon-archive:before { content: "\f100"; }
+.icon-browser:before { content: "\f101"; }
+.icon-calendar:before { content: "\f133"; }
+.icon-camera:before { content: "\f102"; }
+.icon-chat:before { content: "\f103"; }
+.icon-check:before { content: "\f104"; }
+.icon-chevron-down:before { content: "\f105"; }
+.icon-chevron-left:before { content: "\f106"; }
+.icon-chevron-right:before { content: "\f107"; }
+.icon-chevron-up:before { content: "\f108"; }
+.icon-circle-with-cross:before { content: "\f109"; }
+.icon-circle-with-minus:before { content: "\f10a"; }
+.icon-circle-with-plus:before { content: "\f10b"; }
+.icon-cloud:before { content: "\f10c"; }
+.icon-code:before { content: "\f10d"; }
+.icon-cog:before { content: "\f10e"; }
+.icon-dropbox:before { content: "\f10f"; }
+.icon-edit:before { content: "\f110"; }
+.icon-export:before { content: "\f111"; }
+.icon-eye:before { content: "\f112"; }
+.icon-facebook:before { content: "\f113"; }
+.icon-feather:before { content: "\f114"; }
+.icon-github:before { content: "\f115"; }
+.icon-globe:before { content: "\f116"; }
+.icon-googleplus:before { content: "\f136"; }
+.icon-heart:before { content: "\f117"; }
+.icon-heart-outlined:before { content: "\f118"; }
+.icon-home:before { content: "\f119"; }
+.icon-instagram:before { content: "\f11a"; }
+.icon-lab-flask:before { content: "\f11b"; }
+.icon-leaf:before { content: "\f11c"; }
+.icon-linkedin:before { content: "\f11d"; }
+.icon-mail:before { content: "\f11e"; }
+.icon-message:before { content: "\f11f"; }
+.icon-mic:before { content: "\f120"; }
+.icon-network:before { content: "\f121"; }
+.icon-paper-plane:before { content: "\f122"; }
+.icon-pinterest:before { content: "\f123"; }
+.icon-price-tag:before { content: "\f124"; }
+.icon-rocket:before { content: "\f125"; }
+.icon-rss:before { content: "\f126"; }
+.icon-soundcloud:before { content: "\f127"; }
+.icon-star:before { content: "\f128"; }
+.icon-star-outlined:before { content: "\f129"; }
+.icon-thumbs-down:before { content: "\f12a"; }
+.icon-thumbs-up:before { content: "\f12b"; }
+.icon-tree:before { content: "\f134"; }
+.icon-tumblr:before { content: "\f12c"; }
+.icon-twitter:before { content: "\f12d"; }
+.icon-upload-to-cloud:before { content: "\f12e"; }
+.icon-video:before { content: "\f12f"; }
+.icon-vimeo:before { content: "\f130"; }
+.icon-warning:before { content: "\f131"; }
+.icon-xing:before { content: "\f135"; }
+.icon-youtube:before { content: "\f132"; }
diff --git a/_sass/_07_layout.scss b/_sass/_07_layout.scss
new file mode 100644
index 0000000000..2cc758b496
--- /dev/null
+++ b/_sass/_07_layout.scss
@@ -0,0 +1,359 @@
+@charset "utf-8";
+/* TOC
+
+- Adjustments: Video Layout
+- Navigation
+- Search
+- Masthead
+- Masthead › small-only
+- Masthead › medium-only
+- Masthead › large-only
+- Masthead › xlarge-up
+- Breadcrumb
+- Meta
+- Jump to top
+- Footer
+- Subfooter
+- CSS-Classes to add margin at top or bottom
+
+*/
+
+
+
+/* Adjustments: Video Layout
+------------------------------------------------------------------- */
+
+body.video,
+body.video #masthead-no-image-header { background: #000; }
+body.video #masthead-no-image-header { margin-bottom: 60px; }
+body.video h1,
+body.video h2,
+body.video h3,
+body.video h4,
+body.video h5,
+body.video h6,
+body.video p,
+body.video a,
+body.video blockquote:before,
+body.video blockquote:after,
+body.video cite a, { color: #fff; }
+body.video cite a:visited, { color: #fff; }
+body.video cite { color: #fff; }
+
+
+
+/* Navigation
+------------------------------------------------------------------- */
+
+#navigation {
+ -webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,.2);
+ box-shadow: 0 2px 3px 0 rgba(0,0,0,.2);
+}
+
+
+
+/* Search
+------------------------------------------------------------------- */
+
+.no-js form#search {
+ display: none;
+}
+
+
+
+/* Masthead
+------------------------------------------------------------------- */
+
+#masthead {
+ background-color: $primary-color;
+}
+#masthead-no-image-header {
+ background-color: $primary-color;
+}
+#masthead-with-text {
+ text-align: center;
+ font-size: rem-calc(54);
+ font-family: $header-font-family;
+ color: #fff;
+ text-transform: uppercase;
+ text-shadow: 0 2px 3px rgba(0,0,0,.4);
+}
+#masthead-no-image-header {
+ height: 135px;
+}
+#masthead-no-image-header #logo img {
+ margin-top: 10px;
+}
+
+/* Masthead › small-only
+------------------------------------------------------------------- */
+
+@media #{$small-only} {
+ #logo img {
+ display: none;
+ }
+ #masthead {
+ height: 200px;
+ }
+ #masthead-with-pattern {
+ padding: 15px 0;
+ }
+ #masthead-with-background-color {
+ padding: 15px 0;
+ }
+ #masthead-with-text {
+ height: 220px;
+ padding: 30px 0;
+ font-size: rem-calc(36);
+ }
+ #masthead-no-image-header {
+ display: none;
+ }
+}
+
+
+/* Masthead › medium-only
+------------------------------------------------------------------- */
+
+@media #{$medium-only} {
+ #logo img {
+ margin-top: 60px;
+ }
+ #masthead {
+ height: 280px;
+ }
+ #masthead-with-pattern {
+ padding: 20px 0;
+ }
+ #masthead-with-background-color {
+ padding: 20px 0;
+ }
+ #masthead-with-text {
+ padding: 60px 0;
+ height: 300px;
+ }
+}
+
+
+/* Masthead › large-only
+------------------------------------------------------------------- */
+
+@media #{$large-only} {
+ #logo img {
+ margin-top: 80px;
+ }
+ #masthead {
+ height: 310px;
+ }
+ #masthead-with-pattern {
+ padding: 30px 0;
+ }
+ #masthead-with-background-color {
+ padding: 30px 0;
+ }
+ #masthead-with-text {
+ height: 330px;
+ padding: 60px 0;
+ }
+}
+
+
+/* Masthead › xlarge-up
+------------------------------------------------------------------- */
+
+@media #{$xlarge-up} {
+ #logo img {
+ margin-top: 110px;
+ }
+ #masthead {
+ height: 380px;
+ }
+ #masthead-with-pattern {
+ padding: 45px 0;
+ }
+ #masthead-with-background-color {
+ padding: 45px 0;
+ }
+ #masthead-with-text {
+ padding: 95px 0;
+ height: 400px;
+ }
+}
+
+
+#title-image-small {
+ height: 240px;
+}
+#title-image-large {
+ height: 520px;
+}
+#title-image-index-small {
+ height: 120px;
+}
+#title-image-index-large {
+ height: 260px;
+}
+
+
+
+/* Breadcrumb
+------------------------------------------------------------------- */
+
+#breadcrumb {
+ background: scale-color($grey-1, $lightness: 55%);
+ border-top: 1px solid scale-color($grey-1, $lightness: 45%);
+ border-bottom: 1px solid scale-color($grey-1, $lightness: 45%);
+}
+.breadcrumbs>.current {
+ font-weight: bold;
+}
+
+
+/* Meta
+------------------------------------------------------------------- */
+
+#page-meta, #page-meta a {
+ color: $grey-5;
+}
+
+#page-meta .button {
+ background: $grey-5;
+ border: 0;
+}
+#page-meta .button {
+ color: #fff;
+}
+#page-meta .button:hover {
+ background: $primary-color;
+}
+.meta-info p {
+ font-size: rem-calc(13);
+ color: scale-color($grey-1, $lightness: 40%);
+}
+ .meta-info a {
+ text-decoration: underline;
+ color: scale-color($grey-1, $lightness: 40%);
+ }
+ .meta-info a:hover {
+ text-decoration: none;
+ color: $secondary-color;
+ }
+
+
+
+/* Jump to top
+------------------------------------------------------------------- */
+
+#up-to-top {
+ padding: 160px 0 10px 0;
+}
+#up-to-top a {
+ font-size: 24px;
+ padding: 5px;
+ border-radius: 3px;
+}
+#up-to-top a:hover {
+ background: $grey-2;
+}
+
+
+
+/* Footer
+------------------------------------------------------------------- */
+
+#footer-content p,
+#footer-content li {
+ font-size: rem-calc(13);
+ font-weight: 300;
+}
+
+#footer {
+ padding-top: 30px;
+ padding-bottom: 20px;
+ background: $footer-bg;
+ color: $footer-color;
+ }
+
+ #footer a {
+ color: $footer-link-color;
+ }
+ #footer h4,
+ #footer h5 {
+ letter-spacing: 1px;
+ color: #fff;
+ text-transform: uppercase;
+ }
+
+
+
+/* Subfooter
+------------------------------------------------------------------- */
+
+#subfooter {
+ background: $subfooter-bg;
+ color: $subfooter-color;
+ padding-top: 30px;
+}
+
+#subfooter-left ul.inline-list {
+ float: left;
+}
+
+.credits a {
+ color: $subfooter-link-color;
+ border: 0;
+ text-transform: uppercase;
+ &:hover {
+ color: #fff;
+ }
+}
+
+.social-icons {
+ margin-bottom: 10px !important;
+
+// Beware of SCSS-Syntax here
+ li {
+ padding: 0 0 20px 0;
+ }
+ a {
+ font-size: rem-calc(23);
+ display: block;
+ width: 36px;
+ border-radius: 50%;
+ color: $subfooter-bg;
+ background: $subfooter-color;
+ text-align: center;
+ &:hover {
+ background: $subfooter-bg;
+ color: #fff;
+ }
+ }
+}
+
+
+
+/* CSS-Classes to add margin at top or bottom
+------------------------------------------------------------------- */
+
+.t10 { margin-top: 10px !important; }
+.t15 { margin-top: 15px !important; }
+.t20 { margin-top: 20px !important; }
+.t30 { margin-top: 30px !important; }
+.t50 { margin-top: 50px !important; }
+.t60 { margin-top: 60px !important; }
+.t70 { margin-top: 70px !important; }
+.t80 { margin-top: 80px !important; }
+.t90 { margin-top: 90px !important; }
+
+.b15 { margin-bottom: 15px !important; }
+.b20 { margin-bottom: 20px !important; }
+.b30 { margin-bottom: 30px !important; }
+.b60 { margin-bottom: 60px !important; }
+
+.l15 { margin-left: 15px !important; }
+.r15 { margin-right: 15px !important; }
+
+.pl20 { padding-left: 20px !important; }
+.pr5 { padding-right: 5px !important; }
+.pr10 { padding-right: 10px !important; }
+.pr20 { padding-right: 20px !important; }
diff --git a/_sass/_09_elements.scss b/_sass/_09_elements.scss
new file mode 100644
index 0000000000..68a1ac4fd6
--- /dev/null
+++ b/_sass/_09_elements.scss
@@ -0,0 +1,149 @@
+@charset "utf-8";
+/* TOC
+
+- Table of Contents (Index)
+- Panel
+- Shadows
+- Alerts
+- Breadcrumb
+- Button
+- Side-Nav
+- Accordion
+- Lazy Load XT
+- Frontpage Widget
+
+*/
+
+
+
+/* Table of Contents (Index)
+------------------------------------------------------------------- */
+
+#toc ul,
+#toc ul ul,
+#toc ul ul ul, {
+ list-style: none;
+ margin-left: 30px;
+}
+#toc ul {
+ margin-left: 0;
+ margin-top: $spacing-unit;
+}
+
+
+
+/* Panel
+------------------------------------------------------------------- */
+
+.border-dotted {
+ border: 1px dotted $grey-5;
+ padding: rem-calc(20);
+ border-radius: $global-radius;
+}
+
+
+
+/* Shadows
+------------------------------------------------------------------- */
+
+.shadow-no {text-shadow: rgba(0, 0, 0, 0) 0 0 0;}
+.shadow-black {text-shadow: rgba(0, 0, 0, 0.498039) 0px 1px 2px;}
+.shadow-grey {text-shadow: rgba(128, 128, 128, 0.498039) 0px 1px 2px;}
+.shadow-white {text-shadow: rgba(255, 255, 255, 0.498039) 0px 1px 2px;}
+
+
+
+/* Alerts
+------------------------------------------------------------------- */
+
+.alert-box {
+ font-family: $font-family-sans-serif;
+ text-shadow: 0px 1px 1px rgba(0,0,0,0.9);
+}
+ .alert-box p {
+ margin-bottom: 0;
+ }
+ .alert-box a {
+ text-shadow: 1px 1px 0px rgba(0, 0, 0, 1);
+ color: #fff;
+ border-bottom: 1px dotted #fff;
+ }
+ .alert-box a:hover {
+ border-bottom: 1px solid #fff;
+ }
+ .alert-box.terminal {
+ background: $grey-12;
+ color: #fff;
+ border-color: scale-color($grey-12, $lightness: -14%);
+ font-family: $font-family-monospace;
+ }
+ .alert-box.terminal::before {
+ content: "$ ";
+ color: $ci-6;
+ }
+ .alert-box.text {
+ background-color: $grey-2;
+ text-shadow: 0px 0px 0px rgba(0,0,0,0.9);
+ border-color: scale-color($grey-2, $lightness: -14%);
+ color: $grey-12;
+ }
+
+
+
+/* Button
+------------------------------------------------------------------- */
+
+button, .button { letter-spacing: 1px; }
+ button.grey, .button.grey { background: $grey-10; }
+ button.grey:hover,
+ button.grey:focus,
+ .button.grey:hover,
+ .button.grey:focus { background-color: $grey-16; }
+
+
+
+/* Side-Nav
+------------------------------------------------------------------- */
+
+.side-nav li.title { text-transform: uppercase;}
+.side-nav li { border-top: 1px solid $grey-3;}
+.side-nav li a:not(.button) { border-bottom: 0; padding: 0.4375rem 0rem; }
+.side-nav li a:not(.button):hover, .side-nav li a:not(.button):focus { background: $grey-1; }
+
+.homepage p { margin: 0; padding: 0; color: $grey-10; }
+
+
+
+/* Accordion
+------------------------------------------------------------------- */
+
+dl.accordion { border-top: 1px solid $grey-2; }
+.accordion dd { border-bottom: 1px solid $grey-2; }
+dd.accordion-navigation span { padding-right: 12px; }
+dd.accordion-navigation span:before { content: "\F107" }
+dd.accordion-navigation.active span:before { content: "\F105" }
+dd.accordion-navigation.active span:before { content: "\F105" }
+
+
+
+/* Lazy Load XT
+------------------------------------------------------------------- */
+
+/*! Lazy Load XT v1.0.6 2014-11-19
+ * http://ressio.github.io/lazy-load-xt
+ * (C) 2014 RESS.io
+ * Licensed under MIT */
+img.lazy {
+ display: none;
+}
+.lazy-hidden {
+ opacity: 0;
+}
+.lazy-loaded {
+ -webkit-transition: opacity 0.7s;
+ -moz-transition: opacity 0.7s;
+ -ms-transition: opacity 0.7s;
+ -o-transition: opacity 0.7s;
+ transition: opacity 0.7s;
+ opacity: 1;
+}
diff --git a/_sass/_11_syntax-highlighting.scss b/_sass/_11_syntax-highlighting.scss
new file mode 100644
index 0000000000..f0a2a0c1e2
--- /dev/null
+++ b/_sass/_11_syntax-highlighting.scss
@@ -0,0 +1,66 @@
+@charset "utf-8";
+/* Syntax highlighting styles
+------------------------------------------------------------------- */
+
+.highlight {
+ background: #fff;
+ .c { color: #998; font-style: italic } // Comment
+ .err { color: #a61717; background-color: #e3d2d2 } // Error
+ .k { font-weight: bold } // Keyword
+ .o { font-weight: bold } // Operator
+ .cm { color: #998; font-style: italic } // Comment.Multiline
+ .cp { color: #999; font-weight: bold } // Comment.Preproc
+ .c1 { color: #998; font-style: italic } // Comment.Single
+ .cs { color: #999; font-weight: bold; font-style: italic } // Comment.Special
+ .gd { color: #000; background-color: #fdd } // Generic.Deleted
+ .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific
+ .ge { font-style: italic } // Generic.Emph
+ .gr { color: #a00 } // Generic.Error
+ .gh { color: #999 } // Generic.Heading
+ .gi { color: #000; background-color: #dfd } // Generic.Inserted
+ .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific
+ .go { color: #888 } // Generic.Output
+ .gp { color: #555 } // Generic.Prompt
+ .gs { font-weight: bold } // Generic.Strong
+ .gu { color: #aaa } // Generic.Subheading
+ .gt { color: #a00 } // Generic.Traceback
+ .kc { font-weight: bold } // Keyword.Constant
+ .kd { font-weight: bold } // Keyword.Declaration
+ .kp { font-weight: bold } // Keyword.Pseudo
+ .kr { font-weight: bold } // Keyword.Reserved
+ .kt { color: #458; font-weight: bold } // Keyword.Type
+ .m { color: #099 } // Literal.Number
+ .s { color: #d14 } // Literal.String
+ .na { color: #008080 } // Name.Attribute
+ .nb { color: #0086B3 } // Name.Builtin
+ .nc { color: #458; font-weight: bold } // Name.Class
+ .no { color: #008080 } // Name.Constant
+ .ni { color: #800080 } // Name.Entity
+ .ne { color: #900; font-weight: bold } // Name.Exception
+ .nf { color: #900; font-weight: bold } // Name.Function
+ .nn { color: #555 } // Name.Namespace
+ .nt { color: #000080 } // Name.Tag
+ .nv { color: #008080 } // Name.Variable
+ .ow { font-weight: bold } // Operator.Word
+ .w { color: #bbb } // Text.Whitespace
+ .mf { color: #099 } // Literal.Number.Float
+ .mh { color: #099 } // Literal.Number.Hex
+ .mi { color: #099 } // Literal.Number.Integer
+ .mo { color: #099 } // Literal.Number.Oct
+ .sb { color: #d14 } // Literal.String.Backtick
+ .sc { color: #d14 } // Literal.String.Char
+ .sd { color: #d14 } // Literal.String.Doc
+ .s2 { color: #d14 } // Literal.String.Double
+ .se { color: #d14 } // Literal.String.Escape
+ .sh { color: #d14 } // Literal.String.Heredoc
+ .si { color: #d14 } // Literal.String.Interpol
+ .sx { color: #d14 } // Literal.String.Other
+ .sr { color: #009926 } // Literal.String.Regex
+ .s1 { color: #d14 } // Literal.String.Single
+ .ss { color: #990073 } // Literal.String.Symbol
+ .bp { color: #999 } // Name.Builtin.Pseudo
+ .vc { color: #008080 } // Name.Variable.Class
+ .vg { color: #008080 } // Name.Variable.Global
+ .vi { color: #008080 } // Name.Variable.Instance
+ .il { color: #099 } // Literal.Number.Integer.Long
+}
diff --git a/_sass/_functions.scss b/_sass/_functions.scss
new file mode 100644
index 0000000000..60dd1e2ade
--- /dev/null
+++ b/_sass/_functions.scss
@@ -0,0 +1,147 @@
+@charset "utf-8";
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+// This is the default html and body font-size for the base rem value.
+$rem-base: 16px !default;
+
+// IMPORT ONCE
+// We use this to prevent styles from being loaded multiple times for compenents that rely on other components.
+$modules: () !default;
+@mixin exports($name) {
+ // Import from global scope
+ $modules: $modules !global;
+ // Check if a module is already on the list
+ $module_index: index($modules, $name);
+ @if (($module_index == null) or ($module_index == false)) {
+ $modules: append($modules, $name) !global;
+ @content;
+ }
+}
+
+//
+// @functions
+//
+
+
+// RANGES
+// We use these functions to define ranges for various things, like media queries.
+@function lower-bound($range){
+ @if length($range) <= 0 {
+ @return 0;
+ }
+ @return nth($range,1);
+}
+
+@function upper-bound($range) {
+ @if length($range) < 2 {
+ @return 999999999999;
+ }
+ @return nth($range, 2);
+}
+
+// STRIP UNIT
+// It strips the unit of measure and returns it
+@function strip-unit($num) {
+ @return $num / ($num * 0 + 1);
+}
+
+// TEXT INPUT TYPES
+
+@function text-inputs( $types: all, $selector: input ) {
+
+ $return: ();
+
+ $all-text-input-types:
+ text
+ password
+ date
+ datetime
+ datetime-local
+ month
+ week
+ email
+ number
+ search
+ tel
+ time
+ url
+ color
+ textarea;
+
+ @if $types == all { $types: $all-text-input-types; }
+
+ @each $type in $types {
+ @if $type == textarea {
+ @if $selector == input {
+ $return: append($return, unquote('#{$type}'), comma)
+ } @else {
+ $return: append($return, unquote('#{$type}#{$selector}'), comma)
+ }
+ } @else {
+ $return: append($return, unquote('#{$selector}[type="#{$type}"]'), comma)
+ }
+ }
+
+ @return $return;
+
+}
+
+// CONVERT TO REM
+@function convert-to-rem($value, $base-value: $rem-base) {
+ $value: strip-unit($value) / strip-unit($base-value) * 1rem;
+ @if ($value == 0rem) { $value: 0; } // Turn 0rem into 0
+ @return $value;
+}
+
+@function data($attr) {
+ @if $namespace {
+ @return '[data-' + $namespace + '-' + $attr + ']';
+ }
+
+ @return '[data-' + $attr + ']';
+}
+
+// REM CALC
+
+// New Syntax, allows to optionally calculate on a different base value to counter compounding effect of rem's.
+// Call with 1, 2, 3 or 4 parameters, 'px' is not required but supported:
+//
+// rem-calc(10 20 30px 40);
+//
+// Space delimited, if you want to delimit using comma's, wrap it in another pair of brackets
+//
+// rem-calc((10, 20, 30, 40px));
+//
+// Optionally call with a different base (eg: 8px) to calculate rem.
+//
+// rem-calc(16px 32px 48px, 8px);
+//
+// If you require to comma separate your list
+//
+// rem-calc((16px, 32px, 48), 8px);
+
+@function rem-calc($values, $base-value: $rem-base) {
+ $max: length($values);
+
+ @if $max == 1 { @return convert-to-rem(nth($values, 1), $base-value); }
+
+ $remValues: ();
+ @for $i from 1 through $max {
+ $remValues: append($remValues, convert-to-rem(nth($values, $i), $base-value));
+ }
+ @return $remValues;
+}
+
+// OLD EM CALC
+// Deprecated: We'll drop support for this in 5.1.0, use rem-calc()
+@function emCalc($values){
+ @return rem-calc($values);
+}
+
+// OLD EM CALC
+// Deprecated: We'll drop support for this in 5.1.0, use rem-calc()
+@function em-calc($values){
+ @return rem-calc($values);
+}
diff --git a/_sass/foundation-components/_accordion.scss b/_sass/foundation-components/_accordion.scss
new file mode 100644
index 0000000000..fb57509576
--- /dev/null
+++ b/_sass/foundation-components/_accordion.scss
@@ -0,0 +1,157 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+
+$include-html-accordion-classes: $include-html-classes !default;
+
+$accordion-navigation-padding: rem-calc(16) !default;
+$accordion-navigation-bg-color: $silver !default;
+$accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%) !default;
+$accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%) !default;
+$accordion-navigation-font-color: $jet !default;
+$accordion-navigation-font-size: rem-calc(16) !default;
+$accordion-navigation-font-family: $body-font-family !default;
+
+$accordion-content-padding: ($column-gutter/2) !default;
+$accordion-content-active-bg-color: $white !default;
+
+
+// Mixin: accordion-container()
+// Decription: Responsible for the container component of accordions, generating styles relating to a margin of zero and a clearfix
+// Explicit Dependencies: a clearfix mixin *is* defined.
+// Implicit Dependencies: None
+
+@mixin accordion-container() {
+ @include clearfix;
+ margin-bottom: 0;
+}
+
+// Mixin: accordion-navigation( $bg, $hover-bg, $active-bg, $padding, $active_class, $font-color, $font-size, $font-family){
+// @params $bg-color: [ color or string ]: Specify the background color for the navigation element
+// @params $hover-bg-color [ color or string ]: Specify the background color for the navigation element when hovered
+// @params $active-bg [ color or string ]: Specify the background color for the navigation element when clicked and not released.
+// @params $active_class [ string ]: Specify the class name used to keep track of which accordion tab should be visible
+// @params $font-color [ color or string ]: Color of the font for accordion
+// @params $font-size [ number ]: Specifiy the font-size of the text inside the navigation element
+// @params $font-family [ string ]: Specify the font family for the text of the navigation of the accorion
+
+@mixin accordion-navigation( $bg: $accordion-navigation-bg-color, $hover-bg: $accordion-navigation-hover-bg-color, $active-bg: $accordion-navigation-active-bg-color, $padding: $accordion-navigation-padding, $active_class: 'active', $font-color: $accordion-navigation-font-color, $font-size: $accordion-navigation-font-size, $font-family: $accordion-navigation-font-family ){
+ display: block;
+ margin-bottom: 0 !important;
+ @if type-of($active_class) != "string" {
+ @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of this navigation component."
+ }
+ @else {
+ &.#{ $active_class } > a {
+ background: $active-bg;
+ }
+ }
+ > a {
+ background: $bg;
+ color: $font-color;
+ @if type-of($padding) != number {
+ @warn "`#{$padding}` was read as #{type-of($padding)}";
+ @if $accordion-navigation-padding != null {
+ @warn "#{$padding} was read as a #{type-of($padding)}";
+ @warn "`#{$padding}` isn't a valid number. $accordion-navigation-padding (#{$accordion-navigation-padding}) will be used instead.)";
+ padding: $accordion-navigation-padding;
+ }
+ @else {
+ @warn "`#{$padding}` isn't a valid number and $accordion-navigation-padding is missing. A value of `null` is returned to not output an invalid value for padding";
+ padding: null;
+ }
+ }
+ @else {
+ padding: $padding;
+ }
+ display: block;
+ font-family: $font-family;
+ @if type-of($font-size) != number {
+ @warn "`#{$font-size}` was read as a #{type-of($font-size)}";
+ @if $accordion-navigation-font-size != null {
+ @warn "`#{$font-size}` is not a valid number. The value of $accordion-navigation-font-size will be used instead (#{$accordion-navigation-font-size}).";
+ font-size: $accordion-navigation-font-size;
+ }
+ @else{
+ @warn "`#{$font-size}` is not a valid number and the default value of $accordion-navigation-font-size is not defined. A value of `null` will be returned to not generate an invalid value for font-size.";
+ font-size: null;
+
+ }
+ }
+ @else {
+ font-size: $font-size;
+ }
+ &:hover {
+ background: $hover-bg;
+ }
+ }
+}
+
+// Mixin: accordion-content($bg, $padding, $active-class)
+// @params $padding [ number ]: Padding for the content of the container
+// @params $bg [ color ]: Background color for the content when it's visible
+// @params $active_class [ string ]: Class name used to keep track of which accordion tab should be visible.
+
+@mixin accordion-content($bg: $accordion-content-active-bg-color, $padding: $accordion-content-padding, $active_class: 'active'){
+ display: none;
+ @if type-of($padding) != "number" {
+ @warn "#{$padding} was read as a #{type-of($padding)}";
+ @if $accordion-content-padding != null {
+ @warn "`#{$padding}` isn't a valid number. $accordion-content-padding used instead";
+ padding: $accordion-content-padding;
+ } @else {
+ @warn "`#{$padding}` isn't a valid number and the default value of $accordion-content-padding is not defined. A value of `null` is returned to not output an invalid value for padding.";
+ padding: null;
+ }
+ } @else {
+ padding: $padding;
+ }
+
+ @if type-of($active_class) != "string" {
+ @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of the content. "
+ }
+ @else {
+ &.#{$active_class} {
+ display: block;
+ background: $bg;
+ }
+ }
+}
+
+@include exports("accordion") {
+ @if $include-html-accordion-classes {
+ .accordion {
+ @include clearfix;
+ margin-bottom: 0;
+ .accordion-navigation, dd {
+ display: block;
+ margin-bottom: 0 !important;
+ &.active > a { background: $accordion-navigation-active-bg-color; }
+ > a {
+ background: $accordion-navigation-bg-color;
+ color: $accordion-navigation-font-color;
+ padding: $accordion-navigation-padding;
+ display: block;
+ font-family: $accordion-navigation-font-family;
+ font-size: $accordion-navigation-font-size;
+ &:hover { background: $accordion-navigation-hover-bg-color; }
+ }
+
+ > .content {
+ display: none;
+ padding: $accordion-content-padding;
+ &.active {
+ display: block;
+ background: $accordion-content-active-bg-color;
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_alert-boxes.scss b/_sass/foundation-components/_alert-boxes.scss
new file mode 100644
index 0000000000..493fbaa17e
--- /dev/null
+++ b/_sass/foundation-components/_alert-boxes.scss
@@ -0,0 +1,128 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// Alert Box Variables
+//
+$include-html-alert-classes: $include-html-classes !default;
+
+// We use this to control alert padding.
+$alert-padding-top: rem-calc(14) !default;
+$alert-padding-default-float: $alert-padding-top !default;
+$alert-padding-opposite-direction: $alert-padding-top + rem-calc(10) !default;
+$alert-padding-bottom: $alert-padding-top !default;
+
+// We use these to control text style.
+$alert-font-weight: $font-weight-normal !default;
+$alert-font-size: rem-calc(13) !default;
+$alert-font-color: $white !default;
+$alert-font-color-alt: scale-color($secondary-color, $lightness: -66%) !default;
+
+// We use this for close hover effect.
+$alert-function-factor: -14% !default;
+
+// We use these to control border styles.
+$alert-border-style: solid !default;
+$alert-border-width: 1px !default;
+$alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor) !default;
+$alert-bottom-margin: rem-calc(20) !default;
+
+// We use these to style the close buttons
+$alert-close-color: $oil !default;
+$alert-close-top: 50% !default;
+$alert-close-position: rem-calc(4) !default;
+$alert-close-font-size: rem-calc(22) !default;
+$alert-close-opacity: 0.3 !default;
+$alert-close-opacity-hover: 0.5 !default;
+$alert-close-padding: 9px 6px 4px !default;
+$alert-close-background: inherit !default;
+
+// We use this to control border radius
+$alert-radius: $global-radius !default;
+
+$alert-transition-speed: 300ms !default;
+$alert-transition-ease: ease-out !default;
+
+//
+// Alert Mixins
+//
+
+// We use this mixin to create a default alert base.
+@mixin alert-base {
+ border-style: $alert-border-style;
+ border-width: $alert-border-width;
+ display: block;
+ font-weight: $alert-font-weight;
+ margin-bottom: $alert-bottom-margin;
+ position: relative;
+ padding: $alert-padding-top $alert-padding-opposite-direction $alert-padding-bottom $alert-padding-default-float;
+ font-size: $alert-font-size;
+ @include single-transition(opacity, $alert-transition-speed, $alert-transition-ease)
+}
+
+// We use this mixin to add alert styles
+//
+// $bg - The background of the alert. Default: $primary-color.
+@mixin alert-style($bg:$primary-color) {
+
+ // This finds the lightness percentage of the background color.
+ $bg-lightness: lightness($bg);
+
+ // We control which background color and border come through.
+ background-color: $bg;
+ border-color: scale-color($bg, $lightness: $alert-function-factor);
+
+ // We control the text color for you based on the background color.
+ @if $bg-lightness > 70% { color: $alert-font-color-alt; }
+ @else { color: $alert-font-color; }
+
+}
+
+// We use this to create the close button.
+@mixin alert-close {
+ font-size: $alert-close-font-size;
+ padding: $alert-close-padding;
+ line-height: 0;
+ position: absolute;
+ top: $alert-close-top;
+ margin-top: -($alert-close-font-size / 2);
+ #{$opposite-direction}: $alert-close-position;
+ color: $alert-close-color;
+ opacity: $alert-close-opacity;
+ background: $alert-close-background;
+ &:hover,
+ &:focus { opacity: $alert-close-opacity-hover; }
+}
+
+// We use this to quickly create alerts with a single mixin.
+//
+// $bg - Background of alert. Default: $primary-color.
+// $radius - Radius of alert box. Default: false.
+@mixin alert($bg:$primary-color, $radius:false) {
+ @include alert-base;
+ @include alert-style($bg);
+ @include radius($radius);
+}
+
+@include exports("alert-box") {
+ @if $include-html-alert-classes {
+ .alert-box {
+ @include alert;
+
+ .close { @include alert-close; }
+
+ &.radius { @include radius($alert-radius); }
+ &.round { @include radius($global-rounded); }
+
+ &.success { @include alert-style($success-color); }
+ &.alert { @include alert-style($alert-color); }
+ &.secondary { @include alert-style($secondary-color); }
+ &.warning { @include alert-style($warning-color); }
+ &.info { @include alert-style($info-color); }
+ &.alert-close { opacity: 0}
+ }
+ }
+}
diff --git a/_sass/foundation-components/_block-grid.scss b/_sass/foundation-components/_block-grid.scss
new file mode 100644
index 0000000000..5c7bf14611
--- /dev/null
+++ b/_sass/foundation-components/_block-grid.scss
@@ -0,0 +1,132 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// Block Grid Variables
+//
+$include-html-block-grid-classes: $include-html-classes !default;
+$include-xl-html-block-grid-classes: false !default;
+
+// We use this to control the maximum number of block grid elements per row
+$block-grid-elements: 12 !default;
+$block-grid-default-spacing: rem-calc(20) !default;
+
+$align-block-grid-to-grid: false !default;
+@if $align-block-grid-to-grid {
+ $block-grid-default-spacing: $column-gutter;
+}
+
+// Enables media queries for block-grid classes. Set to false if writing semantic HTML.
+$block-grid-media-queries: true !default;
+
+//
+// Block Grid Mixins
+//
+
+// Create a custom block grid
+//
+// $per-row - # of items to display per row. Default: false.
+// $spacing - # of ems to use as padding on each block item. Default: rem-calc(20).
+// $base-style - Apply a base style to block grid. Default: true.
+@mixin block-grid(
+ $per-row:false,
+ $spacing:$block-grid-default-spacing,
+ $include-spacing:true,
+ $base-style:true) {
+
+ @if $base-style {
+ display: block;
+ padding: 0;
+ @if $align-block-grid-to-grid {
+ margin: 0;
+ } @else {
+ margin: 0 (-$spacing/2);
+ }
+ @include clearfix;
+
+ &>li {
+ display: block;
+ height: auto;
+ float: $default-float;
+ @if $include-spacing {
+ padding: 0 ($spacing/2) $spacing;
+ }
+ }
+ }
+
+ @if $per-row {
+ &>li {
+ width: 100%/$per-row;
+ @if $include-spacing {
+ padding: 0 ($spacing/2) $spacing;
+ }
+ list-style: none;
+
+ &:nth-of-type(1n) { clear: none; }
+ &:nth-of-type(#{$per-row}n+1) { clear: both; }
+ @if $align-block-grid-to-grid {
+ @include block-grid-aligned($per-row, $spacing);
+ }
+ }
+ }
+}
+
+@mixin block-grid-aligned($per-row, $spacing) {
+ @for $i from 1 through $block-grid-elements {
+ @if $per-row >= $i {
+ $grid-column: '+' + $i;
+ @if $per-row == $i {
+ $grid-column: '';
+ }
+ &:nth-of-type(#{$per-row}n#{unquote($grid-column)}) {
+ padding-left: ($spacing - (($spacing / $per-row) * ($per-row - ($i - 1))));
+ padding-right: ($spacing - (($spacing / $per-row) * $i));
+ }
+ }
+ }
+}
+
+// Generate presentational markup for block grid.
+//
+// $size - Name of class to use, i.e. "large" will generate .large-block-grid-1, .large-block-grid-2, etc.
+@mixin block-grid-html-classes($size,$include-spacing) {
+ @for $i from 1 through $block-grid-elements {
+ .#{$size}-block-grid-#{($i)} {
+ @include block-grid($i,$block-grid-default-spacing,$include-spacing,false);
+ }
+ }
+}
+
+@include exports("block-grid") {
+ @if $include-html-block-grid-classes {
+
+ [class*="block-grid-"] { @include block-grid; }
+
+ @if $block-grid-media-queries {
+ @media #{$small-up} {
+ @include block-grid-html-classes($size:small,$include-spacing:false);
+ }
+
+ @media #{$medium-up} {
+ @include block-grid-html-classes($size:medium,$include-spacing:false);
+ }
+
+ @media #{$large-up} {
+ @include block-grid-html-classes($size:large,$include-spacing:false);
+ }
+
+ @if $include-xl-html-block-grid-classes {
+ @media #{$xlarge-up} {
+ @include block-grid-html-classes($size:xlarge,$include-spacing:false);
+ }
+
+ @media #{$xxlarge-up} {
+ @include block-grid-html-classes($size:xxlarge,$include-spacing:false);
+ }
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_breadcrumbs.scss b/_sass/foundation-components/_breadcrumbs.scss
new file mode 100644
index 0000000000..612a146c40
--- /dev/null
+++ b/_sass/foundation-components/_breadcrumbs.scss
@@ -0,0 +1,132 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// Breadcrumb Variables
+//
+$include-html-nav-classes: $include-html-classes !default;
+
+// We use this to set the background color for the breadcrumb container.
+$crumb-bg: scale-color($secondary-color, $lightness: 55%) !default;
+
+// We use these to set the padding around the breadcrumbs.
+$crumb-padding: rem-calc(9 14 9) !default;
+$crumb-side-padding: rem-calc(12) !default;
+
+// We use these to control border styles.
+$crumb-function-factor: -10% !default;
+$crumb-border-size: 1px !default;
+$crumb-border-style: solid !default;
+$crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor) !default;
+$crumb-radius: $global-radius !default;
+
+// We use these to set various text styles for breadcrumbs.
+$crumb-font-size: rem-calc(11) !default;
+$crumb-font-color: $primary-color !default;
+$crumb-font-color-current: $oil !default;
+$crumb-font-color-unavailable: $aluminum !default;
+$crumb-font-transform: uppercase !default;
+$crumb-link-decor: underline !default;
+
+// We use these to control the slash between breadcrumbs
+$crumb-slash-color: $base !default;
+$crumb-slash: "/" !default;
+
+//
+// Breadcrumb Mixins
+//
+
+// We use this mixin to create a container around our breadcrumbs
+@mixin crumb-container {
+ display: block;
+ padding: $crumb-padding;
+ overflow: hidden;
+ margin-#{$default-float}: 0;
+ list-style: none;
+ border-style: $crumb-border-style;
+ border-width: $crumb-border-size;
+
+ // We control which background color and border come through.
+ background-color: $crumb-bg;
+ border-color: $crumb-border-color;
+}
+
+// We use this mixin to create breadcrumb styles from list items.
+@mixin crumbs {
+
+ // A normal state will make the links look and act like clickable breadcrumbs.
+ margin: 0;
+ float: $default-float;
+ font-size: $crumb-font-size;
+ line-height: $crumb-font-size;
+ text-transform: $crumb-font-transform;
+ color: $crumb-font-color;
+
+ &:hover a, &:focus a { text-decoration: $crumb-link-decor; }
+
+ a {
+ color: $crumb-font-color;
+ }
+
+ // Current is for the link of the current page
+ &.current {
+ cursor: $cursor-default-value;
+ color: $crumb-font-color-current;
+ a {
+ cursor: $cursor-default-value;
+ color: $crumb-font-color-current;
+ }
+
+ &:hover, &:hover a,
+ &:focus, &:focus a { text-decoration: none; }
+ }
+
+ // Unavailable removed color and link styles so it looks inactive.
+ &.unavailable {
+ color: $crumb-font-color-unavailable;
+ a { color: $crumb-font-color-unavailable; }
+
+ &:hover,
+ &:hover a,
+ &:focus,
+ a:focus {
+ text-decoration: none;
+ color: $crumb-font-color-unavailable;
+ cursor: $cursor-default-value;
+ }
+ }
+
+ &:before {
+ content: "#{$crumb-slash}";
+ color: $crumb-slash-color;
+ margin: 0 $crumb-side-padding;
+ position: relative;
+ top: 1px;
+ }
+
+ &:first-child:before {
+ content: " ";
+ margin: 0;
+ }
+}
+
+@include exports("breadcrumbs") {
+ @if $include-html-nav-classes {
+ .breadcrumbs {
+ @include crumb-container;
+ @include radius($crumb-radius);
+
+ &>* {
+ @include crumbs;
+ }
+ }
+ }
+}
+
+/* Accessibility - hides the forward slash */
+[aria-label="breadcrumbs"] [aria-hidden="true"]:after {
+ content: "/";
+ }
diff --git a/_sass/foundation-components/_button-groups.scss b/_sass/foundation-components/_button-groups.scss
new file mode 100644
index 0000000000..c989dfbaf0
--- /dev/null
+++ b/_sass/foundation-components/_button-groups.scss
@@ -0,0 +1,197 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "buttons";
+
+//
+// Button Group Variables
+//
+$include-html-button-classes: $include-html-classes !default;
+
+// Sets the margin for the right side by default, and the left margin if right-to-left direction is used
+$button-bar-margin-opposite: rem-calc(10) !default;
+$button-group-border-width: 1px !default;
+
+//
+// Button Group Mixins
+//
+
+// We use this to add styles for a button group container
+@mixin button-group-container($styles:true, $float:false) {
+ @if $styles {
+ list-style: none;
+ margin: 0;
+ #{$default-float}: 0;
+ @include clearfix();
+ }
+ @if $float {
+ float: #{$default-float};
+ margin-#{$opposite-direction}: $button-bar-margin-opposite;
+ & div { overflow: hidden; }
+ }
+}
+
+// We use this to control styles for button groups
+@mixin button-group-style($radius:false, $even:false, $float:false, $orientation:horizontal) {
+
+ > button, .button {
+ border-#{$default-float}: $button-group-border-width solid;
+ border-color: rgba(255, 255, 255, 0.5);
+ }
+
+ &:first-child {
+ button, .button {
+ border-#{$default-float}: 0;
+ }
+ }
+
+ // We use this to control the flow, or remove those styles completely.
+ @if $float {
+ margin: 0;
+ float: $float;
+ display: list-item;
+ // Make sure the first child doesn't get the negative margin.
+ &:first-child { margin-#{$default-float}: 0; }
+ }
+ @else {
+ margin: 0 -2px;
+ display: inline-block;
+ }
+
+ @if $orientation == vertical {
+ display:block;
+ margin:0;
+ > button, .button {
+ border-top: $button-group-border-width solid;
+ border-color: rgba(255, 255, 255, 0.5);
+ border-left-width: 0;
+ margin:0;
+ display: block;
+ }
+
+ &:first-child {
+ button, .button {
+ border-top: 0;
+ }
+ }
+ }
+
+ // We use these to control left and right radius on first/last buttons in the group.
+ @if $radius == true {
+ &,
+ & > a,
+ & > button,
+ & > .button { @include radius(0); }
+ &:first-child,
+ &:first-child > a,
+ &:first-child > button,
+ &:first-child > .button {
+ @if $orientation == vertical {
+ @include side-radius(top, $button-radius);
+ }
+ @else {
+ @include side-radius($default-float, $button-radius);
+ }
+ }
+ &:last-child,
+ &:last-child > a,
+ &:last-child > button,
+ &:last-child > .button {
+ @if $orientation == vertical {
+ @include side-radius(bottom, $button-radius);
+ }
+ @else {
+ @include side-radius($opposite-direction, $button-radius);
+ }
+ }
+ }
+ @else if $radius {
+ &,
+ & > a,
+ & > button,
+ & > .button { @include radius(0); }
+ &:first-child,
+ &:first-child > a,
+ &:first-child > button,
+ &:first-child > .button {
+ @if $orientation == vertical {
+ @include side-radius(top, $radius);
+ }
+ @else {
+ @include side-radius($default-float, $radius);
+ }
+ }
+ &:last-child,
+ &:last-child > a,
+ &:last-child > button,
+ &:last-child > .button {
+ @if $orientation == vertical {
+ @include side-radius(bottom, $radius);
+ }
+ @else {
+ @include side-radius($opposite-direction, $radius);
+ }
+ }
+ }
+
+ // We use this to make the buttons even width across their container
+ @if $even {
+ width: percentage((100/$even) / 100);
+ button, .button { width: 100%; }
+ }
+}
+
+@include exports("button-group") {
+ @if $include-html-button-classes {
+ .button-group { @include button-group-container;
+
+ & > li { @include button-group-style(); }
+
+ &.stack {
+ & > li { @include button-group-style($orientation:vertical); float: none; }
+ }
+
+ &.stack-for-small {
+ & > li {
+ @include button-group-style($orientation:horizontal);
+ @media #{$small-only} {
+ @include button-group-style($orientation:vertical);
+ }
+ }
+ }
+
+ &.radius > * { @include button-group-style($radius:$button-radius, $float:null); }
+ &.radius.stack > * { @include button-group-style($radius:$button-radius, $float:null, $orientation:vertical); }
+ &.radius.stack-for-small > * {
+ @media #{$medium-up} {
+ @include button-group-style($radius:$button-radius, $orientation:horizontal);
+ }
+ @media #{$small-only} {
+ @include button-group-style($radius:$button-radius, $orientation:vertical);
+ }
+ }
+
+ &.round > * { @include button-group-style($radius:$button-round, $float:null); }
+ &.round.stack > * { @include button-group-style($radius:$button-med, $float:null, $orientation:vertical); }
+ &.round.stack-for-small > * {
+ @media #{$medium-up} {
+ @include button-group-style($radius:$button-round, $orientation:horizontal);
+ }
+ @media #{$small-only} {
+ @include button-group-style($radius:$button-med, $orientation:vertical);
+ }
+ }
+
+ @for $i from 2 through 8 {
+ &.even-#{$i} li { @include button-group-style($even:$i, $float:null); }
+ }
+ }
+
+ .button-bar {
+ @include clearfix;
+ .button-group { @include button-group-container($styles:false, $float:true); }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_buttons.scss b/_sass/foundation-components/_buttons.scss
new file mode 100644
index 0000000000..022f6d5e1a
--- /dev/null
+++ b/_sass/foundation-components/_buttons.scss
@@ -0,0 +1,259 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-button-classes: $include-html-classes !default;
+
+// We use these to build padding for buttons.
+$button-tny: rem-calc(10) !default;
+$button-sml: rem-calc(14) !default;
+$button-med: rem-calc(16) !default;
+$button-lrg: rem-calc(18) !default;
+
+// We use this to control the display property.
+$button-display: inline-block !default;
+$button-margin-bottom: rem-calc(20) !default;
+
+// We use these to control button text styles.
+$button-font-family: $body-font-family !default;
+$button-font-color: $white !default;
+$button-font-color-alt: $oil !default;
+$button-font-tny: rem-calc(11) !default;
+$button-font-sml: rem-calc(13) !default;
+$button-font-med: rem-calc(16) !default;
+$button-font-lrg: rem-calc(20) !default;
+$button-font-weight: $font-weight-normal !default;
+$button-font-align: center !default;
+
+// We use these to control various hover effects.
+$button-function-factor: -20% !default;
+
+// We use these to control button border styles.
+$button-border-width: 0 !default;
+$button-border-style: solid !default;
+$button-bg-color: $primary-color !default;
+$button-bg-hover: scale-color($button-bg-color, $lightness: $button-function-factor) !default;
+$button-border-color: $button-bg-hover !default;
+$secondary-button-bg-hover: scale-color($secondary-color, $lightness: $button-function-factor) !default;
+$secondary-button-border-color: $secondary-button-bg-hover !default;
+$success-button-bg-hover: scale-color($success-color, $lightness: $button-function-factor) !default;
+$success-button-border-color: $success-button-bg-hover !default;
+$alert-button-bg-hover: scale-color($alert-color, $lightness: $button-function-factor) !default;
+$alert-button-border-color: $alert-button-bg-hover !default;
+$warning-button-bg-hover: scale-color($warning-color, $lightness: $button-function-factor) !default;
+$warning-button-border-color: $warning-button-bg-hover !default;
+$info-button-bg-hover: scale-color($info-color, $lightness: $button-function-factor) !default;
+$info-button-border-color: $info-button-bg-hover !default;
+
+// We use this to set the default radius used throughout the core.
+$button-radius: $global-radius !default;
+$button-round: $global-rounded !default;
+
+// We use this to set default opacity and cursor for disabled buttons.
+$button-disabled-opacity: 0.7 !default;
+$button-disabled-cursor: $cursor-default-value !default;
+
+
+//
+// @MIXIN
+//
+// We use this mixin to create a default button base.
+//
+// $style - Sets base styles. Can be set to false. Default: true.
+// $display - Used to control display property. Default: $button-display || inline-block
+
+@mixin button-base($style:true, $display:$button-display) {
+ @if $style {
+ border-style: $button-border-style;
+ border-width: $button-border-width;
+ cursor: $cursor-pointer-value;
+ font-family: $button-font-family;
+ font-weight: $button-font-weight;
+ line-height: normal;
+ margin: 0 0 $button-margin-bottom;
+ position: relative;
+ text-decoration: none;
+ text-align: $button-font-align;
+ -webkit-appearance: none;
+ border-radius:0;
+ }
+ @if $display { display: $display; }
+}
+
+// @MIXIN
+//
+// We use this mixin to add button size styles
+//
+// $padding - Used to build padding for buttons Default: $button-med ||= rem-calc(12)
+// $full-width - We can set $full-width:true to remove side padding extend width - Default: false
+
+@mixin button-size($padding:$button-med, $full-width:false) {
+
+ // We control which padding styles come through,
+ // these can be turned off by setting $padding:false
+ @if $padding {
+ padding-top: $padding;
+ padding-#{$opposite-direction}: $padding * 2;
+ padding-bottom: $padding + rem-calc(1);
+ padding-#{$default-float}: $padding * 2;
+
+ // We control the font-size based on mixin input.
+ @if $padding == $button-med { font-size: $button-font-med; }
+ @else if $padding == $button-tny { font-size: $button-font-tny; }
+ @else if $padding == $button-sml { font-size: $button-font-sml; }
+ @else if $padding == $button-lrg { font-size: $button-font-lrg; }
+ }
+
+ // We can set $full-width:true to remove side padding extend width.
+ @if $full-width {
+ // We still need to check if $padding is set.
+ @if $padding {
+ padding-top: $padding;
+ padding-bottom: $padding + rem-calc(1);
+ } @else if $padding == false {
+ padding-top:0;
+ padding-bottom:0;
+ }
+ padding-right: 0;
+ padding-left: 0;
+ width: 100%;
+ }
+}
+
+// @MIXIN
+//
+// we use this mixin to create the button hover and border colors
+
+// @MIXIN
+//
+// We use this mixin to add button color styles
+//
+// $bg - Background color. We can set $bg:false for a transparent background. Default: $primary-color.
+// $radius - If true, set to button radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default: true
+// $disabled - We can set $disabled:true to create a disabled transparent button. Default: false
+// $bg-hover - Button Hover Background Color. Default: $button-bg-hover
+// $border-color - Button Border Color. Default: $button-border-color
+@mixin button-style($bg:$button-bg-color, $radius:false, $disabled:false, $bg-hover:null, $border-color:null) {
+
+ // We control which background styles are used,
+ // these can be removed by setting $bg:false
+ @if $bg {
+
+ @if $bg-hover == null {
+ $bg-hover: if($bg == $button-bg-color, $button-bg-hover, scale-color($bg, $lightness: $button-function-factor));
+ }
+
+ @if $border-color == null {
+ $border-color: if($bg == $button-bg-color, $button-border-color, scale-color($bg, $lightness: $button-function-factor));
+ }
+
+ // This find the lightness percentage of the background color.
+ $bg-lightness: lightness($bg);
+ $bg-hover-lightness: lightness($bg-hover);
+
+ background-color: $bg;
+ border-color: $border-color;
+ &:hover,
+ &:focus { background-color: $bg-hover; }
+
+ // We control the text color for you based on the background color.
+ color: if($bg-lightness > 70%, $button-font-color-alt, $button-font-color);
+
+ &:hover,
+ &:focus {
+ color: if($bg-hover-lightness > 70%, $button-font-color-alt, $button-font-color);
+ }
+ }
+
+ // We can set $disabled:true to create a disabled transparent button.
+ @if $disabled {
+ cursor: $button-disabled-cursor;
+ opacity: $button-disabled-opacity;
+ box-shadow: none;
+ &:hover,
+ &:focus { background-color: $bg; }
+ }
+
+ // We can control how much button radius is used.
+ @if $radius == true { @include radius($button-radius); }
+ @else if $radius { @include radius($radius); }
+
+}
+
+// @MIXIN
+//
+// We use this to quickly create buttons with a single mixin. As @jaredhardy puts it, "the kitchen sink mixin"
+//
+// $padding - Used to build padding for buttons Default: $button-med ||= rem-calc(12)
+// $bg - Primary color set in settings file. Default: $button-bg.
+// $radius - If true, set to button radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default:false.
+// $full-width - We can set $full-width:true to remove side padding extend width. Default:false.
+// $disabled - We can set $disabled:true to create a disabled transparent button. Default:false.
+// $is-prefix - Not used? Default:false.
+// $bg-hover - Button Hover Color - Default null - see button-style mixin
+// $border-color - Button Border Color - Default null - see button-style mixin
+// $transition - We can control whether or not to include the background-color transition property - Default:true.
+@mixin button($padding:$button-med, $bg:$button-bg-color, $radius:false, $full-width:false, $disabled:false, $is-prefix:false, $bg-hover:null, $border-color:null, $transition: true) {
+ @include button-base;
+ @include button-size($padding, $full-width);
+ @include button-style($bg, $radius, $disabled, $bg-hover, $border-color);
+
+ @if $transition {
+ @include single-transition(background-color);
+ }
+}
+
+
+@include exports("button") {
+ @if $include-html-button-classes {
+
+ // Default styles applied outside of media query
+ button, .button {
+ @include button-base;
+ @include button-size;
+ @include button-style;
+
+ @include single-transition(background-color);
+
+ &.secondary { @include button-style($bg:$secondary-color, $bg-hover:$secondary-button-bg-hover, $border-color:$secondary-button-border-color); }
+ &.success { @include button-style($bg:$success-color, $bg-hover:$success-button-bg-hover, $border-color:$success-button-border-color); }
+ &.alert { @include button-style($bg:$alert-color, $bg-hover:$alert-button-bg-hover, $border-color:$alert-button-border-color); }
+ &.warning { @include button-style($bg:$warning-color, $bg-hover:$warning-button-bg-hover, $border-color:$warning-button-border-color); }
+ &.info { @include button-style($bg:$info-color, $bg-hover:$info-button-bg-hover, $border-color:$info-button-border-color); }
+
+ &.large { @include button-size($padding:$button-lrg); }
+ &.small { @include button-size($padding:$button-sml); }
+ &.tiny { @include button-size($padding:$button-tny); }
+ &.expand { @include button-size($padding:null,$full-width:true); }
+
+ &.left-align { text-align: left; text-indent: rem-calc(12); }
+ &.right-align { text-align: right; padding-right: rem-calc(12); }
+
+ &.radius { @include button-style($bg:false, $radius:true); }
+ &.round { @include button-style($bg:false, $radius:$button-round); }
+
+ &.disabled, &[disabled] { @include button-style($bg:$button-bg-color, $disabled:true, $bg-hover:$button-bg-hover, $border-color:$button-border-color);
+ &.secondary { @include button-style($bg:$secondary-color, $disabled:true, $bg-hover:$secondary-button-bg-hover, $border-color:$secondary-button-border-color); }
+ &.success { @include button-style($bg:$success-color, $disabled:true, $bg-hover:$success-button-bg-hover, $border-color:$success-button-border-color); }
+ &.alert { @include button-style($bg:$alert-color, $disabled:true, $bg-hover:$alert-button-bg-hover, $border-color:$alert-button-border-color); }
+ &.warning { @include button-style($bg:$warning-color, $disabled:true, $bg-hover:$warning-button-bg-hover, $border-color:$warning-button-border-color); }
+ &.info { @include button-style($bg:$info-color, $disabled:true, $bg-hover:$info-button-bg-hover, $border-color:$info-button-border-color); }
+ }
+ }
+
+ //firefox 2px fix
+ button::-moz-focus-inner {border:0; padding:0;}
+
+ @media #{$medium-up} {
+ button, .button {
+ @include button-base($style:false, $display:inline-block);
+ @include button-size($padding:false, $full-width:false);
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_clearing.scss b/_sass/foundation-components/_clearing.scss
new file mode 100644
index 0000000000..737af29959
--- /dev/null
+++ b/_sass/foundation-components/_clearing.scss
@@ -0,0 +1,247 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-clearing-classes: $include-html-classes !default;
+
+// We use these to set the background colors for parts of Clearing.
+$clearing-bg: $oil !default;
+$clearing-caption-bg: $clearing-bg !default;
+$clearing-carousel-bg: rgba(51,51,51,0.8) !default;
+$clearing-img-bg: $clearing-bg !default;
+
+// We use these to style the close button
+$clearing-close-color: $iron !default;
+$clearing-close-size: 30px !default;
+
+// We use these to style the arrows
+$clearing-arrow-size: 12px !default;
+$clearing-arrow-color: $clearing-close-color !default;
+
+// We use these to style captions
+$clearing-caption-font-color: $iron !default;
+$clearing-caption-font-size: 0.875em !default;
+$clearing-caption-padding: 10px 30px 20px !default;
+
+// We use these to make the image and carousel height and style
+$clearing-active-img-height: 85% !default;
+$clearing-carousel-height: 120px !default;
+$clearing-carousel-thumb-width: 120px !default;
+$clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255) !default;
+
+@include exports("clearing") {
+ @if $include-html-clearing-classes {
+ // We decided to not create a mixin for Clearing because it relies
+ // on predefined classes and structure to work properly.
+ // The variables above should give enough control.
+
+ /* Clearing Styles */
+ .clearing-thumbs, #{data('clearing')} {
+ @include clearfix;
+ margin-bottom: 0;
+ margin-#{$default-float}: 0;
+ list-style: none;
+
+ li {
+ float: $default-float;
+ margin-#{$opposite-direction}: 10px;
+ }
+
+ &[class*="block-grid-"] li {
+ margin-#{$opposite-direction}: 0;
+ }
+ }
+
+ .clearing-blackout {
+ background: $clearing-bg;
+ position: fixed;
+ width: 100%;
+ height: 100%;
+ top: 0;
+ #{$default-float}: 0;
+ z-index: 998;
+
+ .clearing-close { display: block; }
+ }
+
+ .clearing-container {
+ position: relative;
+ z-index: 998;
+ height: 100%;
+ overflow: hidden;
+ margin: 0;
+ }
+
+ .clearing-touch-label {
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ color: $base;
+ font-size: 0.6em;
+ }
+
+ .visible-img {
+ height: 95%;
+ position: relative;
+
+ img {
+ position: absolute;
+ #{$default-float}: 50%;
+ top: 50%;
+ margin-#{$default-float}: -50%;
+ max-height: 100%;
+ max-width: 100%;
+ }
+ }
+
+ .clearing-caption {
+ color: $clearing-caption-font-color;
+ font-size: $clearing-caption-font-size;
+ line-height: 1.3;
+ margin-bottom: 0;
+ text-align: center;
+ bottom: 0;
+ background: $clearing-caption-bg;
+ width: 100%;
+ padding: $clearing-caption-padding;
+ position: absolute;
+ #{$default-float}: 0;
+ }
+
+ .clearing-close {
+ z-index: 999;
+ padding-#{$default-float}: 20px;
+ padding-top: 10px;
+ font-size: $clearing-close-size;
+ line-height: 1;
+ color: $clearing-close-color;
+ display: none;
+
+ &:hover,
+ &:focus { color: $iron; }
+ }
+
+ .clearing-assembled .clearing-container { height: 100%;
+ .carousel > ul { display: none; }
+ }
+
+ // If you want to show a lightbox, but only have a single image come through as the thumbnail
+ .clearing-feature li {
+ display: none;
+ &.clearing-featured-img {
+ display: block;
+ }
+ }
+
+ // Large screen overrides
+ @media #{$medium-up} {
+ .clearing-main-prev,
+ .clearing-main-next {
+ position: absolute;
+ height: 100%;
+ width: 40px;
+ top: 0;
+ & > span {
+ position: absolute;
+ top: 50%;
+ display: block;
+ width: 0;
+ height: 0;
+ border: solid $clearing-arrow-size;
+ &:hover { opacity: 0.8; }
+ }
+ }
+ .clearing-main-prev {
+ #{$default-float}: 0;
+ & > span {
+ #{$default-float}: 5px;
+ border-color: transparent;
+ border-#{$opposite-direction}-color: $clearing-arrow-color;
+ }
+ }
+ .clearing-main-next {
+ #{$opposite-direction}: 0;
+ & > span {
+ border-color: transparent;
+ border-#{$default-float}-color: $clearing-arrow-color;
+ }
+ }
+
+ .clearing-main-prev.disabled,
+ .clearing-main-next.disabled { opacity: 0.3; }
+
+ .clearing-assembled .clearing-container {
+
+ .carousel {
+ background: $clearing-carousel-bg;
+ height: $clearing-carousel-height;
+ margin-top: 10px;
+ text-align: center;
+
+ & > ul {
+ display: inline-block;
+ z-index: 999;
+ height: 100%;
+ position: relative;
+ float: none;
+
+ li {
+ display: block;
+ width: $clearing-carousel-thumb-width;
+ min-height: inherit;
+ float: $default-float;
+ overflow: hidden;
+ margin-#{$opposite-direction}: 0;
+ padding: 0;
+ position: relative;
+ cursor: $cursor-pointer-value;
+ opacity: 0.4;
+ clear: none;
+
+ &.fix-height {
+ img {
+ height: 100%;
+ max-width: none;
+ }
+ }
+
+ a.th {
+ border: none;
+ box-shadow: none;
+ display: block;
+ }
+
+ img {
+ cursor: $cursor-pointer-value !important;
+ width: 100% !important;
+ }
+
+ &.visible { opacity: 1; }
+ &:hover { opacity: 0.8; }
+ }
+ }
+ }
+
+ .visible-img {
+ background: $clearing-img-bg;
+ overflow: hidden;
+ height: $clearing-active-img-height;
+ }
+ }
+
+ .clearing-close {
+ position: absolute;
+ top: 10px;
+ #{$opposite-direction}: 20px;
+ padding-#{$default-float}: 0;
+ padding-top: 0;
+ }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_dropdown-buttons.scss b/_sass/foundation-components/_dropdown-buttons.scss
new file mode 100644
index 0000000000..3e45e5a5e0
--- /dev/null
+++ b/_sass/foundation-components/_dropdown-buttons.scss
@@ -0,0 +1,130 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-button-classes: $include-html-classes !default;
+
+// We use these to set the color of the pip in dropdown buttons
+$dropdown-button-pip-color: $white !default;
+$dropdown-button-pip-color-alt: $oil !default;
+
+$button-pip-tny: rem-calc(6) !default;
+$button-pip-sml: rem-calc(7) !default;
+$button-pip-med: rem-calc(9) !default;
+$button-pip-lrg: rem-calc(11) !default;
+
+// We use these to style tiny dropdown buttons
+$dropdown-button-padding-tny: $button-pip-tny * 7 !default;
+$dropdown-button-pip-size-tny: $button-pip-tny !default;
+$dropdown-button-pip-opposite-tny: $button-pip-tny * 3 !default;
+$dropdown-button-pip-top-tny: (-$button-pip-tny / 2) + rem-calc(1) !default;
+
+// We use these to style small dropdown buttons
+$dropdown-button-padding-sml: $button-pip-sml * 7 !default;
+$dropdown-button-pip-size-sml: $button-pip-sml !default;
+$dropdown-button-pip-opposite-sml: $button-pip-sml * 3 !default;
+$dropdown-button-pip-top-sml: (-$button-pip-sml / 2) + rem-calc(1) !default;
+
+// We use these to style medium dropdown buttons
+$dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3) !default;
+$dropdown-button-pip-size-med: $button-pip-med - rem-calc(3) !default;
+$dropdown-button-pip-opposite-med: $button-pip-med * 2.5 !default;
+$dropdown-button-pip-top-med: (-$button-pip-med / 2) + rem-calc(2) !default;
+
+// We use these to style large dropdown buttons
+$dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3) !default;
+$dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6) !default;
+$dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5 !default;
+$dropdown-button-pip-top-lrg: (-$button-pip-lrg / 2) + rem-calc(3) !default;
+
+// @mixins
+//
+// Dropdown Button Mixin
+//
+// We use this mixin to build off of the button mixin and add dropdown button styles
+//
+// $padding - Determines the size of button you're working with. Default: medium. Options [tiny, small, medium, large]
+// $pip-color - Color of the little triangle that points to the dropdown. Default: $white.
+// $base-style - Add in base-styles. This can be set to false. Default:true
+
+@mixin dropdown-button($padding:medium, $pip-color:$white, $base-style:true) {
+
+ // We add in base styles, but they can be negated by setting to 'false'.
+ @if $base-style {
+ position: relative;
+ outline: none;
+
+ // This creates the base styles for the triangle pip
+ &::after {
+ position: absolute;
+ content: "";
+ width: 0;
+ height: 0;
+ display: block;
+ border-style: solid;
+ border-color: $dropdown-button-pip-color transparent transparent transparent;
+ top: 50%;
+ }
+ }
+
+ // If we're dealing with tiny buttons, use these styles
+ @if $padding == tiny {
+ padding-#{$opposite-direction}: $dropdown-button-padding-tny;
+ &:after {
+ border-width: $dropdown-button-pip-size-tny;
+ #{$opposite-direction}: $dropdown-button-pip-opposite-tny;
+ margin-top: $dropdown-button-pip-top-tny;
+ }
+ }
+
+ // If we're dealing with small buttons, use these styles
+ @if $padding == small {
+ padding-#{$opposite-direction}: $dropdown-button-padding-sml;
+ &::after {
+ border-width: $dropdown-button-pip-size-sml;
+ #{$opposite-direction}: $dropdown-button-pip-opposite-sml;
+ margin-top: $dropdown-button-pip-top-sml;
+ }
+ }
+
+ // If we're dealing with default (medium) buttons, use these styles
+ @if $padding == medium {
+ padding-#{$opposite-direction}: $dropdown-button-padding-med;
+ &::after {
+ border-width: $dropdown-button-pip-size-med;
+ #{$opposite-direction}: $dropdown-button-pip-opposite-med;
+ margin-top: $dropdown-button-pip-top-med;
+ }
+ }
+
+ // If we're dealing with large buttons, use these styles
+ @if $padding == large {
+ padding-#{$opposite-direction}: $dropdown-button-padding-lrg;
+ &::after {
+ border-width: $dropdown-button-pip-size-lrg;
+ #{$opposite-direction}: $dropdown-button-pip-opposite-lrg;
+ margin-top: $dropdown-button-pip-top-lrg;
+ }
+ }
+
+ // We can control the pip color. We didn't use logic in this case, just set it and forget it.
+ @if $pip-color {
+ &::after { border-color: $pip-color transparent transparent transparent; }
+ }
+}
+
+@include exports("dropdown-button") {
+ @if $include-html-button-classes {
+ .dropdown.button, button.dropdown { @include dropdown-button;
+ &.tiny { @include dropdown-button(tiny,$base-style:false); }
+ &.small { @include dropdown-button(small,$base-style:false); }
+ &.large { @include dropdown-button(large,$base-style:false); }
+ &.secondary:after { border-color: $dropdown-button-pip-color-alt transparent transparent transparent; }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_dropdown.scss b/_sass/foundation-components/_dropdown.scss
new file mode 100644
index 0000000000..215a76c292
--- /dev/null
+++ b/_sass/foundation-components/_dropdown.scss
@@ -0,0 +1,262 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-dropdown-classes: $include-html-classes !default;
+
+// We use these to controls height and width styles.
+$f-dropdown-max-width: 200px !default;
+$f-dropdown-height: auto !default;
+$f-dropdown-max-height: none !default;
+
+// Used for bottom position
+$f-dropdown-margin-top: 2px !default;
+
+// Used for right position
+$f-dropdown-margin-left: $f-dropdown-margin-top !default;
+
+// Used for left position
+$f-dropdown-margin-right: $f-dropdown-margin-top !default;
+
+// Used for top position
+$f-dropdown-margin-bottom: $f-dropdown-margin-top !default;
+
+// We use this to control the background color
+$f-dropdown-bg: $white !default;
+
+// We use this to set the border styles for dropdowns.
+$f-dropdown-border-style: solid !default;
+$f-dropdown-border-width: 1px !default;
+$f-dropdown-border-color: scale-color($white, $lightness: -20%) !default;
+
+// We use these to style the triangle pip.
+$f-dropdown-triangle-size: 6px !default;
+$f-dropdown-triangle-color: $white !default;
+$f-dropdown-triangle-side-offset: 10px !default;
+
+// We use these to control styles for the list elements.
+$f-dropdown-list-style: none !default;
+$f-dropdown-font-color: $charcoal !default;
+$f-dropdown-font-size: rem-calc(14) !default;
+$f-dropdown-list-padding: rem-calc(5, 10) !default;
+$f-dropdown-line-height: rem-calc(18) !default;
+$f-dropdown-list-hover-bg: $smoke !default;
+$dropdown-mobile-default-float: 0 !default;
+
+// We use this to control the styles for when the dropdown has custom content.
+$f-dropdown-content-padding: rem-calc(20) !default;
+
+// Default radius for dropdown.
+$f-dropdown-radius: $global-radius !default;
+
+//
+// @mixins
+//
+//
+// NOTE: Make default max-width change between list and content types. Can add more width with classes, maybe .small, .medium, .large, etc.;
+// We use this to style the dropdown container element.
+// $content-list - Sets list-style. Default: list. Options: [list, content]
+// $triangle - Sets if dropdown has triangle. Default:true.
+// $max-width - Default: $f-dropdown-max-width || 200px.
+@mixin dropdown-container($content:list, $triangle:true, $max-width:$f-dropdown-max-width) {
+ position: absolute;
+ left: -9999px;
+ list-style: $f-dropdown-list-style;
+ margin-#{$default-float}: 0;
+ outline: none;
+
+ > *:first-child { margin-top: 0; }
+ > *:last-child { margin-bottom: 0; }
+
+ @if $content == list {
+ width: 100%;
+ max-height: $f-dropdown-max-height;
+ height: $f-dropdown-height;
+ background: $f-dropdown-bg;
+ border: $f-dropdown-border-style $f-dropdown-border-width $f-dropdown-border-color;
+ font-size: $f-dropdown-font-size;
+ z-index: 89;
+ }
+ @else if $content == content {
+ padding: $f-dropdown-content-padding;
+ width: 100%;
+ height: $f-dropdown-height;
+ max-height: $f-dropdown-max-height;
+ background: $f-dropdown-bg;
+ border: $f-dropdown-border-style $f-dropdown-border-width $f-dropdown-border-color;
+ font-size: $f-dropdown-font-size;
+ z-index: 89;
+ }
+
+ @if $triangle == bottom {
+ margin-top: $f-dropdown-margin-top;
+
+ &:before {
+ @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, bottom);
+ position: absolute;
+ top: -($f-dropdown-triangle-size * 2);
+ #{$default-float}: $f-dropdown-triangle-side-offset;
+ z-index: 89;
+ }
+ &:after {
+ @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, bottom);
+ position: absolute;
+ top: -(($f-dropdown-triangle-size + 1) * 2);
+ #{$default-float}: $f-dropdown-triangle-side-offset - 1;
+ z-index: 88;
+ }
+
+ &.right:before {
+ #{$default-float}: auto;
+ #{$opposite-direction}: $f-dropdown-triangle-side-offset;
+ }
+ &.right:after {
+ #{$default-float}: auto;
+ #{$opposite-direction}: $f-dropdown-triangle-side-offset - 1;
+ }
+ }
+
+ @if $triangle == $default-float {
+ margin-top: 0;
+ margin-#{$default-float}: $f-dropdown-margin-right;
+
+ &:before {
+ @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, #{$opposite-direction});
+ position: absolute;
+ top: $f-dropdown-triangle-side-offset;
+ #{$default-float}: -($f-dropdown-triangle-size * 2);
+ z-index: 89;
+ }
+ &:after {
+ @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, #{$opposite-direction});
+ position: absolute;
+ top: $f-dropdown-triangle-side-offset - 1;
+ #{$default-float}: -($f-dropdown-triangle-size * 2) - 2;
+ z-index: 88;
+ }
+
+ }
+
+ @if $triangle == $opposite-direction {
+ margin-top: 0;
+ margin-#{$default-float}: -$f-dropdown-margin-right;
+
+ &:before {
+ @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, #{$default-float});
+ position: absolute;
+ top: $f-dropdown-triangle-side-offset;
+ #{$opposite-direction}: -($f-dropdown-triangle-size * 2);
+ #{$default-float}: auto;
+ z-index: 89;
+ }
+ &:after {
+ @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, #{$default-float});
+ position: absolute;
+ top: $f-dropdown-triangle-side-offset - 1;
+ #{$opposite-direction}: -($f-dropdown-triangle-size * 2) - 2;
+ #{$default-float}: auto;
+ z-index: 88;
+ }
+
+ }
+
+ @if $triangle == top {
+ margin-top: -$f-dropdown-margin-bottom;
+ margin-left: 0;
+
+ &:before {
+ @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, top);
+ position: absolute;
+ top: auto;
+ bottom: -($f-dropdown-triangle-size * 2);
+ #{$default-float}: $f-dropdown-triangle-side-offset;
+ #{$opposite-direction}: auto;
+ z-index: 89;
+ }
+ &:after {
+ @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, top);
+ position: absolute;
+ top: auto;
+ bottom: -($f-dropdown-triangle-size * 2) - 2;
+ #{$default-float}: $f-dropdown-triangle-side-offset - 1;
+ #{$opposite-direction}: auto;
+ z-index: 88;
+ }
+
+ }
+
+ @if $max-width { max-width: $max-width; }
+ @else { max-width: $f-dropdown-max-width; }
+
+}
+
+// @MIXIN
+//
+// We use this to style the list elements or content inside the dropdown.
+
+@mixin dropdown-style {
+ font-size: $f-dropdown-font-size;
+ cursor: $cursor-pointer-value;
+
+ line-height: $f-dropdown-line-height;
+ margin: 0;
+
+ &:hover,
+ &:focus { background: $f-dropdown-list-hover-bg; }
+
+ &.radius { @include radius($f-dropdown-radius); }
+
+ a {
+ display: block;
+ padding: $f-dropdown-list-padding;
+ color: $f-dropdown-font-color;
+ }
+}
+
+@include exports("dropdown") {
+ @if $include-html-dropdown-classes {
+
+ /* Foundation Dropdowns */
+ .f-dropdown {
+ @include dropdown-container(list, bottom);
+
+ &.drop-#{$opposite-direction} {
+ @include dropdown-container(list, #{$default-float});
+ }
+
+ &.drop-#{$default-float} {
+ @include dropdown-container(list, #{$opposite-direction});
+ }
+
+ &.drop-top {
+ @include dropdown-container(list, top);
+ }
+ // max-width: none;
+
+ li { @include dropdown-style; }
+
+ // You can also put custom content in these dropdowns
+ &.content { @include dropdown-container(content, $triangle:false); }
+
+ // Sizes
+ &.tiny { max-width: 200px; }
+ &.small { max-width: 300px; }
+ &.medium { max-width: 500px; }
+ &.large { max-width: 800px; }
+ &.mega {
+ width:100%!important;
+ max-width:100%!important;
+
+ &.open{
+ left:0!important;
+ }
+ }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_flex-video.scss b/_sass/foundation-components/_flex-video.scss
new file mode 100644
index 0000000000..631ca9b6b6
--- /dev/null
+++ b/_sass/foundation-components/_flex-video.scss
@@ -0,0 +1,51 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-media-classes: $include-html-classes !default;
+
+// We use these to control video container padding and margins
+$flex-video-padding-top: rem-calc(25) !default;
+$flex-video-padding-bottom: 67.5% !default;
+$flex-video-margin-bottom: rem-calc(16) !default;
+
+// We use this to control widescreen bottom padding
+$flex-video-widescreen-padding-bottom: 56.34% !default;
+
+//
+// @mixins
+//
+
+@mixin flex-video-container {
+ position: relative;
+ padding-top: $flex-video-padding-top;
+ padding-bottom: $flex-video-padding-bottom;
+ height: 0;
+ margin-bottom: $flex-video-margin-bottom;
+ overflow: hidden;
+
+ &.widescreen { padding-bottom: $flex-video-widescreen-padding-bottom; }
+ &.vimeo { padding-top: 0; }
+
+ iframe,
+ object,
+ embed,
+ video {
+ position: absolute;
+ top: 0;
+ #{$default-float}: 0;
+ width: 100%;
+ height: 100%;
+ }
+}
+
+@include exports("flex-video") {
+ @if $include-html-media-classes {
+ .flex-video { @include flex-video-container; }
+ }
+}
\ No newline at end of file
diff --git a/_sass/foundation-components/_forms.scss b/_sass/foundation-components/_forms.scss
new file mode 100644
index 0000000000..80124fd065
--- /dev/null
+++ b/_sass/foundation-components/_forms.scss
@@ -0,0 +1,570 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "buttons";
+
+//
+// @variables
+//
+$include-html-form-classes: $include-html-classes !default;
+
+// We use this to set the base for lots of form spacing and positioning styles
+$form-spacing: rem-calc(16) !default;
+
+// We use these to style the labels in different ways
+$form-label-pointer: pointer !default;
+$form-label-font-size: rem-calc(14) !default;
+$form-label-font-weight: $font-weight-normal !default;
+$form-label-line-height: 1.5 !default;
+$form-label-font-color: scale-color($black, $lightness: 30%) !default;
+$form-label-small-transform: capitalize !default;
+$form-label-bottom-margin: 0 !default;
+$input-font-family: inherit !default;
+$input-font-color: rgba(0,0,0,0.75) !default;
+$input-font-size: rem-calc(14) !default;
+$input-bg-color: $white !default;
+$input-focus-bg-color: scale-color($white, $lightness: -2%) !default;
+$input-border-color: scale-color($white, $lightness: -20%) !default;
+$input-focus-border-color: scale-color($white, $lightness: -40%) !default;
+$input-border-style: solid !default;
+$input-border-width: 1px !default;
+$input-border-radius: $global-radius !default;
+$input-disabled-bg: $gainsboro !default;
+$input-disabled-cursor: $cursor-default-value !default;
+$input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1) !default;
+$input-include-glowing-effect: true !default;
+
+// We use these to style the fieldset border and spacing.
+$fieldset-border-style: solid !default;
+$fieldset-border-width: 1px !default;
+$fieldset-border-color: $gainsboro !default;
+$fieldset-padding: rem-calc(20) !default;
+$fieldset-margin: rem-calc(18 0) !default;
+
+// We use these to style the legends when you use them
+$legend-bg: $white !default;
+$legend-font-weight: $font-weight-bold !default;
+$legend-padding: rem-calc(0 3) !default;
+
+// We use these to style the prefix and postfix input elements
+$input-prefix-bg: scale-color($white, $lightness: -5%) !default;
+$input-prefix-border-color: scale-color($white, $lightness: -20%) !default;
+$input-prefix-border-size: 1px !default;
+$input-prefix-border-type: solid !default;
+$input-prefix-overflow: hidden !default;
+$input-prefix-font-color: $oil !default;
+$input-prefix-font-color-alt: $white !default;
+
+// We use this setting to turn on/off HTML5 number spinners (the up/down arrows)
+$input-number-spinners: true !default;
+
+// We use these to style the error states for inputs and labels
+$input-error-message-padding: rem-calc(6 9 9) !default;
+$input-error-message-top: -1px !default;
+$input-error-message-font-size: rem-calc(12) !default;
+$input-error-message-font-weight: $font-weight-normal !default;
+$input-error-message-font-style: italic !default;
+$input-error-message-font-color: $white !default;
+$input-error-message-bg-color: $alert-color !default;
+$input-error-message-font-color-alt: $oil !default;
+
+// We use this to style the glowing effect of inputs when focused
+$glowing-effect-fade-time: 0.45s !default;
+$glowing-effect-color: $input-focus-border-color !default;
+
+// Select variables
+$select-bg-color: $ghost !default;
+$select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%) !default;
+
+//
+// @MIXINS
+//
+
+// We use this mixin to give us form styles for rows inside of forms
+@mixin form-row-base {
+ .row { margin: 0 ((-$form-spacing) / 2);
+
+ .column,
+ .columns { padding: 0 ($form-spacing / 2); }
+
+ // Use this to collapse the margins of a form row
+ &.collapse { margin: 0;
+
+ .column,
+ .columns { padding: 0; }
+ input {
+ @include side-radius($opposite-direction, 0);
+ }
+
+ }
+ }
+ input.column,
+ input.columns,
+ textarea.column,
+ textarea.columns { padding-#{$default-float}: ($form-spacing / 2); }
+}
+
+// @MIXIN
+//
+// We use this mixin to give all basic form elements their style
+@mixin form-element {
+ background-color: $input-bg-color;
+ font-family: $input-font-family;
+ border: {
+ style: $input-border-style;
+ width: $input-border-width;
+ color: $input-border-color;
+ }
+ box-shadow: $input-box-shadow;
+ color: $input-font-color;
+ display: block;
+ font-size: $input-font-size;
+ margin: 0 0 $form-spacing 0;
+ padding: $form-spacing / 2;
+ height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+ width: 100%;
+ @include box-sizing(border-box);
+ @if $input-include-glowing-effect {
+ @include block-glowing-effect(focus, $glowing-effect-fade-time, $glowing-effect-color);
+ }
+ // Basic focus styles
+ &:focus {
+ background: $input-focus-bg-color;
+ border-color: $input-focus-border-color;
+ outline: none;
+ }
+ // Disbaled Styles
+ &:disabled {
+ background-color: $input-disabled-bg;
+ cursor: $input-disabled-cursor;
+ }
+
+ // Disabled background input background color
+ &[disabled],
+ &[readonly],
+ fieldset[disabled] & {
+ background-color: $input-disabled-bg;
+ cursor: $input-disabled-cursor;
+ }
+}
+
+// @MIXIN
+//
+// We use this mixin to create form labels
+//
+// $alignment - Alignment options. Default: false. Options: [right, inline, false]
+// $base-style - Control whether or not the base styles come through. Default: true.
+@mixin form-label($alignment:false, $base-style:true) {
+
+ // Control whether or not the base styles come through.
+ @if $base-style {
+ font-size: $form-label-font-size;
+ color: $form-label-font-color;
+ cursor: $form-label-pointer;
+ display: block;
+ font-weight: $form-label-font-weight;
+ line-height: $form-label-line-height;
+ margin-bottom: $form-label-bottom-margin;
+ }
+
+ // Alignment options
+ @if $alignment == right {
+ float: none !important;
+ text-align: right;
+ }
+ @else if $alignment == inline {
+ margin: 0 0 $form-spacing 0;
+ padding: $form-spacing / 2 + rem-calc($input-border-width) 0;
+ }
+}
+
+// We use this mixin to create postfix/prefix form Labels
+@mixin prefix-postfix-base {
+ display: block;
+ position: relative;
+ z-index: 2;
+ text-align: center;
+ width: 100%;
+ padding-top: 0;
+ padding-bottom: 0;
+ border-style: $input-prefix-border-type;
+ border-width: $input-prefix-border-size;
+ overflow: $input-prefix-overflow;
+ font-size: $form-label-font-size;
+ height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+ line-height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+}
+
+// @MIXIN
+//
+// We use this mixin to create prefix label styles
+// $bg - Default:$input-prefix-bg || scale-color($white, $lightness: -5%) !default;
+// $is-button - Toggle position settings if prefix is a button. Default:false
+//
+@mixin prefix($bg:$input-prefix-bg, $border:$input-prefix-border-color, $is-button:false) {
+
+ @if $bg {
+ $bg-lightness: lightness($bg);
+ background: $bg;
+ border-#{$opposite-direction}: none;
+
+ // Control the font color based on background brightness
+ @if $bg-lightness > 70% or $bg == yellow { color: $input-prefix-font-color; }
+ @else { color: $input-prefix-font-color-alt; }
+ }
+
+ @if $border {
+ border-color: $border;
+ }
+
+ @if $is-button {
+ padding-#{$default-float}: 0;
+ padding-#{$opposite-direction}: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ text-align: center;
+ border: none;
+ }
+
+}
+
+// @MIXIN
+//
+// We use this mixin to create postfix label styles
+// $bg - Default:$input-prefix-bg || scale-color($white, $lightness: -5%) !default;
+// $is-button - Toggle position settings if prefix is a button. Default: false
+@mixin postfix($bg:$input-prefix-bg, $border:$input-prefix-border-color, $is-button:false) {
+
+ @if $bg {
+ $bg-lightness: lightness($bg);
+ background: $bg;
+ border-#{$default-float}: none;
+
+ // Control the font color based on background brightness
+ @if $bg-lightness > 70% or $bg == yellow { color: $input-prefix-font-color; }
+ @else { color: $input-prefix-font-color-alt; }
+ }
+
+ @if $border {
+ border-color: $border;
+ }
+
+ @if $is-button {
+ padding-#{$default-float}: 0;
+ padding-#{$opposite-direction}: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ text-align: center;
+ border: none;
+ }
+
+}
+
+// We use this mixin to style fieldsets
+@mixin fieldset {
+ border: $fieldset-border-width $fieldset-border-style $fieldset-border-color;
+ padding: $fieldset-padding;
+ margin: $fieldset-margin;
+
+ // and legend styles
+ legend {
+ font-weight: $legend-font-weight;
+ background: $legend-bg;
+ padding: $legend-padding;
+ margin: 0;
+ margin-#{$default-float}: rem-calc(-3);
+ }
+}
+
+// @MIXIN
+//
+// We use this mixin to control border and background color of error inputs
+// $color - Default: $alert-color (found in settings file)
+@mixin form-error-color($color:$alert-color) {
+ border-color: $color;
+ background-color: rgba($color, 0.1);
+
+ // Go back to normal on focus
+ &:focus {
+ background: $input-focus-bg-color;
+ border-color: $input-focus-border-color;
+ }
+}
+
+// @MIXIN
+//
+// We use this simple mixin to style labels for error inputs
+// $color - Default:$alert-color. Found in settings file
+@mixin form-label-error-color($color:$alert-color) { color: $color; }
+
+// @MIXIN
+//
+// We use this mixin to create error message styles
+// $bg - Default: $alert-color (Found in settings file)
+@mixin form-error-message($bg:$input-error-message-bg-color) {
+ display: block;
+ padding: $input-error-message-padding;
+ margin-top: $input-error-message-top;
+ margin-bottom: $form-spacing;
+ font-size: $input-error-message-font-size;
+ font-weight: $input-error-message-font-weight;
+ font-style: $input-error-message-font-style;
+
+ // We can control the text color based on the brightness of the background.
+ $bg-lightness: lightness($bg);
+ background: $bg;
+ @if $bg-lightness < 70% or $bg == yellow { color: $input-error-message-font-color; }
+ @else { color: $input-error-message-font-color-alt; }
+}
+
+// We use this mixin to style select elements
+@mixin form-select {
+ -webkit-appearance: none !important;
+ border-radius: 0;
+ background-color: $select-bg-color;
+
+ // Hide the dropdown arrow shown in newer IE versions
+ &::-ms-expand {
+ display: none;
+ }
+
+ // The custom arrow has some fake horizontal padding so we can align it
+ // from the right side of the element without relying on CSS3
+ background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);
+
+ // We can safely use leftmost and rightmost now
+ background-position: if($text-direction == 'rtl', 0%, 100%) center;
+
+ background-repeat: no-repeat;
+ border: {
+ style: $input-border-style;
+ width: $input-border-width;
+ color: $input-border-color;
+ }
+ padding: ($form-spacing / 2);
+ font-size: $input-font-size;
+ font-family: $body-font-family;
+ color: $input-font-color;
+ line-height: normal;
+ @include radius(0);
+ &.radius { @include radius($global-radius); }
+ &:hover {
+ background-color: $select-hover-bg-color;
+ border-color: $input-focus-border-color;
+ }
+ // Disabled Styles
+ &:disabled {
+ background-color: $input-disabled-bg;
+ cursor: $input-disabled-cursor;
+ }
+}
+
+// We use this mixin to turn on/off HTML5 number spinners
+@mixin html5number($browser, $on:true) {
+ @if $on==false {
+ @if $browser==webkit {
+ -webkit-appearance: none;
+ margin: 0;
+ } @else if $browser==moz {
+ -moz-appearance: textfield;
+ }
+ }
+}
+
+@include exports("form") {
+ @if $include-html-form-classes {
+ /* Standard Forms */
+ form { margin: 0 0 $form-spacing; }
+
+ /* Using forms within rows, we need to set some defaults */
+ form .row { @include form-row-base; }
+
+ /* Label Styles */
+ label { @include form-label;
+ &.right { @include form-label(right,false); }
+ &.inline { @include form-label(inline,false); }
+ /* Styles for required inputs */
+ small {
+ text-transform: $form-label-small-transform;
+ color: scale-color($form-label-font-color, $lightness: 15%);
+ }
+ }
+
+ /* Attach elements to the beginning or end of an input */
+ .prefix,
+ .postfix { @include prefix-postfix-base; }
+
+ /* Adjust padding, alignment and radius if pre/post element is a button */
+ .postfix.button { @include button-size(false,false); @include postfix(false, false, true); }
+ .prefix.button { @include button-size(false,false); @include prefix(false, false, true); }
+
+ .prefix.button.radius { @include radius(0); @include side-radius($default-float, $button-radius); }
+ .postfix.button.radius { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+ .prefix.button.round { @include radius(0); @include side-radius($default-float, $button-round); }
+ .postfix.button.round { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+
+ /* Separate prefix and postfix styles when on span or label so buttons keep their own */
+ span.prefix,label.prefix { @include prefix(); }
+ span.postfix,label.postfix { @include postfix(); }
+
+ /* We use this to get basic styling on all basic form elements */
+ #{text-inputs(all, 'input')} {
+ -webkit-appearance: none;
+ border-radius: 0;
+ @include form-element;
+ @if $input-include-glowing-effect == false {
+ @include single-transition(all, 0.15s, linear);
+ }
+ &.radius {
+ @include radius($input-border-radius);
+ }
+ }
+
+ form {
+ .row {
+ .prefix-radius.row.collapse {
+ input,
+ textarea,
+ select { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+ .prefix { @include radius(0); @include side-radius($default-float, $button-radius); }
+ }
+ .postfix-radius.row.collapse {
+ input,
+ textarea,
+ select { @include radius(0); @include side-radius($default-float, $button-radius); }
+ .postfix { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+ }
+ .prefix-round.row.collapse {
+ input,
+ textarea,
+ select { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+ .prefix { @include radius(0); @include side-radius($default-float, $button-round); }
+ }
+ .postfix-round.row.collapse {
+ input,
+ textarea,
+ select { @include radius(0); @include side-radius($default-float, $button-round); }
+ .postfix { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+ }
+ }
+ }
+
+ input[type="submit"] {
+ -webkit-appearance: none;
+ border-radius: 0;
+ }
+
+ /* Respect enforced amount of rows for textarea */
+ textarea[rows] {
+ height: auto;
+ }
+
+ /* Not allow resize out of parent */
+ textarea {
+ max-width: 100%;
+ }
+
+ /* Add height value for select elements to match text input height */
+ select {
+ @include form-select;
+ height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+ }
+
+ /* Adjust margin for form elements below */
+ input[type="file"],
+ input[type="checkbox"],
+ input[type="radio"],
+ select {
+ margin: 0 0 $form-spacing 0;
+ }
+
+ input[type="checkbox"] + label,
+ input[type="radio"] + label {
+ display: inline-block;
+ margin-#{$default-float}: $form-spacing * .5;
+ margin-#{$opposite-direction}: $form-spacing;
+ margin-bottom: 0;
+ vertical-align: baseline;
+ }
+
+ /* Normalize file input width */
+ input[type="file"] {
+ width:100%;
+ }
+
+ /* HTML5 Number spinners settings */
+ input[type=number] {
+ @include html5number(moz, $input-number-spinners)
+ }
+ input[type="number"]::-webkit-inner-spin-button,
+ input[type="number"]::-webkit-outer-spin-button {
+ @include html5number(webkit, $input-number-spinners);
+ }
+
+ /* We add basic fieldset styling */
+ fieldset {
+ @include fieldset;
+ }
+
+ /* Error Handling */
+
+ #{data('abide')} {
+ .error small.error, .error span.error, span.error, small.error {
+ @include form-error-message;
+ }
+ span.error, small.error { display: none; }
+ }
+
+ span.error, small.error {
+ @include form-error-message;
+ }
+
+ .error {
+ input,
+ textarea,
+ select {
+ margin-bottom: 0;
+ }
+
+ input[type="checkbox"],
+ input[type="radio"] {
+ margin-bottom: $form-spacing
+ }
+
+ label,
+ label.error {
+ @include form-label-error-color;
+ }
+
+ small.error {
+ @include form-error-message;
+ }
+
+ > label {
+ > small {
+ color: scale-color($form-label-font-color, $lightness: 15%);
+ background: transparent;
+ padding: 0;
+ text-transform: $form-label-small-transform;
+ font-style: normal;
+ font-size: 60%;
+ margin: 0;
+ display: inline;
+ }
+ }
+
+ span.error-message {
+ display: block;
+ }
+ }
+
+ input.error,
+ textarea.error,
+ select.error {
+ margin-bottom: 0;
+ }
+ label.error { @include form-label-error-color; }
+ }
+}
diff --git a/_sass/foundation-components/_global.scss b/_sass/foundation-components/_global.scss
new file mode 100644
index 0000000000..37d96eb1dd
--- /dev/null
+++ b/_sass/foundation-components/_global.scss
@@ -0,0 +1,480 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "../functions";
+//
+// Foundation Variables
+//
+
+// Data attribute namespace
+// styles get applied to [data-mysite-plugin], etc
+$namespace: false !default;
+
+// The default font-size is set to 100% of the browser style sheet (usually 16px)
+// for compatibility with browser-based text zoom or user-set defaults.
+
+// Since the typical default browser font-size is 16px, that makes the calculation for grid size.
+// If you want your base font-size to be different and not have it affect the grid breakpoints,
+// set $rem-base to $base-font-size and make sure $base-font-size is a px value.
+$base-font-size: 100% !default;
+
+// $base-line-height is 24px while $base-font-size is 16px
+$base-line-height: 1.5 !default;
+
+//
+// Global Foundation Mixins
+//
+
+// @mixins
+//
+// We use this to control border radius.
+// $radius - Default: $global-radius || 4px
+@mixin radius($radius:$global-radius) {
+ @if $radius {
+ border-radius: $radius;
+ }
+}
+
+// @mixins
+//
+// We use this to create equal side border radius on elements.
+// $side - Options: left, right, top, bottom
+@mixin side-radius($side, $radius:$global-radius) {
+ @if ($side == left or $side == right) {
+ -webkit-border-bottom-#{$side}-radius: $radius;
+ -webkit-border-top-#{$side}-radius: $radius;
+ border-bottom-#{$side}-radius: $radius;
+ border-top-#{$side}-radius: $radius;
+ } @else {
+ -webkit-#{$side}-left-radius: $radius;
+ -webkit-#{$side}-right-radius: $radius;
+ border-#{$side}-left-radius: $radius;
+ border-#{$side}-right-radius: $radius;
+ }
+}
+
+// @mixins
+//
+// We can control whether or not we have inset shadows edges.
+// $active - Default: true, Options: false
+@mixin inset-shadow($active:true) {
+ box-shadow: $shiny-edge-size $shiny-edge-color inset;
+
+ @if $active { &:active {
+ box-shadow: $shiny-edge-size $shiny-edge-active-color inset; } }
+}
+
+// @mixins
+//
+// We use this to add transitions to elements
+// $property - Default: all, Options: http://www.w3.org/TR/css3-transitions/#animatable-properties
+// $speed - Default: 300ms
+// $ease - Default:ease-out, Options: http://css-tricks.com/almanac/properties/t/transition-timing-function/
+@mixin single-transition($property:all, $speed:300ms, $ease:ease-out) {
+ transition: $property $speed $ease;
+}
+
+// @mixins
+//
+// We use this to add box-sizing across browser prefixes
+@mixin box-sizing($type:border-box) {
+ -webkit-box-sizing: $type; // Android < 2.3, iOS < 4
+ -moz-box-sizing: $type; // Firefox < 29
+ box-sizing: $type; // Chrome, IE 8+, Opera, Safari 5.1
+}
+
+// @mixins
+//
+// We use this to create isosceles triangles
+// $triangle-size - Used to set border-size. No default, set a px or em size.
+// $triangle-color - Used to set border-color which makes up triangle. No default
+// $triangle-direction - Used to determine which direction triangle points. Options: top, bottom, left, right
+@mixin css-triangle($triangle-size, $triangle-color, $triangle-direction) {
+ content: "";
+ display: block;
+ width: 0;
+ height: 0;
+ border: inset $triangle-size;
+ @if ($triangle-direction == top) {
+ border-color: $triangle-color transparent transparent transparent;
+ border-top-style: solid;
+ }
+ @if ($triangle-direction == bottom) {
+ border-color: transparent transparent $triangle-color transparent;
+ border-bottom-style: solid;
+ }
+ @if ($triangle-direction == left) {
+ border-color: transparent transparent transparent $triangle-color;
+ border-left-style: solid;
+ }
+ @if ($triangle-direction == right) {
+ border-color: transparent $triangle-color transparent transparent;
+ border-right-style: solid;
+ }
+}
+
+// @mixins
+//
+// We use this to create the icon with three lines aka the hamburger icon, the menu-icon or the navicon
+// $width - Width of hamburger icon in rem
+// $left - If false, icon will be centered horizontally || explicitly set value in rem
+// $top - If false, icon will be centered vertically || explicitly set value in rem
+// $thickness - thickness of lines in hamburger icon, set value in px
+// $gap - spacing between the lines in hamburger icon, set value in px
+// $color - icon color
+// $hover-color - icon color during hover
+// $offcanvas - Set to true of @include in offcanvas
+@mixin hamburger($width, $left, $top, $thickness, $gap, $color, $hover-color, $offcanvas) {
+ span::after {
+ content: "";
+ position: absolute;
+ display: block;
+ height: 0;
+
+ @if $offcanvas {
+ @if $top {
+ top: $top;
+ }
+ @else {
+ top: 50%;
+ margin-top: (-$width/2);
+ }
+ @if $left {
+ left: $left;
+ }
+ @else {
+ left: ($tabbar-menu-icon-width - $width)/2;
+ }
+ }
+ @else {
+ top: 50%;
+ margin-top: -($width/2);
+ #{$opposite-direction}: $topbar-link-padding;
+ }
+
+ box-shadow:
+ 0 0 0 $thickness $color,
+ 0 $gap + $thickness 0 $thickness $color,
+ 0 (2 * $gap + 2*$thickness) 0 $thickness $color;
+ width: $width;
+ }
+ span:hover:after {
+ box-shadow:
+ 0 0 0 $thickness $hover-color,
+ 0 $gap + $thickness 0 $thickness $hover-color,
+ 0 (2 * $gap + 2*$thickness) 0 $thickness $hover-color;
+ }
+}
+
+// We use this to do clear floats
+@mixin clearfix {
+ &:before, &:after { content: " "; display: table; }
+ &:after { clear: both; }
+}
+
+// @mixins
+//
+// We use this to add a glowing effect to block elements
+// $selector - Used for selector state. Default: focus, Options: hover, active, visited
+// $fade-time - Default: 300ms
+// $glowing-effect-color - Default: fade-out($primary-color, .25)
+@mixin block-glowing-effect($selector:focus, $fade-time:300ms, $glowing-effect-color:fade-out($primary-color, .25)) {
+ transition: box-shadow $fade-time, border-color $fade-time ease-in-out;
+
+ &:#{$selector} {
+ box-shadow: 0 0 5px $glowing-effect-color;
+ border-color: $glowing-effect-color;
+ }
+}
+
+// @mixins
+//
+// We use this to translate elements in 2D
+// $horizontal: Default: 0
+// $vertical: Default: 0
+@mixin translate2d($horizontal:0, $vertical:0) {
+ transform: translate($horizontal,$vertical)
+}
+
+// @mixins
+//
+// Makes an element visually hidden, but accessible.
+// @see http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
+@mixin element-invisible {
+ position: absolute !important;
+ height: 1px;
+ width: 1px;
+ overflow: hidden;
+ clip: rect(1px, 1px, 1px, 1px);
+}
+
+// @mixins
+//
+// Turns off the element-invisible effect.
+@mixin element-invisible-off {
+ position: static !important;
+ height: auto;
+ width: auto;
+ overflow: visible;
+ clip: auto;
+}
+
+$white : #FFFFFF !default;
+$ghost : #FAFAFA !default;
+$snow : #F9F9F9 !default;
+$vapor : #F6F6F6 !default;
+$white-smoke : #F5F5F5 !default;
+$silver : #EFEFEF !default;
+$smoke : #EEEEEE !default;
+$gainsboro : #DDDDDD !default;
+$iron : #CCCCCC !default;
+$base : #AAAAAA !default;
+$aluminum : #999999 !default;
+$jumbo : #888888 !default;
+$monsoon : #777777 !default;
+$steel : #666666 !default;
+$charcoal : #555555 !default;
+$tuatara : #444444 !default;
+$oil : #333333 !default;
+$jet : #222222 !default;
+$black : #000000 !default;
+
+// We use these as default colors throughout
+$primary-color: #008CBA !default; // bondi-blue
+$secondary-color: #e7e7e7 !default; // white-lilac
+$alert-color: #f04124 !default; // cinnabar
+$success-color: #43AC6A !default; // sea-green
+$warning-color: #f08a24 !default; // carrot
+$info-color: #a0d3e8 !default; // cornflower
+
+// We use these to define default font stacks
+$font-family-sans-serif: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif !default;
+$font-family-serif: Georgia, Cambria, "Times New Roman", Times, serif !default;
+$font-family-monospace: Consolas, "Liberation Mono", Courier, monospace !default;
+
+// We use these to define default font weights
+$font-weight-normal: normal !default;
+$font-weight-bold: bold !default;
+
+// We use these to control various global styles
+$body-bg: #fff !default;
+$body-font-color: #222 !default;
+$body-font-family: $font-family-sans-serif !default;
+$body-font-weight: $font-weight-normal !default;
+$body-font-style: normal !default;
+
+// We use this to control font-smoothing
+$font-smoothing: antialiased !default;
+
+// We use these to control text direction settings
+$text-direction: ltr !default;
+$default-float: left !default;
+$opposite-direction: right !default;
+@if $text-direction == ltr {
+ $default-float: left;
+ $opposite-direction: right;
+} @else {
+ $default-float: right;
+ $opposite-direction: left;
+}
+
+// We use these to make sure border radius matches unless we want it different.
+$global-radius: 3px !default;
+$global-rounded: 1000px !default;
+
+// We use these to control inset shadow shiny edges and depressions.
+$shiny-edge-size: 0 1px 0 !default;
+$shiny-edge-color: rgba(#fff, .5) !default;
+$shiny-edge-active-color: rgba(#000, .2) !default;
+
+// We use this to control whether or not CSS classes come through in the gem files.
+$include-html-classes: true !default;
+$include-print-styles: true !default;
+$include-html-global-classes: $include-html-classes !default;
+
+$column-gutter: rem-calc(30) !default;
+
+// Media Query Ranges
+$small-range: (0, 40em) !default;
+$medium-range: (40.063em, 64em) !default;
+$large-range: (64.063em, 90em) !default;
+$xlarge-range: (90.063em, 120em) !default;
+$xxlarge-range: (120.063em, 99999999em) !default;
+
+
+$screen: "only screen" !default;
+
+$landscape: "#{$screen} and (orientation: landscape)" !default;
+$portrait: "#{$screen} and (orientation: portrait)" !default;
+
+$small-up: $screen !default;
+$small-only: "#{$screen} and (max-width: #{upper-bound($small-range)})" !default;
+
+$medium-up: "#{$screen} and (min-width:#{lower-bound($medium-range)})" !default;
+$medium-only: "#{$screen} and (min-width:#{lower-bound($medium-range)}) and (max-width:#{upper-bound($medium-range)})" !default;
+
+$large-up: "#{$screen} and (min-width:#{lower-bound($large-range)})" !default;
+$large-only: "#{$screen} and (min-width:#{lower-bound($large-range)}) and (max-width:#{upper-bound($large-range)})" !default;
+
+$xlarge-up: "#{$screen} and (min-width:#{lower-bound($xlarge-range)})" !default;
+$xlarge-only: "#{$screen} and (min-width:#{lower-bound($xlarge-range)}) and (max-width:#{upper-bound($xlarge-range)})" !default;
+
+$xxlarge-up: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)})" !default;
+$xxlarge-only: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)}) and (max-width:#{upper-bound($xxlarge-range)})" !default;
+
+// Legacy
+$small: $medium-up;
+$medium: $medium-up;
+$large: $large-up;
+
+
+//We use this as cursors values for enabling the option of having custom cursors in the whole site's stylesheet
+$cursor-auto-value: auto !default;
+$cursor-crosshair-value: crosshair !default;
+$cursor-default-value: default !default;
+$cursor-pointer-value: pointer !default;
+$cursor-help-value: help !default;
+$cursor-text-value: text !default;
+
+
+@include exports("global") {
+
+ // Meta styles are included in all builds, as they are a dependancy of the Javascript.
+ // Used to provide media query values for javascript components.
+ // Forward slash placed around everything to convince PhantomJS to read the value.
+
+ meta.foundation-version {
+ font-family: "/5.5.0/";
+ }
+
+ meta.foundation-mq-small {
+ font-family: "/" + unquote($small-up) + "/";
+ width: lower-bound($small-range);
+ }
+
+ meta.foundation-mq-small-only {
+ font-family: "/" + unquote($small-only) + "/";
+ width: lower-bound($small-range);
+ }
+
+ meta.foundation-mq-medium {
+ font-family: "/" + unquote($medium-up) + "/";
+ width: lower-bound($medium-range);
+ }
+
+ meta.foundation-mq-medium-only {
+ font-family: "/" + unquote($medium-only) + "/";
+ width: lower-bound($medium-range);
+ }
+
+ meta.foundation-mq-large {
+ font-family: "/" + unquote($large-up) + "/";
+ width: lower-bound($large-range);
+ }
+
+ meta.foundation-mq-large-only {
+ font-family: "/" + unquote($large-only) + "/";
+ width: lower-bound($large-range);
+ }
+
+ meta.foundation-mq-xlarge {
+ font-family: "/" + unquote($xlarge-up) + "/";
+ width: lower-bound($xlarge-range);
+ }
+
+ meta.foundation-mq-xlarge-only {
+ font-family: "/" + unquote($xlarge-only) + "/";
+ width: lower-bound($xlarge-range);
+ }
+
+ meta.foundation-mq-xxlarge {
+ font-family: "/" + unquote($xxlarge-up) + "/";
+ width: lower-bound($xxlarge-range);
+ }
+
+ meta.foundation-data-attribute-namespace {
+ font-family: #{$namespace};
+ }
+
+ @if $include-html-global-classes {
+
+ // Must be 100% for off canvas to work
+ html, body { height: 100%; }
+
+ // Set box-sizing globally to handle padding and border widths
+ *,
+ *:before,
+ *:after {
+ @include box-sizing(border-box);
+ }
+
+ html,
+ body { font-size: $base-font-size; }
+
+ // Default body styles
+ body {
+ background: $body-bg;
+ color: $body-font-color;
+ padding: 0;
+ margin: 0;
+ font-family: $body-font-family;
+ font-weight: $body-font-weight;
+ font-style: $body-font-style;
+ line-height: $base-line-height; // Set to $base-line-height to take on browser default of 150%
+ position: relative;
+ cursor: $cursor-auto-value;
+ }
+
+ a:hover { cursor: $cursor-pointer-value; }
+
+ // Grid Defaults to get images and embeds to work properly
+ img { max-width: 100%; height: auto; }
+
+ img { -ms-interpolation-mode: bicubic; }
+
+ #map_canvas,
+ .map_canvas {
+ img,
+ embed,
+ object { max-width: none !important;
+ }
+ }
+
+ // Miscellaneous useful HTML classes
+ .left { float: left !important; }
+ .right { float: right !important; }
+ .clearfix { @include clearfix; }
+
+ // Hide visually and from screen readers
+ .hide {
+ display: none !important;
+ visibility: hidden;
+ }
+
+ // Hide visually and from screen readers, but maintain layout
+ .invisible { visibility: hidden; }
+
+ // Font smoothing
+ // Antialiased font smoothing works best for light text on a dark background.
+ // Apply to single elements instead of globally to body.
+ // Note this only applies to webkit-based desktop browsers and Firefox 25 (and later) on the Mac.
+ .antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
+
+ // Get rid of gap under images by making them display: inline-block; by default
+ img {
+ display: inline-block;
+ vertical-align: middle;
+ }
+
+ //
+ // Global resets for forms
+ //
+
+ // Make sure textarea takes on height automatically
+ textarea { height: auto; min-height: 50px; }
+
+ // Make select elements 100% width by default
+ select { width: 100%; }
+ }
+}
diff --git a/_sass/foundation-components/_grid.scss b/_sass/foundation-components/_grid.scss
new file mode 100644
index 0000000000..aa4e77cdef
--- /dev/null
+++ b/_sass/foundation-components/_grid.scss
@@ -0,0 +1,289 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-grid-classes: $include-html-classes !default;
+$include-xl-html-grid-classes: false !default;
+
+$row-width: rem-calc(1000) !default;
+$total-columns: 12 !default;
+
+$last-child-float: $opposite-direction !default;
+
+//
+// Grid Functions
+//
+
+// Deprecated: We'll drop support for this in 5.1, use grid-calc()
+@function gridCalc($colNumber, $totalColumns) {
+ @warn "gridCalc() is deprecated, use grid-calc()";
+ @return grid-calc($colNumber, $totalColumns);
+}
+
+// @FUNCTION
+// $colNumber - Found in settings file
+// $totalColumns - Found in settings file
+@function grid-calc($colNumber, $totalColumns) {
+ @return percentage(($colNumber / $totalColumns));
+}
+
+//
+// @mixins
+//
+
+// For creating container, nested, and collapsed rows.
+//
+//
+// $behavior - Any special behavior for this row? Default: false. Options: nest, collapse, nest-collapse, false.
+@mixin grid-row($behavior: false) {
+
+ // use @include grid-row(nest); to include a nested row
+ @if $behavior == nest {
+ width: auto;
+ margin-#{$default-float}: -($column-gutter/2);
+ margin-#{$opposite-direction}: -($column-gutter/2);
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: none;
+ }
+
+ // use @include grid-row(collapse); to collapsed a container row margins
+ @else if $behavior == collapse {
+ width: 100%;
+ margin: 0;
+ max-width: $row-width;
+ }
+
+ // use @include grid-row(nest-collapse); to collapse outer margins on a nested row
+ @else if $behavior == nest-collapse {
+ width: auto;
+ margin: 0;
+ max-width: none;
+ }
+
+ // use @include grid-row; to use a container row
+ @else {
+ width: 100%;
+ margin-#{$default-float}: auto;
+ margin-#{$opposite-direction}: auto;
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: $row-width;
+ }
+
+ // Clearfix for all rows
+ @include clearfix();
+}
+
+// Creates a column, should be used inside of a media query to control layouts
+//
+// $columns - The number of columns this should be
+// $last-column - Is this the last column? Default: false.
+// $center - Center these columns? Default: false.
+// $offset - # of columns to offset. Default: false.
+// $push - # of columns to push. Default: false.
+// $pull - # of columns to pull. Default: false.
+// $collapse - Get rid of gutter padding on column? Default: false.
+// $float - Should this float? Default: true. Options: true, false, left, right.
+@mixin grid-column(
+ $columns:false,
+ $last-column:false,
+ $center:false,
+ $offset:false,
+ $push:false,
+ $pull:false,
+ $collapse:false,
+ $float:true,
+ $position:false) {
+
+ // If positioned for default .column, include relative position
+ // push and pull require position set
+ @if $position or $push or $pull {
+ position: relative;
+ }
+
+ // If collapsed, get rid of gutter padding
+ @if $collapse {
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+ // Gutter padding whenever a column isn't set to collapse
+ // (use $collapse:null to do nothing)
+ @else if $collapse == false {
+ padding-left: ($column-gutter / 2);
+ padding-right: ($column-gutter / 2);
+ }
+
+ // If a column number is given, calculate width
+ @if $columns {
+ width: grid-calc($columns, $total-columns);
+
+ // If last column, float naturally instead of to the right
+ @if $last-column { float: $opposite-direction; }
+ }
+
+ // Source Ordering, adds left/right depending on which you use.
+ @if $push { #{$default-float}: grid-calc($push, $total-columns); #{$opposite-direction}: auto; }
+ @if $pull { #{$opposite-direction}: grid-calc($pull, $total-columns); #{$default-float}: auto; }
+
+ @if $float {
+ @if $float == left or $float == true { float: $default-float; }
+ @else if $float == right { float: $opposite-direction; }
+ @else { float: none; }
+ }
+
+ // If centered, get rid of float and add appropriate margins
+ @if $center {
+ margin-#{$default-float}: auto;
+ margin-#{$opposite-direction}: auto;
+ float: none;
+ }
+
+ // If offset, calculate appropriate margins
+ @if $offset { margin-#{$default-float}: grid-calc($offset, $total-columns) !important; }
+
+}
+
+// Create presentational classes for grid
+//
+// $size - Name of class to use, i.e. "large" will generate .large-1, .large-2, etc.
+@mixin grid-html-classes($size) {
+
+ @for $i from 0 through $total-columns - 1 {
+ .#{$size}-push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .#{$size}-pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+
+ .column,
+ .columns { @include grid-column($columns:false, $position:true); }
+
+
+ @for $i from 1 through $total-columns {
+ .#{$size}-#{$i} { @include grid-column($columns:$i,$collapse:null,$float:false); }
+ }
+
+ @for $i from 0 through $total-columns - 1 {
+ .#{$size}-offset-#{$i} { @include grid-column($offset:$i, $collapse:null,$float:false); }
+ }
+
+ .#{$size}-reset-order {
+ margin-#{$default-float}: 0;
+ margin-#{$opposite-direction}: 0;
+ left: auto;
+ right: auto;
+ float: $default-float;
+ }
+
+ .column.#{$size}-centered,
+ .columns.#{$size}-centered { @include grid-column($center:true, $collapse:null, $float:false); }
+
+ .column.#{$size}-uncentered,
+ .columns.#{$size}-uncentered {
+ margin-#{$default-float}: 0;
+ margin-#{$opposite-direction}: 0;
+ float: $default-float;
+ }
+
+ // Fighting [class*="column"] + [class*="column"]:last-child
+ .column.#{$size}-centered:last-child,
+ .columns.#{$size}-centered:last-child{
+ float: none;
+ }
+
+ // Fighting .column.-centered:last-child
+ .column.#{$size}-uncentered:last-child,
+ .columns.#{$size}-uncentered:last-child {
+ float: $default-float;
+ }
+
+ .column.#{$size}-uncentered.opposite,
+ .columns.#{$size}-uncentered.opposite {
+ float: $opposite-direction;
+ }
+
+ .row {
+ &.#{$size}-collapse {
+ > .column,
+ > .columns { @include grid-column($collapse:true, $float:false); }
+
+ .row {margin-left:0; margin-right:0;}
+ }
+ &.#{$size}-uncollapse {
+ > .column,
+ > .columns {
+ @include grid-column;
+ }
+ }
+ }
+}
+
+@include exports("grid") {
+ @if $include-html-grid-classes {
+ .row {
+ @include grid-row;
+
+ &.collapse {
+ > .column,
+ > .columns { @include grid-column($collapse:true, $float:false); }
+
+ .row {margin-left:0; margin-right:0;}
+ }
+
+ .row { @include grid-row($behavior:nest);
+ &.collapse { @include grid-row($behavior:nest-collapse); }
+ }
+ }
+
+ .column,
+ .columns { @include grid-column($columns:$total-columns); }
+
+ [class*="column"] + [class*="column"]:last-child { float: $last-child-float; }
+ [class*="column"] + [class*="column"].end { float: $default-float; }
+
+ @media #{$small-up} {
+ @include grid-html-classes($size:small);
+ }
+
+ @media #{$medium-up} {
+ @include grid-html-classes($size:medium);
+ // Old push and pull classes
+ @for $i from 0 through $total-columns - 1 {
+ .push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+ }
+ @media #{$large-up} {
+ @include grid-html-classes($size:large);
+ @for $i from 0 through $total-columns - 1 {
+ .push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+ }
+ }
+ @if $include-xl-html-grid-classes {
+ @media #{$xlarge-up} {
+ @include grid-html-classes($size:xlarge);
+ }
+ @media #{$xxlarge-up} {
+ @include grid-html-classes($size:xxlarge);
+ }
+ }
+}
diff --git a/_sass/foundation-components/_icon-bar.scss b/_sass/foundation-components/_icon-bar.scss
new file mode 100644
index 0000000000..c5c4889547
--- /dev/null
+++ b/_sass/foundation-components/_icon-bar.scss
@@ -0,0 +1,329 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+
+// @name
+// @dependencies _global.scss
+
+$include-html-icon-bar-classes: $include-html-classes !default;
+
+// @variables
+
+// We use these to style the icon-bar and items
+$icon-bar-bg: $oil !default;
+$icon-bar-font-color: $white !default;
+$icon-bar-font-color-hover: $icon-bar-font-color !default;
+$icon-bar-font-size: 1rem !default;
+$icon-bar-hover-color: $primary-color !default;
+$icon-bar-icon-color: $white !default;
+$icon-bar-icon-color-hover: $icon-bar-icon-color !default;
+$icon-bar-icon-size: 1.875rem !default;
+$icon-bar-image-width: 1.875rem !default;
+$icon-bar-image-height: 1.875rem !default;
+$icon-bar-active-color: $primary-color !default;
+$icon-bar-item-padding: 1.25rem !default;
+
+// We use this to set default opacity and cursor for disabled icons.
+$icon-bar-disabled-opacity: 0.7 !default;
+$icon-bar-disabled-cursor: $cursor-default-value !default;
+
+//
+// @mixins
+//
+
+// We use this mixin to create the base styles for our Icon bar element.
+//
+@mixin icon-bar-base() {
+
+ width: 100%;
+ font-size: 0;
+ display: inline-block;
+
+ & > * {
+ text-align: center;
+ font-size: $icon-bar-font-size;
+ width: 25%;
+ margin: 0 auto;
+ display: block;
+ padding: $icon-bar-item-padding;
+ float: left;
+
+ i, img {
+ display: block;
+ margin: 0 auto;
+
+ & + label {
+ margin-top: .0625rem;
+ }
+ }
+
+ i {
+ font-size: $icon-bar-icon-size;
+ vertical-align: middle;
+ }
+
+ img {
+ width: $icon-bar-image-width;
+ height: $icon-bar-image-height;
+ }
+ }
+
+ &.label-right > * {
+
+ i, img {
+ margin: 0 .0625rem 0 0;
+ display: inline-block;
+
+ & + label {
+ margin-top: 0;
+ }
+ }
+
+ label { display: inline-block; }
+ }
+
+ &.vertical.label-right > * {
+ text-align: left;
+ }
+
+ &.vertical, &.small-vertical{
+ height: 100%;
+ width: auto;
+
+ .item {
+ width: auto;
+ margin: auto;
+ float: none;
+ }
+ }
+
+ &.medium-vertical {
+ @media #{$medium-up} {
+ height: 100%;
+ width: auto;
+
+ .item {
+ width: auto;
+ margin: auto;
+ float: none;
+ }
+ }
+ }
+ &.large-vertical {
+ @media #{$large-up} {
+ height: 100%;
+ width: auto;
+
+ .item {
+ width: auto;
+ margin: auto;
+ float: none;
+ }
+ }
+ }
+}
+
+// We use this mixin to create the size styles for icon bars.
+@mixin icon-bar-size(
+ $padding: $icon-bar-item-padding,
+ $font-size: $icon-bar-font-size,
+ $icon-size: $icon-bar-icon-size,
+ $image-width: $icon-bar-image-width,
+ $image-height: $icon-bar-image-height) {
+
+ & > * {
+ font-size: $font-size;
+ padding: $padding;
+
+ i, img {
+
+ & + label {
+ margin-top: .0625rem;
+ }
+ }
+
+ i {
+ font-size: $icon-size;
+ }
+
+ img {
+ width: $image-width;
+ height: $image-height;
+ }
+ }
+
+}
+
+@mixin icon-bar-style(
+ $bar-bg:$icon-bar-bg,
+ $bar-font-color:$icon-bar-font-color,
+ $bar-font-color-hover:$icon-bar-font-color-hover,
+ $bar-hover-color:$icon-bar-hover-color,
+ $bar-icon-color:$icon-bar-icon-color,
+ $bar-icon-color-hover:$icon-bar-icon-color-hover,
+ $bar-active-color:$icon-bar-active-color,
+ $base-style:true,
+ $disabled:false) {
+
+ @if $base-style {
+
+ background: $bar-bg;
+
+ & > * {
+ label { color: $bar-font-color; }
+
+ i { color: $bar-icon-color; }
+ }
+
+ & > a:hover {
+
+ background: $bar-hover-color;
+
+ label { color: $bar-font-color-hover; }
+
+ i { color: $bar-icon-color-hover; }
+ }
+
+ & > a.active {
+
+ background: $bar-active-color;
+
+ label { color: $bar-font-color-hover; }
+
+ i { color: $bar-icon-color-hover; }
+ }
+ }
+ @if $disabled {
+ .item.disabled {
+ opacity: $icon-bar-disabled-opacity;
+ cursor: $icon-bar-disabled-cursor;
+ >* {
+ opacity: $icon-bar-disabled-opacity;
+ cursor: $icon-bar-disabled-cursor;
+ }
+ }
+ }
+
+}
+
+// We use this to quickly create icon bars with a single mixin
+// $height - The overall calculated height of the icon bar (horizontal)
+// $bar-bg - the background color of the bar
+// $bar-font-color - the font color
+// $bar-hover-color - okay these are pretty obvious variables
+// $bar-icon-color - maybe we could skip explaining them all? Okay this one does change icon color if you use an icon font
+// $bar-active-color - the color of an active / hover state
+// $base-style - Apply base styles? Default: true.
+// $disabled - Allow disabled icons? Default: false.
+
+@mixin icon-bar(
+ $bar-bg:$icon-bar-bg,
+ $bar-font-color:$icon-bar-font-color,
+ $bar-font-color-hover:$icon-bar-font-color-hover,
+ $bar-hover-color:$icon-bar-hover-color,
+ $bar-icon-color:$icon-bar-icon-color,
+ $bar-icon-color-hover:$icon-bar-icon-color-hover,
+ $bar-active-color:$icon-bar-active-color,
+ $padding: $icon-bar-item-padding,
+ $font-size: $icon-bar-font-size,
+ $icon-size: $icon-bar-icon-size,
+ $image-width: $icon-bar-image-width,
+ $image-height: $icon-bar-image-height,
+ $base-style:true,
+ $disabled:false) {
+ @include icon-bar-base();
+ @include icon-bar-size($padding, $font-size, $icon-size, $image-width, $image-height);
+ @include icon-bar-style($bar-bg, $bar-font-color, $bar-font-color-hover, $bar-hover-color, $bar-icon-color, $bar-icon-color-hover, $bar-active-color, $base-style, $disabled);
+}
+
+@include exports("icon-bar") {
+ @if $include-html-icon-bar-classes {
+ .icon-bar {
+ @include icon-bar;
+ }
+ }
+}
+
+@if $include-html-icon-bar-classes {
+
+ // toolbar styles
+
+ .icon-bar {
+
+ // Counts
+
+ &.two-up {
+ .item { width: 50%; }
+ &.vertical .item, &.small-vertical .item { width: auto; }
+ &.medium-vertical .item {
+ @media #{$medium-up} {
+ width: auto;
+ }
+ }
+ &.large-vertical .item {
+ @media #{$large-up} {
+ width: auto;
+ }
+ }
+ }
+ &.three-up {
+ .item { width: 33.3333%; }
+ &.vertical .item, &.small-vertical .item { width: auto; }
+ &.medium-vertical .item {
+ @media #{$medium-up} {
+ width: auto;
+ }
+ }
+ &.large-vertical .item {
+ @media #{$large-up} {
+ width: auto;
+ }
+ }
+ }
+ &.four-up {
+ .item { width: 25%; }
+ &.vertical .item, &.small-vertical .item { width: auto; }
+ &.medium-vertical .item {
+ @media #{$medium-up} {
+ width: auto;
+ }
+ }
+ &.large-vertical .item {
+ @media #{$large-up} {
+ width: auto;
+ }
+ }
+ }
+ &.five-up {
+ .item { width: 20%; }
+ &.vertical .item, &.small-vertical .item { width: auto; }
+ &.medium-vertical .item {
+ @media #{$medium-up} {
+ width: auto;
+ }
+ }
+ &.large-vertical .item {
+ @media #{$large-up} {
+ width: auto;
+ }
+ }
+ }
+ &.six-up {
+ .item { width: 16.66667%; }
+ &.vertical .item, &.small-vertical .item { width: auto; }
+ &.medium-vertical .item {
+ @media #{$medium-up} {
+ width: auto;
+ }
+ }
+ &.large-vertical .item {
+ @media #{$large-up} {
+ width: auto;
+ }
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_inline-lists.scss b/_sass/foundation-components/_inline-lists.scss
new file mode 100644
index 0000000000..9ee162dfd4
--- /dev/null
+++ b/_sass/foundation-components/_inline-lists.scss
@@ -0,0 +1,57 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-inline-list-classes: $include-html-classes !default;
+
+// We use this to control the margins and padding of the inline list.
+$inline-list-top-margin: 0 !default;
+$inline-list-opposite-margin: 0 !default;
+$inline-list-bottom-margin: rem-calc(17) !default;
+$inline-list-default-float-margin: rem-calc(-22) !default;
+$inline-list-default-float-list-margin: rem-calc(22) !default;
+
+$inline-list-padding: 0 !default;
+
+// We use this to control the overflow of the inline list.
+$inline-list-overflow: hidden !default;
+
+// We use this to control the list items
+$inline-list-display: block !default;
+
+// We use this to control any elements within list items
+$inline-list-children-display: block !default;
+
+//
+// @mixins
+//
+// We use this mixin to create inline lists
+@mixin inline-list {
+ margin: $inline-list-top-margin auto $inline-list-bottom-margin auto;
+ margin-#{$default-float}: $inline-list-default-float-margin;
+ margin-#{$opposite-direction}: $inline-list-opposite-margin;
+ padding: $inline-list-padding;
+ list-style: none;
+ overflow: $inline-list-overflow;
+
+ & > li {
+ list-style: none;
+ float: $default-float;
+ margin-#{$default-float}: $inline-list-default-float-list-margin;
+ display: $inline-list-display;
+ &>* { display: $inline-list-children-display; }
+ }
+}
+
+@include exports("inline-list") {
+ @if $include-html-inline-list-classes {
+ .inline-list {
+ @include inline-list();
+ }
+ }
+}
diff --git a/_sass/foundation-components/_joyride.scss b/_sass/foundation-components/_joyride.scss
new file mode 100644
index 0000000000..37ac233561
--- /dev/null
+++ b/_sass/foundation-components/_joyride.scss
@@ -0,0 +1,222 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-joyride-classes: $include-html-classes !default;
+
+// Controlling default Joyride styles
+$joyride-tip-bg: $oil !default;
+$joyride-tip-default-width: 300px !default;
+$joyride-tip-padding: rem-calc(18 20 24) !default;
+$joyride-tip-border: solid 1px $charcoal !default;
+$joyride-tip-radius: 4px !default;
+$joyride-tip-position-offset: 22px !default;
+
+// Here, we're setting the tip font styles
+$joyride-tip-font-color: $white !default;
+$joyride-tip-font-size: rem-calc(14) !default;
+$joyride-tip-header-weight: $font-weight-bold !default;
+
+// This changes the nub size
+$joyride-tip-nub-size: 10px !default;
+
+// This adjusts the styles for the timer when its enabled
+$joyride-tip-timer-width: 50px !default;
+$joyride-tip-timer-height: 3px !default;
+$joyride-tip-timer-color: $steel !default;
+
+// This changes up the styles for the close button
+$joyride-tip-close-color: $monsoon !default;
+$joyride-tip-close-size: 24px !default;
+$joyride-tip-close-weight: $font-weight-normal !default;
+
+// When Joyride is filling the screen, we use this style for the bg
+$joyride-screenfill: rgba(0,0,0,0.5) !default;
+
+
+// We decided not to make a mixin for this because it relies on
+// predefined classes to work properly.
+@include exports("joyride") {
+ @if $include-html-joyride-classes {
+
+ /* Foundation Joyride */
+ .joyride-list { display: none; }
+
+ /* Default styles for the container */
+ .joyride-tip-guide {
+ display: none;
+ position: absolute;
+ background: $joyride-tip-bg;
+ color: $joyride-tip-font-color;
+ z-index: 101;
+ top: 0;
+ #{$default-float}: 2.5%;
+ font-family: inherit;
+ font-weight: $font-weight-normal;
+ width: 95%;
+ }
+
+ .lt-ie9 .joyride-tip-guide {
+ max-width:800px;
+ #{$default-float}: 50%;
+ margin-#{$default-float}:-400px;
+ }
+
+ .joyride-content-wrapper {
+ width: 100%;
+
+ padding: $joyride-tip-padding;
+
+ .button { margin-bottom: 0 !important; }
+
+ .joyride-prev-tip { margin-right: 10px; }
+ }
+
+ /* Add a little css triangle pip, older browser just miss out on the fanciness of it */
+ .joyride-tip-guide {
+ .joyride-nub {
+ display: block;
+ position: absolute;
+ #{$default-float}: $joyride-tip-position-offset;
+ width: 0;
+ height: 0;
+ border: $joyride-tip-nub-size solid $joyride-tip-bg;
+
+ &.top {
+ border-top-style: solid;
+ border-color: $joyride-tip-bg;
+ border-top-color: transparent !important;
+ border-#{$default-float}-color: transparent !important;
+ border-#{$opposite-direction}-color: transparent !important;
+ top: -($joyride-tip-nub-size*2);
+ }
+ &.bottom {
+ border-bottom-style: solid;
+ border-color: $joyride-tip-bg !important;
+ border-bottom-color: transparent !important;
+ border-#{$default-float}-color: transparent !important;
+ border-#{$opposite-direction}-color: transparent !important;
+ bottom: -($joyride-tip-nub-size*2);
+ }
+
+ &.right { right: -($joyride-tip-nub-size*2); }
+ &.left { left: -($joyride-tip-nub-size*2); }
+ }
+ }
+
+ /* Typography */
+ .joyride-tip-guide h1,
+ .joyride-tip-guide h2,
+ .joyride-tip-guide h3,
+ .joyride-tip-guide h4,
+ .joyride-tip-guide h5,
+ .joyride-tip-guide h6 {
+ line-height: 1.25;
+ margin: 0;
+ font-weight: $joyride-tip-header-weight;
+ color: $joyride-tip-font-color;
+ }
+ .joyride-tip-guide p {
+ margin: rem-calc(0 0 18 0);
+ font-size: $joyride-tip-font-size;
+ line-height: 1.3;
+ }
+
+ .joyride-timer-indicator-wrap {
+ width: $joyride-tip-timer-width;
+ height: $joyride-tip-timer-height;
+ border: $joyride-tip-border;
+ position: absolute;
+ #{$opposite-direction}: rem-calc(17);
+ bottom: rem-calc(16);
+ }
+ .joyride-timer-indicator {
+ display: block;
+ width: 0;
+ height: inherit;
+ background: $joyride-tip-timer-color;
+ }
+
+ .joyride-close-tip {
+ position: absolute;
+ #{$opposite-direction}: 12px;
+ top: 10px;
+ color: $joyride-tip-close-color !important;
+ text-decoration: none;
+ font-size: $joyride-tip-close-size;
+ font-weight: $joyride-tip-close-weight;
+ line-height: .5 !important;
+
+ &:hover,
+ &:focus { color: $smoke !important; }
+ }
+
+ .joyride-modal-bg {
+ position: fixed;
+ height: 100%;
+ width: 100%;
+ background: transparent;
+ background: $joyride-screenfill;
+ z-index: 100;
+ display: none;
+ top: 0;
+ #{$default-float}: 0;
+ cursor: $cursor-pointer-value;
+ }
+
+ .joyride-expose-wrapper {
+ background-color: $white;
+ position: absolute;
+ border-radius: 3px;
+ z-index: 102;
+ box-shadow: 0 0 15px $white;
+ }
+
+ .joyride-expose-cover {
+ background: transparent;
+ border-radius: 3px;
+ position: absolute;
+ z-index: 9999;
+ top: 0;
+ left: 0;
+ }
+
+
+ /* Styles for screens that are at least 768px; */
+ @media #{$small} {
+ .joyride-tip-guide { width: $joyride-tip-default-width; #{$default-float}: inherit;
+ .joyride-nub {
+ &.bottom {
+ border-color: $joyride-tip-bg !important;
+ border-bottom-color: transparent !important;
+ border-#{$default-float}-color: transparent !important;
+ border-#{$opposite-direction}-color: transparent !important;
+ bottom: -($joyride-tip-nub-size*2);
+ }
+ &.right {
+ border-color: $joyride-tip-bg !important;
+ border-top-color: transparent !important;
+ border-right-color: transparent !important; border-bottom-color: transparent !important;
+ top: $joyride-tip-position-offset;
+ left: auto;
+ right: -($joyride-tip-nub-size*2);
+ }
+ &.left {
+ border-color: $joyride-tip-bg !important;
+ border-top-color: transparent !important;
+ border-left-color: transparent !important;
+ border-bottom-color: transparent !important;
+ top: $joyride-tip-position-offset;
+ left: -($joyride-tip-nub-size*2);
+ right: auto;
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_keystrokes.scss b/_sass/foundation-components/_keystrokes.scss
new file mode 100644
index 0000000000..adebd6b145
--- /dev/null
+++ b/_sass/foundation-components/_keystrokes.scss
@@ -0,0 +1,61 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-keystroke-classes: $include-html-classes !default;
+
+// We use these to control text styles.
+$keystroke-font: "Consolas", "Menlo", "Courier", monospace !default;
+$keystroke-font-size: inherit !default;
+$keystroke-font-color: $jet !default;
+$keystroke-font-color-alt: $white !default;
+$keystroke-function-factor: -7% !default;
+
+// We use this to control keystroke padding.
+$keystroke-padding: rem-calc(2 4 0) !default;
+
+// We use these to control background and border styles.
+$keystroke-bg: scale-color($white, $lightness: $keystroke-function-factor) !default;
+$keystroke-border-style: solid !default;
+$keystroke-border-width: 1px !default;
+$keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor) !default;
+$keystroke-radius: $global-radius !default;
+
+//
+// @mixins
+//
+// We use this mixin to create keystroke styles.
+// $bg - Default: $keystroke-bg || scale-color($white, $lightness: $keystroke-function-factor) !default;
+@mixin keystroke($bg:$keystroke-bg) {
+ // This find the lightness percentage of the background color.
+ $bg-lightness: lightness($bg);
+
+ background-color: $bg;
+ border-color: scale-color($bg, $lightness: $keystroke-function-factor);
+
+ // We adjust the font color based on the brightness of the background.
+ @if $bg-lightness > 70% { color: $keystroke-font-color; }
+ @else { color: $keystroke-font-color-alt; }
+
+ border-style: $keystroke-border-style;
+ border-width: $keystroke-border-width;
+ margin: 0;
+ font-family: $keystroke-font;
+ font-size: $keystroke-font-size;
+ padding: $keystroke-padding;
+}
+
+@include exports("keystroke") {
+ @if $include-html-keystroke-classes {
+ .keystroke,
+ kbd {
+ @include keystroke;
+ @include radius($keystroke-radius);
+ }
+ }
+}
diff --git a/_sass/foundation-components/_labels.scss b/_sass/foundation-components/_labels.scss
new file mode 100644
index 0000000000..8d302d8692
--- /dev/null
+++ b/_sass/foundation-components/_labels.scss
@@ -0,0 +1,106 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-label-classes: $include-html-classes !default;
+
+// We use these to style the labels
+$label-padding: rem-calc(4 8 4) !default;
+$label-radius: $global-radius !default;
+
+// We use these to style the label text
+$label-font-sizing: rem-calc(11) !default;
+$label-font-weight: $font-weight-normal !default;
+$label-font-color: $oil !default;
+$label-font-color-alt: $white !default;
+$label-font-family: $body-font-family !default;
+
+//
+// @mixins
+//
+// We use this mixin to create a default label base.
+@mixin label-base {
+ font-weight: $label-font-weight;
+ font-family: $label-font-family;
+ text-align: center;
+ text-decoration: none;
+ line-height: 1;
+ white-space: nowrap;
+ display: inline-block;
+ position: relative;
+ margin-bottom: auto;
+}
+
+// @mixins
+//
+// We use this mixin to add label size styles.
+// $padding - Used to determine label padding. Default: $label-padding || rem-calc(4 8 4) !default
+// $text-size - Used to determine label text-size. Default: $text-size found in settings
+@mixin label-size($padding:$label-padding, $text-size:$label-font-sizing) {
+ @if $padding { padding: $padding; }
+ @if $text-size { font-size: $text-size; }
+}
+
+// @mixins
+//
+// We use this mixin to add label styles.
+// $bg - Default: $primary-color (found in settings file)
+// $radius - Default: false, Options: true, sets radius to $global-radius (found in settings file)
+@mixin label-style($bg:$primary-color, $radius:false) {
+
+ // We control which background color comes through
+ @if $bg {
+
+ // This find the lightness percentage of the background color.
+ $bg-lightness: lightness($bg);
+
+ background-color: $bg;
+
+ // We control the text color for you based on the background color.
+ @if $bg-lightness < 70% { color: $label-font-color-alt; }
+ @else { color: $label-font-color; }
+ }
+
+ // We use this to control the radius on labels.
+ @if $radius == true { @include radius($label-radius); }
+ @else if $radius { @include radius($radius); }
+
+}
+
+// @mixins
+//
+// We use this to add close buttons to alerts
+// $padding - Default: $label-padding,
+// $text-size - Default: $label-font-sizing,
+// $bg - Default: $primary-color(found in settings file)
+// $radius - Default: false, Options: true which sets radius to $global-radius (found in settings file)
+@mixin label($padding:$label-padding, $text-size:$label-font-sizing, $bg:$primary-color, $radius:false) {
+
+ @include label-base;
+ @include label-size($padding, $text-size);
+ @include label-style($bg, $radius);
+}
+
+@include exports("label") {
+ @if $include-html-label-classes {
+ .label {
+ @include label-base;
+ @include label-size;
+ @include label-style;
+
+ &.radius { @include label-style(false, true); }
+ &.round { @include label-style(false, $radius:1000px); }
+
+ &.alert { @include label-style($alert-color); }
+ &.warning { @include label-style($warning-color); }
+ &.success { @include label-style($success-color); }
+ &.secondary { @include label-style($secondary-color); }
+ &.info { @include label-style($info-color); }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_magellan.scss b/_sass/foundation-components/_magellan.scss
new file mode 100644
index 0000000000..fb10c7d1d7
--- /dev/null
+++ b/_sass/foundation-components/_magellan.scss
@@ -0,0 +1,34 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-magellan-classes: $include-html-classes !default;
+
+$magellan-bg: $white !default;
+$magellan-padding: 10px !default;
+
+@include exports("magellan") {
+ @if $include-html-magellan-classes {
+
+ #{data('magellan-expedition')}, #{data('magellan-expedition-clone')} {
+ background: $magellan-bg;
+ z-index: 50;
+ min-width: 100%;
+ padding: $magellan-padding;
+
+ .sub-nav {
+ margin-bottom: 0;
+ dd { margin-bottom: 0; }
+ a {
+ line-height: 1.8em;
+ }
+ }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_offcanvas.scss b/_sass/foundation-components/_offcanvas.scss
new file mode 100644
index 0000000000..8c86532039
--- /dev/null
+++ b/_sass/foundation-components/_offcanvas.scss
@@ -0,0 +1,515 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "type";
+
+// Off Canvas Tab Bar Variables
+$include-html-off-canvas-classes: $include-html-classes !default;
+
+$tabbar-bg: $oil !default;
+$tabbar-height: rem-calc(45) !default;
+$tabbar-icon-width: $tabbar-height !default;
+$tabbar-line-height: $tabbar-height !default;
+$tabbar-color: $white !default;
+$tabbar-middle-padding: 0 rem-calc(10) !default;
+
+// Off Canvas Divider Styles
+$tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%) !default;
+$tabbar-right-section-border: $tabbar-left-section-border;
+
+
+// Off Canvas Tab Bar Headers
+$tabbar-header-color: $white !default;
+$tabbar-header-weight: $font-weight-bold !default;
+$tabbar-header-line-height: $tabbar-height !default;
+$tabbar-header-margin: 0 !default;
+
+// Off Canvas Menu Variables
+$off-canvas-width: rem-calc(250) !default;
+$off-canvas-bg: $oil !default;
+$off-canvas-bg-hover: scale-color($tabbar-bg, $lightness: -30%) !default;
+
+// Off Canvas Menu List Variables
+$off-canvas-label-padding: 0.3rem rem-calc(15) !default;
+$off-canvas-label-color: $aluminum !default;
+$off-canvas-label-text-transform: uppercase !default;
+$off-canvas-label-font-size: rem-calc(12) !default;
+$off-canvas-label-font-weight: $font-weight-bold !default;
+$off-canvas-label-bg: $tuatara !default;
+$off-canvas-label-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%) !default;
+$off-canvas-label-border-bottom: none !default;
+$off-canvas-label-margin:0 !default;
+$off-canvas-link-padding: rem-calc(10, 15) !default;
+$off-canvas-link-color: rgba($white, 0.7) !default;
+$off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%) !default;
+$off-canvas-back-bg: #444 !default;
+$off-canvas-back-border-top: $off-canvas-label-border-top !default;
+$off-canvas-back-border-bottom: $off-canvas-label-border-bottom !default;
+$off-canvas-back-hover-bg: scale-color($off-canvas-back-bg, $lightness: -30%) !default;
+$off-canvas-back-hover-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%) !default;
+$off-canvas-back-hover-border-bottom: none !default;
+
+// Off Canvas Menu Icon Variables
+$tabbar-menu-icon-color: $white !default;
+$tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%) !default;
+
+$tabbar-menu-icon-text-indent: rem-calc(35) !default;
+$tabbar-menu-icon-width: $tabbar-icon-width !default;
+$tabbar-menu-icon-height: $tabbar-height !default;
+$tabbar-menu-icon-padding: 0 !default;
+
+$tabbar-hamburger-icon-width: rem-calc(16) !default;
+$tabbar-hamburger-icon-left: false !default;
+$tabbar-hamburger-icon-top: false !default;
+$tabbar-hamburger-icon-thickness: 1px !default;
+$tabbar-hamburger-icon-gap: 6px !default;
+
+// Off Canvas Back-Link Overlay
+$off-canvas-overlay-transition: background 300ms ease !default;
+$off-canvas-overlay-cursor: pointer !default;
+$off-canvas-overlay-box-shadow: -4px 0 4px rgba($black, 0.5), 4px 0 4px rgba($black, 0.5) !default;
+$off-canvas-overlay-background: rgba($white, 0.2) !default;
+$off-canvas-overlay-background-hover: rgba($white, 0.05) !default;
+
+// Transition Variables
+$menu-slide: "transform 500ms ease" !default;
+
+
+// MIXINS
+// Remove transition flicker on phones
+@mixin kill-flicker {
+ // -webkit-transform: translateZ(0x);
+ -webkit-backface-visibility: hidden;
+}
+
+// Basic properties for the content wraps
+@mixin wrap-base {
+ position: relative;
+ width: 100%;
+}
+
+@mixin translate3d($tx,$ty,$tz) {
+ -ms-transform: translate($tx,$ty);
+ -webkit-transform: translate3d($tx,$ty,$tz);
+ -moz-transform: translate3d($tx,$ty,$tz);
+ -ms-transform: translate3d($tx,$ty,$tz);
+ -o-transform: translate3d($tx,$ty,$tz);
+ transform: translate3d($tx,$ty,$tz)
+}
+
+// basic styles for off-canvas menu container
+@mixin off-canvas-menu($position) {
+ @include kill-flicker;
+ * { @include kill-flicker; }
+ width: $off-canvas-width;
+ top: 0;
+ bottom: 0;
+ position: absolute;
+ overflow-x: hidden;
+ overflow-y: auto;
+ background: $off-canvas-bg;
+ z-index: 1001;
+ box-sizing: content-box;
+ transition: transform 500ms ease 0s;
+ -webkit-overflow-scrolling: touch;
+ -ms-overflow-style: -ms-autohiding-scrollbar;
+
+ @if $position == left {
+ @include translate3d(-100%,0,0);
+ left: 0;
+ }
+ @if $position == right {
+ @include translate3d(100%,0,0);
+ right: 0;
+ }
+}
+
+// OFF CANVAS WRAP
+// Wrap visible content and prevent scroll bars
+@mixin off-canvas-wrap {
+ @include kill-flicker;
+ @include wrap-base;
+ overflow: hidden;
+ &.move-right,
+ &.move-left { min-height: 100%; -webkit-overflow-scrolling: touch; }
+}
+
+// INNER WRAP
+// Main content area that moves to reveal the off-canvas nav
+@mixin inner-wrap {
+ // @include kill-flicker;
+ // removed for now till chrome fixes backface issue
+ @include wrap-base;
+ @include clearfix;
+ -webkit-transition: -webkit-#{$menu-slide};
+ -moz-transition: -moz-#{$menu-slide};
+ -ms-transition: -ms-#{$menu-slide};
+ -o-transition: -o-#{$menu-slide};
+ transition: #{$menu-slide};
+}
+
+// TAB BAR
+// This is the tab bar base
+@mixin tab-bar-base {
+ @include kill-flicker;
+
+ // base styles
+ background: $tabbar-bg;
+ color: $tabbar-color;
+ height: $tabbar-height;
+ line-height: $tabbar-line-height;
+
+ // make sure it's below the .exit-off-canvas link
+ position: relative;
+ // z-index: 999;
+
+ // Typography
+ h1,h2,h3,h4,h5,h6 {
+ color: $tabbar-header-color;
+ font-weight: $tabbar-header-weight;
+ line-height: $tabbar-header-line-height;
+ margin: $tabbar-header-margin;
+ }
+ h1,h2,h3,h4 { font-size: $h5-font-size; }
+}
+
+// SMALL SECTIONS
+// These are small sections on the left and right that contain the off-canvas toggle buttons;
+@mixin tabbar-small-section($position) {
+ width: $tabbar-icon-width;
+ height: $tabbar-height;
+ position: absolute;
+ top: 0;
+ @if $position == left {
+ border-right: $tabbar-left-section-border;
+ // box-shadow: 1px 0 0 scale-color($tabbar-bg, $lightness: 13%);
+ left: 0;
+ }
+ @if $position == right {
+ border-left: $tabbar-right-section-border;
+ // box-shadow: -1px 0 0 scale-color($tabbar-bg, $lightness: -50%);
+ right:0;
+ }
+}
+
+@mixin tab-bar-section {
+ padding: $tabbar-middle-padding;
+ position: absolute;
+ text-align: center;
+ height: $tabbar-height;
+ top: 0;
+ @media #{$medium-up} {
+ &.left { text-align: left; }
+ &.right { text-align: right; }
+ }
+
+ // still need to make these non-presentational
+ &.left {
+ left: 0;
+ right: $tabbar-icon-width;
+ }
+ &.right {
+ left: $tabbar-icon-width;
+ right: 0;
+ }
+ &.middle {
+ left: $tabbar-icon-width;
+ right: $tabbar-icon-width;
+ }
+}
+
+// OFF CANVAS LIST
+// This is the list of links in the off-canvas menu
+@mixin off-canvas-list {
+ list-style-type: none;
+ padding:0;
+ margin:0;
+
+ li {
+ label {
+ display: block;
+ padding: $off-canvas-label-padding;
+ color: $off-canvas-label-color;
+ text-transform: $off-canvas-label-text-transform;
+ font-size: $off-canvas-label-font-size;
+ font-weight: $off-canvas-label-font-weight;
+ background: $off-canvas-label-bg;
+ border-top: $off-canvas-label-border-top;
+ border-bottom: $off-canvas-label-border-bottom;
+ margin: $off-canvas-label-margin;
+ }
+ a {
+ display: block;
+ padding: $off-canvas-link-padding;
+ color: $off-canvas-link-color;
+ border-bottom: $off-canvas-link-border-bottom;
+ transition: background 300ms ease;
+ &:hover {
+ background: $off-canvas-bg-hover;
+ }
+ }
+ }
+
+}
+
+// BACK LINK
+// This is an overlay that, when clicked, will toggle off the off canvas menu
+@mixin back-link {
+ @include kill-flicker;
+
+ transition: $off-canvas-overlay-transition;
+ cursor: $off-canvas-overlay-cursor;
+ box-shadow: $off-canvas-overlay-box-shadow;
+
+ // fill the screen
+ display: block;
+ position: absolute;
+ background: $off-canvas-overlay-background;
+ top: 0;
+ bottom: 0;
+ left:0;
+ right:0;
+ z-index: 1002;
+ -webkit-tap-highlight-color: rgba(0,0,0,0);
+
+ @media #{$medium-up} {
+ &:hover {
+ background: $off-canvas-overlay-background-hover;
+ }
+ }
+}
+
+//
+// DEFAULT CLASSES
+//
+@include exports("offcanvas") {
+ @if $include-html-off-canvas-classes {
+
+ .off-canvas-wrap { @include off-canvas-wrap; }
+ .inner-wrap { @include inner-wrap; }
+
+ .tab-bar { @include tab-bar-base; }
+
+ .left-small { @include tabbar-small-section($position: left); }
+ .right-small { @include tabbar-small-section($position: right); }
+
+ .tab-bar-section { @include tab-bar-section; }
+
+ // MENU BUTTON
+ // This is a little bonus. You don't need it for off canvas to work. Mixins to be written in the future.
+ .tab-bar .menu-icon {
+ text-indent: $tabbar-menu-icon-text-indent;
+ width: $tabbar-menu-icon-width;
+ height: $tabbar-menu-icon-height;
+ display: block;
+ padding: $tabbar-menu-icon-padding;
+ color: $tabbar-menu-icon-color;
+ position: relative;
+ transform: translate3d(0,0,0);
+
+ // @include for the hamburger menu-icon
+ //
+ // Arguments as follows: ($width, $left, $top, $thickness, $gap, $color, $hover-color)
+ // $width - Width of hamburger icon in rem Default: $tabbar-hamburger-icon-width.
+ // $left - If false, icon will be centered horizontally || explicitly set value in rem Default: $tabbar-hamburger-icon-left= False
+ // $top - If false, icon will be centered vertically || explicitly set value in rem Default: = False
+ // $thickness - thickness of lines in hamburger icon, set value in px Default: $tabbar-hamburger-icon-thickness = 1px
+ // $gap - spacing between the lines in hamburger icon, set value in px Default: $tabbar-hamburger-icon-gap = 6px
+ // $color - icon color Default: $tabbar-menu-icon-color
+ // $hover-color - icon color when hovered Default: $tabbar-menu-icon-hover
+ // $offcanvas - Set to true
+ @include hamburger($tabbar-hamburger-icon-width, $tabbar-hamburger-icon-left, $tabbar-hamburger-icon-top, $tabbar-hamburger-icon-thickness, $tabbar-hamburger-icon-gap, $tabbar-menu-icon-color, $tabbar-menu-icon-hover, true)
+ }
+
+ .left-off-canvas-menu { @include off-canvas-menu($position: left); }
+ .right-off-canvas-menu { @include off-canvas-menu($position: right); }
+
+ ul.off-canvas-list { @include off-canvas-list; }
+
+
+ // ANIMATION CLASSES
+ // These classes are added with JS and trigger the actual animation.
+ .move-right {
+ > .inner-wrap {
+ @include translate3d($off-canvas-width,0,0);
+ }
+ .exit-off-canvas { @include back-link;}
+ }
+
+ .move-left {
+ > .inner-wrap {
+ @include translate3d(-($off-canvas-width),0,0);
+
+ }
+ .exit-off-canvas { @include back-link; }
+ }
+ .offcanvas-overlap {
+ .left-off-canvas-menu, .right-off-canvas-menu {
+ -ms-transform: none;
+ -webkit-transform: none;
+ -moz-transform: none;
+ -o-transform: none;
+ transform: none;
+ z-index: 1003;
+ }
+ .exit-off-canvas { @include back-link; }
+ }
+ .offcanvas-overlap-left {
+ .right-off-canvas-menu {
+ -ms-transform: none;
+ -webkit-transform: none;
+ -moz-transform: none;
+ -o-transform: none;
+ transform: none;
+ z-index: 1003;
+ }
+ .exit-off-canvas { @include back-link; }
+ }
+ .offcanvas-overlap-right {
+ .left-off-canvas-menu {
+ -ms-transform: none;
+ -webkit-transform: none;
+ -moz-transform: none;
+ -o-transform: none;
+ transform: none;
+ z-index: 1003;
+ }
+ .exit-off-canvas { @include back-link; }
+ }
+
+ // Older browsers
+ .no-csstransforms {
+ .left-off-canvas-menu { left: -($off-canvas-width); }
+ .right-off-canvas-menu { right: -($off-canvas-width); }
+
+ .move-left > .inner-wrap { right: $off-canvas-width; }
+ .move-right > .inner-wrap { left: $off-canvas-width; }
+ }
+
+ }
+}
+
+//
+// Off-Canvas Submenu Classes
+//
+@mixin off-canvas-submenu($position) {
+ @include kill-flicker;
+ * { @include kill-flicker; }
+ width: $off-canvas-width;
+ top: 0;
+ bottom: 0;
+ position: absolute;
+ margin: 0;
+ overflow-x: hidden;
+ overflow-y: auto;
+ background: $off-canvas-bg;
+ z-index: 1002;
+ box-sizing: content-box;
+ -webkit-overflow-scrolling: touch;
+ @if $position == left {
+ @include translate3d(-100%,0,0);
+ left: 0;
+ }
+ @if $position == right {
+ @include translate3d(100%,0,0);
+ right: 0;
+ }
+ -webkit-transition: -webkit-#{$menu-slide};
+ -moz-transition: -moz-#{$menu-slide};
+ -ms-transition: -ms-#{$menu-slide};
+ -o-transition: -o-#{$menu-slide};
+ transition: #{$menu-slide};
+
+ //back button style like label
+ .back > a {
+ padding: $off-canvas-label-padding;
+ color: $off-canvas-label-color;
+ text-transform: $off-canvas-label-text-transform;
+ font-weight: $off-canvas-label-font-weight;
+ background: $off-canvas-back-bg;
+ border-top: $off-canvas-back-border-top;
+ border-bottom: $off-canvas-back-border-bottom;
+ &:hover {
+ background: $off-canvas-back-hover-bg;
+ border-top: $off-canvas-back-hover-border-top;
+ border-bottom: $off-canvas-back-hover-border-bottom;
+ }
+ margin: $off-canvas-label-margin;
+ @if $position == right {
+ @if $text-direction == rtl {
+ &:before {
+ @include icon-double-arrows($position: left);
+ }
+ } @else {
+ &:after {
+ @include icon-double-arrows($position: right);
+ }
+ }
+ }
+ @if $position == left {
+ @if $text-direction == rtl {
+ &:after {
+ @include icon-double-arrows($position: right);
+ }
+ } @else {
+ &:before {
+ @include icon-double-arrows($position: left);
+ }
+ }
+ }
+ }
+}
+//Left double angle quote or Right double angle quote chars
+@mixin icon-double-arrows ($position){
+ @if $position == left {
+ content: "\AB";
+ @if $text-direction == rtl {
+ margin-left: 0.5rem;
+ } @else {
+ margin-right: 0.5rem;
+ }
+ }
+ @if $position == right {
+ content: "\BB";
+ @if $text-direction == rtl {
+ margin-right: 0.5rem;
+ } @else {
+ margin-left: 0.5rem;
+ }
+ }
+ display: inline;
+}
+
+@if $include-html-off-canvas-classes {
+ .left-submenu {
+ @include off-canvas-submenu($position: left);
+ &.move-right, &.offcanvas-overlap-right, &.offcanvas-overlap {
+ @include translate3d(0%,0,0);
+ }
+ }
+
+ .right-submenu {
+ @include off-canvas-submenu($position: right);
+ &.move-left, &.offcanvas-overlap-left, &.offcanvas-overlap {
+ @include translate3d(0%,0,0);
+ }
+ }
+
+ @if $text-direction == rtl {
+ .left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
+ @include icon-double-arrows($position: left);
+ }
+ .right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
+ @include icon-double-arrows($position: right);
+ }
+ } @else {
+ .left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
+ @include icon-double-arrows($position: right);
+ }
+ .right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
+ @include icon-double-arrows($position: left);
+ }
+ }
+}
diff --git a/_sass/foundation-components/_orbit.scss b/_sass/foundation-components/_orbit.scss
new file mode 100644
index 0000000000..3228d8a7a7
--- /dev/null
+++ b/_sass/foundation-components/_orbit.scss
@@ -0,0 +1,368 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+// @variables
+//
+$include-html-orbit-classes: $include-html-classes !default;
+
+// We use these to control the caption styles
+$orbit-container-bg: none !default;
+$orbit-caption-bg: rgba(51,51,51, 0.8) !default;
+$orbit-caption-font-color: $white !default;
+$orbit-caption-font-size: rem-calc(14) !default;
+$orbit-caption-position: "bottom" !default; // Supported values: "bottom", "under"
+$orbit-caption-padding: rem-calc(10 14) !default;
+$orbit-caption-height: auto !default;
+
+// We use these to control the left/right nav styles
+$orbit-nav-bg: transparent !default;
+$orbit-nav-bg-hover: rgba(0,0,0,0.3) !default;
+$orbit-nav-arrow-color: $white !default;
+$orbit-nav-arrow-color-hover: $white !default;
+
+// We use these to control the timer styles
+$orbit-timer-bg: rgba(255,255,255,0.3) !default;
+$orbit-timer-show-progress-bar: true !default;
+
+// We use these to control the bullet nav styles
+$orbit-bullet-nav-color: $iron !default;
+$orbit-bullet-nav-color-active: $aluminum !default;
+$orbit-bullet-radius: rem-calc(9) !default;
+
+// We use these to controls the style of slide numbers
+$orbit-slide-number-bg: rgba(0,0,0,0) !default;
+$orbit-slide-number-font-color: $white !default;
+$orbit-slide-number-padding: rem-calc(5) !default;
+
+// Graceful Loading Wrapper and preloader
+$wrapper-class: "slideshow-wrapper" !default;
+$preloader-class: "preloader" !default;
+
+// Hide controls on small
+$orbit-nav-hide-for-small: true !default;
+$orbit-bullet-hide-for-small: true !default;
+$orbit-timer-hide-for-small: true !default;
+
+
+@include exports("orbit") {
+ @if $include-html-orbit-classes {
+
+ @-webkit-keyframes rotate {
+ from { -webkit-transform: rotate(0deg); }
+ to { -webkit-transform: rotate(360deg); }
+ }
+ @-moz-keyframes rotate {
+ from { -moz-transform: rotate(0deg); }
+ to { -moz-transform: rotate(360deg); }
+ }
+ @-o-keyframes rotate {
+ from { -o-transform: rotate(0deg); }
+ to { -o-transform: rotate(360deg); }
+ }
+ @keyframes rotate {
+ from { transform: rotate(0deg); }
+ to { transform: rotate(360deg); }
+ }
+
+ /* Orbit Graceful Loading */
+ .#{$wrapper-class} {
+ position: relative;
+
+ ul {
+ // Prevent bullets showing before .orbit-container is loaded
+ list-style-type: none;
+ margin: 0;
+
+ // Hide all list items
+ li,
+ li .orbit-caption { display: none; }
+
+ // ...except for the first one
+ li:first-child { display: block; }
+ }
+
+ .orbit-container { background-color: transparent;
+
+ // Show images when .orbit-container is loaded
+ li { display: block;
+
+ .orbit-caption { display: block; }
+ }
+ .orbit-bullets li {
+ display: inline-block;
+ }
+ }
+
+ // Orbit preloader
+ .#{$preloader-class} {
+ display: block;
+ width: 40px;
+ height: 40px;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ margin-top: -20px;
+ margin-left: -20px;
+ border: solid 3px;
+ border-color: $charcoal $white;
+ @include radius(1000px);
+ animation-name: rotate;
+ animation-duration: 1.5s;
+ animation-iteration-count: infinite;
+ animation-timing-function: linear;
+ }
+ }
+
+
+ .orbit-container {
+ overflow: hidden;
+ width: 100%;
+ position: relative;
+ background: $orbit-container-bg;
+
+ .orbit-slides-container {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+ position: relative;
+
+ // Prevents images (and captions) from disappearing after first rotation on Chrome for Android
+ -webkit-transform: translateZ(0);
+
+ img { display: block; max-width: 100%; }
+
+ &>* {
+ position: absolute;
+ top: 0;
+ width: 100%;
+ @if $text-direction == rtl {
+ margin-right: 100%;
+ }
+ @else {
+ margin-left: 100%;
+ }
+
+ &:first-child {
+ @if $text-direction == rtl {
+ margin-right: 0;
+ }
+ @else {
+ margin-left: 0;
+ }
+ }
+
+ .orbit-caption {
+ @if $orbit-caption-position == "bottom" {
+ position: absolute;
+ bottom: 0;
+ } @else if $orbit-caption-position == "under" {
+ position: relative;
+ }
+
+ background-color: $orbit-caption-bg;
+ color: $orbit-caption-font-color;
+ width: 100%;
+ padding: $orbit-caption-padding;
+ font-size: $orbit-caption-font-size;
+ }
+ }
+ }
+
+ .orbit-slide-number {
+ position: absolute;
+ top: 10px;
+ #{$default-float}: 10px;
+ font-size: 12px;
+ span { font-weight: 700; padding: $orbit-slide-number-padding;}
+ color: $orbit-slide-number-font-color;
+ background: $orbit-slide-number-bg;
+ z-index: 10;
+ }
+
+ .orbit-timer {
+ position: absolute;
+ top: 12px;
+ #{$opposite-direction}: 10px;
+ height: 6px;
+ width: 100px;
+ z-index: 10;
+ .orbit-progress {
+ @if $orbit-timer-show-progress-bar {
+ height: 3px;
+ background-color: $orbit-timer-bg;
+ display: block;
+ width: 0;
+ position: relative;
+ right: 20px;
+ top: 5px;
+ }
+ }
+
+ // Play button
+ & > span {
+ display: none;
+ position: absolute;
+ top: 0;
+ #{$opposite-direction}: 0;
+ width: 11px;
+ height: 14px;
+ border: solid 4px $white;
+ border-top: none;
+ border-bottom: none;
+ }
+
+ // Pause button
+ &.paused {
+ & > span {
+ #{$opposite-direction}: -4px;
+ top: 0;
+ width: 11px;
+ height: 14px;
+ border: inset 8px;
+ border-left-style: solid;
+ border-color: transparent;
+ border-left-color: $white;
+ &.dark {
+ border-left-color: $oil;
+ }
+ }
+ }
+ }
+
+
+
+ &:hover .orbit-timer > span { display: block; }
+
+ // Let's get those controls to be right in the center on each side
+ .orbit-prev,
+ .orbit-next {
+ position: absolute;
+ top: 45%;
+ margin-top: -25px;
+ width: 36px;
+ height: 60px;
+ line-height: 50px;
+ color: white;
+ background-color: $orbit-nav-bg;
+ text-indent: -9999px !important;
+ z-index: 10;
+
+ &:hover {
+ background-color: $orbit-nav-bg-hover;
+ }
+
+ & > span {
+ position: absolute;
+ top: 50%;
+ margin-top: -10px;
+ display: block;
+ width: 0;
+ height: 0;
+ border: inset 10px;
+ }
+ }
+ .orbit-prev { #{$default-float}: 0;
+ & > span {
+ border-#{$opposite-direction}-style: solid;
+ border-color: transparent;
+ border-#{$opposite-direction}-color: $orbit-nav-arrow-color;
+ }
+ &:hover > span {
+ border-#{$opposite-direction}-color: $orbit-nav-arrow-color-hover;
+ }
+ }
+ .orbit-next { #{$opposite-direction}: 0;
+ & > span {
+ border-color: transparent;
+ border-#{$default-float}-style: solid;
+ border-#{$default-float}-color: $orbit-nav-arrow-color;
+ #{$default-float}: 50%;
+ margin-#{$default-float}: -4px;
+ }
+ &:hover > span {
+ border-#{$default-float}-color: $orbit-nav-arrow-color-hover;
+ }
+ }
+ }
+
+ .orbit-bullets-container { text-align: center; }
+ .orbit-bullets {
+ margin: 0 auto 30px auto;
+ overflow: hidden;
+ position: relative;
+ top: 10px;
+ float: none;
+ text-align: center;
+ display: block;
+
+ li {
+ cursor:pointer;
+ display: inline-block;
+ width: $orbit-bullet-radius;
+ height: $orbit-bullet-radius;
+ background: $orbit-bullet-nav-color;
+ // float: $default-float;
+ float: none;
+ margin-#{$opposite-direction}: 6px;
+ @include radius(1000px);
+
+ &.active {
+ background: $orbit-bullet-nav-color-active;
+ }
+
+ &:last-child { margin-#{$opposite-direction}: 0; }
+ }
+ }
+
+ .touch {
+ .orbit-container {
+ .orbit-prev,
+ .orbit-next { display: none; }
+ }
+
+ .orbit-bullets { display: none; }
+ }
+
+
+ @media #{$medium-up} {
+
+ .touch {
+ .orbit-container {
+ .orbit-prev,
+ .orbit-next { display: inherit; }
+ }
+
+ .orbit-bullets { display: block; }
+ }
+
+ }
+
+ @media #{$small-only} {
+ .orbit-stack-on-small {
+ .orbit-slides-container {height: auto !important;}
+ .orbit-slides-container > * {
+ position: relative;
+ margin:0 !important;
+ opacity:1 !important;
+ }
+
+ .orbit-slide-number {
+ display: none;
+ }
+ }
+
+ @if $orbit-timer-hide-for-small {
+ .orbit-timer{display: none;}
+ }
+ @if $orbit-nav-hide-for-small {
+ .orbit-next,.orbit-prev{display: none;}
+ }
+ @if $orbit-bullet-hide-for-small {
+ .orbit-bullets{display: none;}
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_pagination.scss b/_sass/foundation-components/_pagination.scss
new file mode 100644
index 0000000000..da6aada971
--- /dev/null
+++ b/_sass/foundation-components/_pagination.scss
@@ -0,0 +1,162 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-pagination-classes: $include-html-classes !default;
+
+// We use these to control the pagination container
+$pagination-height: rem-calc(24) !default;
+$pagination-margin: rem-calc(-5) !default;
+
+// We use these to set the list-item properties
+$pagination-li-float: $default-float !default;
+$pagination-li-height: rem-calc(24) !default;
+$pagination-li-font-color: $jet !default;
+$pagination-li-font-size: rem-calc(14) !default;
+$pagination-li-margin: rem-calc(5) !default;
+
+// We use these for the pagination anchor links
+$pagination-link-pad: rem-calc(1 10 1) !default;
+$pagination-link-font-color: $aluminum !default;
+$pagination-link-active-bg: scale-color($white, $lightness: -10%) !default;
+
+// We use these for disabled anchor links
+$pagination-link-unavailable-cursor: default !default;
+$pagination-link-unavailable-font-color: $aluminum !default;
+$pagination-link-unavailable-bg-active: transparent !default;
+
+// We use these for currently selected anchor links
+$pagination-link-current-background: $primary-color !default;
+$pagination-link-current-font-color: $white !default;
+$pagination-link-current-font-weight: $font-weight-bold !default;
+$pagination-link-current-cursor: default !default;
+$pagination-link-current-active-bg: $primary-color !default;
+
+// @mixins
+//
+// Style the pagination container. Currently only used when centering elements.
+// $center - Default: false, Options: true
+@mixin pagination-container($center:false) {
+ @if $center { text-align: center; }
+}
+
+// @mixins
+// Style unavailable list items
+@mixin pagination-unavailable-item {
+ a, button {
+ cursor: $pagination-link-unavailable-cursor;
+ color: $pagination-link-unavailable-font-color;
+ }
+ &:hover a,
+ & a:focus,
+
+ &:hover button,
+ & button:focus
+ { background: $pagination-link-unavailable-bg-active; }
+}
+// @mixins
+// Style the current list item. Do not assume that the current item has
+// an anchor element.
+// $has-anchor - Default: true, Options: false
+@mixin pagination-current-item($has-anchor: true) {
+ @if $has-anchor {
+ a, button {
+ background: $pagination-link-current-background;
+ color: $pagination-link-current-font-color;
+ font-weight: $pagination-link-current-font-weight;
+ cursor: $pagination-link-current-cursor;
+
+ &:hover,
+ &:focus { background: $pagination-link-current-active-bg; }
+ }
+ } @else {
+ height: auto;
+ padding: $pagination-link-pad;
+ background: $pagination-link-current-background;
+ color: $pagination-link-current-font-color;
+ font-weight: $pagination-link-current-font-weight;
+ cursor: $pagination-link-current-cursor;
+ @include radius;
+
+ &:hover,
+ &:focus { background: $pagination-link-current-active-bg; }
+ }
+}
+
+// @mixins
+//
+// We use this mixin to set the properties for the creating Foundation pagination
+// $center - Left or center align the li elements. Default: false
+// $base-style - Sets base styles for pagination. Default: true, Options: false
+// $use-default-classes - Makes unavailable & current classes available for use. Default: true
+@mixin pagination($center:false, $base-style:true, $use-default-classes:true) {
+
+ @if $base-style {
+ display: block;
+ min-height: $pagination-height;
+ margin-#{$default-float}: $pagination-margin;
+
+ li {
+ height: $pagination-li-height;
+ color: $pagination-li-font-color;
+ font-size: $pagination-li-font-size;
+ margin-#{$default-float}: $pagination-li-margin;
+
+ a, button {
+ display: block;
+ padding: $pagination-link-pad;
+ color: $pagination-link-font-color;
+ background: none;
+ @include radius;
+ font-weight: normal;
+ font-size: 1em;
+ line-height: inherit;
+ @include single-transition(background-color);
+ }
+
+ &:hover a,
+ a:focus,
+ &:hover button,
+ button:focus
+ { background: $pagination-link-active-bg; }
+
+ @if $use-default-classes {
+ &.unavailable { @include pagination-unavailable-item(); }
+ &.current { @include pagination-current-item(); }
+ }
+ }
+ }
+
+ // Left or center align the li elements
+ li {
+ @if $center {
+ float: none;
+ display: inline-block;
+ } @else {
+ float: $pagination-li-float;
+ display: block;
+ }
+ }
+}
+
+@include exports("pagination") {
+ @if $include-pagination-classes {
+ ul.pagination {
+ @include pagination;
+ }
+
+ /* Pagination centred wrapper */
+ .pagination-centered {
+ @include pagination-container(true);
+
+ ul.pagination {
+ @include pagination(true, false);
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_panels.scss b/_sass/foundation-components/_panels.scss
new file mode 100644
index 0000000000..b3018e32e0
--- /dev/null
+++ b/_sass/foundation-components/_panels.scss
@@ -0,0 +1,101 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-panel-classes: $include-html-classes !default;
+
+// We use these to control the background and border styles
+$panel-bg: scale-color($white, $lightness: -5%) !default;
+$panel-border-style: solid !default;
+$panel-border-size: 1px !default;
+
+// We use this % to control how much we darken things on hover
+$panel-function-factor: -11% !default;
+$panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor) !default;
+
+// We use these to set default inner padding and bottom margin
+$panel-margin-bottom: rem-calc(20) !default;
+$panel-padding: rem-calc(20) !default;
+
+// We use these to set default font colors
+$panel-font-color: $oil !default;
+$panel-font-color-alt: $white !default;
+
+$panel-header-adjust: true !default;
+$callout-panel-link-color: $primary-color !default;
+$callout-panel-link-color-hover: scale-color($callout-panel-link-color, $lightness: -14%) !default;
+//
+// @mixins
+//
+// We use this mixin to create panels.
+// $bg - Sets the panel background color. Default: $panel-pg || scale-color($white, $lightness: -5%) !default
+// $padding - Sets the panel padding amount. Default: $panel-padding || rem-calc(20)
+// $adjust - Sets the font color based on the darkness of the bg & resets header line-heights for panels. Default: $panel-header-adjust || true
+@mixin panel($bg:$panel-bg, $padding:$panel-padding, $adjust:$panel-header-adjust) {
+
+ @if $bg {
+ $bg-lightness: lightness($bg);
+
+ border-style: $panel-border-style;
+ border-width: $panel-border-size;
+ border-color: scale-color($bg, $lightness: $panel-function-factor);
+ margin-bottom: $panel-margin-bottom;
+ padding: $padding;
+
+ background: $bg;
+ @if $bg-lightness >= 50% { color: $panel-font-color; }
+ @else { color: $panel-font-color-alt; }
+
+ // Respect the padding, fool.
+ &>:first-child { margin-top: 0; }
+ &>:last-child { margin-bottom: 0; }
+
+ @if $adjust {
+ // We set the font color based on the darkness of the bg.
+ @if $bg-lightness >= 50% {
+ h1,h2,h3,h4,h5,h6,p,li,dl { color: $panel-font-color; }
+ }
+ @else {
+ h1,h2,h3,h4,h5,h6,p,li,dl { color: $panel-font-color-alt; }
+ }
+
+ // reset header line-heights for panels
+ h1,h2,h3,h4,h5,h6 {
+ line-height: 1; margin-bottom: rem-calc(20) / 2;
+ &.subheader { line-height: 1.4; }
+ }
+ }
+ }
+}
+
+@include exports("panel") {
+ @if $include-html-panel-classes {
+
+ /* Panels */
+ .panel { @include panel;
+
+ &.callout {
+ @include panel(scale-color($primary-color, $lightness: 94%));
+ a:not(.button) {
+ color: $callout-panel-link-color;
+
+ &:hover,
+ &:focus {
+ color: $callout-panel-link-color-hover;
+ }
+ }
+ }
+
+ &.radius {
+ @include radius;
+ }
+
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_pricing-tables.scss b/_sass/foundation-components/_pricing-tables.scss
new file mode 100644
index 0000000000..97b14c444c
--- /dev/null
+++ b/_sass/foundation-components/_pricing-tables.scss
@@ -0,0 +1,150 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-pricing-classes: $include-html-classes !default;
+
+// We use this to control the border color
+$price-table-border: solid 1px $gainsboro !default;
+
+// We use this to control the bottom margin of the pricing table
+$price-table-margin-bottom: rem-calc(20) !default;
+
+// We use these to control the title styles
+$price-title-bg: $oil !default;
+$price-title-padding: rem-calc(15 20) !default;
+$price-title-align: center !default;
+$price-title-color: $smoke !default;
+$price-title-weight: $font-weight-normal !default;
+$price-title-size: rem-calc(16) !default;
+$price-title-font-family: $body-font-family !default;
+
+// We use these to control the price styles
+$price-money-bg: $vapor !default;
+$price-money-padding: rem-calc(15 20) !default;
+$price-money-align: center !default;
+$price-money-color: $oil !default;
+$price-money-weight: $font-weight-normal !default;
+$price-money-size: rem-calc(32) !default;
+$price-money-font-family: $body-font-family !default;
+
+
+// We use these to control the description styles
+$price-bg: $white !default;
+$price-desc-color: $monsoon !default;
+$price-desc-padding: rem-calc(15) !default;
+$price-desc-align: center !default;
+$price-desc-font-size: rem-calc(12) !default;
+$price-desc-weight: $font-weight-normal !default;
+$price-desc-line-height: 1.4 !default;
+$price-desc-bottom-border: dotted 1px $gainsboro !default;
+
+// We use these to control the list item styles
+$price-item-color: $oil !default;
+$price-item-padding: rem-calc(15) !default;
+$price-item-align: center !default;
+$price-item-font-size: rem-calc(14) !default;
+$price-item-weight: $font-weight-normal !default;
+$price-item-bottom-border: dotted 1px $gainsboro !default;
+
+// We use these to control the CTA area styles
+$price-cta-bg: $white !default;
+$price-cta-align: center !default;
+$price-cta-padding: rem-calc(20 20 0) !default;
+
+// @mixins
+//
+// We use this to create the container element for the pricing tables
+@mixin pricing-table-container {
+ border: $price-table-border;
+ margin-#{$default-float}: 0;
+ margin-bottom: $price-table-margin-bottom;
+
+ & * {
+ list-style: none;
+ line-height: 1;
+ }
+}
+// @mixins
+//
+// We use this mixin to create the pricing table title styles
+@mixin pricing-table-title {
+ background-color: $price-title-bg;
+ padding: $price-title-padding;
+ text-align: $price-title-align;
+ color: $price-title-color;
+ font-weight: $price-title-weight;
+ font-size: $price-title-size;
+ font-family: $price-title-font-family;
+}
+
+// @mixins
+//
+// We use this mixin to control the pricing table price styles
+@mixin pricing-table-price {
+ background-color: $price-money-bg;
+ padding: $price-money-padding;
+ text-align: $price-money-align;
+ color: $price-money-color;
+ font-weight: $price-money-weight;
+ font-size: $price-money-size;
+ font-family: $price-money-font-family;
+}
+
+// @mixins
+//
+// We use this mixin to create the description styles for the pricing table
+@mixin pricing-table-description {
+ background-color: $price-bg;
+ padding: $price-desc-padding;
+ text-align: $price-desc-align;
+ color: $price-desc-color;
+ font-size: $price-desc-font-size;
+ font-weight: $price-desc-weight;
+ line-height: $price-desc-line-height;
+ border-bottom: $price-desc-bottom-border;
+}
+
+// @mixins
+//
+// We use this mixin to style the bullet items in the pricing table
+@mixin pricing-table-bullet {
+ background-color: $price-bg;
+ padding: $price-item-padding;
+ text-align: $price-item-align;
+ color: $price-item-color;
+ font-size: $price-item-font-size;
+ font-weight: $price-item-weight;
+ border-bottom: $price-item-bottom-border;
+}
+
+// @mixins
+//
+// We use this mixin to style the CTA area of the pricing tables
+@mixin pricing-table-cta {
+ background-color: $price-cta-bg;
+ text-align: $price-cta-align;
+ padding: $price-cta-padding;
+}
+
+@include exports("pricing-table") {
+ @if $include-html-pricing-classes {
+
+ /* Pricing Tables */
+ .pricing-table {
+ @include pricing-table-container;
+
+ .title { @include pricing-table-title; }
+ .price { @include pricing-table-price; }
+ .description { @include pricing-table-description; }
+ .bullet-item { @include pricing-table-bullet; }
+ .cta-button { @include pricing-table-cta; }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_progress-bars.scss b/_sass/foundation-components/_progress-bars.scss
new file mode 100644
index 0000000000..974a710d36
--- /dev/null
+++ b/_sass/foundation-components/_progress-bars.scss
@@ -0,0 +1,79 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-media-classes: $include-html-classes !default;
+
+// We use this to set the progress bar height
+$progress-bar-height: rem-calc(25) !default;
+$progress-bar-color: $vapor !default;
+
+// We use these to control the border styles
+$progress-bar-border-color: scale-color($white, $lightness: 20%) !default;
+$progress-bar-border-size: 1px !default;
+$progress-bar-border-style: solid !default;
+$progress-bar-border-radius: $global-radius !default;
+
+// We use these to control the margin & padding
+$progress-bar-pad: rem-calc(2) !default;
+$progress-bar-margin-bottom: rem-calc(10) !default;
+
+// We use these to set the meter colors
+$progress-meter-color: $primary-color !default;
+$progress-meter-secondary-color: $secondary-color !default;
+$progress-meter-success-color: $success-color !default;
+$progress-meter-alert-color: $alert-color !default;
+
+// @mixins
+//
+// We use this to set up the progress bar container
+@mixin progress-container {
+ background-color: $progress-bar-color;
+ height: $progress-bar-height;
+ border: $progress-bar-border-size $progress-bar-border-style $progress-bar-border-color;
+ padding: $progress-bar-pad;
+ margin-bottom: $progress-bar-margin-bottom;
+}
+
+// @mixins
+//
+// $bg - Default: $progress-meter-color || $primary-color
+@mixin progress-meter($bg:$progress-meter-color) {
+ background: $bg;
+ height: 100%;
+ display: block;
+}
+
+
+@include exports("progress-bar") {
+ @if $include-html-media-classes {
+
+ /* Progress Bar */
+ .progress {
+ @include progress-container;
+
+ // Meter
+ .meter {
+ @include progress-meter;
+ }
+ &.secondary .meter { @include progress-meter($bg:$progress-meter-secondary-color); }
+ &.success .meter { @include progress-meter($bg:$progress-meter-success-color); }
+ &.alert .meter { @include progress-meter($bg:$progress-meter-alert-color); }
+
+ &.radius { @include radius($progress-bar-border-radius);
+ .meter { @include radius($progress-bar-border-radius - 1); }
+ }
+
+ &.round { @include radius(1000px);
+ .meter { @include radius(999px); }
+ }
+
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_range-slider.scss b/_sass/foundation-components/_range-slider.scss
new file mode 100644
index 0000000000..30203eab8c
--- /dev/null
+++ b/_sass/foundation-components/_range-slider.scss
@@ -0,0 +1,168 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @name _range-slider.scss
+// @dependencies _global.scss
+//
+
+//
+// @variables
+//
+
+$include-html-range-slider-classes: $include-html-classes !default;
+
+// These variabels define the slider bar styles
+$range-slider-bar-width: 100% !default;
+$range-slider-bar-height: rem-calc(16) !default;
+
+$range-slider-bar-border-width: 1px !default;
+$range-slider-bar-border-style: solid !default;
+$range-slider-bar-border-color: $gainsboro !default;
+$range-slider-radius: $global-radius !default;
+$range-slider-round: $global-rounded !default;
+$range-slider-bar-bg-color: $ghost !default;
+$range-slider-active-segment-bg-color: scale-color($secondary-color, $lightness: -1%) !default;
+
+// Vertical bar styles
+$range-slider-vertical-bar-width: rem-calc(16) !default;
+$range-slider-vertical-bar-height: rem-calc(200) !default;
+
+// These variabels define the slider handle styles
+$range-slider-handle-width: rem-calc(32) !default;
+$range-slider-handle-height: rem-calc(22) !default;
+$range-slider-handle-position-top: rem-calc(-5) !default;
+$range-slider-handle-bg-color: $primary-color !default;
+$range-slider-handle-border-width: 1px !default;
+$range-slider-handle-border-style: solid !default;
+$range-slider-handle-border-color: none !default;
+$range-slider-handle-radius: $global-radius !default;
+$range-slider-handle-round: $global-rounded !default;
+$range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%) !default;
+$range-slider-handle-cursor: pointer !default;
+
+$range-slider-disabled-opacity: 0.7 !default;
+
+//
+// @mixins
+//
+
+@mixin range-slider-bar-base($vertical: false) {
+ display: block;
+ position: relative;
+ width: $range-slider-bar-width;
+ height: $range-slider-bar-height;
+ border: $range-slider-bar-border-width $range-slider-bar-border-style $range-slider-bar-border-color;
+ margin: rem-calc(20 0);
+ -ms-touch-action: none;
+ touch-action: none;
+ @if $vertical == true {
+ display: inline-block;
+ width: $range-slider-vertical-bar-width;
+ height: $range-slider-vertical-bar-height;
+ }
+}
+@mixin range-slider-bar-style(
+ $bg: true,
+ $radius: false,
+ $round: false,
+ $disabled: false) {
+ @if $bg == true { background: $range-slider-bar-bg-color; }
+ @if $radius == true { @include radius($range-slider-radius); }
+ @if $round == true { @include radius($range-slider-round); }
+ @if $disabled == true {
+ cursor: $cursor-default-value;
+ opacity: $range-slider-disabled-opacity;
+ }
+}
+
+@mixin range-slider-bar(
+ $bg: $range-slider-bar-bg-color,
+ $radius:false) {
+ @include range-slider-bar-base;
+ @include range-slider-bar-style;
+}
+
+@mixin range-slider-handle-base() {
+ display: inline-block;
+ position: absolute;
+ z-index: 1;
+ top: $range-slider-handle-position-top;
+ width: $range-slider-handle-width;
+ height: $range-slider-handle-height;
+ border: $range-slider-handle-border-width $range-slider-handle-border-style $range-slider-handle-border-color;
+ cursor: $range-slider-handle-cursor;
+
+ // This removes the 300ms touch delay on Windows 8
+ -ms-touch-action: manipulation;
+ touch-action: manipulation;
+}
+@mixin range-slider-handle-style(
+ $bg: true,
+ $radius: false,
+ $round: false,
+ $disabled: false) {
+ @if $bg == true { background: $range-slider-handle-bg-color; }
+ @if $radius == true { @include radius($range-slider-radius); }
+ @if $round == true { @include radius($range-slider-round); }
+ @if $disabled == true {
+ cursor: $cursor-default-value;
+ opacity: $range-slider-disabled-opacity;
+ }
+ &:hover {
+ background: $range-slider-handle-bg-hover-color;
+ }
+}
+@mixin range-slider-handle() {
+ @include range-slider-handle-base;
+ @include range-slider-handle-style;
+}
+
+// CSS Generation
+@include exports("range-slider-bar") {
+ @if $include-html-range-slider-classes {
+ .range-slider {
+ @include range-slider-bar-base;
+ @include range-slider-bar-style($bg:true, $radius:false);
+ &.vertical-range {
+ @include range-slider-bar-base($vertical: true);
+ .range-slider-handle {
+ margin-top: 0;
+ margin-#{$default-float}: -($range-slider-handle-width / 4);
+ position: absolute;
+ bottom: -($range-slider-vertical-bar-height - $range-slider-handle-width);
+ }
+ .range-slider-active-segment {
+ width: $range-slider-bar-height - rem-calc((strip-unit($range-slider-bar-border-width) * 2));
+ height: auto;
+ bottom: 0;
+ }
+ }
+ &.radius {
+ @include range-slider-bar-style($radius:true);
+ .range-slider-handle { @include range-slider-handle-style($radius: true); }
+ }
+ &.round {
+ @include range-slider-bar-style($round:true);
+ .range-slider-handle { @include range-slider-handle-style($round: true); }
+ }
+ &.disabled, &[disabled] {
+ @include range-slider-bar-style($disabled:true);
+ .range-slider-handle { @include range-slider-handle-style($disabled: true); }
+ }
+ }
+ .range-slider-active-segment {
+ display: inline-block;
+ position: absolute;
+ height: $range-slider-bar-height - rem-calc((strip-unit($range-slider-bar-border-width) * 2));
+ background: $range-slider-active-segment-bg-color;
+ }
+ .range-slider-handle {
+ @include range-slider-handle-base;
+ @include range-slider-handle-style($bg:true, $radius: false);
+ }
+ }
+}
diff --git a/_sass/foundation-components/_reveal.scss b/_sass/foundation-components/_reveal.scss
new file mode 100644
index 0000000000..140173fe93
--- /dev/null
+++ b/_sass/foundation-components/_reveal.scss
@@ -0,0 +1,223 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "grid";
+
+//
+// @name _reveal.scss
+// @dependencies _global.scss
+//
+
+$include-html-reveal-classes: $include-html-classes !default;
+
+// We use these to control the style of the reveal overlay.
+$reveal-overlay-bg: rgba($black, .45) !default;
+$reveal-overlay-bg-old: $black !default;
+
+// We use these to control the style of the modal itself.
+$reveal-modal-bg: $white !default;
+$reveal-position-top: rem-calc(100) !default;
+$reveal-default-width: 80% !default;
+$reveal-max-width: $row-width !default;
+$reveal-modal-padding: rem-calc(20) !default;
+$reveal-box-shadow: 0 0 10px rgba($black,.4) !default;
+
+// We use these to style the reveal close button
+$reveal-close-font-size: rem-calc(40) !default;
+$reveal-close-top: rem-calc(10) !default;
+$reveal-close-side: rem-calc(22) !default;
+$reveal-close-color: $base !default;
+$reveal-close-weight: $font-weight-bold !default;
+
+// We use this to set the default radius used throughout the core.
+$reveal-radius: $global-radius !default;
+$reveal-round: $global-rounded !default;
+
+// We use these to control the modal border
+$reveal-border-style: solid !default;
+$reveal-border-width: 1px !default;
+$reveal-border-color: $steel !default;
+
+$reveal-modal-class: "reveal-modal" !default;
+$close-reveal-modal-class: "close-reveal-modal" !default;
+
+//
+// @mixins
+//
+
+// We use this to create the reveal background overlay styles
+@mixin reveal-bg( $include-z-index-value: true ) {
+ //position: fixed;
+ position: absolute; // allows modal background to extend beyond window position
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ background: $reveal-overlay-bg-old; // Autoprefixer should be used to avoid such variables needed when Foundation for Sites can do so in the near future.
+ background: $reveal-overlay-bg;
+ z-index: if( $include-z-index-value, 1004, auto );
+ display: none;
+ #{$default-float}: 0;
+}
+
+// We use this mixin to create the structure of a reveal modal
+//
+// $base-style - Provides reveal base styles, can be set to false to override. Default: true, Options: false
+// $width - Sets reveal width Default: $reveal-default-width || 80%
+//
+@mixin reveal-modal-base( $base-style: true, $width:$reveal-default-width, $max-width:$reveal-max-width, $border-radius: $reveal-radius) {
+ @if $base-style {
+ visibility: hidden;
+ display: none;
+ position: absolute;
+ z-index: 1005;
+ width: 100vw;
+ top:0;
+ border-radius: $border-radius;
+ #{$default-float}: 0;
+
+ @media #{$small-only} {
+ min-height:100vh;
+ }
+
+ // Make sure rows don't have a min-width on them
+ .column, .columns { min-width: 0; }
+
+ // Get rid of margin from first and last element inside modal
+ & > :first-child { margin-top: 0; }
+
+ & > :last-child { margin-bottom: 0; }
+ }
+
+ @if $width {
+ @media #{$medium-up} {
+ width: $width;
+ max-width: $max-width;
+ left: 0;
+ right: 0;
+ margin: 0 auto;
+ }
+ }
+}
+
+// We use this to style the reveal modal defaults
+//
+// $bg - Sets background color of reveal modal. Default: $reveal-modal-bg || $white
+// $padding - Padding to apply to reveal modal. Default: $reveal-modal-padding.
+// $border - Choose whether reveal uses a border. Default: true, Options: false
+// $border-style - Set reveal border style. Default: $reveal-border-style || solid
+// $border-width - Width of border (i.e. 1px). Default: $reveal-border-width.
+// $border-color - Color of border. Default: $reveal-border-color.
+// $box-shadow - Choose whether or not to include the default box-shadow. Default: true, Options: false
+// $radius - If true, set to modal radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default: false
+// $top-offset - Default: $reveal-position-top || 50px
+@mixin reveal-modal-style(
+ $bg:false,
+ $padding:false,
+ $border:false,
+ $border-style:$reveal-border-style,
+ $border-width:$reveal-border-width,
+ $border-color:$reveal-border-color,
+ $box-shadow:false,
+ $radius:false,
+ $top-offset:false) {
+
+ @if $bg { background-color: $bg; }
+ @if $padding != false { padding: $padding; }
+
+ @if $border { border: $border-style $border-width $border-color; }
+
+ // We can choose whether or not to include the default box-shadow.
+ @if $box-shadow {
+ box-shadow: $reveal-box-shadow;
+ }
+
+ // We can control how much radius is used on the modal
+ @if $radius == true { @include radius($reveal-radius); }
+ @else if $radius { @include radius($radius); }
+
+ @if $top-offset {
+ @media #{$medium-up} {
+ top: $top-offset;
+ }
+ }
+}
+
+// We use this to create a close button for the reveal modal
+//
+// $color - Default: $reveal-close-color || $base
+@mixin reveal-close($color:$reveal-close-color) {
+ font-size: $reveal-close-font-size;
+ line-height: 1;
+ position: absolute;
+ top: $reveal-close-top;
+ #{$opposite-direction}: $reveal-close-side;
+ color: $color;
+ font-weight: $reveal-close-weight;
+ cursor: $cursor-pointer-value;
+}
+
+@include exports("reveal") {
+ @if $include-html-reveal-classes {
+
+ // Reveal Modals
+ .reveal-modal-bg { @include reveal-bg; }
+
+ .#{$reveal-modal-class} {
+ @include reveal-modal-base;
+ @include reveal-modal-style(
+ $bg:$reveal-modal-bg,
+ $padding:$reveal-modal-padding,
+ $border:true,
+ $box-shadow:true,
+ $radius:false,
+ $top-offset:$reveal-position-top
+ );
+ @include reveal-modal-style($padding:$reveal-modal-padding * 1.5);
+
+ &.radius { @include reveal-modal-style($radius:true); }
+ &.round { @include reveal-modal-style($radius:$reveal-round); }
+ &.collapse { @include reveal-modal-style($padding:0); }
+ &.tiny { @include reveal-modal-base(false, 30%); }
+ &.small { @include reveal-modal-base(false, 40%); }
+ &.medium { @include reveal-modal-base(false, 60%); }
+ &.large { @include reveal-modal-base(false, 70%); }
+ &.xlarge { @include reveal-modal-base(false, 95%); }
+ &.full {
+ @include reveal-modal-base(false, 100vw);
+ top:0;
+ left:0;
+ height:100%;
+ height: 100vh;
+ min-height:100vh;
+ max-width: none !important;
+ margin-left: 0 !important;
+ }
+
+ .#{$close-reveal-modal-class} { @include reveal-close; }
+ }
+
+ dialog {
+ @extend .#{$reveal-modal-class};
+ display: none;
+
+ &::backdrop, & + .backdrop {
+ @include reveal-bg(false);
+ }
+
+ &[open]{
+ display: block;
+ }
+ }
+
+ // Reveal Print Styles: It should be invisible, adds no value being printed.
+ @media print {
+ dialog, .#{$reveal-modal-class} {
+ display: none;
+ background: $white !important;
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_side-nav.scss b/_sass/foundation-components/_side-nav.scss
new file mode 100644
index 0000000000..d16be15713
--- /dev/null
+++ b/_sass/foundation-components/_side-nav.scss
@@ -0,0 +1,116 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+
+$include-html-nav-classes: $include-html-classes !default;
+
+// We use this to control padding.
+$side-nav-padding: rem-calc(14 0) !default;
+
+// We use these to control list styles.
+$side-nav-list-type: none !default;
+$side-nav-list-position: outside !default;
+$side-nav-list-margin: rem-calc(0 0 7 0) !default;
+
+// We use these to control link styles.
+$side-nav-link-color: $primary-color !default;
+$side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: 30%) !default;
+$side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: 30%) !default;
+$side-nav-link-bg-hover: hsla(0, 0, 0, 0.025) !default;
+$side-nav-link-margin: 0 !default;
+$side-nav-link-padding: rem-calc(7 14) !default;
+$side-nav-font-size: rem-calc(14) !default;
+$side-nav-font-weight: $font-weight-normal !default;
+$side-nav-font-weight-active: $side-nav-font-weight !default;
+$side-nav-font-family: $body-font-family !default;
+$side-nav-font-family-active: $side-nav-font-family !default;
+
+// We use these to control heading styles.
+$side-nav-heading-color: $side-nav-link-color !default;
+$side-nav-heading-font-size: $side-nav-font-size !default;
+$side-nav-heading-font-weight: bold !default;
+$side-nav-heading-text-transform: uppercase !default;
+
+// We use these to control border styles
+$side-nav-divider-size: 1px !default;
+$side-nav-divider-style: solid !default;
+$side-nav-divider-color: scale-color($white, $lightness: 10%) !default;
+
+
+//
+// @mixins
+//
+
+
+// We use this to style the side-nav
+//
+// $divider-color - Border color of divider. Default: $side-nav-divider-color.
+// $font-size - Font size of nav items. Default: $side-nav-font-size.
+// $link-color - Color of navigation links. Default: $side-nav-link-color.
+// $link-color-hover - Color of navigation links when hovered. Default: $side-nav-link-color-hover.
+@mixin side-nav(
+ $divider-color:$side-nav-divider-color,
+ $font-size:$side-nav-font-size,
+ $link-color:$side-nav-link-color,
+ $link-color-hover:$side-nav-link-color-hover,
+ $link-bg-hover:$side-nav-link-bg-hover) {
+ display: block;
+ margin: 0;
+ padding: $side-nav-padding;
+ list-style-type: $side-nav-list-type;
+ list-style-position: $side-nav-list-position;
+ font-family: $side-nav-font-family;
+
+ li {
+ margin: $side-nav-list-margin;
+ font-size: $font-size;
+ font-weight: $side-nav-font-weight;
+
+ a:not(.button) {
+ display: block;
+ color: $link-color;
+ margin: $side-nav-link-margin;
+ padding: $side-nav-link-padding;
+ &:hover,
+ &:focus {
+ background: $link-bg-hover;
+ color: $link-color-hover;
+ }
+ }
+
+ &.active > a:first-child:not(.button) {
+ color: $side-nav-link-color-active;
+ font-weight: $side-nav-font-weight-active;
+ font-family: $side-nav-font-family-active;
+ }
+
+ &.divider {
+ border-top: $side-nav-divider-size $side-nav-divider-style;
+ height: 0;
+ padding: 0;
+ list-style: none;
+ border-top-color: $divider-color;
+ }
+
+ &.heading {
+ color: $side-nav-heading-color;
+ font: {
+ size: $side-nav-heading-font-size;
+ weight: $side-nav-heading-font-weight;
+ }
+ text-transform: $side-nav-heading-text-transform;
+ }
+ }
+}
+
+@include exports("side-nav") {
+ @if $include-html-nav-classes {
+ .side-nav { @include side-nav; }
+ }
+}
diff --git a/_sass/foundation-components/_split-buttons.scss b/_sass/foundation-components/_split-buttons.scss
new file mode 100644
index 0000000000..00b9f7ac2e
--- /dev/null
+++ b/_sass/foundation-components/_split-buttons.scss
@@ -0,0 +1,191 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "buttons";
+@import "dropdown-buttons";
+
+//
+// @name _split-buttons.scss
+// @dependencies _buttons.scss, _global.scss
+//
+
+//
+// @variables
+//
+
+$include-html-button-classes: $include-html-classes !default;
+
+// We use these to control different shared styles for Split Buttons
+$split-button-function-factor: 10% !default;
+$split-button-pip-color: $white !default;
+$split-button-pip-color-alt: $oil !default;
+$split-button-active-bg-tint: rgba(0,0,0,0.1) !default;
+
+// We use these to control tiny split buttons
+$split-button-padding-tny: $button-pip-tny * 10 !default;
+$split-button-span-width-tny: $button-pip-tny * 6 !default;
+$split-button-pip-size-tny: $button-pip-tny !default;
+$split-button-pip-top-tny: $button-pip-tny * 2 !default;
+$split-button-pip-default-float-tny: rem-calc(-6) !default;
+
+// We use these to control small split buttons
+$split-button-padding-sml: $button-pip-sml * 10 !default;
+$split-button-span-width-sml: $button-pip-sml * 6 !default;
+$split-button-pip-size-sml: $button-pip-sml !default;
+$split-button-pip-top-sml: $button-pip-sml * 1.5 !default;
+$split-button-pip-default-float-sml: rem-calc(-6) !default;
+
+// We use these to control medium split buttons
+$split-button-padding-med: $button-pip-med * 9 !default;
+$split-button-span-width-med: $button-pip-med * 5.5 !default;
+$split-button-pip-size-med: $button-pip-med - rem-calc(3) !default;
+$split-button-pip-top-med: $button-pip-med * 1.5 !default;
+$split-button-pip-default-float-med: rem-calc(-6) !default;
+
+// We use these to control large split buttons
+$split-button-padding-lrg: $button-pip-lrg * 8 !default;
+$split-button-span-width-lrg: $button-pip-lrg * 5 !default;
+$split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6) !default;
+$split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5) !default;
+$split-button-pip-default-float-lrg: rem-calc(-6) !default;
+
+
+//
+// @mixins
+//
+
+// We use this mixin to create split buttons that build upon the button mixins
+//
+// $padding - Type of padding to apply. Default: medium. Options: tiny, small, medium, large.
+// $pip-color - Color of the triangle. Default: $split-button-pip-color.
+// $span-border - Border color of button divider. Default: $primary-color.
+// $base-style - Apply base style to split button. Default: true.
+@mixin split-button(
+ $padding:medium,
+ $pip-color:$split-button-pip-color,
+ $span-border:$primary-color,
+ $base-style:true) {
+
+ // With this, we can control whether or not the base styles come through.
+ @if $base-style {
+ position: relative;
+
+ // Styling for the split arrow clickable area
+ span {
+ display: block;
+ height: 100%;
+ position: absolute;
+ #{$opposite-direction}: 0;
+ top: 0;
+ border-#{$default-float}: solid 1px;
+
+ // Building the triangle pip indicator
+ &:after {
+ position: absolute;
+ content: "";
+ width: 0;
+ height: 0;
+ display: block;
+ border-style: inset;
+ top: 50%;
+
+ #{$default-float}: 50%;
+ }
+
+ &:active { background-color: $split-button-active-bg-tint; }
+ }
+ }
+
+ // Control the border color for the span area of the split button
+ @if $span-border {
+ span {
+ border-#{$default-float}-color: rgba(255,255,255,0.5);
+ }
+ }
+
+ // Style of the button and clickable area for tiny sizes
+ @if $padding == tiny {
+ padding-#{$opposite-direction}: $split-button-padding-tny;
+
+ span { width: $split-button-span-width-tny;
+ &:after {
+ border-top-style: solid;
+ border-width: $split-button-pip-size-tny;
+ top: 48%;
+ margin-#{$default-float}: $split-button-pip-default-float-tny;
+ }
+ }
+ }
+
+ // Style of the button and clickable area for small sizes
+ @else if $padding == small {
+ padding-#{$opposite-direction}: $split-button-padding-sml;
+
+ span { width: $split-button-span-width-sml;
+ &:after {
+ border-top-style: solid;
+ border-width: $split-button-pip-size-sml;
+ top: 48%;
+ margin-#{$default-float}: $split-button-pip-default-float-sml;
+ }
+ }
+ }
+
+ // Style of the button and clickable area for default (medium) sizes
+ @else if $padding == medium {
+ padding-#{$opposite-direction}: $split-button-padding-med;
+
+ span { width: $split-button-span-width-med;
+ &:after {
+ border-top-style: solid;
+ border-width: $split-button-pip-size-med;
+ top: 48%;
+ margin-#{$default-float}: $split-button-pip-default-float-med;
+ }
+ }
+ }
+
+ // Style of the button and clickable area for large sizes
+ @else if $padding == large {
+ padding-#{$opposite-direction}: $split-button-padding-lrg;
+
+ span { width: $split-button-span-width-lrg;
+ &:after {
+ border-top-style: solid;
+ border-width: $split-button-pip-size-lrg;
+ top: 48%;
+ margin-#{$default-float}: $split-button-pip-default-float-lrg;
+ }
+ }
+ }
+
+ // Control the color of the triangle pip
+ @if $pip-color {
+ span:after { border-color: $pip-color transparent transparent transparent; }
+ }
+}
+
+@include exports("split-button") {
+ @if $include-html-button-classes {
+
+ .split.button { @include split-button;
+
+ &.secondary { @include split-button(false, $split-button-pip-color, $secondary-color, false); }
+ &.alert { @include split-button(false, false, $alert-color, false); }
+ &.success { @include split-button(false, false, $success-color, false); }
+
+ &.tiny { @include split-button(tiny, false, false, false); }
+ &.small { @include split-button(small, false, false, false); }
+ &.large { @include split-button(large, false, false, false); }
+ &.expand { padding-left: 2rem; }
+
+ &.secondary { @include split-button(false, $split-button-pip-color-alt, false, false); }
+
+ &.radius span { @include side-radius($opposite-direction, $global-radius); }
+ &.round span { @include side-radius($opposite-direction, 1000px); }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_sub-nav.scss b/_sass/foundation-components/_sub-nav.scss
new file mode 100644
index 0000000000..53644991c9
--- /dev/null
+++ b/_sass/foundation-components/_sub-nav.scss
@@ -0,0 +1,123 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @name _sub-nav.scss
+// @dependencies _global.scss
+//
+
+//
+// @variables
+//
+
+$include-html-nav-classes: $include-html-classes !default;
+
+// We use these to control margin and padding
+$sub-nav-list-margin: rem-calc(-4 0 18) !default;
+$sub-nav-list-padding-top: rem-calc(4) !default;
+
+// We use this to control the definition
+$sub-nav-font-family: $body-font-family !default;
+$sub-nav-font-size: rem-calc(14) !default;
+$sub-nav-font-color: $aluminum !default;
+$sub-nav-font-weight: $font-weight-normal !default;
+$sub-nav-text-decoration: none !default;
+$sub-nav-padding: rem-calc(3 16) !default;
+$sub-nav-border-radius: 3px !default;
+$sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%) !default;
+
+
+// We use these to control the active item styles
+
+$sub-nav-active-font-weight: $font-weight-normal !default;
+$sub-nav-active-bg: $primary-color !default;
+$sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%) !default;
+$sub-nav-active-color: $white !default;
+$sub-nav-active-padding: $sub-nav-padding !default;
+$sub-nav-active-cursor: default !default;
+
+$sub-nav-item-divider: "" !default;
+$sub-nav-item-divider-margin: rem-calc(12) !default;
+
+//
+// @mixins
+//
+
+
+// Create a sub-nav item
+//
+// $font-color - Font color. Default: $sub-nav-font-color.
+// $font-size - Font size. Default: $sub-nav-font-size.
+// $active-bg - Background of active nav item. Default: $sub-nav-active-bg.
+// $active-bg-hover - Background of active nav item, when hovered. Default: $sub-nav-active-bg-hover.
+@mixin sub-nav(
+ $font-color: $sub-nav-font-color,
+ $font-size: $sub-nav-font-size,
+ $active-bg: $sub-nav-active-bg,
+ $active-bg-hover: $sub-nav-active-bg-hover) {
+ display: block;
+ width: auto;
+ overflow: hidden;
+ margin: $sub-nav-list-margin;
+ padding-top: $sub-nav-list-padding-top;
+
+ dt {
+ text-transform: uppercase;
+ }
+
+ dt,
+ dd,
+ li {
+ float: $default-float;
+ display: inline;
+ margin-#{$default-float}: rem-calc(16);
+ margin-bottom: 0;
+ font-family: $sub-nav-font-family;
+ font-weight: $sub-nav-font-weight;
+ font-size: $font-size;
+ color: $font-color;
+
+ a {
+ text-decoration: $sub-nav-text-decoration;
+ color: $sub-nav-font-color;
+ padding: $sub-nav-padding;
+ &:hover {
+ color: $sub-nav-font-color-hover;
+ }
+ }
+
+ &.active a {
+ @include radius($sub-nav-border-radius);
+ font-weight: $sub-nav-active-font-weight;
+ background: $active-bg;
+ padding: $sub-nav-active-padding;
+ cursor: $sub-nav-active-cursor;
+ color: $sub-nav-active-color;
+ &:hover {
+ background: $active-bg-hover;
+ }
+ }
+ @if $sub-nav-item-divider != "" {
+ margin-#{$default-float}: 0;
+
+ &:before {
+ content: "#{$sub-nav-item-divider}";
+ margin: 0 $sub-nav-item-divider-margin;
+ }
+
+ &:first-child:before {
+ content: "";
+ margin: 0;
+ }
+ }
+ }
+}
+
+@include exports("sub-nav") {
+ @if $include-html-nav-classes {
+ .sub-nav { @include sub-nav; }
+ }
+}
diff --git a/_sass/foundation-components/_switches.scss b/_sass/foundation-components/_switches.scss
new file mode 100644
index 0000000000..33f428464e
--- /dev/null
+++ b/_sass/foundation-components/_switches.scss
@@ -0,0 +1,238 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @name
+// @dependencies _global.scss
+//
+
+//
+// @variables
+//
+
+$include-html-form-classes: $include-html-classes !default;
+
+// Controlling background color for the switch container
+$switch-bg: $gainsboro !default;
+
+// We use these to control the switch heights for our default classes
+$switch-height-tny: 1.5rem !default;
+$switch-height-sml: 1.75rem !default;
+$switch-height-med: 2rem !default;
+$switch-height-lrg: 2.5rem !default;
+$switch-bottom-margin: 1.5rem !default;
+
+// We use these to style the switch-paddle
+$switch-paddle-bg: $white !default;
+$switch-paddle-transition-speed: .15s !default;
+$switch-paddle-transition-ease: ease-out !default;
+$switch-active-color: $primary-color !default;
+
+
+//
+// @mixins
+//
+
+// We use this mixin to create the base styles for our switch element.
+//
+// $transition-speed - Time in ms for switch to toggle. Default: $switch-paddle-transition-speed.
+// $transition-ease - Easing function to use for animation (i.e. ease-out). Default: $switch-paddle-transition-ease.
+@mixin switch-base(
+ $transition-speed:$switch-paddle-transition-speed,
+ $transition-ease:$switch-paddle-transition-ease) {
+
+ padding: 0;
+ border: none;
+ position: relative;
+ outline: 0;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ user-select: none;
+
+ // Default label styles for type and transition
+ label {
+ display: block;
+ margin-bottom: ($switch-height-med / 2);
+ position: relative;
+ color: transparent;
+ background: $switch-bg;
+ text-indent: 100%;
+ width: $switch-height-med * 2; height: $switch-height-med;
+ cursor: pointer;
+
+ // Transition for the switch label to follow paddle
+ @include single-transition(left, $transition-speed, $transition-ease);
+ }
+
+ // So that we don't need to recreate the form with any JS, we use the
+ // existing checkbox or radio button, but we cleverly position and hide it.
+ input {
+ opacity: 0;
+ position: absolute;
+ top: 9px;
+ left: 10px;
+ padding:0;
+
+ & + label { margin-left: 0; margin-right: 0; }
+ }
+
+ // The paddle for the switch is created from an after psuedoclass
+ // content element. This is sized and positioned, and reacts to
+ // the state of the input.
+
+ label:after {
+ content: "";
+ display: block;
+ background: $switch-paddle-bg;
+ position: absolute;
+ top: .25rem;
+ left: .25rem;
+ width: $switch-height-med - 0.5rem;
+ height: $switch-height-med - 0.5rem;
+
+ -webkit-transition: left $transition-speed $transition-ease;
+ -moz-transition: left $transition-speed $transition-ease;
+ -o-transition: translate3d(0,0,0);
+ transition: left $transition-speed $transition-ease;
+
+ -webkit-transform: translate3d(0,0,0);
+ -moz-transform: translate3d(0,0,0);
+ -o-transform: translate3d(0,0,0);
+ transform: translate3d(0,0,0);
+ }
+
+ input:checked + label {
+ background: $switch-active-color;
+ }
+
+ input:checked + label:after {
+ left: $switch-height-med + 0.25rem;
+ }
+}
+
+// We use this mixin to create the size styles for switches.
+//
+// $height - Height (in px) of the switch. Default: $switch-height-med.
+// $font-size - Font size of text in switch. Default: $switch-font-size-med.
+// $line-height - Line height of switch. Default: 2.3rem.
+@mixin switch-size($height: $switch-height-med) {
+
+ label {
+ width: $height * 2;
+ height: $height;
+ }
+
+ label:after {
+ width: $height - 0.5rem;
+ height: $height - 0.5rem;
+ }
+
+ input:checked + label:after {
+ left: $height + 0.25rem;
+ }
+
+}
+
+// We use this mixin to add color and other fanciness to the switches.
+//
+// $paddle-bg - Background of switch paddle. Default: $switch-paddle-bg.
+// $active-color - Background color of positive side of switch. Default: $switch-positive-color.
+// $negative-color - Background color of negative side of switch. Default: $switch-negative-color.
+// $radius - Radius to apply to switch. Default: false.
+// $base-style - Apply base styles? Default: true.
+@mixin switch-style(
+ $paddle-bg:$switch-paddle-bg,
+ $active-color:$switch-active-color,
+ $radius:false,
+ $base-style:true) {
+
+ @if $base-style {
+
+ label {
+ color: transparent;
+ background: $switch-bg;
+ }
+
+ label:after {
+ background: $paddle-bg;
+ }
+
+ input:checked + label {
+ background: $active-color;
+ }
+ }
+
+ // Setting up the radius for switches
+ @if $radius == true {
+ label {
+ border-radius: 2rem;
+ }
+ label:after {
+ border-radius: 2rem;
+ }
+ }
+ @else if $radius {
+ label {
+ border-radius: $radius;
+ }
+ label:after {
+ border-radius: $radius;
+ }
+ }
+
+}
+
+// We use this to quickly create switches with a single mixin
+//
+// $transition-speed - Time in ms for switch to toggle. Default: $switch-paddle-transition-speed.
+// $transition-ease - Easing function to use for animation (i.e. ease-out). Default: $switch-paddle-transition-ease.
+// $height - Height (in px) of the switch. Default: $switch-height-med.
+// $paddle-bg - Background of switch paddle. Default: $switch-paddle-bg.
+// $active-color - Background color of an active switch. Default: $switch-active-color.
+// $radius - Radius to apply to switch. Default: false.
+// $base-style - Apply base styles? Default: true.
+@mixin switch(
+ $transition-speed: $switch-paddle-transition-speed,
+ $transition-ease: $switch-paddle-transition-ease,
+ $height: $switch-height-med,
+ $paddle-bg: $switch-paddle-bg,
+ $active-color: $switch-active-color,
+ $radius:false,
+ $base-style:true) {
+ @include switch-base($transition-speed, $transition-ease);
+ @include switch-size($height);
+ @include switch-style($paddle-bg, $active-color, $radius, $base-style);
+}
+
+@include exports("switch") {
+ @if $include-html-form-classes {
+ .switch {
+ @include switch;
+
+ // Large radio switches
+ &.large { @include switch-size($switch-height-lrg); }
+
+ // Small radio switches
+ &.small { @include switch-size($switch-height-sml); }
+
+ // Tiny radio switches
+ &.tiny { @include switch-size($switch-height-tny); }
+
+ // Add a radius to the switch
+ &.radius {
+ label { @include radius(4px); }
+ label:after { @include radius(3px); }
+ }
+
+ // Make the switch completely round, like a pill
+ &.round { @include radius(1000px);
+ label { @include radius(2rem); }
+ label:after { @include radius(2rem); }
+ }
+
+ }
+ }
+}
diff --git a/_sass/foundation-components/_tables.scss b/_sass/foundation-components/_tables.scss
new file mode 100644
index 0000000000..ba3e42e62f
--- /dev/null
+++ b/_sass/foundation-components/_tables.scss
@@ -0,0 +1,135 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @name _tables.scss
+// @dependencies _global.scss
+//
+
+//
+// @variables
+//
+
+$include-html-table-classes: $include-html-classes !default;
+
+// These control the background color for the table and even rows
+$table-bg: $white !default;
+$table-even-row-bg: $snow !default;
+
+// These control the table cell border style
+$table-border-style: solid !default;
+$table-border-size: 1px !default;
+$table-border-color: $gainsboro !default;
+
+// These control the table head styles
+$table-head-bg: $white-smoke !default;
+$table-head-font-size: rem-calc(14) !default;
+$table-head-font-color: $jet !default;
+$table-head-font-weight: $font-weight-bold !default;
+$table-head-padding: rem-calc(8 10 10) !default;
+
+// These control the table foot styles
+$table-foot-bg: $table-head-bg !default;
+$table-foot-font-size: $table-head-font-size !default;
+$table-foot-font-color: $table-head-font-color !default;
+$table-foot-font-weight: $table-head-font-weight !default;
+$table-foot-padding: $table-head-padding !default;
+
+// These control the caption
+$table-caption-bg: transparent !default;
+$table-caption-font-color: $table-head-font-color !default;
+$table-caption-font-size: rem-calc(16) !default;
+$table-caption-font-weight: bold !default;
+
+// These control the row padding and font styles
+$table-row-padding: rem-calc(9 10) !default;
+$table-row-font-size: rem-calc(14) !default;
+$table-row-font-color: $jet !default;
+$table-line-height: rem-calc(18) !default;
+
+// These are for controlling the layout, display and margin of tables
+$table-layout: auto !default;
+$table-display: table-cell !default;
+$table-margin-bottom: rem-calc(20) !default;
+
+
+//
+// @mixins
+//
+
+@mixin table {
+ background: $table-bg;
+ margin-bottom: $table-margin-bottom;
+ border: $table-border-style $table-border-size $table-border-color;
+ table-layout: $table-layout;
+
+ caption {
+ background: $table-caption-bg;
+ color: $table-caption-font-color;
+ font: {
+ size: $table-caption-font-size;
+ weight: $table-caption-font-weight;
+ }
+ }
+
+ thead {
+ background: $table-head-bg;
+
+ tr {
+ th,
+ td {
+ padding: $table-head-padding;
+ font-size: $table-head-font-size;
+ font-weight: $table-head-font-weight;
+ color: $table-head-font-color;
+ }
+ }
+ }
+
+ tfoot {
+ background: $table-foot-bg;
+
+ tr {
+ th,
+ td {
+ padding: $table-foot-padding;
+ font-size: $table-foot-font-size;
+ font-weight: $table-foot-font-weight;
+ color: $table-foot-font-color;
+ }
+ }
+ }
+
+ tr {
+ th,
+ td {
+ padding: $table-row-padding;
+ font-size: $table-row-font-size;
+ color: $table-row-font-color;
+ text-align: $default-float;
+ }
+
+ &.even,
+ &.alt,
+ &:nth-of-type(even) { background: $table-even-row-bg; }
+ }
+
+ thead tr th,
+ tfoot tr th,
+ tfoot tr td,
+ tbody tr th,
+ tbody tr td,
+ tr td { display: $table-display; line-height: $table-line-height; }
+}
+
+
+@include exports("table") {
+ @if $include-html-table-classes {
+ table {
+ @include table;
+ }
+ }
+}
diff --git a/_sass/foundation-components/_tabs.scss b/_sass/foundation-components/_tabs.scss
new file mode 100644
index 0000000000..404937842a
--- /dev/null
+++ b/_sass/foundation-components/_tabs.scss
@@ -0,0 +1,123 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "grid";
+
+//
+// @variables
+//
+
+$include-html-tabs-classes: $include-html-classes !default;
+
+$tabs-navigation-padding: rem-calc(16) !default;
+$tabs-navigation-bg-color: $silver !default;
+$tabs-navigation-active-bg-color: $white !default;
+$tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%) !default;
+$tabs-navigation-font-color: $jet !default;
+$tabs-navigation-active-font-color: $tabs-navigation-font-color !default;
+$tabs-navigation-font-size: rem-calc(16) !default;
+$tabs-navigation-font-family: $body-font-family !default;
+
+$tabs-content-margin-bottom: rem-calc(24) !default;
+$tabs-content-padding: ($column-gutter/2) !default;
+
+$tabs-vertical-navigation-margin-bottom: 1.25rem !default;
+
+@include exports("tab") {
+ @if $include-html-tabs-classes {
+ .tabs {
+ @include clearfix;
+ margin-bottom: 0 !important;
+ margin-left: 0;
+ dd, .tab-title {
+ position: relative;
+ margin-bottom: 0 !important;
+ list-style: none;
+ float: $default-float;
+ > a {
+ outline: none;
+ display: block;
+ background: {
+ color: $tabs-navigation-bg-color;
+ }
+ color: $tabs-navigation-font-color;
+ padding: $tabs-navigation-padding $tabs-navigation-padding * 2;
+ font-family: $tabs-navigation-font-family;
+ font-size: $tabs-navigation-font-size;
+ &:hover {
+ background: {
+ color: $tabs-navigation-hover-bg-color;
+ }
+ }
+ }
+ &.active a {
+ background: {
+ color: $tabs-navigation-active-bg-color;
+ }
+ color:$tabs-navigation-active-font-color;
+ }
+ }
+ &.radius {
+ dd:first-child, .tab:first-child {
+ a { @include side-radius($default-float, $global-radius); }
+ }
+ dd:last-child, .tab:last-child {
+ a { @include side-radius($opposite-direction, $global-radius); }
+ }
+ }
+ &.vertical {
+ dd, .tab-title {
+ position: inherit;
+ float: none;
+ display: block;
+ top: auto;
+ }
+ }
+ }
+
+ .tabs-content {
+ @include clearfix;
+ margin-bottom: $tabs-content-margin-bottom;
+ width: 100%;
+ > .content {
+ display: none;
+ float: $default-float;
+ padding: $tabs-content-padding 0;
+ width: 100%;
+ &.active { display: block; float: none; }
+ &.contained { padding: $tabs-content-padding; }
+ }
+ &.vertical {
+ display: block;
+ > .content { padding: 0 $tabs-content-padding; }
+ }
+ }
+ @media #{$medium-up} {
+ .tabs {
+ &.vertical {
+ width: 20%;
+ max-width: 20%;
+ float: $default-float;
+ margin: 0 0 $tabs-vertical-navigation-margin-bottom;
+ }
+ }
+ .tabs-content {
+ &.vertical {
+ width: 80%;
+ max-width: 80%;
+ float: $default-float;
+ margin-#{$default-float}: -1px;
+ padding-#{$default-float}: 1rem;
+ }
+ }
+ }
+ .no-js {
+ .tabs-content > .content {
+ display: block;
+ float: none;
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_thumbs.scss b/_sass/foundation-components/_thumbs.scss
new file mode 100644
index 0000000000..4a0596e60b
--- /dev/null
+++ b/_sass/foundation-components/_thumbs.scss
@@ -0,0 +1,66 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @name _thumbs.scss
+// @dependencies _globals.scss
+//
+
+//
+// @variables
+//
+
+$include-html-media-classes: $include-html-classes !default;
+
+// We use these to control border styles
+$thumb-border-style: solid !default;
+$thumb-border-width: 4px !default;
+$thumb-border-color: $white !default;
+$thumb-box-shadow: 0 0 0 1px rgba($black,.2) !default;
+$thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5) !default;
+
+// Radius and transition speed for thumbs
+$thumb-radius: $global-radius !default;
+$thumb-transition-speed: 200ms !default;
+
+//
+// @mixins
+//
+
+// We use this to create image thumbnail styles.
+//
+// $border-width - Width of border around thumbnail. Default: $thumb-border-width.
+// $box-shadow - Box shadow to apply to thumbnail. Default: $thumb-box-shadow.
+// $box-shadow-hover - Box shadow to apply on hover. Default: $thumb-box-shadow-hover.
+@mixin thumb(
+ $border-width:$thumb-border-width,
+ $box-shadow:$thumb-box-shadow,
+ $box-shadow-hover:$thumb-box-shadow-hover) {
+ line-height: 0;
+ display: inline-block;
+ border: $thumb-border-style $border-width $thumb-border-color;
+ max-width: 100%;
+ box-shadow: $box-shadow;
+
+ &:hover,
+ &:focus {
+ box-shadow: $box-shadow-hover;
+ }
+}
+
+
+@include exports("thumb") {
+ @if $include-html-media-classes {
+
+ /* Image Thumbnails */
+ .th {
+ @include thumb;
+ @include single-transition(all,$thumb-transition-speed,ease-out);
+
+ &.radius { @include radius($thumb-radius); }
+ }
+ }
+}
\ No newline at end of file
diff --git a/_sass/foundation-components/_toolbar.scss b/_sass/foundation-components/_toolbar.scss
new file mode 100644
index 0000000000..e39934dc21
--- /dev/null
+++ b/_sass/foundation-components/_toolbar.scss
@@ -0,0 +1,70 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+// toolbar styles
+
+.toolbar {
+ background: $oil;
+ width: 100%;
+ font-size: 0;
+ display: inline-block;
+
+ &.label-bottom .tab .tab-content {
+ i, img { margin-bottom: 10px; }
+ }
+
+ &.label-right .tab .tab-content {
+ i, img { margin-right: 10px; display: inline-block;}
+ label { display: inline-block; }
+ }
+
+ &.vertical.label-right .tab .tab-content {
+ text-align: left;
+ }
+
+ &.vertical {
+ height: 100%;
+ width: auto;
+
+ .tab {
+ width: auto;
+ margin: auto;
+ float: none;
+ }
+ }
+
+ .tab {
+ text-align: center;
+ width: 25%;
+ margin: 0 auto;
+ display: block;
+ padding: 20px;
+ float: left;
+
+ &:hover {
+ background: rgba($white, 0.1);
+ }
+ }
+}
+
+.toolbar .tab-content {
+ font-size: 16px;
+ text-align: center;
+
+ label { color: $iron; }
+
+ i {
+ font-size: 30px;
+ display: block;
+ margin: 0 auto;
+ color: $iron;
+ vertical-align: middle;
+ }
+
+ img {
+ width: 30px;
+ height: 30px;
+ display: block;
+ margin: 0 auto;
+ }
+}
\ No newline at end of file
diff --git a/_sass/foundation-components/_tooltips.scss b/_sass/foundation-components/_tooltips.scss
new file mode 100644
index 0000000000..f94ff3498c
--- /dev/null
+++ b/_sass/foundation-components/_tooltips.scss
@@ -0,0 +1,142 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// Tooltip Variables
+//
+$include-html-tooltip-classes: $include-html-classes !default;
+
+$has-tip-border-bottom: dotted 1px $iron !default;
+$has-tip-font-weight: $font-weight-bold !default;
+$has-tip-font-color: $oil !default;
+$has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%) !default;
+$has-tip-font-color-hover: $primary-color !default;
+$has-tip-cursor-type: help !default;
+
+$tooltip-padding: rem-calc(12) !default;
+$tooltip-bg: $oil !default;
+$tooltip-font-size: rem-calc(14) !default;
+$tooltip-font-weight: $font-weight-normal !default;
+$tooltip-font-color: $white !default;
+$tooltip-line-height: 1.3 !default;
+$tooltip-close-font-size: rem-calc(10) !default;
+$tooltip-close-font-weight: $font-weight-normal !default;
+$tooltip-close-font-color: $monsoon !default;
+$tooltip-font-size-sml: rem-calc(14) !default;
+$tooltip-radius: $global-radius !default;
+$tooltip-rounded: $global-rounded !default;
+$tooltip-pip-size: 5px !default;
+$tooltip-max-width: 300px !default;
+
+@include exports("tooltip") {
+ @if $include-html-tooltip-classes {
+
+ /* Tooltips */
+ .has-tip {
+ border-bottom: $has-tip-border-bottom;
+ cursor: $has-tip-cursor-type;
+ font-weight: $has-tip-font-weight;
+ color: $has-tip-font-color;
+
+ &:hover,
+ &:focus {
+ border-bottom: $has-tip-border-bottom-hover;
+ color: $has-tip-font-color-hover;
+ }
+
+ &.tip-left,
+ &.tip-right { float: none !important; }
+ }
+
+ .tooltip {
+ display: none;
+ position: absolute;
+ z-index: 1006;
+ font-weight: $tooltip-font-weight;
+ font-size: $tooltip-font-size;
+ line-height: $tooltip-line-height;
+ padding: $tooltip-padding;
+ max-width: $tooltip-max-width;
+ #{$default-float}: 50%;
+ width: 100%;
+ color: $tooltip-font-color;
+ background: $tooltip-bg;
+
+ &>.nub {
+ display: block;
+ #{$default-float}: $tooltip-pip-size;
+ position: absolute;
+ width: 0;
+ height: 0;
+ border: solid $tooltip-pip-size;
+ border-color: transparent transparent $tooltip-bg transparent;
+ top: -($tooltip-pip-size * 2);
+ pointer-events: none;
+
+ &.rtl {
+ left: auto;
+ #{$opposite-direction}: $tooltip-pip-size;
+ }
+ }
+
+ &.radius {
+ @include radius($tooltip-radius);
+ }
+ &.round {
+ @include radius($tooltip-rounded);
+ &>.nub {
+ left: 2rem;
+ }
+ }
+
+ &.opened {
+ color: $has-tip-font-color-hover !important;
+ border-bottom: $has-tip-border-bottom-hover !important;
+ }
+ }
+
+ .tap-to-close {
+ display: block;
+ font-size: $tooltip-close-font-size;
+ color: $tooltip-close-font-color;
+ font-weight: $tooltip-close-font-weight;
+ }
+
+ @media #{$small} {
+ .tooltip {
+ &>.nub {
+ border-color: transparent transparent $tooltip-bg transparent;
+ top: -($tooltip-pip-size * 2);
+ }
+ &.tip-top>.nub {
+ border-color: $tooltip-bg transparent transparent transparent;
+ top: auto;
+ bottom: -($tooltip-pip-size * 2);
+ }
+
+ &.tip-left,
+ &.tip-right { float: none !important; }
+
+ &.tip-left>.nub {
+ border-color: transparent transparent transparent $tooltip-bg;
+ right: -($tooltip-pip-size * 2);
+ left: auto;
+ top: 50%;
+ margin-top: -$tooltip-pip-size;
+ }
+ &.tip-right>.nub {
+ border-color: transparent $tooltip-bg transparent transparent;
+ right: auto;
+ left: -($tooltip-pip-size * 2);
+ top: 50%;
+ margin-top: -$tooltip-pip-size;
+ }
+
+ }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_top-bar.scss b/_sass/foundation-components/_top-bar.scss
new file mode 100644
index 0000000000..ce59a47d59
--- /dev/null
+++ b/_sass/foundation-components/_top-bar.scss
@@ -0,0 +1,689 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+@import "grid";
+@import "buttons";
+@import "forms";
+
+//
+// Top Bar Variables
+//
+$include-html-top-bar-classes: $include-html-classes !default;
+
+// Background color for the top bar
+$topbar-bg-color: $oil !default;
+$topbar-bg: $topbar-bg-color !default;
+
+// Height and margin
+$topbar-height: rem-calc(45) !default;
+$topbar-margin-bottom: 0 !default;
+
+// Controlling the styles for the title in the top bar
+$topbar-title-weight: $font-weight-normal !default;
+$topbar-title-font-size: rem-calc(17) !default;
+
+// Set the link colors and styles for top-level nav
+$topbar-link-color: $white !default;
+$topbar-link-color-hover: $white !default;
+$topbar-link-color-active: $white !default;
+$topbar-link-color-active-hover: $white !default;
+$topbar-link-weight: $font-weight-normal !default;
+$topbar-link-font-size: rem-calc(13) !default;
+$topbar-link-hover-lightness: -10% !default; // Darken by 10%
+$topbar-link-bg: $topbar-bg !default;
+$topbar-link-bg-hover: $oil !default;
+$topbar-link-bg-color-hover: $charcoal !default;
+$topbar-link-bg-active: $primary-color !default;
+$topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%) !default;
+$topbar-link-font-family: $body-font-family !default;
+$topbar-link-text-transform: none !default;
+$topbar-link-padding: ($topbar-height / 3) !default;
+$topbar-back-link-size: rem-calc(18) !default;
+$topbar-link-dropdown-padding: rem-calc(20) !default;
+$topbar-button-font-size: 0.75rem !default;
+$topbar-button-top: 7px !default;
+
+// Style the top bar dropdown elements
+$topbar-dropdown-bg: $oil !default;
+$topbar-dropdown-link-color: $white !default;
+$topbar-dropdown-link-color-hover: $topbar-link-color-hover !default;
+$topbar-dropdown-link-bg: $oil !default;
+$topbar-dropdown-link-bg-hover: $oil !default;
+$topbar-dropdown-link-weight: $font-weight-normal !default;
+$topbar-dropdown-toggle-size: 5px !default;
+$topbar-dropdown-toggle-color: $white !default;
+$topbar-dropdown-toggle-alpha: 0.4 !default;
+
+$topbar-dropdown-label-color: $monsoon !default;
+$topbar-dropdown-label-text-transform: uppercase !default;
+$topbar-dropdown-label-font-weight: $font-weight-bold !default;
+$topbar-dropdown-label-font-size: rem-calc(10) !default;
+$topbar-dropdown-label-bg: $oil !default;
+
+// Top menu icon styles
+$topbar-menu-link-transform: uppercase !default;
+$topbar-menu-link-font-size: rem-calc(13) !default;
+$topbar-menu-link-weight: $font-weight-bold !default;
+$topbar-menu-link-color: $white !default;
+$topbar-menu-icon-color: $white !default;
+$topbar-menu-link-color-toggled: $jumbo !default;
+$topbar-menu-icon-color-toggled: $jumbo !default;
+
+// Transitions and breakpoint styles
+$topbar-transition-speed: 300ms !default;
+// Using rem-calc for the below breakpoint causes issues with top bar
+$topbar-breakpoint: #{lower-bound($medium-range)} !default; // Change to 9999px for always mobile layout
+$topbar-media-query: $medium-up !default;
+
+// Top-bar input styles
+$topbar-input-height: rem-calc(28) !default;
+
+// Divider Styles
+$topbar-divider-border-bottom: solid 1px scale-color($topbar-bg-color, $lightness: 13%) !default;
+$topbar-divider-border-top: solid 1px scale-color($topbar-bg-color, $lightness: -50%) !default;
+
+// Sticky Class
+$topbar-sticky-class: ".sticky" !default;
+$topbar-arrows: true !default; //Set false to remove the triangle icon from the menu item
+$topbar-dropdown-arrows: true !default; //Set false to remove the \00bb >> text from dropdown subnavigation li
+
+// Accessibility mixins for hiding and showing the menu dropdown items
+@mixin topbar-hide-dropdown {
+ // Makes an element visually hidden by default, but visible when focused.
+ display: block;
+ @include element-invisible();
+}
+
+@mixin topbar-show-dropdown {
+ display: block;
+ @include element-invisible-off();
+ position: absolute !important; // Reset the position from static to absolute
+}
+
+@include exports("top-bar") {
+
+ @if $include-html-top-bar-classes {
+
+ // Used to provide media query values for javascript components.
+ // This class is generated despite the value of $include-html-top-bar-classes
+ // to ensure width calculations work correctly.
+ meta.foundation-mq-topbar {
+ font-family: "/" + unquote($topbar-media-query) + "/";
+ width: $topbar-breakpoint;
+ }
+
+ /* Wrapped around .top-bar to contain to grid width */
+ .contain-to-grid {
+ width: 100%;
+ background: $topbar-bg;
+
+ .top-bar { margin-bottom: $topbar-margin-bottom; }
+ }
+
+ // Wrapped around .top-bar to make it stick to the top
+ .fixed {
+ width: 100%;
+ #{$default-float}: 0;
+ position: fixed;
+ top: 0;
+ z-index: 99;
+
+ &.expanded:not(.top-bar) {
+ overflow-y: auto;
+ height: auto;
+ width: 100%;
+ max-height: 100%;
+
+ .title-area {
+ position: fixed;
+ width: 100%;
+ z-index: 99;
+ }
+ // Ensure you can scroll the menu on small screens
+ .top-bar-section {
+ z-index: 98;
+ margin-top: $topbar-height;
+ }
+ }
+ }
+
+ .top-bar {
+ overflow: hidden;
+ height: $topbar-height;
+ line-height: $topbar-height;
+ position: relative;
+ background: $topbar-bg;
+ margin-bottom: $topbar-margin-bottom;
+
+ // Topbar Global list Styles
+ ul {
+ margin-bottom: 0;
+ list-style: none;
+ }
+
+ .row { max-width: none; }
+
+ form,
+ input { margin-bottom: 0; }
+
+ input {
+ height: $topbar-input-height;
+ padding-top: .35rem;
+ padding-bottom: .35rem;
+ font-size: $topbar-button-font-size;
+ }
+
+ .button, button {
+ padding-top: .35rem + rem-calc(1);
+ padding-bottom: .35rem + rem-calc(1);
+ margin-bottom: 0;
+ font-size: $topbar-button-font-size;
+ // position: relative;
+ // top: -1px;
+
+ // Corrects a slight misalignment when put next to an input field
+ @media #{$small-only} {
+ position: relative;
+ top: -1px;
+ }
+ }
+
+ // Title Area
+ .title-area {
+ position: relative;
+ margin: 0;
+ }
+
+ .name {
+ height: $topbar-height;
+ margin: 0;
+ font-size: $rem-base;
+
+ h1, h2, h3, h4, p, span {
+ line-height: $topbar-height;
+ font-size: $topbar-title-font-size;
+ margin: 0;
+ a {
+ font-weight: $topbar-title-weight;
+ color: $topbar-link-color;
+ width: 75%;
+ display: block;
+ padding: 0 $topbar-link-padding;
+ }
+ }
+ }
+
+ // Menu toggle button on small devices
+ .toggle-topbar {
+ position: absolute;
+ #{$opposite-direction}: 0;
+ top: 0;
+
+ a {
+ color: $topbar-link-color;
+ text-transform: $topbar-menu-link-transform;
+ font-size: $topbar-menu-link-font-size;
+ font-weight: $topbar-menu-link-weight;
+ position: relative;
+ display: block;
+ padding: 0 $topbar-link-padding;
+ height: $topbar-height;
+ line-height: $topbar-height;
+ }
+
+ // Adding the class "menu-icon" will add the 3-line icon people love and adore.
+ &.menu-icon {
+ top: 50%;
+ margin-top: -16px;
+
+ a {
+ @if $text-direction == rtl {
+ text-indent: -58px;
+ }
+ height: 34px;
+ line-height: 33px;
+ padding: 0 $topbar-link-padding+rem-calc(25) 0 $topbar-link-padding;
+ color: $topbar-menu-link-color;
+ position: relative;
+
+ & {
+ // @include hamburger icon
+ //
+ // We use this to create the icon with three lines aka the hamburger icon, the menu-icon or the navicon
+ // $width - Width of hamburger icon
+ // $left - If false, icon will be centered horizontally || explicitly set value in rem
+ // $top - If false, icon will be centered vertically || explicitly set value in rem
+ // $thickness - thickness of lines in hamburger icon, set value in px
+ // $gap - spacing between the lines in hamburger icon, set value in px
+ // $color - icon color
+ // $hover-color - icon color during hover, here it isn't set b/c it would override $topbar-menu-icon-color-toggled
+ // $offcanvas - Set to false of @include in topbar
+ @include hamburger(16px, false, 0, 1px, 6px, $topbar-menu-icon-color, "", false);
+ }
+ }
+ }
+ }
+
+ // Change things up when the top-bar is expanded
+ &.expanded {
+ height: auto;
+ background: transparent;
+
+ .title-area { background: $topbar-bg; }
+
+ .toggle-topbar {
+ a { color: $topbar-menu-link-color-toggled;
+ span::after {
+ // Shh, don't tell, but box-shadows create the menu icon :)
+ // Change the color of the bars when the menu is expanded, using given thickness from hamburger() above
+ box-shadow: 0 0 0 1px $topbar-menu-icon-color-toggled,
+ 0 7px 0 1px $topbar-menu-icon-color-toggled,
+ 0 14px 0 1px $topbar-menu-icon-color-toggled;
+ }
+ }
+ }
+ }
+ }
+
+ // Right and Left Navigation that stacked by default
+ .top-bar-section {
+ #{$default-float}: 0;
+ position: relative;
+ width: auto;
+ @include single-transition($default-float, $topbar-transition-speed);
+
+ ul {
+ padding: 0;
+ width: 100%;
+ height: auto;
+ display: block;
+ font-size: $rem-base;
+ margin: 0;
+ }
+
+ .divider,
+ [role="separator"] {
+ border-top: $topbar-divider-border-top;
+ clear: both;
+ height: 1px;
+ width: 100%;
+ }
+
+ ul li {
+ background: $topbar-dropdown-bg;
+ & > a {
+ display: block;
+ width: 100%;
+ color: $topbar-link-color;
+ padding: 12px 0 12px 0;
+ padding-#{$default-float}: $topbar-link-padding;
+ font-family: $topbar-link-font-family;
+ font-size: $topbar-link-font-size;
+ font-weight: $topbar-link-weight;
+ text-transform: $topbar-link-text-transform;
+
+ &.button {
+ font-size: $topbar-link-font-size;
+ padding-#{$opposite-direction}: $topbar-link-padding;
+ padding-#{$default-float}: $topbar-link-padding;
+ @include button-style($bg:$primary-color);
+ }
+ &.button.secondary { @include button-style($bg:$secondary-color); }
+ &.button.success { @include button-style($bg:$success-color); }
+ &.button.alert { @include button-style($bg:$alert-color); }
+ &.button.warning { @include button-style($bg:$warning-color); }
+ }
+
+ > button {
+ font-size: $topbar-link-font-size;
+ padding-#{$opposite-direction}: $topbar-link-padding;
+ padding-#{$default-float}: $topbar-link-padding;
+ @include button-style($bg:$primary-color);
+
+ &.secondary { @include button-style($bg:$secondary-color); }
+ &.success { @include button-style($bg:$success-color); }
+ &.alert { @include button-style($bg:$alert-color); }
+ &.warning { @include button-style($bg:$warning-color); }
+ }
+
+ // Apply the hover link color when it has that class
+ &:hover:not(.has-form) > a {
+ background-color: $topbar-link-bg-color-hover;
+ @if ($topbar-link-bg-hover) {
+ background: $topbar-link-bg-hover;
+ }
+ color: $topbar-link-color-hover;
+ }
+
+ // Apply the active link color when it has that class
+ &.active > a {
+ background: $topbar-link-bg-active;
+ color: $topbar-link-color-active;
+ &:hover {
+ background: $topbar-link-bg-active-hover;
+ color: $topbar-link-color-active-hover;
+ }
+ }
+ }
+
+ // Add some extra padding for list items contains buttons
+ .has-form { padding: $topbar-link-padding; }
+
+ // Styling for list items that have a dropdown within them.
+ .has-dropdown {
+ position: relative;
+
+ & > a {
+ &:after {
+ @if ($topbar-arrows){
+ @include css-triangle($topbar-dropdown-toggle-size, rgba($topbar-dropdown-toggle-color, $topbar-dropdown-toggle-alpha), $default-float);
+ }
+ margin-#{$opposite-direction}: $topbar-link-padding;
+ margin-top: -($topbar-dropdown-toggle-size / 2) - 2;
+ position: absolute;
+ top: 50%;
+ #{$opposite-direction}: 0;
+ }
+ }
+
+ &.moved { position: static;
+ & > .dropdown {
+ @include topbar-show-dropdown();
+ width: 100%;
+ }
+ & > a:after {
+ display: none;
+ }
+ }
+ }
+
+ // Styling elements inside of dropdowns
+ .dropdown {
+ padding: 0;
+ position: absolute;
+ #{$default-float}: 100%;
+ top: 0;
+ z-index: 99;
+ @include topbar-hide-dropdown();
+
+ li {
+ width: 100%;
+ height: auto;
+
+ a {
+ font-weight: $topbar-dropdown-link-weight;
+ padding: 8px $topbar-link-padding;
+ &.parent-link {
+ font-weight: $topbar-link-weight;
+ }
+ }
+
+ &.title h5, &.parent-link {
+ // Back Button
+ margin-bottom: 0;
+ margin-top: 0;
+ font-size: $topbar-back-link-size;
+ a {
+ color: $topbar-link-color;
+ // line-height: ($topbar-height / 2);
+ display: block;
+ &:hover { background:none; }
+ }
+ }
+ &.has-form { padding: 8px $topbar-link-padding; }
+ .button, button { top: auto; }
+ }
+
+ label {
+ padding: 8px $topbar-link-padding 2px;
+ margin-bottom: 0;
+ text-transform: $topbar-dropdown-label-text-transform;
+ color: $topbar-dropdown-label-color;
+ font-weight: $topbar-dropdown-label-font-weight;
+ font-size: $topbar-dropdown-label-font-size;
+ }
+ }
+ }
+
+ .js-generated { display: block; }
+
+
+ // Top Bar styles intended for screen sizes above the breakpoint.
+ @media #{$topbar-media-query} {
+ .top-bar {
+ background: $topbar-bg;
+ @include clearfix;
+ overflow: visible;
+
+ .toggle-topbar { display: none; }
+
+ .title-area { float: $default-float; }
+ .name h1 a { width: auto; }
+
+ input,
+ .button,
+ button {
+ font-size: rem-calc(14);
+ position: relative;
+ height: $topbar-input-height;
+ top: (($topbar-height - $topbar-input-height) / 2);
+ }
+
+ &.expanded { background: $topbar-bg; }
+ }
+
+ .contain-to-grid .top-bar {
+ max-width: $row-width;
+ margin: 0 auto;
+ margin-bottom: $topbar-margin-bottom;
+ }
+
+ .top-bar-section {
+ @include single-transition(none,0,0);
+ #{$default-float}: 0 !important;
+
+ ul {
+ width: auto;
+ height: auto !important;
+ display: inline;
+
+ li {
+ float: $default-float;
+ .js-generated { display: none; }
+ }
+ }
+
+ li {
+ &.hover {
+ > a:not(.button) {
+ background-color: $topbar-link-bg-color-hover;
+ @if ($topbar-link-bg-hover) {
+ background: $topbar-link-bg-hover;
+ }
+ color: $topbar-link-color-hover;
+ }
+ }
+ &:not(.has-form) {
+ a:not(.button) {
+ padding: 0 $topbar-link-padding;
+ line-height: $topbar-height;
+ background: $topbar-link-bg;
+ &:hover {
+ background-color: $topbar-link-bg-color-hover;
+ @if ($topbar-link-bg-hover) {
+ background: $topbar-link-bg-hover;
+ }
+ }
+ }
+ }
+ &.active:not(.has-form) {
+ a:not(.button) {
+ padding: 0 $topbar-link-padding;
+ line-height: $topbar-height;
+ color: $topbar-link-color-active;
+ background: $topbar-link-bg-active;
+ &:hover {
+ background: $topbar-link-bg-active-hover;
+ color: $topbar-link-color-active-hover;
+ }
+ }
+ }
+ }
+
+ .has-dropdown {
+ @if($topbar-arrows){
+ & > a {
+ padding-#{$opposite-direction}: $topbar-link-padding + $topbar-link-dropdown-padding !important;
+ &:after {
+ @include css-triangle($topbar-dropdown-toggle-size, rgba($topbar-dropdown-toggle-color, $topbar-dropdown-toggle-alpha), top);
+ margin-top: -($topbar-dropdown-toggle-size / 2);
+ top: ($topbar-height / 2);
+ }
+ }
+ }
+
+ &.moved { position: relative;
+ & > .dropdown {
+ @include topbar-hide-dropdown();
+ }
+ }
+
+ &.hover, &.not-click:hover {
+ & > .dropdown {
+ @include topbar-show-dropdown();
+ }
+ }
+ > a:focus + .dropdown {
+ @include topbar-show-dropdown();
+ }
+
+ .dropdown li.has-dropdown {
+ & > a {
+ @if ($topbar-dropdown-arrows){
+ &:after {
+ border: none;
+ content: "\00bb";
+ top: 1rem;
+ margin-top: -1px;
+ #{$opposite-direction}: 5px;
+ line-height: 1.2;
+ }
+ }
+ }
+ }
+ }
+
+ .dropdown {
+ #{$default-float}: 0;
+ top: auto;
+ background: transparent;
+ min-width: 100%;
+
+ li {
+ a {
+ color: $topbar-dropdown-link-color;
+ line-height: $topbar-height;
+ white-space: nowrap;
+ padding: 12px $topbar-link-padding;
+ background: $topbar-dropdown-link-bg;
+ }
+
+ &:not(.has-form):not(.active) {
+ & > a:not(.button) {
+ color: $topbar-dropdown-link-color;
+ background: $topbar-dropdown-link-bg;
+ }
+
+ &:hover > a:not(.button) {
+ color: $topbar-dropdown-link-color-hover;
+ background-color: $topbar-link-bg-color-hover;
+ @if ($topbar-dropdown-link-bg-hover) {
+ background: $topbar-dropdown-link-bg-hover;
+ }
+ }
+ }
+
+ label {
+ white-space: nowrap;
+ background: $topbar-dropdown-label-bg;
+ }
+
+ // Second Level Dropdowns
+ .dropdown {
+ #{$default-float}: 100%;
+ top: 0;
+ }
+ }
+ }
+
+ & > ul > .divider,
+ & > ul > [role="separator"] {
+ border-bottom: none;
+ border-top: none;
+ border-#{$opposite-direction}: $topbar-divider-border-bottom;
+ clear: none;
+ height: $topbar-height;
+ width: 0;
+ }
+
+ .has-form {
+ background: $topbar-link-bg;
+ padding: 0 ($topbar-height / 3);
+ height: $topbar-height;
+ }
+
+ // Position overrides for ul.right and ul.left
+ .#{$opposite-direction} {
+ li .dropdown {
+ #{$default-float}: auto;
+ #{$opposite-direction}: 0;
+
+ li .dropdown { #{$opposite-direction}: 100%; }
+ }
+ }
+ .#{$default-float} {
+ li .dropdown {
+ #{$opposite-direction}: auto;
+ #{$default-float}: 0;
+
+ li .dropdown { #{$default-float}: 100%; }
+ }
+ }
+ }
+
+ // Degrade gracefully when Javascript is disabled. Displays dropdown and changes
+ // background & text color on hover.
+ .no-js .top-bar-section {
+ ul li {
+ // Apply the hover link color when it has that class
+ &:hover > a {
+ background-color: $topbar-link-bg-color-hover;
+ @if ($topbar-link-bg-hover) {
+ background: $topbar-link-bg-hover;
+ }
+ color: $topbar-link-color-hover;
+ }
+
+ // Apply the active link color when it has that class
+ &:active > a {
+ background: $topbar-link-bg-active;
+ color: $topbar-link-color-active;
+ }
+ }
+
+ .has-dropdown {
+ &:hover {
+ & > .dropdown {
+ @include topbar-show-dropdown();
+ }
+ }
+ > a:focus + .dropdown {
+ @include topbar-show-dropdown();
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/_sass/foundation-components/_type.scss b/_sass/foundation-components/_type.scss
new file mode 100644
index 0000000000..ff19996318
--- /dev/null
+++ b/_sass/foundation-components/_type.scss
@@ -0,0 +1,525 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+$include-html-type-classes: $include-html-classes !default;
+
+// We use these to control header font styles
+$header-font-family: $body-font-family !default;
+$header-font-weight: $font-weight-normal !default;
+$header-font-style: $font-weight-normal !default;
+$header-font-color: $jet !default;
+$header-line-height: 1.4 !default;
+$header-top-margin: .2rem !default;
+$header-bottom-margin: .5rem !default;
+$header-text-rendering: optimizeLegibility !default;
+
+// We use these to control header font sizes
+$h1-font-size: rem-calc(44) !default;
+$h2-font-size: rem-calc(37) !default;
+$h3-font-size: rem-calc(27) !default;
+$h4-font-size: rem-calc(23) !default;
+$h5-font-size: rem-calc(18) !default;
+$h6-font-size: 1rem !default;
+
+// We use these to control header size reduction on small screens
+$h1-font-reduction: rem-calc(10) !default;
+$h2-font-reduction: rem-calc(10) !default;
+$h3-font-reduction: rem-calc(5) !default;
+$h4-font-reduction: rem-calc(5) !default;
+$h5-font-reduction: 0 !default;
+$h6-font-reduction: 0 !default;
+
+// These control how subheaders are styled.
+$subheader-line-height: 1.4 !default;
+$subheader-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+$subheader-font-weight: $font-weight-normal !default;
+$subheader-top-margin: .2rem !default;
+$subheader-bottom-margin: .5rem !default;
+
+// A general styling
+$small-font-size: 60% !default;
+$small-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+
+// We use these to style paragraphs
+$paragraph-font-family: inherit !default;
+$paragraph-font-weight: $font-weight-normal !default;
+$paragraph-font-size: 1rem !default;
+$paragraph-line-height: 1.6 !default;
+$paragraph-margin-bottom: rem-calc(20) !default;
+$paragraph-aside-font-size: rem-calc(14) !default;
+$paragraph-aside-line-height: 1.35 !default;
+$paragraph-aside-font-style: italic !default;
+$paragraph-text-rendering: optimizeLegibility !default;
+
+// We use these to style tags
+$code-color: $oil !default;
+$code-font-family: $font-family-monospace !default;
+$code-font-weight: $font-weight-normal !default;
+$code-background-color: scale-color($secondary-color, $lightness: 70%) !default;
+$code-border-size: 1px !default;
+$code-border-style: solid !default;
+$code-border-color: scale-color($code-background-color, $lightness: -10%) !default;
+$code-padding: rem-calc(2) rem-calc(5) rem-calc(1) !default;
+
+// We use these to style anchors
+$anchor-text-decoration: none !default;
+$anchor-text-decoration-hover: none !default;
+$anchor-font-color: $primary-color !default;
+$anchor-font-color-hover: scale-color($anchor-font-color, $lightness: -14%) !default;
+
+// We use these to style the
element
+$hr-border-width: 1px !default;
+$hr-border-style: solid !default;
+$hr-border-color: $gainsboro !default;
+$hr-margin: rem-calc(20) !default;
+
+// We use these to style lists
+$list-font-family: $paragraph-font-family !default;
+$list-font-size: $paragraph-font-size !default;
+$list-line-height: $paragraph-line-height !default;
+$list-margin-bottom: $paragraph-margin-bottom !default;
+$list-style-position: outside !default;
+$list-side-margin: 1.1rem !default;
+$list-ordered-side-margin: 1.4rem !default;
+$list-side-margin-no-bullet: 0 !default;
+$list-nested-margin: rem-calc(20) !default;
+$definition-list-header-weight: $font-weight-bold !default;
+$definition-list-header-margin-bottom: .3rem !default;
+$definition-list-margin-bottom: rem-calc(12) !default;
+
+// We use these to style blockquotes
+$blockquote-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+$blockquote-padding: rem-calc(9 20 0 19) !default;
+$blockquote-border: 1px solid $gainsboro !default;
+$blockquote-cite-font-size: rem-calc(13) !default;
+$blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%) !default;
+$blockquote-cite-link-color: $blockquote-cite-font-color !default;
+
+// Acronym styles
+$acronym-underline: 1px dotted $gainsboro !default;
+
+// We use these to control padding and margin
+$microformat-padding: rem-calc(10 12) !default;
+$microformat-margin: rem-calc(0 0 20 0) !default;
+
+// We use these to control the border styles
+$microformat-border-width: 1px !default;
+$microformat-border-style: solid !default;
+$microformat-border-color: $gainsboro !default;
+
+// We use these to control full name font styles
+$microformat-fullname-font-weight: $font-weight-bold !default;
+$microformat-fullname-font-size: rem-calc(15) !default;
+
+// We use this to control the summary font styles
+$microformat-summary-font-weight: $font-weight-bold !default;
+
+// We use this to control abbr padding
+$microformat-abbr-padding: rem-calc(0 1) !default;
+
+// We use this to control abbr font styles
+$microformat-abbr-font-weight: $font-weight-bold !default;
+$microformat-abbr-font-decoration: none !default;
+
+// Text alignment class names
+$align-class-names:
+ small-only,
+ small,
+ medium-only,
+ medium,
+ large-only,
+ large,
+ xlarge-only,
+ xlarge,
+ xxlarge-only,
+ xxlarge;
+
+// Text alignment breakpoints
+$align-class-breakpoints:
+ $small-only,
+ $small-up,
+ $medium-only,
+ $medium-up,
+ $large-only,
+ $large-up,
+ $xlarge-only,
+ $xlarge-up,
+ $xxlarge-only,
+ $xxlarge-up;
+
+// Generates text align and justify classes
+@mixin align-classes{
+ .text-left { text-align: left !important; }
+ .text-right { text-align: right !important; }
+ .text-center { text-align: center !important; }
+ .text-justify { text-align: justify !important; }
+
+ @for $i from 1 through length($align-class-names) {
+ @media #{(nth($align-class-breakpoints, $i))} {
+ .#{(nth($align-class-names, $i))}-text-left { text-align: left !important; }
+ .#{(nth($align-class-names, $i))}-text-right { text-align: right !important; }
+ .#{(nth($align-class-names, $i))}-text-center { text-align: center !important; }
+ .#{(nth($align-class-names, $i))}-text-justify { text-align: justify !important; }
+ }
+ }
+}
+
+//
+// Typography Placeholders
+//
+
+// These will throw a deprecation warning if used within a media query.
+@mixin lead {
+ font-size: $paragraph-font-size + rem-calc(3.5);
+ line-height: 1.6;
+}
+
+@mixin subheader {
+ line-height: $subheader-line-height;
+ color: $subheader-font-color;
+ font-weight: $subheader-font-weight;
+ margin-top: $subheader-top-margin;
+ margin-bottom: $subheader-bottom-margin;
+}
+@include exports("type") {
+ @if $include-html-type-classes {
+ // Responsive Text alignment
+ @include align-classes;
+
+ /* Typography resets */
+ div,
+ dl,
+ dt,
+ dd,
+ ul,
+ ol,
+ li,
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6,
+ pre,
+ form,
+ p,
+ blockquote,
+ th,
+ td {
+ margin:0;
+ padding:0;
+ }
+
+ /* Default Link Styles */
+ a {
+ color: $anchor-font-color;
+ text-decoration: $anchor-text-decoration;
+ line-height: inherit;
+
+ &:hover,
+ &:focus {
+ color: $anchor-font-color-hover;
+ @if $anchor-text-decoration-hover != $anchor-text-decoration {
+ text-decoration: $anchor-text-decoration-hover;
+ }
+ }
+
+ img { border:none; }
+ }
+
+ /* Default paragraph styles */
+ p {
+ font-family: $paragraph-font-family;
+ font-weight: $paragraph-font-weight;
+ font-size: $paragraph-font-size;
+ line-height: $paragraph-line-height;
+ margin-bottom: $paragraph-margin-bottom;
+ text-rendering: $paragraph-text-rendering;
+
+ &.lead { @include lead; }
+
+ & aside {
+ font-size: $paragraph-aside-font-size;
+ line-height: $paragraph-aside-line-height;
+ font-style: $paragraph-aside-font-style;
+ }
+ }
+
+ /* Default header styles */
+ h1, h2, h3, h4, h5, h6 {
+ font-family: $header-font-family;
+ font-weight: $header-font-weight;
+ font-style: $header-font-style;
+ color: $header-font-color;
+ text-rendering: $header-text-rendering;
+ margin-top: $header-top-margin;
+ margin-bottom: $header-bottom-margin;
+ line-height: $header-line-height;
+
+ small {
+ font-size: $small-font-size;
+ color: $small-font-color;
+ line-height: 0;
+ }
+ }
+
+ h1 { font-size: $h1-font-size - $h1-font-reduction; }
+ h2 { font-size: $h2-font-size - $h2-font-reduction; }
+ h3 { font-size: $h3-font-size - $h3-font-reduction; }
+ h4 { font-size: $h4-font-size - $h4-font-reduction; }
+ h5 { font-size: $h5-font-size - $h5-font-reduction; }
+ h6 { font-size: $h6-font-size - $h6-font-reduction; }
+
+ .subheader { @include subheader; }
+
+ hr {
+ border: $hr-border-style $hr-border-color;
+ border-width: $hr-border-width 0 0;
+ clear: both;
+ margin: $hr-margin 0 ($hr-margin - rem-calc($hr-border-width));
+ height: 0;
+ }
+
+ /* Helpful Typography Defaults */
+ em,
+ i {
+ font-style: italic;
+ line-height: inherit;
+ }
+
+ strong,
+ b {
+ font-weight: $font-weight-bold;
+ line-height: inherit;
+ }
+
+ small {
+ font-size: $small-font-size;
+ line-height: inherit;
+ }
+
+ code {
+ font-family: $code-font-family;
+ font-weight: $code-font-weight;
+ color: $code-color;
+ background-color: $code-background-color;
+ border-width: $code-border-size;
+ border-style: $code-border-style;
+ border-color: $code-border-color;
+ padding: $code-padding;
+ }
+
+ /* Lists */
+ ul,
+ ol,
+ dl {
+ font-size: $list-font-size;
+ line-height: $list-line-height;
+ margin-bottom: $list-margin-bottom;
+ list-style-position: $list-style-position;
+ font-family: $list-font-family;
+ }
+
+ ul {
+ margin-#{$default-float}: $list-side-margin;
+ &.no-bullet {
+ margin-#{$default-float}: $list-side-margin-no-bullet;
+ li {
+ ul,
+ ol {
+ margin-#{$default-float}: $list-nested-margin;
+ margin-bottom: 0;
+ list-style: none;
+ }
+ }
+ }
+ }
+
+ /* Unordered Lists */
+ ul {
+ li {
+ ul,
+ ol {
+ margin-#{$default-float}: $list-nested-margin;
+ margin-bottom: 0;
+ }
+ }
+ &.square,
+ &.circle,
+ &.disc {
+ li ul { list-style: inherit; }
+ }
+
+ &.square { list-style-type: square; margin-#{$default-float}: $list-side-margin;}
+ &.circle { list-style-type: circle; margin-#{$default-float}: $list-side-margin;}
+ &.disc { list-style-type: disc; margin-#{$default-float}: $list-side-margin;}
+ &.no-bullet { list-style: none; }
+ }
+
+ /* Ordered Lists */
+ ol {
+ margin-#{$default-float}: $list-ordered-side-margin;
+ li {
+ ul,
+ ol {
+ margin-#{$default-float}: $list-nested-margin;
+ margin-bottom: 0;
+ }
+ }
+ }
+
+ /* Definition Lists */
+ dl {
+ dt {
+ margin-bottom: $definition-list-header-margin-bottom;
+ font-weight: $definition-list-header-weight;
+ }
+ dd { margin-bottom: $definition-list-margin-bottom; }
+ }
+
+ /* Abbreviations */
+ abbr,
+ acronym {
+ text-transform: uppercase;
+ font-size: 90%;
+ color: $body-font-color;
+ cursor: $cursor-help-value;
+ }
+ abbr {
+ text-transform: none;
+ &[title] {
+ border-bottom: $acronym-underline;
+ }
+ }
+
+ /* Blockquotes */
+ blockquote {
+ margin: 0 0 $paragraph-margin-bottom;
+ padding: $blockquote-padding;
+ border-#{$default-float}: $blockquote-border;
+
+ cite {
+ display: block;
+ font-size: $blockquote-cite-font-size;
+ color: $blockquote-cite-font-color;
+ &:before {
+ content: "\2014 \0020";
+ }
+
+ a,
+ a:visited {
+ color: $blockquote-cite-link-color;
+ }
+ }
+ }
+ blockquote,
+ blockquote p {
+ line-height: $paragraph-line-height;
+ color: $blockquote-font-color;
+ }
+
+ /* Microformats */
+ .vcard {
+ display: inline-block;
+ margin: $microformat-margin;
+ border: $microformat-border-width $microformat-border-style $microformat-border-color;
+ padding: $microformat-padding;
+
+ li {
+ margin: 0;
+ display: block;
+ }
+ .fn {
+ font-weight: $microformat-fullname-font-weight;
+ font-size: $microformat-fullname-font-size;
+ }
+ }
+
+ .vevent {
+ .summary { font-weight: $microformat-summary-font-weight; }
+
+ abbr {
+ cursor: $cursor-default-value;
+ text-decoration: $microformat-abbr-font-decoration;
+ font-weight: $microformat-abbr-font-weight;
+ border: none;
+ padding: $microformat-abbr-padding;
+ }
+ }
+
+
+ @media #{$medium-up} {
+ h1,h2,h3,h4,h5,h6 { line-height: $header-line-height; }
+ h1 { font-size: $h1-font-size; }
+ h2 { font-size: $h2-font-size; }
+ h3 { font-size: $h3-font-size; }
+ h4 { font-size: $h4-font-size; }
+ h5 { font-size: $h5-font-size; }
+ h6 { font-size: $h6-font-size; }
+ }
+
+ // Only include these styles if you want them.
+ @if $include-print-styles {
+ /*
+ * Print styles.
+ *
+ * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
+ * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
+ */
+ .print-only { display: none !important; }
+ @media print {
+ * {
+ background: transparent !important;
+ color: $black !important; /* Black prints faster: h5bp.com/s */
+ box-shadow: none !important;
+ text-shadow: none !important;
+ }
+
+ a,
+ a:visited { text-decoration: underline;}
+ a[href]:after { content: " (" attr(href) ")"; }
+
+ abbr[title]:after { content: " (" attr(title) ")"; }
+
+ // Don't show links for images, or javascript/internal links
+ .ir a:after,
+ a[href^="javascript:"]:after,
+ a[href^="#"]:after { content: ""; }
+
+ pre,
+ blockquote {
+ border: 1px solid $aluminum;
+ page-break-inside: avoid;
+ }
+
+ thead { display: table-header-group; /* h5bp.com/t */ }
+
+ tr,
+ img { page-break-inside: avoid; }
+
+ img { max-width: 100% !important; }
+
+ @page { margin: 0.5cm; }
+
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h2,
+ h3 { page-break-after: avoid; }
+
+ .hide-on-print { display: none !important; }
+ .print-only { display: block !important; }
+ .hide-for-print { display: none !important; }
+ .show-for-print { display: inherit !important; }
+ }
+ }
+
+ }
+}
diff --git a/_sass/foundation-components/_visibility.scss b/_sass/foundation-components/_visibility.scss
new file mode 100644
index 0000000000..d8c4affb4e
--- /dev/null
+++ b/_sass/foundation-components/_visibility.scss
@@ -0,0 +1,408 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// Foundation Visibility Classes
+//
+$include-html-visibility-classes: $include-html-classes !default;
+$include-accessibility-classes: true !default;
+$include-table-visibility-classes: true !default;
+$include-legacy-visibility-classes: true !default;
+
+//
+// Media Class Names
+//
+// Visibility Breakpoints
+$visibility-breakpoint-sizes:
+ small,
+ medium,
+ large,
+ xlarge,
+ xxlarge;
+
+$visibility-breakpoint-queries:
+ unquote($small-up),
+ unquote($medium-up),
+ unquote($large-up),
+ unquote($xlarge-up),
+ unquote($xxlarge-up);
+
+@mixin visibility-loop {
+ @each $current-visibility-breakpoint in $visibility-breakpoint-sizes {
+ $visibility-inherit-list: ();
+ $visibility-none-list: ();
+
+ $visibility-visible-list: ();
+ $visibility-hidden-list: ();
+
+ $visibility-table-list: ();
+ $visibility-table-header-group-list: ();
+ $visibility-table-row-group-list: ();
+ $visibility-table-row-list: ();
+ $visibility-table-cell-list: ();
+
+ @each $visibility-comparison-breakpoint in $visibility-breakpoint-sizes {
+ @if index($visibility-breakpoint-sizes, $visibility-comparison-breakpoint) < index($visibility-breakpoint-sizes, $current-visibility-breakpoint) {
+ // Smaller than current breakpoint
+
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.hide-for-#{$visibility-comparison-breakpoint}-only, table.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.hide-for-#{$visibility-comparison-breakpoint}-only, thead.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.hide-for-#{$visibility-comparison-breakpoint}-only, tbody.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.hide-for-#{$visibility-comparison-breakpoint}-only, tr.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.hide-for-#{$visibility-comparison-breakpoint}-only, td.hide-for-#{$visibility-comparison-breakpoint}-only, th.show-for-#{$visibility-comparison-breakpoint}-up, td.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+
+ // Foundation 4 compatibility:
+ // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+ // for small, medium, and large breakpoints only
+ @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.hide-for-#{$visibility-comparison-breakpoint}, table.hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.hide-for-#{$visibility-comparison-breakpoint}, thead.hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.hide-for-#{$visibility-comparison-breakpoint}, tbody.hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.hide-for-#{$visibility-comparison-breakpoint}, tr.hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.hide-for-#{$visibility-comparison-breakpoint}, td.hide-for-#{$visibility-comparison-breakpoint}, th.hide-for-#{$visibility-comparison-breakpoint}-down, td.hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ }
+
+ } @else if index($visibility-breakpoint-sizes, $visibility-comparison-breakpoint) > index($visibility-breakpoint-sizes, $current-visibility-breakpoint) {
+ // Larger than current breakpoint
+
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.hide-for-#{$visibility-comparison-breakpoint}-only, table.hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.hide-for-#{$visibility-comparison-breakpoint}-only, thead.hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.hide-for-#{$visibility-comparison-breakpoint}-only, tbody.hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.hide-for-#{$visibility-comparison-breakpoint}-only, tr.hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.hide-for-#{$visibility-comparison-breakpoint}-only, td.hide-for-#{$visibility-comparison-breakpoint}-only, th.hide-for-#{$visibility-comparison-breakpoint}-up, td.hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+
+ // Foundation 4 compatibility:
+ // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+ // for small, medium, and large breakpoints only
+ @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.hide-for-#{$visibility-comparison-breakpoint}, table.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.hide-for-#{$visibility-comparison-breakpoint}, thead.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.hide-for-#{$visibility-comparison-breakpoint}, tbody.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.hide-for-#{$visibility-comparison-breakpoint}, tr.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.hide-for-#{$visibility-comparison-breakpoint}, td.hide-for-#{$visibility-comparison-breakpoint}, th.show-for-#{$visibility-comparison-breakpoint}-down, td.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ }
+
+ } @else {
+ // Current breakpoint
+
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.show-for-#{$visibility-comparison-breakpoint}-only, table.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.show-for-#{$visibility-comparison-breakpoint}-only, thead.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.show-for-#{$visibility-comparison-breakpoint}-only, tbody.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.show-for-#{$visibility-comparison-breakpoint}-only, tr.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.show-for-#{$visibility-comparison-breakpoint}-only, td.show-for-#{$visibility-comparison-breakpoint}-only, th.show-for-#{$visibility-comparison-breakpoint}-up, td.show-for-#{$visibility-comparison-breakpoint}-up'
+ ), comma);
+
+ // Foundation 4 compatibility:
+ // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+ // for small, medium, and large breakpoints only
+ @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+ $visibility-inherit-list: append($visibility-inherit-list, unquote(
+ '.show-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-none-list: append($visibility-none-list, unquote(
+ '.hide-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-visible-list: append($visibility-visible-list, unquote(
+ '.visible-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-hidden-list: append($visibility-hidden-list, unquote(
+ '.hidden-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-list: append($visibility-table-list, unquote(
+ 'table.show-for-#{$visibility-comparison-breakpoint}, table.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+ 'thead.show-for-#{$visibility-comparison-breakpoint}, thead.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+ 'tbody.show-for-#{$visibility-comparison-breakpoint}, tbody.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-row-list: append($visibility-table-row-list, unquote(
+ 'tr.show-for-#{$visibility-comparison-breakpoint}, tr.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+ 'th.show-for-#{$visibility-comparison-breakpoint}, td.show-for-#{$visibility-comparison-breakpoint}, th.show-for-#{$visibility-comparison-breakpoint}-down, td.show-for-#{$visibility-comparison-breakpoint}-down'
+ ), comma);
+ }
+ }
+ }
+
+ /* #{$current-visibility-breakpoint} displays */
+ @media #{nth($visibility-breakpoint-queries, index($visibility-breakpoint-sizes, $current-visibility-breakpoint))} {
+ #{$visibility-inherit-list} {
+ display: inherit !important;
+ }
+ #{$visibility-none-list} {
+ display: none !important;
+ }
+ @if $include-accessibility-classes != false {
+ #{$visibility-visible-list} {
+ @include element-invisible-off;
+ }
+ #{$visibility-hidden-list} {
+ @include element-invisible;
+ }
+ }
+ @if $include-table-visibility-classes != false {
+ #{$visibility-table-list} {
+ display: table !important;
+ }
+ #{$visibility-table-header-group-list} {
+ display: table-header-group !important;
+ }
+ #{$visibility-table-row-group-list} {
+ display: table-row-group !important;
+ }
+ #{$visibility-table-row-list} {
+ display: table-row !important;
+ }
+ #{$visibility-table-cell-list} {
+ display: table-cell !important;
+ }
+ }
+ }
+ }
+}
+
+
+@if $include-html-visibility-classes != false {
+
+ @include visibility-loop;
+
+ /* Orientation targeting */
+ .show-for-landscape,
+ .hide-for-portrait { display: inherit !important; }
+ .hide-for-landscape,
+ .show-for-portrait { display: none !important; }
+
+ /* Specific visibility for tables */
+ table {
+ &.hide-for-landscape,
+ &.show-for-portrait { display: table !important; }
+ }
+ thead {
+ &.hide-for-landscape,
+ &.show-for-portrait { display: table-header-group !important; }
+ }
+ tbody {
+ &.hide-for-landscape,
+ &.show-for-portrait { display: table-row-group !important; }
+ }
+ tr {
+ &.hide-for-landscape,
+ &.show-for-portrait { display: table-row !important; }
+ }
+ td,
+ th {
+ &.hide-for-landscape,
+ &.show-for-portrait { display: table-cell !important; }
+ }
+
+ @media #{$landscape} {
+ .show-for-landscape,
+ .hide-for-portrait { display: inherit !important; }
+ .hide-for-landscape,
+ .show-for-portrait { display: none !important; }
+
+ /* Specific visibility for tables */
+ table {
+ &.show-for-landscape,
+ &.hide-for-portrait { display: table !important; }
+ }
+ thead {
+ &.show-for-landscape,
+ &.hide-for-portrait { display: table-header-group !important; }
+ }
+ tbody {
+ &.show-for-landscape,
+ &.hide-for-portrait { display: table-row-group !important; }
+ }
+ tr {
+ &.show-for-landscape,
+ &.hide-for-portrait { display: table-row !important; }
+ }
+ td,
+ th {
+ &.show-for-landscape,
+ &.hide-for-portrait { display: table-cell !important; }
+ }
+ }
+
+ @media #{$portrait} {
+ .show-for-portrait,
+ .hide-for-landscape { display: inherit !important; }
+ .hide-for-portrait,
+ .show-for-landscape { display: none !important; }
+
+ /* Specific visibility for tables */
+ table {
+ &.show-for-portrait,
+ &.hide-for-landscape { display: table !important; }
+ }
+ thead {
+ &.show-for-portrait,
+ &.hide-for-landscape { display: table-header-group !important; }
+ }
+ tbody {
+ &.show-for-portrait,
+ &.hide-for-landscape { display: table-row-group !important; }
+ }
+ tr {
+ &.show-for-portrait,
+ &.hide-for-landscape { display: table-row !important; }
+ }
+ td,
+ th {
+ &.show-for-portrait,
+ &.hide-for-landscape { display: table-cell !important; }
+ }
+ }
+
+ /* Touch-enabled device targeting */
+ .show-for-touch { display: none !important; }
+ .hide-for-touch { display: inherit !important; }
+ .touch .show-for-touch { display: inherit !important; }
+ .touch .hide-for-touch { display: none !important; }
+
+ /* Specific visibility for tables */
+ table.hide-for-touch { display: table !important; }
+ .touch table.show-for-touch { display: table !important; }
+ thead.hide-for-touch { display: table-header-group !important; }
+ .touch thead.show-for-touch { display: table-header-group !important; }
+ tbody.hide-for-touch { display: table-row-group !important; }
+ .touch tbody.show-for-touch { display: table-row-group !important; }
+ tr.hide-for-touch { display: table-row !important; }
+ .touch tr.show-for-touch { display: table-row !important; }
+ td.hide-for-touch { display: table-cell !important; }
+ .touch td.show-for-touch { display: table-cell !important; }
+ th.hide-for-touch { display: table-cell !important; }
+ .touch th.show-for-touch { display: table-cell !important; }
+
+
+ /* Print visibility */
+ @media print {
+ .show-for-print { display: block; }
+ .hide-for-print { display: none; }
+
+ 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 { display: table-cell !important; }
+ th.show-for-print { display: table-cell !important; }
+
+ }
+
+}
diff --git a/assets/css/atom.scss b/assets/css/atom.scss
new file mode 100644
index 0000000000..363cea869d
--- /dev/null
+++ b/assets/css/atom.scss
@@ -0,0 +1,94 @@
+---
+sitemap:
+ exclude: true
+---
+@charset "utf-8";
+
+@import "functions.scss";
+
+$include-html-classes: false;
+@import "01_settings_colors.scss";
+@import "02_settings_typography.scss";
+@import "03_settings_mixins_media_queries.scss";
+@import "04_settings_global.scss";
+
+* {
+ display: block;
+}
+
+:root {
+ margin: 3em;
+ background: $body-bg;
+ color: $body-font-color;
+ font-family: $body-font-family;
+}
+
+feed {
+ > title {
+ text-align: center;
+ color: lighten($primary-color, 25%);
+ font-family: $header-font-family;
+ font-size: $font-size-h1 * 1.5;
+ font-weight: bolder;
+ &::before {
+ content: 'Atom Feed for ';
+ font-weight: initial;
+ }
+ &::after {
+ content: "This Atom feed is meant to be used by RSS reader applications and websites.";
+ display: block;
+ padding: 1em;
+ background-color: $alert-color;
+ color: #fff;
+ font-family: initial;
+ font-size: initial;
+ letter-spacing: initial;
+ }
+ }
+
+ > id,
+ > updated,
+ > subtitle,
+ > author,
+ > link,
+ > generator {
+ display: none;
+ }
+}
+
+entry {
+ padding: 1em 0;
+ border-bottom: 1px solid invert($body-bg);
+ &:last-child {
+ border-bottom: none;
+ }
+
+ > title {
+ color: $secondary-color;
+ font-family: $header-font-family;
+ font-size: $font-size-h1;
+ margin-bottom: 0.5em;
+ }
+
+ > link::after {
+ content: attr(href);
+ color: $primary-color;
+ }
+
+ > updated {
+ color: $grey-5;
+ font-size: small;
+ }
+
+ > summary {
+ margin-top: 1em;
+ }
+
+ > id,
+ > author,
+ > category,
+ > published,
+ > content {
+ display: none;
+ }
+}
diff --git a/assets/css/rss.scss b/assets/css/rss.scss
new file mode 100644
index 0000000000..c06de6a99a
--- /dev/null
+++ b/assets/css/rss.scss
@@ -0,0 +1,89 @@
+---
+sitemap:
+ exclude: true
+---
+@charset "utf-8";
+
+@import "functions.scss";
+
+$include-html-classes: false;
+@import "01_settings_colors.scss";
+@import "02_settings_typography.scss";
+@import "03_settings_mixins_media_queries.scss";
+@import "04_settings_global.scss";
+
+* {
+ display: block;
+}
+
+:root {
+ margin: 3em;
+ background: $body-bg;
+ color: $body-font-color;
+ font-family: $body-font-family;
+}
+
+channel {
+ > title {
+ text-align: center;
+ color: lighten($primary-color, 25%);
+ font-family: $header-font-family;
+ font-size: $font-size-h1 * 1.5;
+ font-weight: bolder;
+ &::before {
+ content: 'RSS Feed for ';
+ font-weight: initial;
+ }
+ &::after {
+ content: "This RSS feed is meant to be used by RSS reader applications and websites.";
+ display: block;
+ padding: 1em;
+ background-color: $alert-color;
+ color: #fff;
+ font-family: initial;
+ font-size: initial;
+ letter-spacing: initial;
+ }
+ }
+
+ > description,
+ > link {
+ display: none;
+ }
+}
+
+item {
+ padding: 1em 0;
+ border-bottom: 1px solid invert($body-bg);
+ &:last-child {
+ border-bottom: none;
+ }
+
+ > title {
+ color: $secondary-color;
+ font-family: $header-font-family;
+ font-size: $font-size-h1;
+ margin-bottom: 0.5em;
+ }
+
+ > link {
+ color: $primary-color;
+ }
+
+ > pubDate {
+ color: $grey-5;
+ font-size: small;
+ }
+
+ > description {
+ margin-top: 1em;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow:ellipsis;
+ }
+
+ > guid,
+ > category {
+ display: none;
+ }
+}
diff --git a/assets/css/styles_feeling_responsive.scss b/assets/css/styles_feeling_responsive.scss
new file mode 100755
index 0000000000..860ab2213d
--- /dev/null
+++ b/assets/css/styles_feeling_responsive.scss
@@ -0,0 +1,45 @@
+---
+# Only the main Sass file needs front matter, rest is included from site.sass.sass_dir
+sitemap:
+ exclude: true
+---
+@charset "utf-8";
+
+@import "functions.scss";
+@import "01_settings_colors.scss";
+@import "02_settings_typography.scss";
+@import "03_settings_mixins_media_queries.scss";
+@import "04_settings_global.scss";
+@import "05_normalize.scss"; // normalize.css v3.0.2
+
+@import "foundation-components/top-bar";
+@import "foundation-components/accordion";
+@import "foundation-components/alert-boxes";
+@import "foundation-components/breadcrumbs";
+@import "foundation-components/block-grid";
+@import "foundation-components/button-groups";
+@import "foundation-components/buttons";
+@import "foundation-components/clearing";
+@import "foundation-components/dropdown";
+@import "foundation-components/dropdown-buttons";
+@import "foundation-components/flex-video";
+@import "foundation-components/forms";
+@import "foundation-components/grid";
+@import "foundation-components/inline-lists";
+@import "foundation-components/keystrokes";
+@import "foundation-components/panels";
+@import "foundation-components/reveal";
+@import "foundation-components/side-nav";
+@import "foundation-components/sub-nav";
+@import "foundation-components/tables";
+@import "foundation-components/thumbs";
+@import "foundation-components/top-bar";
+@import "foundation-components/type";
+@import "foundation-components/visibility";
+
+@import "06_typography.scss";
+@import "07_layout.scss";
+@import "foundation-components/grid";
+@import "09_elements.scss";
+
+@import "11_syntax-highlighting.scss";
diff --git a/assets/files/AntiSilo-OSCON-US-2015.pdf b/assets/files/AntiSilo-OSCON-US-2015.pdf
new file mode 100644
index 0000000000..be8a8e287b
Binary files /dev/null and b/assets/files/AntiSilo-OSCON-US-2015.pdf differ
diff --git a/assets/fonts/.fontcustom-manifest.json b/assets/fonts/.fontcustom-manifest.json
new file mode 100644
index 0000000000..ae43822ac5
--- /dev/null
+++ b/assets/fonts/.fontcustom-manifest.json
@@ -0,0 +1,266 @@
+{
+ "checksum": {
+ "previous": "03f5dd2a3a893dc3637cdfbb6da25d276f597ea03db701e7220b5dfcde6ef9bf",
+ "current": "03f5dd2a3a893dc3637cdfbb6da25d276f597ea03db701e7220b5dfcde6ef9bf"
+ },
+ "fonts": [
+ "./iconfont.ttf",
+ "./iconfont.svg",
+ "./iconfont.woff",
+ "./iconfont.eot"
+ ],
+ "glyphs": {
+ "archive": {
+ "codepoint": 61696,
+ "source": "svg-files-for-custom-font/archive.svg"
+ },
+ "browser": {
+ "codepoint": 61697,
+ "source": "svg-files-for-custom-font/browser.svg"
+ },
+ "calendar": {
+ "codepoint": 61747,
+ "source": "svg-files-for-custom-font/calendar.svg"
+ },
+ "camera": {
+ "codepoint": 61698,
+ "source": "svg-files-for-custom-font/camera.svg"
+ },
+ "chat": {
+ "codepoint": 61699,
+ "source": "svg-files-for-custom-font/chat.svg"
+ },
+ "check": {
+ "codepoint": 61700,
+ "source": "svg-files-for-custom-font/check.svg"
+ },
+ "chevron-down": {
+ "codepoint": 61701,
+ "source": "svg-files-for-custom-font/chevron-down.svg"
+ },
+ "chevron-left": {
+ "codepoint": 61702,
+ "source": "svg-files-for-custom-font/chevron-left.svg"
+ },
+ "chevron-right": {
+ "codepoint": 61703,
+ "source": "svg-files-for-custom-font/chevron-right.svg"
+ },
+ "chevron-up": {
+ "codepoint": 61704,
+ "source": "svg-files-for-custom-font/chevron-up.svg"
+ },
+ "circle-with-cross": {
+ "codepoint": 61705,
+ "source": "svg-files-for-custom-font/circle-with-cross.svg"
+ },
+ "circle-with-minus": {
+ "codepoint": 61706,
+ "source": "svg-files-for-custom-font/circle-with-minus.svg"
+ },
+ "circle-with-plus": {
+ "codepoint": 61707,
+ "source": "svg-files-for-custom-font/circle-with-plus.svg"
+ },
+ "cloud": {
+ "codepoint": 61708,
+ "source": "svg-files-for-custom-font/cloud.svg"
+ },
+ "code": {
+ "codepoint": 61709,
+ "source": "svg-files-for-custom-font/code.svg"
+ },
+ "cog": {
+ "codepoint": 61710,
+ "source": "svg-files-for-custom-font/cog.svg"
+ },
+ "dropbox": {
+ "codepoint": 61711,
+ "source": "svg-files-for-custom-font/dropbox.svg"
+ },
+ "edit": {
+ "codepoint": 61712,
+ "source": "svg-files-for-custom-font/edit.svg"
+ },
+ "export": {
+ "codepoint": 61713,
+ "source": "svg-files-for-custom-font/export.svg"
+ },
+ "eye": {
+ "codepoint": 61714,
+ "source": "svg-files-for-custom-font/eye.svg"
+ },
+ "facebook": {
+ "codepoint": 61715,
+ "source": "svg-files-for-custom-font/facebook.svg"
+ },
+ "feather": {
+ "codepoint": 61716,
+ "source": "svg-files-for-custom-font/feather.svg"
+ },
+ "github": {
+ "codepoint": 61717,
+ "source": "svg-files-for-custom-font/github.svg"
+ },
+ "globe": {
+ "codepoint": 61718,
+ "source": "svg-files-for-custom-font/globe.svg"
+ },
+ "googleplus": {
+ "codepoint": 61750,
+ "source": "svg-files-for-custom-font/googleplus.svg"
+ },
+ "heart": {
+ "codepoint": 61719,
+ "source": "svg-files-for-custom-font/heart.svg"
+ },
+ "heart-outlined": {
+ "codepoint": 61720,
+ "source": "svg-files-for-custom-font/heart-outlined.svg"
+ },
+ "home": {
+ "codepoint": 61721,
+ "source": "svg-files-for-custom-font/home.svg"
+ },
+ "instagram": {
+ "codepoint": 61722,
+ "source": "svg-files-for-custom-font/instagram.svg"
+ },
+ "lab-flask": {
+ "codepoint": 61723,
+ "source": "svg-files-for-custom-font/lab-flask.svg"
+ },
+ "leaf": {
+ "codepoint": 61724,
+ "source": "svg-files-for-custom-font/leaf.svg"
+ },
+ "linkedin": {
+ "codepoint": 61725,
+ "source": "svg-files-for-custom-font/linkedin.svg"
+ },
+ "mail": {
+ "codepoint": 61726,
+ "source": "svg-files-for-custom-font/mail.svg"
+ },
+ "message": {
+ "codepoint": 61727,
+ "source": "svg-files-for-custom-font/message.svg"
+ },
+ "mic": {
+ "codepoint": 61728,
+ "source": "svg-files-for-custom-font/mic.svg"
+ },
+ "network": {
+ "codepoint": 61729,
+ "source": "svg-files-for-custom-font/network.svg"
+ },
+ "paper-plane": {
+ "codepoint": 61730,
+ "source": "svg-files-for-custom-font/paper-plane.svg"
+ },
+ "pinterest": {
+ "codepoint": 61731,
+ "source": "svg-files-for-custom-font/pinterest.svg"
+ },
+ "price-tag": {
+ "codepoint": 61732,
+ "source": "svg-files-for-custom-font/price-tag.svg"
+ },
+ "rocket": {
+ "codepoint": 61733,
+ "source": "svg-files-for-custom-font/rocket.svg"
+ },
+ "rss": {
+ "codepoint": 61734,
+ "source": "svg-files-for-custom-font/rss.svg"
+ },
+ "soundcloud": {
+ "codepoint": 61735,
+ "source": "svg-files-for-custom-font/soundcloud.svg"
+ },
+ "star": {
+ "codepoint": 61736,
+ "source": "svg-files-for-custom-font/star.svg"
+ },
+ "star-outlined": {
+ "codepoint": 61737,
+ "source": "svg-files-for-custom-font/star-outlined.svg"
+ },
+ "thumbs-down": {
+ "codepoint": 61738,
+ "source": "svg-files-for-custom-font/thumbs-down.svg"
+ },
+ "thumbs-up": {
+ "codepoint": 61739,
+ "source": "svg-files-for-custom-font/thumbs-up.svg"
+ },
+ "tree": {
+ "codepoint": 61748,
+ "source": "svg-files-for-custom-font/tree.svg"
+ },
+ "tumblr": {
+ "codepoint": 61740,
+ "source": "svg-files-for-custom-font/tumblr.svg"
+ },
+ "twitter": {
+ "codepoint": 61741,
+ "source": "svg-files-for-custom-font/twitter.svg"
+ },
+ "upload-to-cloud": {
+ "codepoint": 61742,
+ "source": "svg-files-for-custom-font/upload-to-cloud.svg"
+ },
+ "video": {
+ "codepoint": 61743,
+ "source": "svg-files-for-custom-font/video.svg"
+ },
+ "vimeo": {
+ "codepoint": 61744,
+ "source": "svg-files-for-custom-font/vimeo.svg"
+ },
+ "warning": {
+ "codepoint": 61745,
+ "source": "svg-files-for-custom-font/warning.svg"
+ },
+ "xing": {
+ "codepoint": 61749,
+ "source": "svg-files-for-custom-font/xing.svg"
+ },
+ "youtube": {
+ "codepoint": 61746,
+ "source": "svg-files-for-custom-font/youtube.svg"
+ }
+ },
+ "options": {
+ "autowidth": false,
+ "config": "fontcustom.yml",
+ "css_selector": ".icon-{{glyph}}",
+ "debug": false,
+ "font_ascent": 448,
+ "font_descent": 64,
+ "font_design_size": 20,
+ "font_em": 512,
+ "font_name": "iconfont",
+ "force": false,
+ "input": {
+ "templates": "svg-files-for-custom-font/",
+ "vectors": "svg-files-for-custom-font/"
+ },
+ "no_hash": true,
+ "output": {
+ "css": ".",
+ "fonts": ".",
+ "preview": "."
+ },
+ "preprocessor_path": null,
+ "quiet": false,
+ "templates": [
+ "css",
+ "preview"
+ ]
+ },
+ "templates": [
+ "./iconfont.css",
+ "./iconfont-preview.html"
+ ]
+}
\ No newline at end of file
diff --git a/assets/fonts/fontcustom.yml b/assets/fonts/fontcustom.yml
new file mode 100644
index 0000000000..ccc911c232
--- /dev/null
+++ b/assets/fonts/fontcustom.yml
@@ -0,0 +1,96 @@
+# =============================================================================
+# Font Custom Configuration
+# This file should live in the directory where you run `fontcustom compile`.
+# For more info, visit .
+# =============================================================================
+
+
+# -----------------------------------------------------------------------------
+# Project Info
+# -----------------------------------------------------------------------------
+
+# The font's name. Also determines the file names of generated templates.
+font_name: iconfont
+
+# Format of CSS selectors. {{glyph}} is substituted for the glyph name.
+css_selector: .icon-{{glyph}}
+
+# Generate fonts without asset-busting hashes.
+no_hash: true
+
+# Encode WOFF fonts into the generated CSS.
+#base64: true
+
+# Forces compilation, even if inputs have not changed
+#force: true
+
+# Display (possibly useful) debugging messages.
+#debug: true
+
+# Hide status messages.
+#quiet: true
+
+
+# -----------------------------------------------------------------------------
+# Input / Output Locations
+# You can save generated fonts, CSS, and other files to different locations
+# here. Font Custom can also read input vectors and templates from different
+# places.
+#
+# NOTE:
+# - Be sure to preserve the whitespace in these YAML hashes.
+# - INPUT[:vectors] and OUTPUT[:fonts] are required. Everything else is
+# optional.
+# - Specify output locations for custom templates by including their file
+# names as the key.
+# -----------------------------------------------------------------------------
+
+input:
+ vectors: svg-files-for-custom-font
+# templates: my/templates
+
+output:
+ fonts: .
+ css: .
+# preview: app/views/styleguide
+# my-custom-template.yml: path/to/template/output
+
+
+# -----------------------------------------------------------------------------
+# Templates
+# A YAML array of templates and files to generate alongside fonts. Custom
+# templates should be saved in the INPUT[:templates] directory and referenced
+# by their base file name.
+#
+# For Rails and Compass templates, set `preprocessor_path` as the relative
+# path from OUTPUT[:css] to OUTPUT[:fonts]. By default, these are the same
+# directory.
+#
+# Included in Font Custom: preview, css, scss, scss-rails
+# Default: css, preview
+# -----------------------------------------------------------------------------
+
+#templates:
+#- scss-rails
+#- preview
+#- my-custom-template.yml
+
+#preprocessor_path: ../fonts/
+
+
+# -----------------------------------------------------------------------------
+# Font Settings (defaults shown)
+# -----------------------------------------------------------------------------
+
+# Size (in pica points) for which your font is designed.
+font_design_size: 20
+
+# The em size. Setting this will scale the entire font to the given size.
+#font_em: 512
+
+# The font's ascent and descent. Used to calculate the baseline.
+#font_ascent: 448
+#font_descent: 64
+
+# Horizontally fit glyphs to their individual vector widths.
+#autowidth: false
diff --git a/assets/fonts/iconfont-preview.html b/assets/fonts/iconfont-preview.html
new file mode 100644
index 0000000000..ecb1902223
--- /dev/null
+++ b/assets/fonts/iconfont-preview.html
@@ -0,0 +1,1028 @@
+
+
+
+ iconfont glyphs preview
+
+
+
+
+
+
+
+
+
+
+
+ iconfont contains 55 glyphs:
+ Toggle Preview Characters
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+ PpPpPpPpPpPpPpPpPpPp
+
+
+ 12141618212436486072
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/fonts/iconfont.css b/assets/fonts/iconfont.css
new file mode 100644
index 0000000000..a748578f8b
--- /dev/null
+++ b/assets/fonts/iconfont.css
@@ -0,0 +1,149 @@
+/*
+ Icon Font: iconfont
+*/
+
+@font-face {
+ font-family: "iconfont";
+ src: url("./iconfont.eot");
+ src: url("./iconfont.eot?#iefix") format("embedded-opentype"),
+ url("./iconfont.woff") format("woff"),
+ url("./iconfont.ttf") format("truetype"),
+ url("./iconfont.svg#iconfont") format("svg");
+ font-weight: normal;
+ font-style: normal;
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ @font-face {
+ font-family: "iconfont";
+ src: url("./iconfont.svg#iconfont") format("svg");
+ }
+}
+
+[data-icon]:before { content: attr(data-icon); }
+
+[data-icon]:before,
+.icon-archive:before,
+.icon-browser:before,
+.icon-calendar:before,
+.icon-camera:before,
+.icon-chat:before,
+.icon-check:before,
+.icon-chevron-down:before,
+.icon-chevron-left:before,
+.icon-chevron-right:before,
+.icon-chevron-up:before,
+.icon-circle-with-cross:before,
+.icon-circle-with-minus:before,
+.icon-circle-with-plus:before,
+.icon-cloud:before,
+.icon-code:before,
+.icon-cog:before,
+.icon-dropbox:before,
+.icon-edit:before,
+.icon-export:before,
+.icon-eye:before,
+.icon-facebook:before,
+.icon-feather:before,
+.icon-github:before,
+.icon-globe:before,
+.icon-googleplus:before,
+.icon-heart:before,
+.icon-heart-outlined:before,
+.icon-home:before,
+.icon-instagram:before,
+.icon-lab-flask:before,
+.icon-leaf:before,
+.icon-linkedin:before,
+.icon-mail:before,
+.icon-message:before,
+.icon-mic:before,
+.icon-network:before,
+.icon-paper-plane:before,
+.icon-pinterest:before,
+.icon-price-tag:before,
+.icon-rocket:before,
+.icon-rss:before,
+.icon-soundcloud:before,
+.icon-star:before,
+.icon-star-outlined:before,
+.icon-thumbs-down:before,
+.icon-thumbs-up:before,
+.icon-tree:before,
+.icon-tumblr:before,
+.icon-twitter:before,
+.icon-upload-to-cloud:before,
+.icon-video:before,
+.icon-vimeo:before,
+.icon-warning:before,
+.icon-xing:before,
+.icon-youtube:before {
+ display: inline-block;
+ font-family: "iconfont";
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ line-height: 1;
+ text-decoration: inherit;
+ text-rendering: optimizeLegibility;
+ text-transform: none;
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-font-smoothing: antialiased;
+ font-smoothing: antialiased;
+}
+
+.icon-archive:before { content: "\f100"; }
+.icon-browser:before { content: "\f101"; }
+.icon-calendar:before { content: "\f133"; }
+.icon-camera:before { content: "\f102"; }
+.icon-chat:before { content: "\f103"; }
+.icon-check:before { content: "\f104"; }
+.icon-chevron-down:before { content: "\f105"; }
+.icon-chevron-left:before { content: "\f106"; }
+.icon-chevron-right:before { content: "\f107"; }
+.icon-chevron-up:before { content: "\f108"; }
+.icon-circle-with-cross:before { content: "\f109"; }
+.icon-circle-with-minus:before { content: "\f10a"; }
+.icon-circle-with-plus:before { content: "\f10b"; }
+.icon-cloud:before { content: "\f10c"; }
+.icon-code:before { content: "\f10d"; }
+.icon-cog:before { content: "\f10e"; }
+.icon-dropbox:before { content: "\f10f"; }
+.icon-edit:before { content: "\f110"; }
+.icon-export:before { content: "\f111"; }
+.icon-eye:before { content: "\f112"; }
+.icon-facebook:before { content: "\f113"; }
+.icon-feather:before { content: "\f114"; }
+.icon-github:before { content: "\f115"; }
+.icon-globe:before { content: "\f116"; }
+.icon-googleplus:before { content: "\f136"; }
+.icon-heart:before { content: "\f117"; }
+.icon-heart-outlined:before { content: "\f118"; }
+.icon-home:before { content: "\f119"; }
+.icon-instagram:before { content: "\f11a"; }
+.icon-lab-flask:before { content: "\f11b"; }
+.icon-leaf:before { content: "\f11c"; }
+.icon-linkedin:before { content: "\f11d"; }
+.icon-mail:before { content: "\f11e"; }
+.icon-message:before { content: "\f11f"; }
+.icon-mic:before { content: "\f120"; }
+.icon-network:before { content: "\f121"; }
+.icon-paper-plane:before { content: "\f122"; }
+.icon-pinterest:before { content: "\f123"; }
+.icon-price-tag:before { content: "\f124"; }
+.icon-rocket:before { content: "\f125"; }
+.icon-rss:before { content: "\f126"; }
+.icon-soundcloud:before { content: "\f127"; }
+.icon-star:before { content: "\f128"; }
+.icon-star-outlined:before { content: "\f129"; }
+.icon-thumbs-down:before { content: "\f12a"; }
+.icon-thumbs-up:before { content: "\f12b"; }
+.icon-tree:before { content: "\f134"; }
+.icon-tumblr:before { content: "\f12c"; }
+.icon-twitter:before { content: "\f12d"; }
+.icon-upload-to-cloud:before { content: "\f12e"; }
+.icon-video:before { content: "\f12f"; }
+.icon-vimeo:before { content: "\f130"; }
+.icon-warning:before { content: "\f131"; }
+.icon-xing:before { content: "\f135"; }
+.icon-youtube:before { content: "\f132"; }
diff --git a/assets/fonts/iconfont.eot b/assets/fonts/iconfont.eot
new file mode 100644
index 0000000000..af95ebd3c0
Binary files /dev/null and b/assets/fonts/iconfont.eot differ
diff --git a/assets/fonts/iconfont.svg b/assets/fonts/iconfont.svg
new file mode 100644
index 0000000000..b9e507c292
--- /dev/null
+++ b/assets/fonts/iconfont.svg
@@ -0,0 +1,273 @@
+
+
+
+
diff --git a/assets/fonts/iconfont.ttf b/assets/fonts/iconfont.ttf
new file mode 100644
index 0000000000..2dab176b6d
Binary files /dev/null and b/assets/fonts/iconfont.ttf differ
diff --git a/assets/fonts/iconfont.woff b/assets/fonts/iconfont.woff
new file mode 100644
index 0000000000..965649eafb
Binary files /dev/null and b/assets/fonts/iconfont.woff differ
diff --git a/assets/fonts/svg-files-for-custom-font/.fontcustom-manifest.json b/assets/fonts/svg-files-for-custom-font/.fontcustom-manifest.json
new file mode 100644
index 0000000000..77cc52b361
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/.fontcustom-manifest.json
@@ -0,0 +1,253 @@
+{
+ "checksum": {
+ "previous": "0eb06cd53c7fe783055fd11030c39772bfa6df061f0e164097dc672c3a31c36d",
+ "current": "0eb06cd53c7fe783055fd11030c39772bfa6df061f0e164097dc672c3a31c36d"
+ },
+ "fonts": [
+ "entypo-custom/entypo-custom.ttf",
+ "entypo-custom/entypo-custom.svg",
+ "entypo-custom/entypo-custom.woff",
+ "entypo-custom/entypo-custom.eot"
+ ],
+ "glyphs": {
+ "archive": {
+ "codepoint": 61707,
+ "source": "./archive.svg"
+ },
+ "browser": {
+ "codepoint": 61708,
+ "source": "./browser.svg"
+ },
+ "camera": {
+ "codepoint": 61709,
+ "source": "./camera.svg"
+ },
+ "chat": {
+ "codepoint": 61710,
+ "source": "./chat.svg"
+ },
+ "check": {
+ "codepoint": 61711,
+ "source": "./check.svg"
+ },
+ "chevron-down": {
+ "codepoint": 61745,
+ "source": "./chevron-down.svg"
+ },
+ "chevron-left": {
+ "codepoint": 61746,
+ "source": "./chevron-left.svg"
+ },
+ "chevron-right": {
+ "codepoint": 61712,
+ "source": "./chevron-right.svg"
+ },
+ "chevron-up": {
+ "codepoint": 61713,
+ "source": "./chevron-up.svg"
+ },
+ "circle-with-cross": {
+ "codepoint": 61742,
+ "source": "./circle-with-cross.svg"
+ },
+ "circle-with-minus": {
+ "codepoint": 61743,
+ "source": "./circle-with-minus.svg"
+ },
+ "circle-with-plus": {
+ "codepoint": 61744,
+ "source": "./circle-with-plus.svg"
+ },
+ "cloud": {
+ "codepoint": 61741,
+ "source": "./cloud.svg"
+ },
+ "code": {
+ "codepoint": 61714,
+ "source": "./code.svg"
+ },
+ "cog": {
+ "codepoint": 61715,
+ "source": "./cog.svg"
+ },
+ "dropbox": {
+ "codepoint": 61696,
+ "source": "./dropbox.svg"
+ },
+ "edit": {
+ "codepoint": 61740,
+ "source": "./edit.svg"
+ },
+ "export": {
+ "codepoint": 61739,
+ "source": "./export.svg"
+ },
+ "eye": {
+ "codepoint": 61716,
+ "source": "./eye.svg"
+ },
+ "facebook": {
+ "codepoint": 61697,
+ "source": "./facebook.svg"
+ },
+ "feather": {
+ "codepoint": 61717,
+ "source": "./feather.svg"
+ },
+ "github": {
+ "codepoint": 61698,
+ "source": "./github.svg"
+ },
+ "globe": {
+ "codepoint": 61718,
+ "source": "./globe.svg"
+ },
+ "heart": {
+ "codepoint": 61719,
+ "source": "./heart.svg"
+ },
+ "heart-outlined": {
+ "codepoint": 61720,
+ "source": "./heart-outlined.svg"
+ },
+ "home": {
+ "codepoint": 61738,
+ "source": "./home.svg"
+ },
+ "instagram": {
+ "codepoint": 61699,
+ "source": "./instagram.svg"
+ },
+ "lab-flask": {
+ "codepoint": 61737,
+ "source": "./lab-flask.svg"
+ },
+ "leaf": {
+ "codepoint": 61736,
+ "source": "./leaf.svg"
+ },
+ "linkedin": {
+ "codepoint": 61700,
+ "source": "./linkedin.svg"
+ },
+ "mail": {
+ "codepoint": 61735,
+ "source": "./mail.svg"
+ },
+ "message": {
+ "codepoint": 61721,
+ "source": "./message.svg"
+ },
+ "mic": {
+ "codepoint": 61722,
+ "source": "./mic.svg"
+ },
+ "network": {
+ "codepoint": 61723,
+ "source": "./network.svg"
+ },
+ "paper-plane": {
+ "codepoint": 61724,
+ "source": "./paper-plane.svg"
+ },
+ "pinterest": {
+ "codepoint": 61701,
+ "source": "./pinterest.svg"
+ },
+ "price-tag": {
+ "codepoint": 61734,
+ "source": "./price-tag.svg"
+ },
+ "rocket": {
+ "codepoint": 61725,
+ "source": "./rocket.svg"
+ },
+ "rss": {
+ "codepoint": 61733,
+ "source": "./rss.svg"
+ },
+ "soundcloud": {
+ "codepoint": 61702,
+ "source": "./soundcloud.svg"
+ },
+ "star": {
+ "codepoint": 61726,
+ "source": "./star.svg"
+ },
+ "star-outlined": {
+ "codepoint": 61727,
+ "source": "./star-outlined.svg"
+ },
+ "thumbs-down": {
+ "codepoint": 61728,
+ "source": "./thumbs-down.svg"
+ },
+ "thumbs-up": {
+ "codepoint": 61732,
+ "source": "./thumbs-up.svg"
+ },
+ "tumblr": {
+ "codepoint": 61703,
+ "source": "./tumblr.svg"
+ },
+ "twitter": {
+ "codepoint": 61704,
+ "source": "./twitter.svg"
+ },
+ "upload-to-cloud": {
+ "codepoint": 61731,
+ "source": "./upload-to-cloud.svg"
+ },
+ "video": {
+ "codepoint": 61729,
+ "source": "./video.svg"
+ },
+ "vimeo": {
+ "codepoint": 61705,
+ "source": "./vimeo.svg"
+ },
+ "warning": {
+ "codepoint": 61730,
+ "source": "./warning.svg"
+ },
+ "youtube": {
+ "codepoint": 61706,
+ "source": "./youtube.svg"
+ }
+ },
+ "options": {
+ "autowidth": false,
+ "config": "fontcustom.yml",
+ "css_selector": ".icon-{{glyph}}",
+ "debug": false,
+ "font_ascent": 448,
+ "font_descent": 64,
+ "font_design_size": 20,
+ "font_em": 512,
+ "font_name": "entypo-custom",
+ "fonts": "fonts",
+ "force": false,
+ "input": {
+ "templates": ".",
+ "vectors": "."
+ },
+ "no_hash": true,
+ "output": {
+ "css": "entypo-custom",
+ "fonts": "entypo-custom",
+ "preview": "entypo-custom"
+ },
+ "preprocessor_path": null,
+ "preview": "entypo-custom",
+ "quiet": false,
+ "skip_first": false,
+ "templates": [
+ "css",
+ "preview"
+ ]
+ },
+ "templates": [
+ "entypo-custom/entypo-custom.css",
+ "entypo-custom/entypo-custom-preview.html"
+ ]
+}
\ No newline at end of file
diff --git a/assets/fonts/svg-files-for-custom-font/archive.svg b/assets/fonts/svg-files-for-custom-font/archive.svg
new file mode 100644
index 0000000000..00f9e8c902
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/archive.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/browser.svg b/assets/fonts/svg-files-for-custom-font/browser.svg
new file mode 100644
index 0000000000..ca8c89d56f
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/browser.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/calendar.svg b/assets/fonts/svg-files-for-custom-font/calendar.svg
new file mode 100644
index 0000000000..f654214b36
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/calendar.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/camera.svg b/assets/fonts/svg-files-for-custom-font/camera.svg
new file mode 100644
index 0000000000..0f11476cbe
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/camera.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/chat.svg b/assets/fonts/svg-files-for-custom-font/chat.svg
new file mode 100644
index 0000000000..65b5612467
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/chat.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/check.svg b/assets/fonts/svg-files-for-custom-font/check.svg
new file mode 100644
index 0000000000..08ee56d87d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/check.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/chevron-down.svg b/assets/fonts/svg-files-for-custom-font/chevron-down.svg
new file mode 100644
index 0000000000..7604d8905f
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/chevron-down.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/chevron-left.svg b/assets/fonts/svg-files-for-custom-font/chevron-left.svg
new file mode 100644
index 0000000000..7fda040264
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/chevron-left.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/chevron-right.svg b/assets/fonts/svg-files-for-custom-font/chevron-right.svg
new file mode 100644
index 0000000000..0b2251cbb1
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/chevron-right.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/chevron-up.svg b/assets/fonts/svg-files-for-custom-font/chevron-up.svg
new file mode 100644
index 0000000000..eb3c9c52ef
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/chevron-up.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/circle-with-cross.svg b/assets/fonts/svg-files-for-custom-font/circle-with-cross.svg
new file mode 100644
index 0000000000..cf71b4024f
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/circle-with-cross.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/circle-with-minus.svg b/assets/fonts/svg-files-for-custom-font/circle-with-minus.svg
new file mode 100644
index 0000000000..065344d6f0
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/circle-with-minus.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/circle-with-plus.svg b/assets/fonts/svg-files-for-custom-font/circle-with-plus.svg
new file mode 100644
index 0000000000..f4f815c88b
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/circle-with-plus.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/cloud.svg b/assets/fonts/svg-files-for-custom-font/cloud.svg
new file mode 100644
index 0000000000..a009fe53eb
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/cloud.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/code.svg b/assets/fonts/svg-files-for-custom-font/code.svg
new file mode 100644
index 0000000000..33a99fd5d7
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/code.svg
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/cog.svg b/assets/fonts/svg-files-for-custom-font/cog.svg
new file mode 100644
index 0000000000..bc6fcfa1ea
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/cog.svg
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/dropbox.svg b/assets/fonts/svg-files-for-custom-font/dropbox.svg
new file mode 100644
index 0000000000..61f72c2fdc
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/dropbox.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/edit.svg b/assets/fonts/svg-files-for-custom-font/edit.svg
new file mode 100644
index 0000000000..bda9f0e37d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/edit.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/export.svg b/assets/fonts/svg-files-for-custom-font/export.svg
new file mode 100644
index 0000000000..ebcfc1fad0
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/export.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/eye.svg b/assets/fonts/svg-files-for-custom-font/eye.svg
new file mode 100644
index 0000000000..a735aa941d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/eye.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/facebook.svg b/assets/fonts/svg-files-for-custom-font/facebook.svg
new file mode 100644
index 0000000000..dd14318749
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/facebook.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/feather.svg b/assets/fonts/svg-files-for-custom-font/feather.svg
new file mode 100644
index 0000000000..fcff3c19bd
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/feather.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/github.svg b/assets/fonts/svg-files-for-custom-font/github.svg
new file mode 100644
index 0000000000..0ed94d327a
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/github.svg
@@ -0,0 +1,15 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/globe.svg b/assets/fonts/svg-files-for-custom-font/globe.svg
new file mode 100644
index 0000000000..59b1570b5d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/globe.svg
@@ -0,0 +1,18 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/heart-outlined.svg b/assets/fonts/svg-files-for-custom-font/heart-outlined.svg
new file mode 100644
index 0000000000..b1cec2f4f0
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/heart-outlined.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/heart.svg b/assets/fonts/svg-files-for-custom-font/heart.svg
new file mode 100644
index 0000000000..5156b11c3e
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/heart.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/home.svg b/assets/fonts/svg-files-for-custom-font/home.svg
new file mode 100644
index 0000000000..63e8a4e200
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/home.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/instagram.svg b/assets/fonts/svg-files-for-custom-font/instagram.svg
new file mode 100644
index 0000000000..9f7b527a4b
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/instagram.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/lab-flask.svg b/assets/fonts/svg-files-for-custom-font/lab-flask.svg
new file mode 100644
index 0000000000..d40e70ed33
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/lab-flask.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/leaf.svg b/assets/fonts/svg-files-for-custom-font/leaf.svg
new file mode 100644
index 0000000000..27be54666e
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/leaf.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/linkedin.svg b/assets/fonts/svg-files-for-custom-font/linkedin.svg
new file mode 100644
index 0000000000..4541e3cc9d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/linkedin.svg
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/mail.svg b/assets/fonts/svg-files-for-custom-font/mail.svg
new file mode 100644
index 0000000000..5988c16f5c
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/mail.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/message.svg b/assets/fonts/svg-files-for-custom-font/message.svg
new file mode 100644
index 0000000000..cae288b56d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/message.svg
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/mic.svg b/assets/fonts/svg-files-for-custom-font/mic.svg
new file mode 100644
index 0000000000..81f58e14c0
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/mic.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/network.svg b/assets/fonts/svg-files-for-custom-font/network.svg
new file mode 100644
index 0000000000..977de033af
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/network.svg
@@ -0,0 +1,24 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/paper-plane.svg b/assets/fonts/svg-files-for-custom-font/paper-plane.svg
new file mode 100644
index 0000000000..57919d550a
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/paper-plane.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/pinterest.svg b/assets/fonts/svg-files-for-custom-font/pinterest.svg
new file mode 100644
index 0000000000..b5f6f6e232
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/pinterest.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/price-tag.svg b/assets/fonts/svg-files-for-custom-font/price-tag.svg
new file mode 100644
index 0000000000..1c7fa4f2c8
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/price-tag.svg
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/rocket.svg b/assets/fonts/svg-files-for-custom-font/rocket.svg
new file mode 100644
index 0000000000..3eb7415afc
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/rocket.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/rss.svg b/assets/fonts/svg-files-for-custom-font/rss.svg
new file mode 100644
index 0000000000..f8f6033aa9
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/rss.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/soundcloud.svg b/assets/fonts/svg-files-for-custom-font/soundcloud.svg
new file mode 100644
index 0000000000..3b38471799
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/soundcloud.svg
@@ -0,0 +1,18 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/star-outlined.svg b/assets/fonts/svg-files-for-custom-font/star-outlined.svg
new file mode 100644
index 0000000000..4759c4050d
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/star-outlined.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/star.svg b/assets/fonts/svg-files-for-custom-font/star.svg
new file mode 100644
index 0000000000..d5d321afa2
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/star.svg
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/thumbs-down.svg b/assets/fonts/svg-files-for-custom-font/thumbs-down.svg
new file mode 100644
index 0000000000..171e2aa9ea
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/thumbs-down.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/thumbs-up.svg b/assets/fonts/svg-files-for-custom-font/thumbs-up.svg
new file mode 100644
index 0000000000..dee3008ea8
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/thumbs-up.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/tree.svg b/assets/fonts/svg-files-for-custom-font/tree.svg
new file mode 100644
index 0000000000..45a25805bc
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/tree.svg
@@ -0,0 +1,17 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/tumblr.svg b/assets/fonts/svg-files-for-custom-font/tumblr.svg
new file mode 100644
index 0000000000..7bc6350131
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/tumblr.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/twitter.svg b/assets/fonts/svg-files-for-custom-font/twitter.svg
new file mode 100644
index 0000000000..136d229635
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/twitter.svg
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/upload-to-cloud.svg b/assets/fonts/svg-files-for-custom-font/upload-to-cloud.svg
new file mode 100644
index 0000000000..078684721c
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/upload-to-cloud.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/video.svg b/assets/fonts/svg-files-for-custom-font/video.svg
new file mode 100644
index 0000000000..f54ba0081e
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/video.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/vimeo.svg b/assets/fonts/svg-files-for-custom-font/vimeo.svg
new file mode 100644
index 0000000000..81ed1c0b86
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/vimeo.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/warning.svg b/assets/fonts/svg-files-for-custom-font/warning.svg
new file mode 100644
index 0000000000..a571a25210
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/warning.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/xing.svg b/assets/fonts/svg-files-for-custom-font/xing.svg
new file mode 100644
index 0000000000..ca14ad7bed
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/xing.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/assets/fonts/svg-files-for-custom-font/youtube.svg b/assets/fonts/svg-files-for-custom-font/youtube.svg
new file mode 100644
index 0000000000..8dbfef6ecc
--- /dev/null
+++ b/assets/fonts/svg-files-for-custom-font/youtube.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/assets/img/apple-touch-icon-114x114-precomposed.png b/assets/img/apple-touch-icon-114x114-precomposed.png
new file mode 100644
index 0000000000..1297c5f8cc
Binary files /dev/null and b/assets/img/apple-touch-icon-114x114-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-120x120-precomposed.png b/assets/img/apple-touch-icon-120x120-precomposed.png
new file mode 100644
index 0000000000..f5df4de4d3
Binary files /dev/null and b/assets/img/apple-touch-icon-120x120-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-144x144-precomposed.png b/assets/img/apple-touch-icon-144x144-precomposed.png
new file mode 100644
index 0000000000..09aa93aa68
Binary files /dev/null and b/assets/img/apple-touch-icon-144x144-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-152x152-precomposed.png b/assets/img/apple-touch-icon-152x152-precomposed.png
new file mode 100644
index 0000000000..1297c5f8cc
Binary files /dev/null and b/assets/img/apple-touch-icon-152x152-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-180x180-precomposed.png b/assets/img/apple-touch-icon-180x180-precomposed.png
new file mode 100644
index 0000000000..3f0e0dadd3
Binary files /dev/null and b/assets/img/apple-touch-icon-180x180-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-72x72-precomposed.png b/assets/img/apple-touch-icon-72x72-precomposed.png
new file mode 100644
index 0000000000..a022a67127
Binary files /dev/null and b/assets/img/apple-touch-icon-72x72-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-76x76-precomposed.png b/assets/img/apple-touch-icon-76x76-precomposed.png
new file mode 100644
index 0000000000..ca1f6536bc
Binary files /dev/null and b/assets/img/apple-touch-icon-76x76-precomposed.png differ
diff --git a/assets/img/apple-touch-icon-precomposed.png b/assets/img/apple-touch-icon-precomposed.png
new file mode 100644
index 0000000000..8c7188b03f
Binary files /dev/null and b/assets/img/apple-touch-icon-precomposed.png differ
diff --git a/assets/img/favicon-32x32.png b/assets/img/favicon-32x32.png
new file mode 100644
index 0000000000..2584773dee
Binary files /dev/null and b/assets/img/favicon-32x32.png differ
diff --git a/assets/img/gettingstarted.gif b/assets/img/gettingstarted.gif
new file mode 100644
index 0000000000..a647e0d937
Binary files /dev/null and b/assets/img/gettingstarted.gif differ
diff --git a/assets/img/isc-logo-114.png b/assets/img/isc-logo-114.png
new file mode 100644
index 0000000000..8161c09fe2
Binary files /dev/null and b/assets/img/isc-logo-114.png differ
diff --git a/assets/img/isc-logo-120.png b/assets/img/isc-logo-120.png
new file mode 100644
index 0000000000..7537800b38
Binary files /dev/null and b/assets/img/isc-logo-120.png differ
diff --git a/assets/img/isc-logo-144.png b/assets/img/isc-logo-144.png
new file mode 100644
index 0000000000..c90274265c
Binary files /dev/null and b/assets/img/isc-logo-144.png differ
diff --git a/assets/img/isc-logo-152.png b/assets/img/isc-logo-152.png
new file mode 100644
index 0000000000..94c28aaf41
Binary files /dev/null and b/assets/img/isc-logo-152.png differ
diff --git a/assets/img/isc-logo-180.png b/assets/img/isc-logo-180.png
new file mode 100644
index 0000000000..65e3f1d8f0
Binary files /dev/null and b/assets/img/isc-logo-180.png differ
diff --git a/assets/img/isc-logo-192.png b/assets/img/isc-logo-192.png
new file mode 100644
index 0000000000..d27e8bbb45
Binary files /dev/null and b/assets/img/isc-logo-192.png differ
diff --git a/assets/img/isc-logo-72.png b/assets/img/isc-logo-72.png
new file mode 100644
index 0000000000..a8085783da
Binary files /dev/null and b/assets/img/isc-logo-72.png differ
diff --git a/assets/img/isc-logo-76.png b/assets/img/isc-logo-76.png
new file mode 100644
index 0000000000..2f5b64eb25
Binary files /dev/null and b/assets/img/isc-logo-76.png differ
diff --git a/assets/img/logo.png b/assets/img/logo.png
new file mode 100644
index 0000000000..68d59cae97
Binary files /dev/null and b/assets/img/logo.png differ
diff --git a/assets/img/msapplication_tileimage.png b/assets/img/msapplication_tileimage.png
new file mode 100644
index 0000000000..09aa93aa68
Binary files /dev/null and b/assets/img/msapplication_tileimage.png differ
diff --git a/assets/img/oldlogo.png b/assets/img/oldlogo.png
new file mode 100644
index 0000000000..998a3c9373
Binary files /dev/null and b/assets/img/oldlogo.png differ
diff --git a/assets/img/touch-icon-192x192.png b/assets/img/touch-icon-192x192.png
new file mode 100644
index 0000000000..f053d585a3
Binary files /dev/null and b/assets/img/touch-icon-192x192.png differ
diff --git a/assets/js/javascript.js b/assets/js/javascript.js
new file mode 100755
index 0000000000..9146e35369
--- /dev/null
+++ b/assets/js/javascript.js
@@ -0,0 +1,3349 @@
+/*!
+ * jQuery JavaScript Library v2.1.1
+ * http://jquery.com/
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ *
+ * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2014-05-01T17:11Z
+ */
+!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){function c(a){var b=a.length,c=_.type(a);return"function"===c||_.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}function d(a,b,c){if(_.isFunction(b))return _.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return _.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(hb.test(b))return _.filter(b,a,c);b=_.filter(b,a)}return _.grep(a,function(a){return U.call(b,a)>=0!==c})}function e(a,b){for(;(a=a[b])&&1!==a.nodeType;);return a}function f(a){var b=ob[a]={};return _.each(a.match(nb)||[],function(a,c){b[c]=!0}),b}function g(){Z.removeEventListener("DOMContentLoaded",g,!1),a.removeEventListener("load",g,!1),_.ready()}function h(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=_.expando+Math.random()}function i(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(ub,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:tb.test(c)?_.parseJSON(c):c}catch(e){}sb.set(a,b,c)}else c=void 0;return c}function j(){return!0}function k(){return!1}function l(){try{return Z.activeElement}catch(a){}}function m(a,b){return _.nodeName(a,"table")&&_.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function n(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function o(a){var b=Kb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function p(a,b){for(var c=0,d=a.length;d>c;c++)rb.set(a[c],"globalEval",!b||rb.get(b[c],"globalEval"))}function q(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(rb.hasData(a)&&(f=rb.access(a),g=rb.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)_.event.add(b,e,j[e][c])}sb.hasData(a)&&(h=sb.access(a),i=_.extend({},h),sb.set(b,i))}}function r(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&_.nodeName(a,b)?_.merge([a],c):c}function s(a,b){var c=b.nodeName.toLowerCase();"input"===c&&yb.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}function t(b,c){var d,e=_(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:_.css(e[0],"display");return e.detach(),f}function u(a){var b=Z,c=Ob[a];return c||(c=t(a,b),"none"!==c&&c||(Nb=(Nb||_("")).appendTo(b.documentElement),b=Nb[0].contentDocument,b.write(),b.close(),c=t(a,b),Nb.detach()),Ob[a]=c),c}function v(a,b,c){var d,e,f,g,h=a.style;return c=c||Rb(a),c&&(g=c.getPropertyValue(b)||c[b]),c&&(""!==g||_.contains(a.ownerDocument,a)||(g=_.style(a,b)),Qb.test(g)&&Pb.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function w(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}function x(a,b){if(b in a)return b;for(var c=b[0].toUpperCase()+b.slice(1),d=b,e=Xb.length;e--;)if(b=Xb[e]+c,b in a)return b;return d}function y(a,b,c){var d=Tb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function z(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=_.css(a,c+wb[f],!0,e)),d?("content"===c&&(g-=_.css(a,"padding"+wb[f],!0,e)),"margin"!==c&&(g-=_.css(a,"border"+wb[f]+"Width",!0,e))):(g+=_.css(a,"padding"+wb[f],!0,e),"padding"!==c&&(g+=_.css(a,"border"+wb[f]+"Width",!0,e)));return g}function A(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Rb(a),g="border-box"===_.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=v(a,b,f),(0>e||null==e)&&(e=a.style[b]),Qb.test(e))return e;d=g&&(Y.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+z(a,b,c||(g?"border":"content"),d,f)+"px"}function B(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=rb.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&xb(d)&&(f[g]=rb.access(d,"olddisplay",u(d.nodeName)))):(e=xb(d),"none"===c&&e||rb.set(d,"olddisplay",e?c:_.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function C(a,b,c,d,e){return new C.prototype.init(a,b,c,d,e)}function D(){return setTimeout(function(){Yb=void 0}),Yb=_.now()}function E(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=wb[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function F(a,b,c){for(var d,e=(cc[b]||[]).concat(cc["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function G(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},n=a.style,o=a.nodeType&&xb(a),p=rb.get(a,"fxshow");c.queue||(h=_._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,_.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[n.overflow,n.overflowX,n.overflowY],j=_.css(a,"display"),k="none"===j?rb.get(a,"olddisplay")||u(a.nodeName):j,"inline"===k&&"none"===_.css(a,"float")&&(n.display="inline-block")),c.overflow&&(n.overflow="hidden",l.always(function(){n.overflow=c.overflow[0],n.overflowX=c.overflow[1],n.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],$b.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(o?"hide":"show")){if("show"!==e||!p||void 0===p[d])continue;o=!0}m[d]=p&&p[d]||_.style(a,d)}else j=void 0;if(_.isEmptyObject(m))"inline"===("none"===j?u(a.nodeName):j)&&(n.display=j);else{p?"hidden"in p&&(o=p.hidden):p=rb.access(a,"fxshow",{}),f&&(p.hidden=!o),o?_(a).show():l.done(function(){_(a).hide()}),l.done(function(){var b;rb.remove(a,"fxshow");for(b in m)_.style(a,b,m[b])});for(d in m)g=F(o?p[d]:0,d,l),d in p||(p[d]=g.start,o&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function H(a,b){var c,d,e,f,g;for(c in a)if(d=_.camelCase(c),e=b[d],f=a[c],_.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=_.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function I(a,b,c){var d,e,f=0,g=bc.length,h=_.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=Yb||D(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:_.extend({},b),opts:_.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:Yb||D(),duration:c.duration,tweens:[],createTween:function(b,c){var d=_.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(H(k,j.opts.specialEasing);g>f;f++)if(d=bc[f].call(j,a,k,j.opts))return d;return _.map(k,F,j),_.isFunction(j.opts.start)&&j.opts.start.call(a,j),_.fx.timer(_.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function J(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(nb)||[];if(_.isFunction(c))for(;d=f[e++];)"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function K(a,b,c,d){function e(h){var i;return f[h]=!0,_.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||g||f[j]?g?!(i=j):void 0:(b.dataTypes.unshift(j),e(j),!1)}),i}var f={},g=a===vc;return e(b.dataTypes[0])||!f["*"]&&e("*")}function L(a,b){var c,d,e=_.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&_.extend(!0,a,d),a}function M(a,b,c){for(var d,e,f,g,h=a.contents,i=a.dataTypes;"*"===i[0];)i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function N(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];for(f=k.shift();f;)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}function O(a,b,c,d){var e;if(_.isArray(b))_.each(b,function(b,e){c||zc.test(a)?d(a,e):O(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==_.type(b))d(a,b);else for(e in b)O(a+"["+e+"]",b[e],c,d)}function P(a){return _.isWindow(a)?a:9===a.nodeType&&a.defaultView}var Q=[],R=Q.slice,S=Q.concat,T=Q.push,U=Q.indexOf,V={},W=V.toString,X=V.hasOwnProperty,Y={},Z=a.document,$="2.1.1",_=function(a,b){return new _.fn.init(a,b)},ab=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,bb=/^-ms-/,cb=/-([\da-z])/gi,db=function(a,b){return b.toUpperCase()};_.fn=_.prototype={jquery:$,constructor:_,selector:"",length:0,toArray:function(){return R.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:R.call(this)},pushStack:function(a){var b=_.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return _.each(this,a,b)},map:function(a){return this.pushStack(_.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(R.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:T,sort:Q.sort,splice:Q.splice},_.extend=_.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||_.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(_.isPlainObject(d)||(e=_.isArray(d)))?(e?(e=!1,f=c&&_.isArray(c)?c:[]):f=c&&_.isPlainObject(c)?c:{},g[b]=_.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},_.extend({expando:"jQuery"+($+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===_.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!_.isArray(a)&&a-parseFloat(a)>=0},isPlainObject:function(a){return"object"!==_.type(a)||a.nodeType||_.isWindow(a)?!1:a.constructor&&!X.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?V[W.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=_.trim(a),a&&(1===a.indexOf("use strict")?(b=Z.createElement("script"),b.text=a,Z.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(bb,"ms-").replace(cb,db)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,d){var e,f=0,g=a.length,h=c(a);if(d){if(h)for(;g>f&&(e=b.apply(a[f],d),e!==!1);f++);else for(f in a)if(e=b.apply(a[f],d),e===!1)break}else if(h)for(;g>f&&(e=b.call(a[f],f,a[f]),e!==!1);f++);else for(f in a)if(e=b.call(a[f],f,a[f]),e===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(ab,"")},makeArray:function(a,b){var d=b||[];return null!=a&&(c(Object(a))?_.merge(d,"string"==typeof a?[a]:a):T.call(d,a)),d},inArray:function(a,b,c){return null==b?-1:U.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,d){var e,f=0,g=a.length,h=c(a),i=[];if(h)for(;g>f;f++)e=b(a[f],f,d),null!=e&&i.push(e);else for(f in a)e=b(a[f],f,d),null!=e&&i.push(e);return S.apply([],i)},guid:1,proxy:function(a,b){var c,d,e;return"string"==typeof b&&(c=a[b],b=a,a=c),_.isFunction(a)?(d=R.call(arguments,2),e=function(){return a.apply(b||this,d.concat(R.call(arguments)))},e.guid=a.guid=a.guid||_.guid++,e):void 0},now:Date.now,support:Y}),_.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){V["[object "+b+"]"]=b.toLowerCase()});var eb=/*!
+ * Sizzle CSS Selector Engine v1.10.19
+ * http://sizzlejs.com/
+ *
+ * Copyright 2013 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2014-04-18
+ */
+function(a){function b(a,b,c,d){var e,f,g,h,i,j,l,n,o,p;if((b?b.ownerDocument||b:O)!==G&&F(b),b=b||G,c=c||[],!a||"string"!=typeof a)return c;if(1!==(h=b.nodeType)&&9!==h)return[];if(I&&!d){if(e=sb.exec(a))if(g=e[1]){if(9===h){if(f=b.getElementById(g),!f||!f.parentNode)return c;if(f.id===g)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(g))&&M(b,f)&&f.id===g)return c.push(f),c}else{if(e[2])return _.apply(c,b.getElementsByTagName(a)),c;if((g=e[3])&&v.getElementsByClassName&&b.getElementsByClassName)return _.apply(c,b.getElementsByClassName(g)),c}if(v.qsa&&(!J||!J.test(a))){if(n=l=N,o=b,p=9===h&&a,1===h&&"object"!==b.nodeName.toLowerCase()){for(j=z(a),(l=b.getAttribute("id"))?n=l.replace(ub,"\\$&"):b.setAttribute("id",n),n="[id='"+n+"'] ",i=j.length;i--;)j[i]=n+m(j[i]);o=tb.test(a)&&k(b.parentNode)||b,p=j.join(",")}if(p)try{return _.apply(c,o.querySelectorAll(p)),c}catch(q){}finally{l||b.removeAttribute("id")}}}return B(a.replace(ib,"$1"),b,c,d)}function c(){function a(c,d){return b.push(c+" ")>w.cacheLength&&delete a[b.shift()],a[c+" "]=d}var b=[];return a}function d(a){return a[N]=!0,a}function e(a){var b=G.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function f(a,b){for(var c=a.split("|"),d=a.length;d--;)w.attrHandle[c[d]]=b}function g(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||W)-(~a.sourceIndex||W);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function h(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function i(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function j(a){return d(function(b){return b=+b,d(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function k(a){return a&&typeof a.getElementsByTagName!==V&&a}function l(){}function m(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function n(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=Q++;return b.first?function(b,c,f){for(;b=b[d];)if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[P,f];if(g){for(;b=b[d];)if((1===b.nodeType||e)&&a(b,c,g))return!0}else for(;b=b[d];)if(1===b.nodeType||e){if(i=b[N]||(b[N]={}),(h=i[d])&&h[0]===P&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function o(a){return a.length>1?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function p(a,c,d){for(var e=0,f=c.length;f>e;e++)b(a,c[e],d);return d}function q(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function r(a,b,c,e,f,g){return e&&!e[N]&&(e=r(e)),f&&!f[N]&&(f=r(f,g)),d(function(d,g,h,i){var j,k,l,m=[],n=[],o=g.length,r=d||p(b||"*",h.nodeType?[h]:h,[]),s=!a||!d&&b?r:q(r,m,a,h,i),t=c?f||(d?a:o||e)?[]:g:s;if(c&&c(s,t,h,i),e)for(j=q(t,n),e(j,[],h,i),k=j.length;k--;)(l=j[k])&&(t[n[k]]=!(s[n[k]]=l));if(d){if(f||a){if(f){for(j=[],k=t.length;k--;)(l=t[k])&&j.push(s[k]=l);f(null,t=[],j,i)}for(k=t.length;k--;)(l=t[k])&&(j=f?bb.call(d,l):m[k])>-1&&(d[j]=!(g[j]=l))}}else t=q(t===g?t.splice(o,t.length):t),f?f(null,g,t,i):_.apply(g,t)})}function s(a){for(var b,c,d,e=a.length,f=w.relative[a[0].type],g=f||w.relative[" "],h=f?1:0,i=n(function(a){return a===b},g,!0),j=n(function(a){return bb.call(b,a)>-1},g,!0),k=[function(a,c,d){return!f&&(d||c!==C)||((b=c).nodeType?i(a,c,d):j(a,c,d))}];e>h;h++)if(c=w.relative[a[h].type])k=[n(o(k),c)];else{if(c=w.filter[a[h].type].apply(null,a[h].matches),c[N]){for(d=++h;e>d&&!w.relative[a[d].type];d++);return r(h>1&&o(k),h>1&&m(a.slice(0,h-1).concat({value:" "===a[h-2].type?"*":""})).replace(ib,"$1"),c,d>h&&s(a.slice(h,d)),e>d&&s(a=a.slice(d)),e>d&&m(a))}k.push(c)}return o(k)}function t(a,c){var e=c.length>0,f=a.length>0,g=function(d,g,h,i,j){var k,l,m,n=0,o="0",p=d&&[],r=[],s=C,t=d||f&&w.find.TAG("*",j),u=P+=null==s?1:Math.random()||.1,v=t.length;for(j&&(C=g!==G&&g);o!==v&&null!=(k=t[o]);o++){if(f&&k){for(l=0;m=a[l++];)if(m(k,g,h)){i.push(k);break}j&&(P=u)}e&&((k=!m&&k)&&n--,d&&p.push(k))}if(n+=o,e&&o!==n){for(l=0;m=c[l++];)m(p,r,g,h);if(d){if(n>0)for(;o--;)p[o]||r[o]||(r[o]=Z.call(i));r=q(r)}_.apply(i,r),j&&!d&&r.length>0&&n+c.length>1&&b.uniqueSort(i)}return j&&(P=u,C=s),p};return e?d(g):g}var u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N="sizzle"+-new Date,O=a.document,P=0,Q=0,R=c(),S=c(),T=c(),U=function(a,b){return a===b&&(E=!0),0},V="undefined",W=1<<31,X={}.hasOwnProperty,Y=[],Z=Y.pop,$=Y.push,_=Y.push,ab=Y.slice,bb=Y.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},cb="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",db="[\\x20\\t\\r\\n\\f]",eb="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",fb=eb.replace("w","w#"),gb="\\["+db+"*("+eb+")(?:"+db+"*([*^$|!~]?=)"+db+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+fb+"))|)"+db+"*\\]",hb=":("+eb+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+gb+")*)|.*)\\)|)",ib=new RegExp("^"+db+"+|((?:^|[^\\\\])(?:\\\\.)*)"+db+"+$","g"),jb=new RegExp("^"+db+"*,"+db+"*"),kb=new RegExp("^"+db+"*([>+~]|"+db+")"+db+"*"),lb=new RegExp("="+db+"*([^\\]'\"]*?)"+db+"*\\]","g"),mb=new RegExp(hb),nb=new RegExp("^"+fb+"$"),ob={ID:new RegExp("^#("+eb+")"),CLASS:new RegExp("^\\.("+eb+")"),TAG:new RegExp("^("+eb.replace("w","w*")+")"),ATTR:new RegExp("^"+gb),PSEUDO:new RegExp("^"+hb),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+db+"*(even|odd|(([+-]|)(\\d*)n|)"+db+"*(?:([+-]|)"+db+"*(\\d+)|))"+db+"*\\)|)","i"),bool:new RegExp("^(?:"+cb+")$","i"),needsContext:new RegExp("^"+db+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+db+"*((?:-\\d)?\\d*)"+db+"*\\)|)(?=[^-]|$)","i")},pb=/^(?:input|select|textarea|button)$/i,qb=/^h\d$/i,rb=/^[^{]+\{\s*\[native \w/,sb=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tb=/[+~]/,ub=/'|\\/g,vb=new RegExp("\\\\([\\da-f]{1,6}"+db+"?|("+db+")|.)","ig"),wb=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{_.apply(Y=ab.call(O.childNodes),O.childNodes),Y[O.childNodes.length].nodeType}catch(xb){_={apply:Y.length?function(a,b){$.apply(a,ab.call(b))}:function(a,b){for(var c=a.length,d=0;a[c++]=b[d++];);a.length=c-1}}}v=b.support={},y=b.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},F=b.setDocument=function(a){var b,c=a?a.ownerDocument||a:O,d=c.defaultView;return c!==G&&9===c.nodeType&&c.documentElement?(G=c,H=c.documentElement,I=!y(c),d&&d!==d.top&&(d.addEventListener?d.addEventListener("unload",function(){F()},!1):d.attachEvent&&d.attachEvent("onunload",function(){F()})),v.attributes=e(function(a){return a.className="i",!a.getAttribute("className")}),v.getElementsByTagName=e(function(a){return a.appendChild(c.createComment("")),!a.getElementsByTagName("*").length}),v.getElementsByClassName=rb.test(c.getElementsByClassName)&&e(function(a){return a.innerHTML="",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),v.getById=e(function(a){return H.appendChild(a).id=N,!c.getElementsByName||!c.getElementsByName(N).length}),v.getById?(w.find.ID=function(a,b){if(typeof b.getElementById!==V&&I){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},w.filter.ID=function(a){var b=a.replace(vb,wb);return function(a){return a.getAttribute("id")===b}}):(delete w.find.ID,w.filter.ID=function(a){var b=a.replace(vb,wb);return function(a){var c=typeof a.getAttributeNode!==V&&a.getAttributeNode("id");return c&&c.value===b}}),w.find.TAG=v.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==V?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},w.find.CLASS=v.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==V&&I?b.getElementsByClassName(a):void 0},K=[],J=[],(v.qsa=rb.test(c.querySelectorAll))&&(e(function(a){a.innerHTML="",a.querySelectorAll("[msallowclip^='']").length&&J.push("[*^$]="+db+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||J.push("\\["+db+"*(?:value|"+cb+")"),a.querySelectorAll(":checked").length||J.push(":checked")}),e(function(a){var b=c.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&J.push("name"+db+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||J.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),J.push(",.*:")})),(v.matchesSelector=rb.test(L=H.matches||H.webkitMatchesSelector||H.mozMatchesSelector||H.oMatchesSelector||H.msMatchesSelector))&&e(function(a){v.disconnectedMatch=L.call(a,"div"),L.call(a,"[s!='']:x"),K.push("!=",hb)}),J=J.length&&new RegExp(J.join("|")),K=K.length&&new RegExp(K.join("|")),b=rb.test(H.compareDocumentPosition),M=b||rb.test(H.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},U=b?function(a,b){if(a===b)return E=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!v.sortDetached&&b.compareDocumentPosition(a)===d?a===c||a.ownerDocument===O&&M(O,a)?-1:b===c||b.ownerDocument===O&&M(O,b)?1:D?bb.call(D,a)-bb.call(D,b):0:4&d?-1:1)}:function(a,b){if(a===b)return E=!0,0;var d,e=0,f=a.parentNode,h=b.parentNode,i=[a],j=[b];if(!f||!h)return a===c?-1:b===c?1:f?-1:h?1:D?bb.call(D,a)-bb.call(D,b):0;if(f===h)return g(a,b);for(d=a;d=d.parentNode;)i.unshift(d);for(d=b;d=d.parentNode;)j.unshift(d);for(;i[e]===j[e];)e++;return e?g(i[e],j[e]):i[e]===O?-1:j[e]===O?1:0},c):G},b.matches=function(a,c){return b(a,null,null,c)},b.matchesSelector=function(a,c){if((a.ownerDocument||a)!==G&&F(a),c=c.replace(lb,"='$1']"),!(!v.matchesSelector||!I||K&&K.test(c)||J&&J.test(c)))try{var d=L.call(a,c);if(d||v.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return b(c,G,null,[a]).length>0},b.contains=function(a,b){return(a.ownerDocument||a)!==G&&F(a),M(a,b)},b.attr=function(a,b){(a.ownerDocument||a)!==G&&F(a);var c=w.attrHandle[b.toLowerCase()],d=c&&X.call(w.attrHandle,b.toLowerCase())?c(a,b,!I):void 0;return void 0!==d?d:v.attributes||!I?a.getAttribute(b):(d=a.getAttributeNode(b))&&d.specified?d.value:null},b.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},b.uniqueSort=function(a){var b,c=[],d=0,e=0;if(E=!v.detectDuplicates,D=!v.sortStable&&a.slice(0),a.sort(U),E){for(;b=a[e++];)b===a[e]&&(d=c.push(e));for(;d--;)a.splice(c[d],1)}return D=null,a},x=b.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(1===e||9===e||11===e){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=x(a)}else if(3===e||4===e)return a.nodeValue}else for(;b=a[d++];)c+=x(b);return c},w=b.selectors={cacheLength:50,createPseudo:d,match:ob,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(vb,wb),a[3]=(a[3]||a[4]||a[5]||"").replace(vb,wb),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||b.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&b.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return ob.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&mb.test(c)&&(b=z(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(vb,wb).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=R[a+" "];return b||(b=new RegExp("(^|"+db+")"+a+"("+db+"|$)"))&&R(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==V&&a.getAttribute("class")||"")})},ATTR:function(a,c,d){return function(e){var f=b.attr(e,a);return null==f?"!="===c:c?(f+="","="===c?f===d:"!="===c?f!==d:"^="===c?d&&0===f.indexOf(d):"*="===c?d&&f.indexOf(d)>-1:"$="===c?d&&f.slice(-d.length)===d:"~="===c?(" "+f+" ").indexOf(d)>-1:"|="===c?f===d||f.slice(0,d.length+1)===d+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){for(;p;){for(l=b;l=l[p];)if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){for(k=q[N]||(q[N]={}),j=k[a]||[],n=j[0]===P&&j[1],m=j[0]===P&&j[2],l=n&&q.childNodes[n];l=++n&&l&&l[p]||(m=n=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){k[a]=[P,n,m];break}}else if(s&&(j=(b[N]||(b[N]={}))[a])&&j[0]===P)m=j[1];else for(;(l=++n&&l&&l[p]||(m=n=0)||o.pop())&&((h?l.nodeName.toLowerCase()!==r:1!==l.nodeType)||!++m||(s&&((l[N]||(l[N]={}))[a]=[P,m]),l!==b)););return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,c){var e,f=w.pseudos[a]||w.setFilters[a.toLowerCase()]||b.error("unsupported pseudo: "+a);return f[N]?f(c):f.length>1?(e=[a,a,"",c],w.setFilters.hasOwnProperty(a.toLowerCase())?d(function(a,b){for(var d,e=f(a,c),g=e.length;g--;)d=bb.call(a,e[g]),a[d]=!(b[d]=e[g])}):function(a){return f(a,0,e)}):f}},pseudos:{not:d(function(a){var b=[],c=[],e=A(a.replace(ib,"$1"));return e[N]?d(function(a,b,c,d){for(var f,g=e(a,null,d,[]),h=a.length;h--;)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,d,f){return b[0]=a,e(b,null,f,c),!c.pop()}}),has:d(function(a){return function(c){return b(a,c).length>0}}),contains:d(function(a){return function(b){return(b.textContent||b.innerText||x(b)).indexOf(a)>-1}}),lang:d(function(a){return nb.test(a||"")||b.error("unsupported lang: "+a),a=a.replace(vb,wb).toLowerCase(),function(b){var c;do if(c=I?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===H},focus:function(a){return a===G.activeElement&&(!G.hasFocus||G.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!w.pseudos.empty(a)},header:function(a){return qb.test(a.nodeName)},input:function(a){return pb.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:j(function(){return[0]}),last:j(function(a,b){return[b-1]}),eq:j(function(a,b,c){return[0>c?c+b:c]}),even:j(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:j(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:j(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:j(function(a,b,c){for(var d=0>c?c+b:c;++d2&&"ID"===(g=f[0]).type&&v.getById&&9===b.nodeType&&I&&w.relative[f[1].type]){if(b=(w.find.ID(g.matches[0].replace(vb,wb),b)||[])[0],!b)return c;j&&(b=b.parentNode),a=a.slice(f.shift().value.length)}for(e=ob.needsContext.test(a)?0:f.length;e--&&(g=f[e],!w.relative[h=g.type]);)if((i=w.find[h])&&(d=i(g.matches[0].replace(vb,wb),tb.test(f[0].type)&&k(b.parentNode)||b))){if(f.splice(e,1),a=d.length&&m(f),!a)return _.apply(c,d),c;break}}return(j||A(a,l))(d,b,!I,c,tb.test(a)&&k(b.parentNode)||b),c},v.sortStable=N.split("").sort(U).join("")===N,v.detectDuplicates=!!E,F(),v.sortDetached=e(function(a){return 1&a.compareDocumentPosition(G.createElement("div"))}),e(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||f("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),v.attributes&&e(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||f("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),e(function(a){return null==a.getAttribute("disabled")})||f(cb,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),b}(a);_.find=eb,_.expr=eb.selectors,_.expr[":"]=_.expr.pseudos,_.unique=eb.uniqueSort,_.text=eb.getText,_.isXMLDoc=eb.isXML,_.contains=eb.contains;var fb=_.expr.match.needsContext,gb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,hb=/^.[^:#\[\.,]*$/;_.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?_.find.matchesSelector(d,a)?[d]:[]:_.find.matches(a,_.grep(b,function(a){return 1===a.nodeType}))},_.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(_(a).filter(function(){for(b=0;c>b;b++)if(_.contains(e[b],this))return!0}));for(b=0;c>b;b++)_.find(a,e[b],d);return d=this.pushStack(c>1?_.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(d(this,a||[],!1))},not:function(a){return this.pushStack(d(this,a||[],!0))},is:function(a){return!!d(this,"string"==typeof a&&fb.test(a)?_(a):a||[],!1).length}});var ib,jb=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,kb=_.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:jb.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||ib).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof _?b[0]:b,_.merge(this,_.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:Z,!0)),gb.test(c[1])&&_.isPlainObject(b))for(c in b)_.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=Z.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=Z,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):_.isFunction(a)?"undefined"!=typeof ib.ready?ib.ready(a):a(_):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),_.makeArray(a,this))};kb.prototype=_.fn,ib=_(Z);var lb=/^(?:parents|prev(?:Until|All))/,mb={children:!0,contents:!0,next:!0,prev:!0};_.extend({dir:function(a,b,c){for(var d=[],e=void 0!==c;(a=a[b])&&9!==a.nodeType;)if(1===a.nodeType){if(e&&_(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),_.fn.extend({has:function(a){var b=_(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(_.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=fb.test(a)||"string"!=typeof a?_(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&_.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?_.unique(f):f)},index:function(a){return a?"string"==typeof a?U.call(_(a),this[0]):U.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(_.unique(_.merge(this.get(),_(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}}),_.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return _.dir(a,"parentNode")},parentsUntil:function(a,b,c){return _.dir(a,"parentNode",c)},next:function(a){return e(a,"nextSibling")},prev:function(a){return e(a,"previousSibling")},nextAll:function(a){return _.dir(a,"nextSibling")},prevAll:function(a){return _.dir(a,"previousSibling")},nextUntil:function(a,b,c){return _.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return _.dir(a,"previousSibling",c)},siblings:function(a){return _.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return _.sibling(a.firstChild)},contents:function(a){return a.contentDocument||_.merge([],a.childNodes)}},function(a,b){_.fn[a]=function(c,d){var e=_.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=_.filter(d,e)),this.length>1&&(mb[a]||_.unique(e),lb.test(a)&&e.reverse()),this.pushStack(e)}});var nb=/\S+/g,ob={};_.Callbacks=function(a){a="string"==typeof a?ob[a]||f(a):_.extend({},a);var b,c,d,e,g,h,i=[],j=!a.once&&[],k=function(f){for(b=a.memory&&f,c=!0,h=e||0,e=0,g=i.length,d=!0;i&&g>h;h++)if(i[h].apply(f[0],f[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,i&&(j?j.length&&k(j.shift()):b?i=[]:l.disable())},l={add:function(){if(i){var c=i.length;!function f(b){_.each(b,function(b,c){var d=_.type(c);"function"===d?a.unique&&l.has(c)||i.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),d?g=i.length:b&&(e=c,k(b))}return this},remove:function(){return i&&_.each(arguments,function(a,b){for(var c;(c=_.inArray(b,i,c))>-1;)i.splice(c,1),d&&(g>=c&&g--,h>=c&&h--)}),this},has:function(a){return a?_.inArray(a,i)>-1:!(!i||!i.length)},empty:function(){return i=[],g=0,this},disable:function(){return i=j=b=void 0,this},disabled:function(){return!i},lock:function(){return j=void 0,b||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return!i||c&&!j||(b=b||[],b=[a,b.slice?b.slice():b],d?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!c}};return l},_.extend({Deferred:function(a){var b=[["resolve","done",_.Callbacks("once memory"),"resolved"],["reject","fail",_.Callbacks("once memory"),"rejected"],["notify","progress",_.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return _.Deferred(function(c){_.each(b,function(b,f){var g=_.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&_.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?_.extend(a,d):d}},e={};return d.pipe=d.then,_.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b,c,d,e=0,f=R.call(arguments),g=f.length,h=1!==g||a&&_.isFunction(a.promise)?g:0,i=1===h?a:_.Deferred(),j=function(a,c,d){return function(e){c[a]=this,d[a]=arguments.length>1?R.call(arguments):e,d===b?i.notifyWith(c,d):--h||i.resolveWith(c,d)}};if(g>1)for(b=new Array(g),c=new Array(g),d=new Array(g);g>e;e++)f[e]&&_.isFunction(f[e].promise)?f[e].promise().done(j(e,d,f)).fail(i.reject).progress(j(e,c,b)):--h;return h||i.resolveWith(d,f),i.promise()}});var pb;_.fn.ready=function(a){return _.ready.promise().done(a),this},_.extend({isReady:!1,readyWait:1,holdReady:function(a){a?_.readyWait++:_.ready(!0)},ready:function(a){(a===!0?--_.readyWait:_.isReady)||(_.isReady=!0,a!==!0&&--_.readyWait>0||(pb.resolveWith(Z,[_]),_.fn.triggerHandler&&(_(Z).triggerHandler("ready"),_(Z).off("ready"))))}}),_.ready.promise=function(b){return pb||(pb=_.Deferred(),"complete"===Z.readyState?setTimeout(_.ready):(Z.addEventListener("DOMContentLoaded",g,!1),a.addEventListener("load",g,!1))),pb.promise(b)},_.ready.promise();var qb=_.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===_.type(c)){e=!0;for(h in c)_.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,_.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(_(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};_.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType},h.uid=1,h.accepts=_.acceptData,h.prototype={key:function(a){if(!h.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=h.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,_.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(_.isEmptyObject(f))_.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,_.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{_.isArray(b)?d=b.concat(b.map(_.camelCase)):(e=_.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(nb)||[])),c=d.length;for(;c--;)delete g[d[c]]}},hasData:function(a){return!_.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var rb=new h,sb=new h,tb=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,ub=/([A-Z])/g;_.extend({hasData:function(a){return sb.hasData(a)||rb.hasData(a)},data:function(a,b,c){return sb.access(a,b,c)},removeData:function(a,b){sb.remove(a,b)},_data:function(a,b,c){return rb.access(a,b,c)},_removeData:function(a,b){rb.remove(a,b)}}),_.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=sb.get(f),1===f.nodeType&&!rb.get(f,"hasDataAttrs"))){for(c=g.length;c--;)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=_.camelCase(d.slice(5)),i(f,d,e[d])));rb.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){sb.set(this,a)}):qb(this,function(b){var c,d=_.camelCase(a);if(f&&void 0===b){if(c=sb.get(f,a),void 0!==c)return c;if(c=sb.get(f,d),void 0!==c)return c;if(c=i(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=sb.get(this,d);sb.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&sb.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){sb.remove(this,a)})}}),_.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=rb.get(a,b),c&&(!d||_.isArray(c)?d=rb.access(a,b,_.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=_.queue(a,b),d=c.length,e=c.shift(),f=_._queueHooks(a,b),g=function(){_.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return rb.get(a,c)||rb.access(a,c,{empty:_.Callbacks("once memory").add(function(){rb.remove(a,[b+"queue",c])})})}}),_.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthx",Y.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var zb="undefined";Y.focusinBubbles="onfocusin"in a;var Ab=/^key/,Bb=/^(?:mouse|pointer|contextmenu)|click/,Cb=/^(?:focusinfocus|focusoutblur)$/,Db=/^([^.]*)(?:\.(.+)|)$/;_.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=rb.get(a);if(q)for(c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=_.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return typeof _!==zb&&_.event.triggered!==b.type?_.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(nb)||[""],j=b.length;j--;)h=Db.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=_.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=_.event.special[n]||{},k=_.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&_.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),_.event.global[n]=!0)},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=rb.hasData(a)&&rb.get(a);if(q&&(i=q.events)){for(b=(b||"").match(nb)||[""],j=b.length;j--;)if(h=Db.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){for(l=_.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;f--;)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||_.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)_.event.remove(a,n+b[j],c,d,!0);_.isEmptyObject(i)&&(delete q.handle,rb.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,j,k,l,m=[d||Z],n=X.call(b,"type")?b.type:b,o=X.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||Z,3!==d.nodeType&&8!==d.nodeType&&!Cb.test(n+_.event.triggered)&&(n.indexOf(".")>=0&&(o=n.split("."),n=o.shift(),o.sort()),j=n.indexOf(":")<0&&"on"+n,b=b[_.expando]?b:new _.Event(n,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=o.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:_.makeArray(c,[b]),l=_.event.special[n]||{},e||!l.trigger||l.trigger.apply(d,c)!==!1)){if(!e&&!l.noBubble&&!_.isWindow(d)){for(i=l.delegateType||n,Cb.test(i+n)||(g=g.parentNode);g;g=g.parentNode)m.push(g),h=g;
+h===(d.ownerDocument||Z)&&m.push(h.defaultView||h.parentWindow||a)}for(f=0;(g=m[f++])&&!b.isPropagationStopped();)b.type=f>1?i:l.bindType||n,k=(rb.get(g,"events")||{})[b.type]&&rb.get(g,"handle"),k&&k.apply(g,c),k=j&&g[j],k&&k.apply&&_.acceptData(g)&&(b.result=k.apply(g,c),b.result===!1&&b.preventDefault());return b.type=n,e||b.isDefaultPrevented()||l._default&&l._default.apply(m.pop(),c)!==!1||!_.acceptData(d)||j&&_.isFunction(d[n])&&!_.isWindow(d)&&(h=d[j],h&&(d[j]=null),_.event.triggered=n,d[n](),_.event.triggered=void 0,h&&(d[j]=h)),b.result}},dispatch:function(a){a=_.event.fix(a);var b,c,d,e,f,g=[],h=R.call(arguments),i=(rb.get(this,"events")||{})[a.type]||[],j=_.event.special[a.type]||{};if(h[0]=a,a.delegateTarget=this,!j.preDispatch||j.preDispatch.call(this,a)!==!1){for(g=_.event.handlers.call(this,a,i),b=0;(e=g[b++])&&!a.isPropagationStopped();)for(a.currentTarget=e.elem,c=0;(f=e.handlers[c++])&&!a.isImmediatePropagationStopped();)(!a.namespace_re||a.namespace_re.test(f.namespace))&&(a.handleObj=f,a.data=f.data,d=((_.event.special[f.origType]||{}).handle||f.handler).apply(e.elem,h),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()));return j.postDispatch&&j.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?_(e,this).index(i)>=0:_.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,Fb=/<([\w:]+)/,Gb=/<|?\w+;/,Hb=/<(?:script|style|link)/i,Ib=/checked\s*(?:[^=]|=\s*.checked.)/i,Jb=/^$|\/(?:java|ecma)script/i,Kb=/^true\/(.*)/,Lb=/^\s*\s*$/g,Mb={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Mb.optgroup=Mb.option,Mb.tbody=Mb.tfoot=Mb.colgroup=Mb.caption=Mb.thead,Mb.th=Mb.td,_.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=_.contains(a.ownerDocument,a);if(!(Y.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||_.isXMLDoc(a)))for(g=r(h),f=r(a),d=0,e=f.length;e>d;d++)s(f[d],g[d]);if(b)if(c)for(f=f||r(a),g=g||r(h),d=0,e=f.length;e>d;d++)q(f[d],g[d]);else q(a,h);return g=r(h,"script"),g.length>0&&p(g,!i&&r(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,n=a.length;n>m;m++)if(e=a[m],e||0===e)if("object"===_.type(e))_.merge(l,e.nodeType?[e]:e);else if(Gb.test(e)){for(f=f||k.appendChild(b.createElement("div")),g=(Fb.exec(e)||["",""])[1].toLowerCase(),h=Mb[g]||Mb._default,f.innerHTML=h[1]+e.replace(Eb,"<$1>$2>")+h[2],j=h[0];j--;)f=f.lastChild;_.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));for(k.textContent="",m=0;e=l[m++];)if((!d||-1===_.inArray(e,d))&&(i=_.contains(e.ownerDocument,e),f=r(k.appendChild(e),"script"),i&&p(f),c))for(j=0;e=f[j++];)Jb.test(e.type||"")&&c.push(e);return k},cleanData:function(a){for(var b,c,d,e,f=_.event.special,g=0;void 0!==(c=a[g]);g++){if(_.acceptData(c)&&(e=c[rb.expando],e&&(b=rb.cache[e]))){if(b.events)for(d in b.events)f[d]?_.event.remove(c,d):_.removeEvent(c,d,b.handle);rb.cache[e]&&delete rb.cache[e]}delete sb.cache[c[sb.expando]]}}}),_.fn.extend({text:function(a){return qb(this,function(a){return void 0===a?_.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=m(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=m(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?_.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||_.cleanData(r(c)),c.parentNode&&(b&&_.contains(c.ownerDocument,c)&&p(r(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(_.cleanData(r(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return _.clone(this,a,b)})},html:function(a){return qb(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Hb.test(a)&&!Mb[(Fb.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Eb,"<$1>$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(_.cleanData(r(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,_.cleanData(r(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=S.apply([],a);var c,d,e,f,g,h,i=0,j=this.length,k=this,l=j-1,m=a[0],p=_.isFunction(m);if(p||j>1&&"string"==typeof m&&!Y.checkClone&&Ib.test(m))return this.each(function(c){var d=k.eq(c);p&&(a[0]=m.call(this,c,d.html())),d.domManip(a,b)});if(j&&(c=_.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(e=_.map(r(c,"script"),n),f=e.length;j>i;i++)g=c,i!==l&&(g=_.clone(g,!0,!0),f&&_.merge(e,r(g,"script"))),b.call(this[i],g,i);if(f)for(h=e[e.length-1].ownerDocument,_.map(e,o),i=0;f>i;i++)g=e[i],Jb.test(g.type||"")&&!rb.access(g,"globalEval")&&_.contains(h,g)&&(g.src?_._evalUrl&&_._evalUrl(g.src):_.globalEval(g.textContent.replace(Lb,"")))}return this}}),_.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){_.fn[a]=function(a){for(var c,d=[],e=_(a),f=e.length-1,g=0;f>=g;g++)c=g===f?this:this.clone(!0),_(e[g])[b](c),T.apply(d,c.get());return this.pushStack(d)}});var Nb,Ob={},Pb=/^margin/,Qb=new RegExp("^("+vb+")(?!px)[a-z%]+$","i"),Rb=function(a){return a.ownerDocument.defaultView.getComputedStyle(a,null)};!function(){function b(){g.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",g.innerHTML="",e.appendChild(f);var b=a.getComputedStyle(g,null);c="1%"!==b.top,d="4px"===b.width,e.removeChild(f)}var c,d,e=Z.documentElement,f=Z.createElement("div"),g=Z.createElement("div");g.style&&(g.style.backgroundClip="content-box",g.cloneNode(!0).style.backgroundClip="",Y.clearCloneStyle="content-box"===g.style.backgroundClip,f.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",f.appendChild(g),a.getComputedStyle&&_.extend(Y,{pixelPosition:function(){return b(),c},boxSizingReliable:function(){return null==d&&b(),d},reliableMarginRight:function(){var b,c=g.appendChild(Z.createElement("div"));return c.style.cssText=g.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",g.style.width="1px",e.appendChild(f),b=!parseFloat(a.getComputedStyle(c,null).marginRight),e.removeChild(f),b}}))}(),_.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Sb=/^(none|table(?!-c[ea]).+)/,Tb=new RegExp("^("+vb+")(.*)$","i"),Ub=new RegExp("^([+-])=("+vb+")","i"),Vb={position:"absolute",visibility:"hidden",display:"block"},Wb={letterSpacing:"0",fontWeight:"400"},Xb=["Webkit","O","Moz","ms"];_.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=v(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=_.camelCase(b),i=a.style;return b=_.cssProps[h]||(_.cssProps[h]=x(i,h)),g=_.cssHooks[b]||_.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=Ub.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(_.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||_.cssNumber[h]||(c+="px"),Y.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=_.camelCase(b);return b=_.cssProps[h]||(_.cssProps[h]=x(a.style,h)),g=_.cssHooks[b]||_.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=v(a,b,d)),"normal"===e&&b in Wb&&(e=Wb[b]),""===c||c?(f=parseFloat(e),c===!0||_.isNumeric(f)?f||0:e):e}}),_.each(["height","width"],function(a,b){_.cssHooks[b]={get:function(a,c,d){return c?Sb.test(_.css(a,"display"))&&0===a.offsetWidth?_.swap(a,Vb,function(){return A(a,b,d)}):A(a,b,d):void 0},set:function(a,c,d){var e=d&&Rb(a);return y(a,c,d?z(a,b,d,"border-box"===_.css(a,"boxSizing",!1,e),e):0)}}}),_.cssHooks.marginRight=w(Y.reliableMarginRight,function(a,b){return b?_.swap(a,{display:"inline-block"},v,[a,"marginRight"]):void 0}),_.each({margin:"",padding:"",border:"Width"},function(a,b){_.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+wb[d]+b]=f[d]||f[d-2]||f[0];return e}},Pb.test(a)||(_.cssHooks[a+b].set=y)}),_.fn.extend({css:function(a,b){return qb(this,function(a,b,c){var d,e,f={},g=0;if(_.isArray(b)){for(d=Rb(a),e=b.length;e>g;g++)f[b[g]]=_.css(a,b[g],!1,d);return f}return void 0!==c?_.style(a,b,c):_.css(a,b)},a,b,arguments.length>1)},show:function(){return B(this,!0)},hide:function(){return B(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){xb(this)?_(this).show():_(this).hide()})}}),_.Tween=C,C.prototype={constructor:C,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(_.cssNumber[c]?"":"px")},cur:function(){var a=C.propHooks[this.prop];return a&&a.get?a.get(this):C.propHooks._default.get(this)},run:function(a){var b,c=C.propHooks[this.prop];return this.pos=b=this.options.duration?_.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):C.propHooks._default.set(this),this}},C.prototype.init.prototype=C.prototype,C.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=_.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){_.fx.step[a.prop]?_.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[_.cssProps[a.prop]]||_.cssHooks[a.prop])?_.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},C.propHooks.scrollTop=C.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},_.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},_.fx=C.prototype.init,_.fx.step={};var Yb,Zb,$b=/^(?:toggle|show|hide)$/,_b=new RegExp("^(?:([+-])=|)("+vb+")([a-z%]*)$","i"),ac=/queueHooks$/,bc=[G],cc={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=_b.exec(b),f=e&&e[3]||(_.cssNumber[a]?"":"px"),g=(_.cssNumber[a]||"px"!==f&&+d)&&_b.exec(_.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,_.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};_.Animation=_.extend(I,{tweener:function(a,b){_.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],cc[c]=cc[c]||[],cc[c].unshift(b)},prefilter:function(a,b){b?bc.unshift(a):bc.push(a)}}),_.speed=function(a,b,c){var d=a&&"object"==typeof a?_.extend({},a):{complete:c||!c&&b||_.isFunction(a)&&a,duration:a,easing:c&&b||b&&!_.isFunction(b)&&b};return d.duration=_.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in _.fx.speeds?_.fx.speeds[d.duration]:_.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){_.isFunction(d.old)&&d.old.call(this),d.queue&&_.dequeue(this,d.queue)},d},_.fn.extend({fadeTo:function(a,b,c,d){return this.filter(xb).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=_.isEmptyObject(a),f=_.speed(b,c,d),g=function(){var b=I(this,_.extend({},a),f);(e||rb.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=_.timers,g=rb.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&ac.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&_.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=rb.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=_.timers,g=d?d.length:0;for(c.finish=!0,_.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),_.each(["toggle","show","hide"],function(a,b){var c=_.fn[b];_.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(E(b,!0),a,d,e)}}),_.each({slideDown:E("show"),slideUp:E("hide"),slideToggle:E("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){_.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),_.timers=[],_.fx.tick=function(){var a,b=0,c=_.timers;for(Yb=_.now();b1)},removeAttr:function(a){return this.each(function(){_.removeAttr(this,a)})}}),_.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===zb?_.prop(a,b,c):(1===f&&_.isXMLDoc(a)||(b=b.toLowerCase(),d=_.attrHooks[b]||(_.expr.match.bool.test(b)?ec:dc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=_.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void _.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(nb);if(f&&1===a.nodeType)for(;c=f[e++];)d=_.propFix[c]||c,_.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)},attrHooks:{type:{set:function(a,b){if(!Y.radioValue&&"radio"===b&&_.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),ec={set:function(a,b,c){return b===!1?_.removeAttr(a,c):a.setAttribute(c,c),c}},_.each(_.expr.match.bool.source.match(/\w+/g),function(a,b){var c=fc[b]||_.find.attr;fc[b]=function(a,b,d){var e,f;return d||(f=fc[b],fc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,fc[b]=f),e}});var gc=/^(?:input|select|textarea|button)$/i;_.fn.extend({prop:function(a,b){return qb(this,_.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[_.propFix[a]||a]})}}),_.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!_.isXMLDoc(a),f&&(b=_.propFix[b]||b,e=_.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){return a.hasAttribute("tabindex")||gc.test(a.nodeName)||a.href?a.tabIndex:-1}}}}),Y.optSelected||(_.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null}}),_.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){_.propFix[this.toLowerCase()]=this});var hc=/[\t\r\n\f]/g;_.fn.extend({addClass:function(a){var b,c,d,e,f,g,h="string"==typeof a&&a,i=0,j=this.length;if(_.isFunction(a))return this.each(function(b){_(this).addClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(nb)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(hc," "):" ")){for(f=0;e=b[f++];)d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=_.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0===arguments.length||"string"==typeof a&&a,i=0,j=this.length;if(_.isFunction(a))return this.each(function(b){_(this).removeClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(nb)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(hc," "):"")){for(f=0;e=b[f++];)for(;d.indexOf(" "+e+" ")>=0;)d=d.replace(" "+e+" "," ");g=a?_.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(_.isFunction(a)?function(c){_(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c)for(var b,d=0,e=_(this),f=a.match(nb)||[];b=f[d++];)e.hasClass(b)?e.removeClass(b):e.addClass(b);else(c===zb||"boolean"===c)&&(this.className&&rb.set(this,"__className__",this.className),this.className=this.className||a===!1?"":rb.get(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(hc," ").indexOf(b)>=0)return!0;return!1}});var ic=/\r/g;_.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=_.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,_(this).val()):a,null==e?e="":"number"==typeof e?e+="":_.isArray(e)&&(e=_.map(e,function(a){return null==a?"":a+""})),b=_.valHooks[this.type]||_.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=_.valHooks[e.type]||_.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(ic,""):null==c?"":c)}}}),_.extend({valHooks:{option:{get:function(a){var b=_.find.attr(a,"value");return null!=b?b:_.trim(_.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(Y.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&_.nodeName(c.parentNode,"optgroup"))){if(b=_(c).val(),f)return b;g.push(b)}return g},set:function(a,b){for(var c,d,e=a.options,f=_.makeArray(b),g=e.length;g--;)d=e[g],(d.selected=_.inArray(d.value,f)>=0)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),_.each(["radio","checkbox"],function(){_.valHooks[this]={set:function(a,b){return _.isArray(b)?a.checked=_.inArray(_(a).val(),b)>=0:void 0}},Y.checkOn||(_.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})}),_.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){_.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),_.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var jc=_.now(),kc=/\?/;_.parseJSON=function(a){return JSON.parse(a+"")},_.parseXML=function(a){var b,c;if(!a||"string"!=typeof a)return null;try{c=new DOMParser,b=c.parseFromString(a,"text/xml")}catch(d){b=void 0}return(!b||b.getElementsByTagName("parsererror").length)&&_.error("Invalid XML: "+a),b};var lc,mc,nc=/#.*$/,oc=/([?&])_=[^&]*/,pc=/^(.*?):[ \t]*([^\r\n]*)$/gm,qc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,rc=/^(?:GET|HEAD)$/,sc=/^\/\//,tc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,uc={},vc={},wc="*/".concat("*");try{mc=location.href}catch(xc){mc=Z.createElement("a"),mc.href="",mc=mc.href}lc=tc.exec(mc.toLowerCase())||[],_.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:mc,type:"GET",isLocal:qc.test(lc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":wc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":_.parseJSON,"text xml":_.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?L(L(a,_.ajaxSettings),b):L(_.ajaxSettings,a)},ajaxPrefilter:J(uc),ajaxTransport:J(vc),ajax:function(a,b){function c(a,b,c,g){var i,k,r,s,u,w=b;2!==t&&(t=2,h&&clearTimeout(h),d=void 0,f=g||"",v.readyState=a>0?4:0,i=a>=200&&300>a||304===a,c&&(s=M(l,v,c)),s=N(l,s,v,i),i?(l.ifModified&&(u=v.getResponseHeader("Last-Modified"),u&&(_.lastModified[e]=u),u=v.getResponseHeader("etag"),u&&(_.etag[e]=u)),204===a||"HEAD"===l.type?w="nocontent":304===a?w="notmodified":(w=s.state,k=s.data,r=s.error,i=!r)):(r=w,(a||!w)&&(w="error",0>a&&(a=0))),v.status=a,v.statusText=(b||w)+"",i?o.resolveWith(m,[k,w,v]):o.rejectWith(m,[v,w,r]),v.statusCode(q),q=void 0,j&&n.trigger(i?"ajaxSuccess":"ajaxError",[v,l,i?k:r]),p.fireWith(m,[v,w]),j&&(n.trigger("ajaxComplete",[v,l]),--_.active||_.event.trigger("ajaxStop")))}"object"==typeof a&&(b=a,a=void 0),b=b||{};var d,e,f,g,h,i,j,k,l=_.ajaxSetup({},b),m=l.context||l,n=l.context&&(m.nodeType||m.jquery)?_(m):_.event,o=_.Deferred(),p=_.Callbacks("once memory"),q=l.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!g)for(g={};b=pc.exec(f);)g[b[1].toLowerCase()]=b[2];b=g[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(l.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return d&&d.abort(b),c(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,l.url=((a||l.url||mc)+"").replace(nc,"").replace(sc,lc[1]+"//"),l.type=b.method||b.type||l.method||l.type,l.dataTypes=_.trim(l.dataType||"*").toLowerCase().match(nb)||[""],null==l.crossDomain&&(i=tc.exec(l.url.toLowerCase()),l.crossDomain=!(!i||i[1]===lc[1]&&i[2]===lc[2]&&(i[3]||("http:"===i[1]?"80":"443"))===(lc[3]||("http:"===lc[1]?"80":"443")))),l.data&&l.processData&&"string"!=typeof l.data&&(l.data=_.param(l.data,l.traditional)),K(uc,l,b,v),2===t)return v;j=l.global,j&&0===_.active++&&_.event.trigger("ajaxStart"),l.type=l.type.toUpperCase(),l.hasContent=!rc.test(l.type),e=l.url,l.hasContent||(l.data&&(e=l.url+=(kc.test(e)?"&":"?")+l.data,delete l.data),l.cache===!1&&(l.url=oc.test(e)?e.replace(oc,"$1_="+jc++):e+(kc.test(e)?"&":"?")+"_="+jc++)),l.ifModified&&(_.lastModified[e]&&v.setRequestHeader("If-Modified-Since",_.lastModified[e]),_.etag[e]&&v.setRequestHeader("If-None-Match",_.etag[e])),(l.data&&l.hasContent&&l.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",l.contentType),v.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+("*"!==l.dataTypes[0]?", "+wc+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)v.setRequestHeader(k,l.headers[k]);if(l.beforeSend&&(l.beforeSend.call(m,v,l)===!1||2===t))return v.abort();u="abort";for(k in{success:1,error:1,complete:1})v[k](l[k]);if(d=K(vc,l,b,v)){v.readyState=1,j&&n.trigger("ajaxSend",[v,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){v.abort("timeout")},l.timeout));try{t=1,d.send(r,c)}catch(w){if(!(2>t))throw w;c(-1,w)}}else c(-1,"No Transport");return v},getJSON:function(a,b,c){return _.get(a,b,c,"json")},getScript:function(a,b){return _.get(a,void 0,b,"script")}}),_.each(["get","post"],function(a,b){_[b]=function(a,c,d,e){return _.isFunction(c)&&(e=e||d,d=c,c=void 0),_.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),_.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){_.fn[b]=function(a){return this.on(b,a)}}),_._evalUrl=function(a){return _.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},_.fn.extend({wrapAll:function(a){var b;return _.isFunction(a)?this.each(function(b){_(this).wrapAll(a.call(this,b))}):(this[0]&&(b=_(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){for(var a=this;a.firstElementChild;)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return this.each(_.isFunction(a)?function(b){_(this).wrapInner(a.call(this,b))}:function(){var b=_(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=_.isFunction(a);return this.each(function(c){_(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){_.nodeName(this,"body")||_(this).replaceWith(this.childNodes)}).end()}}),_.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0},_.expr.filters.visible=function(a){return!_.expr.filters.hidden(a)};var yc=/%20/g,zc=/\[\]$/,Ac=/\r?\n/g,Bc=/^(?:submit|button|image|reset|file)$/i,Cc=/^(?:input|select|textarea|keygen)/i;_.param=function(a,b){var c,d=[],e=function(a,b){b=_.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=_.ajaxSettings&&_.ajaxSettings.traditional),_.isArray(a)||a.jquery&&!_.isPlainObject(a))_.each(a,function(){e(this.name,this.value)
+});else for(c in a)O(c,a[c],b,e);return d.join("&").replace(yc,"+")},_.fn.extend({serialize:function(){return _.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=_.prop(this,"elements");return a?_.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!_(this).is(":disabled")&&Cc.test(this.nodeName)&&!Bc.test(a)&&(this.checked||!yb.test(a))}).map(function(a,b){var c=_(this).val();return null==c?null:_.isArray(c)?_.map(c,function(a){return{name:b.name,value:a.replace(Ac,"\r\n")}}):{name:b.name,value:c.replace(Ac,"\r\n")}}).get()}}),_.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(a){}};var Dc=0,Ec={},Fc={0:200,1223:204},Gc=_.ajaxSettings.xhr();a.ActiveXObject&&_(a).on("unload",function(){for(var a in Ec)Ec[a]()}),Y.cors=!!Gc&&"withCredentials"in Gc,Y.ajax=Gc=!!Gc,_.ajaxTransport(function(a){var b;return Y.cors||Gc&&!a.crossDomain?{send:function(c,d){var e,f=a.xhr(),g=++Dc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)f.setRequestHeader(e,c[e]);b=function(a){return function(){b&&(delete Ec[g],b=f.onload=f.onerror=null,"abort"===a?f.abort():"error"===a?d(f.status,f.statusText):d(Fc[f.status]||f.status,f.statusText,"string"==typeof f.responseText?{text:f.responseText}:void 0,f.getAllResponseHeaders()))}},f.onload=b(),f.onerror=b("error"),b=Ec[g]=b("abort");try{f.send(a.hasContent&&a.data||null)}catch(h){if(b)throw h}},abort:function(){b&&b()}}:void 0}),_.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return _.globalEval(a),a}}}),_.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),_.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(d,e){b=_("