From fe69b92b97ca26f315fbd1a978e5445adff3ded3 Mon Sep 17 00:00:00 2001 From: Geoff Kimball Date: Mon, 15 Feb 2016 11:37:07 -0800 Subject: [PATCH] Bump to version 6.2.0-rc.1 --- .babelrc | 1 + bower.json | 2 +- composer.json | 2 +- dist/foundation-flex.css | 1483 +++- dist/foundation-flex.min.css | 2 +- dist/foundation.css | 584 +- dist/foundation.js | 13492 +++++++++++++++------------------ dist/foundation.min.css | 2 +- dist/foundation.min.js | 7 +- docs/pages/grid.md | 2 +- docs/pages/installation.md | 4 +- gulp/deploy.js | 2 + js/foundation.core.js | 2 +- meteor-README.md | 2 +- package.js | 2 +- package.json | 3 +- scss/foundation.scss | 2 +- scss/settings/_settings.scss | 105 +- 18 files changed, 7613 insertions(+), 8086 deletions(-) diff --git a/.babelrc b/.babelrc index 7a33597519..82695dcd0b 100644 --- a/.babelrc +++ b/.babelrc @@ -8,6 +8,7 @@ "transform-es2015-modules-umd", "transform-es2015-template-literals", "transform-es2015-parameters", + "transform-es2015-shorthand-properties", "transform-es2015-spread", ] } diff --git a/bower.json b/bower.json index 770aff17dd..a7b067455e 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "foundation-sites", - "version": "6.1.2", + "version": "6.2.0-rc.1", "main": [ "scss/foundation.scss", "dist/foundation.js" diff --git a/composer.json b/composer.json index 072592c6cc..b4306c3d8c 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "zurb/foundation-sites", "description": "The most advanced responsive front-end framework in the world.", - "version": "6.1.2", + "version": "6.2.0-rc.1", "keywords": [ "css", "scss", diff --git a/dist/foundation-flex.css b/dist/foundation-flex.css index b4c856c107..b4c7177548 100644 --- a/dist/foundation-flex.css +++ b/dist/foundation-flex.css @@ -1,7 +1,7 @@ @charset "UTF-8"; /** * Foundation for Sites by ZURB - * Version 6.1.2 + * Version 6.2.0-rc.1 * foundation.zurb.com * Licensed under MIT Open Source */ @@ -426,6 +426,152 @@ button { .is-hidden { display: none !important; } +.align-right { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + +.align-center { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + +.align-justify { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + +.align-spaced { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + +.align-top { + -webkit-align-items: flex-start; + -ms-flex-align: start; + -ms-grid-row-align: flex-start; + align-items: flex-start; } + +.align-self-top { + -webkit-align-self: flex-start; + -ms-flex-item-align: start; + align-self: flex-start; } + +.align-bottom { + -webkit-align-items: flex-end; + -ms-flex-align: end; + -ms-grid-row-align: flex-end; + align-items: flex-end; } + +.align-self-bottom { + -webkit-align-self: flex-end; + -ms-flex-item-align: end; + align-self: flex-end; } + +.align-middle { + -webkit-align-items: center; + -ms-flex-align: center; + -ms-grid-row-align: center; + align-items: center; } + +.align-self-middle { + -webkit-align-self: center; + -ms-flex-item-align: center; + align-self: center; } + +.align-stretch { + -webkit-align-items: stretch; + -ms-flex-align: stretch; + -ms-grid-row-align: stretch; + align-items: stretch; } + +.align-self-stretch { + -webkit-align-self: stretch; + -ms-flex-item-align: stretch; + align-self: stretch; } + +.small { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + +.small { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + +.small { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + +.small { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + +.small { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + +.small { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + +@media screen and (min-width: 40em) { + .medium { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + .medium { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + .medium { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + .medium { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + .medium { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + .medium { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } } + +@media screen and (min-width: 64em) { + .large { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + .large { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + .large { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + .large { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + .large { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + .large { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } } + .row { max-width: 75rem; margin-left: auto; @@ -450,11 +596,11 @@ button { padding-right: 0; } .column, .columns { - padding-left: 0.625rem; - padding-right: 0.625rem; -webkit-flex: 1 1 0px; -ms-flex: 1 1 0px; - flex: 1 1 0px; } + flex: 1 1 0px; + padding-left: 0.625rem; + padding-right: 0.625rem; } @media screen and (min-width: 40em) { .column, .columns { padding-left: 0.9375rem; @@ -576,35 +722,145 @@ button { .small-offset-11 { margin-left: 91.66667%; } -.small-order-1 { - -webkit-order: 1; - -ms-flex-order: 1; - order: 1; } +.small-up-1 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-1 > .column, .small-up-1 > .columns { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } -.small-order-2 { - -webkit-order: 2; - -ms-flex-order: 2; - order: 2; } +.small-up-2 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-2 > .column, .small-up-2 > .columns { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; } -.small-order-3 { - -webkit-order: 3; - -ms-flex-order: 3; - order: 3; } +.small-up-3 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-3 > .column, .small-up-3 > .columns { + -webkit-flex: 0 0 33.33333%; + -ms-flex: 0 0 33.33333%; + flex: 0 0 33.33333%; + max-width: 33.33333%; } -.small-order-4 { - -webkit-order: 4; - -ms-flex-order: 4; - order: 4; } +.small-up-4 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-4 > .column, .small-up-4 > .columns { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; } -.small-order-5 { - -webkit-order: 5; - -ms-flex-order: 5; - order: 5; } +.small-up-5 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-5 > .column, .small-up-5 > .columns { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; + max-width: 20%; } + +.small-up-6 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .small-up-6 > .column, .small-up-6 > .columns { + -webkit-flex: 0 0 16.66667%; + -ms-flex: 0 0 16.66667%; + flex: 0 0 16.66667%; + max-width: 16.66667%; } -.small-order-6 { - -webkit-order: 6; - -ms-flex-order: 6; - order: 6; } +.small-up-1 > .column, .small-up-1 > .columns { + width: 100%; + float: left; } + .small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) { + clear: both; } + .small-up-1 > .column:last-child, .small-up-1 > .columns:last-child { + float: left; } + +.small-up-2 > .column, .small-up-2 > .columns { + width: 50%; + float: left; } + .small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) { + clear: both; } + .small-up-2 > .column:last-child, .small-up-2 > .columns:last-child { + float: left; } + +.small-up-3 > .column, .small-up-3 > .columns { + width: 33.33333%; + float: left; } + .small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) { + clear: both; } + .small-up-3 > .column:last-child, .small-up-3 > .columns:last-child { + float: left; } + +.small-up-4 > .column, .small-up-4 > .columns { + width: 25%; + float: left; } + .small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) { + clear: both; } + .small-up-4 > .column:last-child, .small-up-4 > .columns:last-child { + float: left; } + +.small-up-5 > .column, .small-up-5 > .columns { + width: 20%; + float: left; } + .small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) { + clear: both; } + .small-up-5 > .column:last-child, .small-up-5 > .columns:last-child { + float: left; } + +.small-up-6 > .column, .small-up-6 > .columns { + width: 16.66667%; + float: left; } + .small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) { + clear: both; } + .small-up-6 > .column:last-child, .small-up-6 > .columns:last-child { + float: left; } + +.small-up-7 > .column, .small-up-7 > .columns { + width: 14.28571%; + float: left; } + .small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) { + clear: both; } + .small-up-7 > .column:last-child, .small-up-7 > .columns:last-child { + float: left; } + +.small-up-8 > .column, .small-up-8 > .columns { + width: 12.5%; + float: left; } + .small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) { + clear: none; } + .small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) { + clear: both; } + .small-up-8 > .column:last-child, .small-up-8 > .columns:last-child { + float: left; } .small-collapse > .column, .small-collapse > .columns { padding-left: 0; @@ -699,30 +955,132 @@ button { max-width: 100%; } .medium-offset-11 { margin-left: 91.66667%; } - .medium-order-1 { - -webkit-order: 1; - -ms-flex-order: 1; - order: 1; } - .medium-order-2 { - -webkit-order: 2; - -ms-flex-order: 2; - order: 2; } - .medium-order-3 { - -webkit-order: 3; - -ms-flex-order: 3; - order: 3; } - .medium-order-4 { - -webkit-order: 4; - -ms-flex-order: 4; - order: 4; } - .medium-order-5 { - -webkit-order: 5; - -ms-flex-order: 5; - order: 5; } - .medium-order-6 { - -webkit-order: 6; - -ms-flex-order: 6; - order: 6; } } + .medium-up-1 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-1 > .column, .medium-up-1 > .columns { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } + .medium-up-2 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-2 > .column, .medium-up-2 > .columns { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; } + .medium-up-3 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-3 > .column, .medium-up-3 > .columns { + -webkit-flex: 0 0 33.33333%; + -ms-flex: 0 0 33.33333%; + flex: 0 0 33.33333%; + max-width: 33.33333%; } + .medium-up-4 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-4 > .column, .medium-up-4 > .columns { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; } + .medium-up-5 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-5 > .column, .medium-up-5 > .columns { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; + max-width: 20%; } + .medium-up-6 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .medium-up-6 > .column, .medium-up-6 > .columns { + -webkit-flex: 0 0 16.66667%; + -ms-flex: 0 0 16.66667%; + flex: 0 0 16.66667%; + max-width: 16.66667%; } + .medium-up-1 > .column, .medium-up-1 > .columns { + width: 100%; + float: left; } + .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) { + clear: both; } + .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child { + float: left; } + .medium-up-2 > .column, .medium-up-2 > .columns { + width: 50%; + float: left; } + .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) { + clear: both; } + .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child { + float: left; } + .medium-up-3 > .column, .medium-up-3 > .columns { + width: 33.33333%; + float: left; } + .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) { + clear: both; } + .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child { + float: left; } + .medium-up-4 > .column, .medium-up-4 > .columns { + width: 25%; + float: left; } + .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) { + clear: both; } + .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child { + float: left; } + .medium-up-5 > .column, .medium-up-5 > .columns { + width: 20%; + float: left; } + .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) { + clear: both; } + .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child { + float: left; } + .medium-up-6 > .column, .medium-up-6 > .columns { + width: 16.66667%; + float: left; } + .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) { + clear: both; } + .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child { + float: left; } + .medium-up-7 > .column, .medium-up-7 > .columns { + width: 14.28571%; + float: left; } + .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) { + clear: both; } + .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child { + float: left; } + .medium-up-8 > .column, .medium-up-8 > .columns { + width: 12.5%; + float: left; } + .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) { + clear: none; } + .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) { + clear: both; } + .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child { + float: left; } } @media screen and (min-width: 40em) and (min-width: 40em) { .medium-expand { @@ -833,30 +1191,132 @@ button { max-width: 100%; } .large-offset-11 { margin-left: 91.66667%; } - .large-order-1 { - -webkit-order: 1; - -ms-flex-order: 1; - order: 1; } - .large-order-2 { - -webkit-order: 2; - -ms-flex-order: 2; - order: 2; } - .large-order-3 { - -webkit-order: 3; - -ms-flex-order: 3; - order: 3; } - .large-order-4 { - -webkit-order: 4; - -ms-flex-order: 4; - order: 4; } - .large-order-5 { - -webkit-order: 5; - -ms-flex-order: 5; - order: 5; } - .large-order-6 { - -webkit-order: 6; - -ms-flex-order: 6; - order: 6; } } + .large-up-1 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-1 > .column, .large-up-1 > .columns { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } + .large-up-2 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-2 > .column, .large-up-2 > .columns { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; + max-width: 50%; } + .large-up-3 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-3 > .column, .large-up-3 > .columns { + -webkit-flex: 0 0 33.33333%; + -ms-flex: 0 0 33.33333%; + flex: 0 0 33.33333%; + max-width: 33.33333%; } + .large-up-4 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-4 > .column, .large-up-4 > .columns { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; + max-width: 25%; } + .large-up-5 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-5 > .column, .large-up-5 > .columns { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; + max-width: 20%; } + .large-up-6 { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .large-up-6 > .column, .large-up-6 > .columns { + -webkit-flex: 0 0 16.66667%; + -ms-flex: 0 0 16.66667%; + flex: 0 0 16.66667%; + max-width: 16.66667%; } + .large-up-1 > .column, .large-up-1 > .columns { + width: 100%; + float: left; } + .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) { + clear: both; } + .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child { + float: left; } + .large-up-2 > .column, .large-up-2 > .columns { + width: 50%; + float: left; } + .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) { + clear: both; } + .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child { + float: left; } + .large-up-3 > .column, .large-up-3 > .columns { + width: 33.33333%; + float: left; } + .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) { + clear: both; } + .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child { + float: left; } + .large-up-4 > .column, .large-up-4 > .columns { + width: 25%; + float: left; } + .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) { + clear: both; } + .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child { + float: left; } + .large-up-5 > .column, .large-up-5 > .columns { + width: 20%; + float: left; } + .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) { + clear: both; } + .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child { + float: left; } + .large-up-6 > .column, .large-up-6 > .columns { + width: 16.66667%; + float: left; } + .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) { + clear: both; } + .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child { + float: left; } + .large-up-7 > .column, .large-up-7 > .columns { + width: 14.28571%; + float: left; } + .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) { + clear: both; } + .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child { + float: left; } + .large-up-8 > .column, .large-up-8 > .columns { + width: 12.5%; + float: left; } + .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) { + clear: none; } + .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) { + clear: both; } + .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child { + float: left; } } @media screen and (min-width: 64em) and (min-width: 64em) { .large-expand { @@ -888,65 +1348,21 @@ button { flex: 0 0 auto; max-width: 100%; } -.row.align-right { - -webkit-justify-content: flex-end; - -ms-flex-pack: end; - justify-content: flex-end; } - -.row.align-center { - -webkit-justify-content: center; - -ms-flex-pack: center; - justify-content: center; } - -.row.align-justify { - -webkit-justify-content: space-between; - -ms-flex-pack: justify; - justify-content: space-between; } - -.row.align-spaced { - -webkit-justify-content: space-around; - -ms-flex-pack: distribute; - justify-content: space-around; } - -.row.align-top { - -webkit-align-items: flex-start; - -ms-flex-align: start; - -ms-grid-row-align: flex-start; - align-items: flex-start; } - .column.align-top, .align-top.columns { -webkit-align-self: flex-start; -ms-flex-item-align: start; align-self: flex-start; } -.row.align-bottom { - -webkit-align-items: flex-end; - -ms-flex-align: end; - -ms-grid-row-align: flex-end; - align-items: flex-end; } - .column.align-bottom, .align-bottom.columns { -webkit-align-self: flex-end; -ms-flex-item-align: end; align-self: flex-end; } -.row.align-middle { - -webkit-align-items: center; - -ms-flex-align: center; - -ms-grid-row-align: center; - align-items: center; } - .column.align-middle, .align-middle.columns { -webkit-align-self: center; -ms-flex-item-align: center; align-self: center; } -.row.align-stretch { - -webkit-align-items: stretch; - -ms-flex-align: stretch; - -ms-grid-row-align: stretch; - align-items: stretch; } - .column.align-stretch, .align-stretch.columns { -webkit-align-self: stretch; -ms-flex-item-align: stretch; @@ -1222,7 +1638,7 @@ kbd { content: " (" attr(title) ")"; } pre, blockquote { - border: 1px solid #999; + border: 1px solid #8a8a8a; page-break-inside: avoid; } thead { display: table-header-group; } @@ -1242,128 +1658,6 @@ kbd { h3 { page-break-after: avoid; } } -.button { - display: inline-block; - text-align: center; - line-height: 1; - cursor: pointer; - -webkit-appearance: none; - transition: background-color 0.25s ease-out, color 0.25s ease-out; - vertical-align: middle; - border: 1px solid transparent; - border-radius: 0; - padding: 0.85em 1em; - margin: 0 0 1rem 0; - font-size: 0.9rem; - background-color: #2199e8; - color: #fff; } - [data-whatinput='mouse'] .button { - outline: 0; } - .button:hover, .button:focus { - background-color: #1583cc; - color: #fff; } - .button.tiny { - font-size: 0.6rem; } - .button.small { - font-size: 0.75rem; } - .button.large { - font-size: 1.25rem; } - .button.expanded { - display: block; - width: 100%; - margin-left: 0; - margin-right: 0; } - .button.primary { - background-color: #2199e8; - color: #fff; } - .button.primary:hover, .button.primary:focus { - background-color: #147cc0; - color: #fff; } - .button.secondary { - background-color: #777; - color: #fff; } - .button.secondary:hover, .button.secondary:focus { - background-color: #5f5f5f; - color: #fff; } - .button.success { - background-color: #3adb76; - color: #fff; } - .button.success:hover, .button.success:focus { - background-color: #22bb5b; - color: #fff; } - .button.alert { - background-color: #ec5840; - color: #fff; } - .button.alert:hover, .button.alert:focus { - background-color: #da3116; - color: #fff; } - .button.warning { - background-color: #ffae00; - color: #fff; } - .button.warning:hover, .button.warning:focus { - background-color: #cc8b00; - color: #fff; } - .button.hollow { - border: 1px solid #2199e8; - color: #2199e8; } - .button.hollow, .button.hollow:hover, .button.hollow:focus { - background-color: transparent; } - .button.hollow:hover, .button.hollow:focus { - border-color: #0c4d78; - color: #0c4d78; } - .button.hollow.primary { - border: 1px solid #2199e8; - color: #2199e8; } - .button.hollow.primary:hover, .button.hollow.primary:focus { - border-color: #0c4d78; - color: #0c4d78; } - .button.hollow.secondary { - border: 1px solid #777; - color: #777; } - .button.hollow.secondary:hover, .button.hollow.secondary:focus { - border-color: #3c3c3c; - color: #3c3c3c; } - .button.hollow.success { - border: 1px solid #3adb76; - color: #3adb76; } - .button.hollow.success:hover, .button.hollow.success:focus { - border-color: #157539; - color: #157539; } - .button.hollow.alert { - border: 1px solid #ec5840; - color: #ec5840; } - .button.hollow.alert:hover, .button.hollow.alert:focus { - border-color: #881f0e; - color: #881f0e; } - .button.hollow.warning { - border: 1px solid #ffae00; - color: #ffae00; } - .button.hollow.warning:hover, .button.hollow.warning:focus { - border-color: #805700; - color: #805700; } - .button.disabled, .button[disabled] { - opacity: 0.25; - cursor: not-allowed; - pointer-events: none; } - .button.dropdown::after { - content: ''; - display: block; - width: 0; - height: 0; - border: inset 0.4em; - border-color: #fefefe transparent transparent; - border-top-style: solid; - border-bottom-width: 0; - position: relative; - top: 0.4em; - float: right; - margin-left: 1em; - display: inline-block; } - .button.arrow-only::after { - margin-left: 0; - float: none; - top: 0.2em; } - [type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea { display: block; @@ -1395,6 +1689,22 @@ textarea { textarea[rows] { height: auto; } +input::-webkit-input-placeholder, +textarea::-webkit-input-placeholder { + color: #cacaca; } + +input::-moz-placeholder, +textarea::-moz-placeholder { + color: #cacaca; } + +input:-ms-input-placeholder, +textarea:-ms-input-placeholder { + color: #cacaca; } + +input::placeholder, +textarea::placeholder { + color: #cacaca; } + input:disabled, input[readonly], textarea:disabled, textarea[readonly] { @@ -1424,7 +1734,7 @@ input[type='search'] { vertical-align: baseline; } label > [type='checkbox'], -label > [type='label'] { +label > [type='radio'] { margin-right: 0.5rem; } [type='file'] { @@ -1445,31 +1755,41 @@ label { margin-top: -0.5rem; font-size: 0.8125rem; font-style: italic; - color: #333; } + color: #0a0a0a; } .input-group { - display: table; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; width: 100%; - margin-bottom: 1rem; } + margin-bottom: 1rem; + -webkit-align-items: stretch; + -ms-flex-align: stretch; + align-items: stretch; } .input-group > :first-child { border-radius: 0 0 0 0; } .input-group > :last-child > * { border-radius: 0 0 0 0; } .input-group-label, .input-group-field, .input-group-button { - display: table-cell; - margin: 0; - vertical-align: middle; } + margin: 0; } .input-group-label { text-align: center; - width: 1%; - height: 100%; padding: 0 1rem; background: #e6e6e6; color: #0a0a0a; border: 1px solid #cacaca; - white-space: nowrap; } + white-space: nowrap; + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } .input-group-label:first-child { border-right: 0; } .input-group-label:last-child { @@ -1477,19 +1797,27 @@ label { .input-group-field { border-radius: 0; - height: 2.5rem; } + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; + width: auto; + height: auto; } .input-group-button { - height: 100%; padding-top: 0; padding-bottom: 0; text-align: center; - width: 1%; } + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } .input-group-button a, .input-group-button input, .input-group-button button { margin: 0; } +.input-group .input-group-button { + display: table-cell; } + fieldset { border: 0; padding: 0; @@ -1522,14 +1850,14 @@ select { border-radius: 0; -webkit-appearance: none; -moz-appearance: none; - background-image: url('data:image/svg+xml;utf8,'); + background-image: url('data:image/svg+xml;utf8,'); background-size: 9px 6px; background-position: right center; background-origin: content-box; background-repeat: no-repeat; } @media screen and (min-width: 0\0) { select { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } } + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg=="); } } select:disabled { background-color: #e6e6e6; cursor: default; } @@ -1555,13 +1883,135 @@ select { .form-error.is-visible { display: block; } +.button { + display: inline-block; + text-align: center; + line-height: 1; + cursor: pointer; + -webkit-appearance: none; + transition: background-color 0.25s ease-out, color 0.25s ease-out; + vertical-align: middle; + border: 1px solid transparent; + border-radius: 0; + padding: 0.85em 1em; + margin: 0 0 1rem 0; + font-size: 0.9rem; + background-color: #2199e8; + color: #fefefe; } + [data-whatinput='mouse'] .button { + outline: 0; } + .button:hover, .button:focus { + background-color: #1583cc; + color: #fefefe; } + .button.tiny { + font-size: 0.6rem; } + .button.small { + font-size: 0.75rem; } + .button.large { + font-size: 1.25rem; } + .button.expanded { + display: block; + width: 100%; + margin-left: 0; + margin-right: 0; } + .button.primary { + background-color: #2199e8; + color: #fefefe; } + .button.primary:hover, .button.primary:focus { + background-color: #147cc0; + color: #fefefe; } + .button.secondary { + background-color: #777; + color: #fefefe; } + .button.secondary:hover, .button.secondary:focus { + background-color: #5f5f5f; + color: #fefefe; } + .button.success { + background-color: #3adb76; + color: #fefefe; } + .button.success:hover, .button.success:focus { + background-color: #22bb5b; + color: #fefefe; } + .button.warning { + background-color: #ffae00; + color: #fefefe; } + .button.warning:hover, .button.warning:focus { + background-color: #cc8b00; + color: #fefefe; } + .button.alert { + background-color: #ec5840; + color: #fefefe; } + .button.alert:hover, .button.alert:focus { + background-color: #da3116; + color: #fefefe; } + .button.hollow { + border: 1px solid #2199e8; + color: #2199e8; } + .button.hollow, .button.hollow:hover, .button.hollow:focus { + background-color: transparent; } + .button.hollow:hover, .button.hollow:focus { + border-color: #0c4d78; + color: #0c4d78; } + .button.hollow.primary { + border: 1px solid #2199e8; + color: #2199e8; } + .button.hollow.primary:hover, .button.hollow.primary:focus { + border-color: #0c4d78; + color: #0c4d78; } + .button.hollow.secondary { + border: 1px solid #777; + color: #777; } + .button.hollow.secondary:hover, .button.hollow.secondary:focus { + border-color: #3c3c3c; + color: #3c3c3c; } + .button.hollow.success { + border: 1px solid #3adb76; + color: #3adb76; } + .button.hollow.success:hover, .button.hollow.success:focus { + border-color: #157539; + color: #157539; } + .button.hollow.warning { + border: 1px solid #ffae00; + color: #ffae00; } + .button.hollow.warning:hover, .button.hollow.warning:focus { + border-color: #805700; + color: #805700; } + .button.hollow.alert { + border: 1px solid #ec5840; + color: #ec5840; } + .button.hollow.alert:hover, .button.hollow.alert:focus { + border-color: #881f0e; + color: #881f0e; } + .button.disabled, .button[disabled] { + opacity: 0.25; + cursor: not-allowed; + pointer-events: none; } + .button.dropdown::after { + content: ''; + display: block; + width: 0; + height: 0; + border: inset 0.4em; + border-color: #fefefe transparent transparent; + border-top-style: solid; + border-bottom-width: 0; + position: relative; + top: 0.4em; + float: right; + margin-left: 1em; + display: inline-block; } + .button.arrow-only::after { + margin-left: 0; + float: none; + top: -0.1em; } + .hide { display: none !important; } .invisible { visibility: hidden; } -@media screen and (min-width: 0em) and (max-width: 39.9375em) { +@media screen and (max-width: 39.9375em) { .hide-for-small-only { display: none !important; } } @@ -1653,7 +2103,13 @@ select { .clearfix::before, .clearfix::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .clearfix::after { clear: both; } @@ -1730,19 +2186,25 @@ select { .badge.success { background: #3adb76; color: #fefefe; } - .badge.alert { - background: #ec5840; - color: #fefefe; } .badge.warning { background: #ffae00; color: #fefefe; } + .badge.alert { + background: #ec5840; + color: #fefefe; } .breadcrumbs { list-style: none; margin: 0 0 1rem 0; } .breadcrumbs::before, .breadcrumbs::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .breadcrumbs::after { clear: both; } .breadcrumbs li { @@ -1767,33 +2229,45 @@ select { .button-group { margin-bottom: 1rem; - font-size: 0.9rem; } + font-size: 0; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-align-items: stretch; + -ms-flex-align: stretch; + align-items: stretch; } .button-group::before, .button-group::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .button-group::after { clear: both; } .button-group .button { - float: left; margin: 0; - font-size: inherit; } + font-size: 0.9rem; + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } .button-group .button:not(:last-child) { - border-right: 1px solid #fefefe; } - .button-group.tiny { + margin-right: 1px; } + .button-group.tiny .button { font-size: 0.6rem; } - .button-group.small { + .button-group.small .button { font-size: 0.75rem; } - .button-group.large { + .button-group.large .button { font-size: 1.25rem; } - .button-group.expanded { - display: table; - table-layout: fixed; - width: 100%; } - .button-group.expanded::before, .button-group.expanded::after { - display: none; } - .button-group.expanded .button { - display: table-cell; - float: none; } + .button-group.expanded .button { + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } .button-group.primary .button { background-color: #2199e8; color: #fefefe; } @@ -1812,33 +2286,48 @@ select { .button-group.success .button:hover, .button-group.success .button:focus { background-color: #22bb5b; color: #fefefe; } - .button-group.alert .button { - background-color: #ec5840; - color: #fefefe; } - .button-group.alert .button:hover, .button-group.alert .button:focus { - background-color: #da3116; - color: #fefefe; } .button-group.warning .button { background-color: #ffae00; color: #fefefe; } .button-group.warning .button:hover, .button-group.warning .button:focus { background-color: #cc8b00; color: #fefefe; } - .button-group.stacked .button, .button-group.stacked-for-small .button { - width: 100%; } - .button-group.stacked .button:not(:last-child), .button-group.stacked-for-small .button:not(:last-child) { - border-right: 1px solid; } + .button-group.alert .button { + background-color: #ec5840; + color: #fefefe; } + .button-group.alert .button:hover, .button-group.alert .button:focus { + background-color: #da3116; + color: #fefefe; } + .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + .button-group.stacked .button:not(:last-child), .button-group.stacked-for-small .button:not(:last-child), .button-group.stacked-for-medium .button:not(:last-child) { + margin-right: 0; } @media screen and (min-width: 40em) { .button-group.stacked-for-small .button { - width: auto; } + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } .button-group.stacked-for-small .button:not(:last-child) { - border-right: 1px solid #fefefe; } } - @media screen and (min-width: 0em) and (max-width: 39.9375em) { + margin-right: 1px; } } + @media screen and (min-width: 64em) { + .button-group.stacked-for-medium .button { + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } + .button-group.stacked-for-medium .button:not(:last-child) { + margin-right: 1px; } } + @media screen and (max-width: 39.9375em) { .button-group.stacked-for-small.expanded { display: block; } .button-group.stacked-for-small.expanded .button { display: block; - border-right: 0; } } + margin-right: 0; } } .callout { margin: 0 0 1rem 0; @@ -1858,10 +2347,10 @@ select { background-color: #ebebeb; } .callout.success { background-color: #e1faea; } - .callout.alert { - background-color: #fce6e2; } .callout.warning { background-color: #fff3d9; } + .callout.alert { + background-color: #fce6e2; } .callout.small { padding-top: 0.5rem; padding-right: 0.5rem; @@ -1889,6 +2378,8 @@ select { .is-drilldown { position: relative; overflow: hidden; } + .is-drilldown li { + display: block !important; } .is-drilldown-submenu { position: absolute; @@ -2095,44 +2586,71 @@ select { .label.success { background: #3adb76; color: #fefefe; } - .label.alert { - background: #ec5840; - color: #fefefe; } .label.warning { background: #ffae00; color: #fefefe; } + .label.alert { + background: #ec5840; + color: #fefefe; } .media-object { margin-bottom: 1rem; - display: block; } + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; } .media-object img { max-width: none; } - @media screen and (min-width: 0em) and (max-width: 39.9375em) { + .media-object.stack-for-small { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + @media screen and (max-width: 39.9375em) { .media-object.stack-for-small .media-object-section { - display: block; padding: 0; - padding-bottom: 1rem; } + padding-bottom: 1rem; + -webkit-flex-basis: 100%; + -ms-flex-preferred-size: 100%; + flex-basis: 100%; + max-width: 100%; } .media-object.stack-for-small .media-object-section img { width: 100%; } } .media-object-section { - display: table-cell; - vertical-align: top; } + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } .media-object-section:first-child { padding-right: 1rem; } .media-object-section:last-child:not(:nth-child(2)) { padding-left: 1rem; } - .media-object-section.middle { - vertical-align: middle; } - .media-object-section.bottom { - vertical-align: bottom; } + .media-object-section.main-section { + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } .menu { margin: 0; - list-style-type: none; } + list-style-type: none; + width: 100%; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; } .menu > li { - display: table-cell; - vertical-align: middle; } + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } [data-whatinput='mouse'] .menu > li { outline: 0; } .menu > li > a { @@ -2143,51 +2661,94 @@ select { .menu a, .menu button { margin-bottom: 0; } - .menu > li > a > img, - .menu > li > a > i { - vertical-align: middle; } - .menu > li > a > span { - vertical-align: middle; } - .menu > li > a > img, - .menu > li > a > i { - display: inline-block; - margin-right: 0.25rem; } + .menu > li > a { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + .menu > li > a { + -webkit-flex-flow: row nowrap; + -ms-flex-flow: row nowrap; + flex-flow: row nowrap; } .menu > li { - display: table-cell; } - .menu.vertical > li { - display: block; } + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } + .menu.vertical { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .menu.vertical > li { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } @media screen and (min-width: 40em) { - .menu.medium-horizontal > li { - display: table-cell; } - .menu.medium-vertical > li { - display: block; } } + .menu.medium-horizontal { + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; } + .menu.medium-horizontal > li { + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } + .menu.medium-vertical { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .menu.medium-vertical > li { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } } @media screen and (min-width: 64em) { - .menu.large-horizontal > li { - display: table-cell; } - .menu.large-vertical > li { - display: block; } } + .menu.large-horizontal { + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; } + .menu.large-horizontal > li { + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } + .menu.large-vertical { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .menu.large-vertical > li { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } } .menu.simple li { line-height: 1; display: inline-block; margin-right: 1rem; } .menu.simple a { padding: 0; } - .menu.align-right > li { - float: right; } - .menu.expanded { - display: table; - table-layout: fixed; + .menu.align-right { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + .menu.expanded > li { + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } + .menu.expanded > li:first-child:last-child { width: 100%; } - .menu.expanded > li:first-child:last-child { - width: 100%; } .menu.icon-top > li > a { - text-align: center; } - .menu.icon-top > li > a > img, - .menu.icon-top > li > a > i { - display: block; - margin: 0 auto 0.25rem; } + -webkit-flex-flow: column nowrap; + -ms-flex-flow: column nowrap; + flex-flow: column nowrap; } .menu.nested { margin-left: 1rem; } + .menu .active > a { + color: #fefefe; + background: #2199e8; } .menu-text { font-weight: bold; @@ -2200,6 +2761,48 @@ select { .no-js [data-responsive-menu] ul { display: none; } +.menu-icon { + position: relative; + display: inline-block; + vertical-align: middle; + cursor: pointer; + width: 20px; + height: 16px; } + .menu-icon::after { + content: ''; + position: absolute; + display: block; + width: 100%; + height: 2px; + background: #fefefe; + top: 0; + left: 0; + box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe; } + .menu-icon:hover::after { + background: #cacaca; + box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; } + +.menu-icon.dark { + position: relative; + display: inline-block; + vertical-align: middle; + cursor: pointer; + width: 20px; + height: 16px; } + .menu-icon.dark::after { + content: ''; + position: absolute; + display: block; + width: 100%; + height: 2px; + background: #0a0a0a; + top: 0; + left: 0; + box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a; } + .menu-icon.dark:hover::after { + background: #8a8a8a; + box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; } + html, body { height: 100%; } @@ -2220,7 +2823,13 @@ body { transition: transform 0.5s ease, -webkit-transform 0.5s ease; } .off-canvas-wrapper-inner::before, .off-canvas-wrapper-inner::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .off-canvas-wrapper-inner::after { clear: both; } @@ -2234,6 +2843,7 @@ body { -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; + padding-bottom: 0.1px; box-shadow: 0 0 10px rgba(10, 10, 10, 0.5); } .js-off-canvas-exit { @@ -2380,7 +2990,13 @@ body { margin-bottom: 1rem; } .pagination::before, .pagination::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .pagination::after { clear: both; } .pagination li { @@ -2414,19 +3030,19 @@ body { .pagination .disabled:hover { background: transparent; } .pagination .ellipsis::after { - content: '…'; + content: '\2026'; padding: 0.1875rem 0.625rem; color: #0a0a0a; } .pagination-previous a::before, .pagination-previous.disabled::before { - content: '«'; + content: '\00ab'; display: inline-block; margin-right: 0.5rem; } .pagination-next a::after, .pagination-next.disabled::after { - content: '»'; + content: '\00bb'; display: inline-block; margin-left: 0.5rem; } @@ -2441,10 +3057,10 @@ body { background-color: #777; } .progress.success .progress-meter { background-color: #3adb76; } - .progress.alert .progress-meter { - background-color: #ec5840; } .progress.warning .progress-meter { background-color: #ffae00; } + .progress.alert .progress-meter { + background-color: #ec5840; } .progress-meter { position: relative; @@ -2587,7 +3203,6 @@ body.is-reveal-open { z-index: 1006; padding: 1rem; border: 1px solid #cacaca; - margin: 6.25rem auto 0; background-color: #fefefe; border-radius: 0; position: absolute; @@ -2801,7 +3416,13 @@ table.hover tr:nth-of-type(even):hover { border: 1px solid #e6e6e6; } .tabs::before, .tabs::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .tabs::after { clear: both; } @@ -2828,8 +3449,7 @@ table.hover tr:nth-of-type(even):hover { display: block; padding: 1.25rem 1.5rem; line-height: 1; - font-size: 12px; - color: #2199e8; } + font-size: 0.75rem; } .tabs-title > a:hover { background: #fefefe; } .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] { @@ -2866,21 +3486,27 @@ table.hover tr:nth-of-type(even):hover { .title-bar { background: #0a0a0a; color: #fefefe; - padding: 0.5rem; } - .title-bar::before, .title-bar::after { - content: ' '; - display: table; } - .title-bar::after { - clear: both; } + padding: 0.5rem; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } .title-bar .menu-icon { margin-left: 0.25rem; margin-right: 0.5rem; } -.title-bar-left { - float: left; } +.title-bar-left, +.title-bar-right { + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } .title-bar-right { - float: right; text-align: right; } .title-bar-title { @@ -2888,27 +3514,6 @@ table.hover tr:nth-of-type(even):hover { vertical-align: middle; display: inline-block; } -.menu-icon { - position: relative; - display: inline-block; - vertical-align: middle; - cursor: pointer; - width: 20px; - height: 16px; } - .menu-icon::after { - content: ''; - position: absolute; - display: block; - width: 100%; - height: 2px; - background: #fefefe; - top: 0; - left: 0; - box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe; } - .menu-icon:hover::after { - background: #cacaca; - box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; } - .menu-icon.dark { position: relative; display: inline-block; @@ -3006,61 +3611,99 @@ table.hover tr:nth-of-type(even):hover { transform: translateY(-50%); } .top-bar { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; padding: 0.5rem; } - .top-bar::before, .top-bar::after { - content: ' '; - display: table; } - .top-bar::after { - clear: both; } .top-bar, .top-bar ul { background-color: #e6e6e6; } .top-bar input { width: 200px; margin-right: 1rem; } + .top-bar .input-group-field { + width: 100%; + margin-right: 0; } .top-bar input.button { width: auto; } @media screen and (max-width: 39.9375em) { - .stacked-for-small .top-bar-title { - width: 100%; } - .stacked-for-small .top-bar-right { - width: 100%; } - .stacked-for-small .top-bar-left { - width: 100%; } } + .stacked-for-small { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .stacked-for-small .top-bar-left, + .stacked-for-small .top-bar-right { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } } @media screen and (max-width: 63.9375em) { - .stacked-for-medium .top-bar-title { - width: 100%; } - .stacked-for-medium .top-bar-right { - width: 100%; } - .stacked-for-medium .top-bar-left { - width: 100%; } } + .stacked-for-medium { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .stacked-for-medium .top-bar-left, + .stacked-for-medium .top-bar-right { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } } @media screen and (max-width: 74.9375em) { - .stacked-for-large .top-bar-title { - width: 100%; } - .stacked-for-large .top-bar-right { - width: 100%; } - .stacked-for-large .top-bar-left { - width: 100%; } } + .stacked-for-large { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } + .stacked-for-large .top-bar-left, + .stacked-for-large .top-bar-right { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } } + +-webkit-flex-wrap: wrap; + +-ms-flex-wrap: wrap; + + flex-wrap: wrap; +.top-bar-left, +.top-bar-right { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; } -@media screen and (min-width: 0em) and (max-width: 39.9375em) { - .top-bar-title { - width: 100%; } +@media screen and (min-width: 40em) { + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + .top-bar-left, .top-bar-right { - width: 100%; } - .top-bar-left { - width: 100%; } } + -webkit-flex: 1 1 0px; + -ms-flex: 1 1 0px; + flex: 1 1 0px; } } .top-bar-title { - float: left; + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; margin-right: 1rem; } -.top-bar-left { - float: left; } - +.top-bar-left, .top-bar-right { - float: right; } + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } /*# sourceMappingURL=foundation-flex.css.map */ diff --git a/dist/foundation-flex.min.css b/dist/foundation-flex.min.css index 17c46aad06..7eb2613ec9 100644 --- a/dist/foundation-flex.min.css +++ b/dist/foundation-flex.min.css @@ -1,2 +1,2 @@ @charset "UTF-8"; -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{font-size:100%;box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{padding:0;margin:0;font-family:Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#0a0a0a;background:#fefefe;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;-ms-interpolation-mode:bicubic;display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px;border-radius:0}select{width:100%;border-radius:0}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{-webkit-appearance:none;-moz-appearance:none;background:transparent;padding:0;border:0;border-radius:0;line-height:1}.is-visible{display:block!important}.is-hidden{display:none!important}.row{max-width:75rem;margin-left:auto;margin-right:auto;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap}.row .row{margin-left:-.625rem;margin-right:-.625rem}@media screen and (min-width:40em){.row .row{margin-left:-.9375rem;margin-right:-.9375rem}}.row.expanded{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-left:0;padding-right:0}.column,.columns{padding-left:.625rem;padding-right:.625rem;-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}@media screen and (min-width:40em){.column,.columns{padding-left:.9375rem;padding-right:.9375rem}}.column.row.row,.row.row.columns{float:none}.row .column.row.row,.row .row.row.columns{padding-left:0;padding-right:0;margin-left:0;margin-right:0}.small-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0}.small-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.small-order-1{-webkit-order:1;-ms-flex-order:1;order:1}.small-order-2{-webkit-order:2;-ms-flex-order:2;order:2}.small-order-3{-webkit-order:3;-ms-flex-order:3;order:3}.small-order-4{-webkit-order:4;-ms-flex-order:4;order:4}.small-order-5{-webkit-order:5;-ms-flex-order:5;order:5}.small-order-6{-webkit-order:6;-ms-flex-order:6;order:6}.small-collapse>.column,.small-collapse>.columns{padding-left:0;padding-right:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-left:.625rem;padding-right:.625rem}@media screen and (min-width:40em){.medium-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0}.medium-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.medium-order-1{-webkit-order:1;-ms-flex-order:1;order:1}.medium-order-2{-webkit-order:2;-ms-flex-order:2;order:2}.medium-order-3{-webkit-order:3;-ms-flex-order:3;order:3}.medium-order-4{-webkit-order:4;-ms-flex-order:4;order:4}.medium-order-5{-webkit-order:5;-ms-flex-order:5;order:5}.medium-order-6{-webkit-order:6;-ms-flex-order:6;order:6}}@media screen and (min-width:40em) and (min-width:40em){.medium-expand{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}.row.medium-unstack .column,.row.medium-unstack .columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:40em){.row.medium-unstack .column,.row.medium-unstack .columns{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width:40em){.medium-collapse>.column,.medium-collapse>.columns{padding-left:0;padding-right:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}@media screen and (min-width:64em){.large-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0}.large-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.large-order-1{-webkit-order:1;-ms-flex-order:1;order:1}.large-order-2{-webkit-order:2;-ms-flex-order:2;order:2}.large-order-3{-webkit-order:3;-ms-flex-order:3;order:3}.large-order-4{-webkit-order:4;-ms-flex-order:4;order:4}.large-order-5{-webkit-order:5;-ms-flex-order:5;order:5}.large-order-6{-webkit-order:6;-ms-flex-order:6;order:6}}@media screen and (min-width:64em) and (min-width:64em){.large-expand{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack .column,.row.large-unstack .columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:64em){.row.large-unstack .column,.row.large-unstack .columns{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width:64em){.large-collapse>.column,.large-collapse>.columns{padding-left:0;padding-right:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}.shrink{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;max-width:100%}.row.align-right{-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.row.align-center{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.row.align-justify{-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.row.align-spaced{-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around}.row.align-top{-webkit-align-items:flex-start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}.align-top.columns,.column.align-top{-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.row.align-bottom{-webkit-align-items:flex-end;-ms-flex-align:end;-ms-grid-row-align:flex-end;align-items:flex-end}.align-bottom.columns,.column.align-bottom{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.row.align-middle{-webkit-align-items:center;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center}.align-middle.columns,.column.align-middle{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.row.align-stretch{-webkit-align-items:stretch;-ms-flex-align:stretch;-ms-grid-row-align:stretch;align-items:stretch}.align-stretch.columns,.column.align-stretch{-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{font-size:inherit;line-height:1.6;margin-bottom:1rem;text-rendering:optimizeLegibility}em,i{font-style:italic}b,em,i,strong{line-height:inherit}b,strong{font-weight:700}small{font-size:80%;line-height:inherit}h1,h2,h3,h4,h5,h6{font-family:Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;font-style:normal;color:inherit;text-rendering:optimizeLegibility;margin-top:0;margin-bottom:.5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#cacaca;line-height:0}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1875rem}h4{font-size:1.125rem}h5{font-size:1.0625rem}h6{font-size:1rem}@media screen and (min-width:40em){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{color:#2199e8;text-decoration:none;line-height:inherit;cursor:pointer}a:focus,a:hover{color:#1585cf}a img{border:0}hr{max-width:75rem;height:0;border-right:0;border-top:0;border-bottom:1px solid #cacaca;border-left:0;margin:1.25rem auto;clear:both}dl,ol,ul{line-height:1.6;margin-bottom:1rem;list-style-position:outside}li{font-size:inherit}ul{list-style-type:disc}ol,ul{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:'\2014 \0020'}abbr{color:#0a0a0a;cursor:help;border-bottom:1px dotted #0a0a0a}code{font-weight:400;border:1px solid #cacaca;padding:.125rem .3125rem .0625rem}code,kbd{font-family:Consolas,Liberation Mono,Courier,monospace;color:#0a0a0a;background-color:#e6e6e6}kbd{padding:.125rem .25rem 0;margin:0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media screen and (min-width:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='#']:after,a[href^='javascript:']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.button{display:inline-block;text-align:center;line-height:1;cursor:pointer;-webkit-appearance:none;transition:background-color .25s ease-out,color .25s ease-out;vertical-align:middle;border:1px solid transparent;border-radius:0;padding:.85em 1em;margin:0 0 1rem;font-size:.9rem;background-color:#2199e8;color:#fff}[data-whatinput=mouse] .button{outline:0}.button:focus,.button:hover{background-color:#1583cc;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-left:0;margin-right:0}.button.primary{background-color:#2199e8;color:#fff}.button.primary:focus,.button.primary:hover{background-color:#147cc0;color:#fff}.button.secondary{background-color:#777;color:#fff}.button.secondary:focus,.button.secondary:hover{background-color:#5f5f5f;color:#fff}.button.success{background-color:#3adb76;color:#fff}.button.success:focus,.button.success:hover{background-color:#22bb5b;color:#fff}.button.alert{background-color:#ec5840;color:#fff}.button.alert:focus,.button.alert:hover{background-color:#da3116;color:#fff}.button.warning{background-color:#ffae00;color:#fff}.button.warning:focus,.button.warning:hover{background-color:#cc8b00;color:#fff}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:focus,.button.hollow:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.primary{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.secondary{border:1px solid #777;color:#777}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#3c3c3c;color:#3c3c3c}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.alert{border:1px solid #ec5840;color:#ec5840}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#881f0e;color:#881f0e}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed;pointer-events:none}.button.dropdown:after{content:'';display:block;width:0;height:0;border:.4em inset;border-color:#fefefe transparent transparent;border-top-style:solid;border-bottom-width:0;position:relative;top:.4em;float:right;margin-left:1em;display:inline-block}.button.arrow-only:after{margin-left:0;float:none;top:.2em}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-family:inherit;font-size:1rem;color:#0a0a0a;background-color:#fefefe;box-shadow:inset 0 1px 2px hsla(0,0%,4%,.1);border-radius:0;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{border:1px solid #8a8a8a;background-color:#fefefe;outline:none;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:default}[type=button],[type=submit]{border-radius:0;-webkit-appearance:none;-moz-appearance:none}input[type=search]{box-sizing:border-box}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}label>[type=checkbox],label>[type=label]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:400;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#333}.input-group{display:table;width:100%;margin-bottom:1rem}.input-group>:first-child,.input-group>:last-child>*{border-radius:0 0 0 0}.input-group-button,.input-group-field,.input-group-label{display:table-cell;margin:0;vertical-align:middle}.input-group-label{text-align:center;width:1%;height:100%;padding:0 1rem;background:#e6e6e6;color:#0a0a0a;border:1px solid #cacaca;white-space:nowrap}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;height:2.5rem}.input-group-button{height:100%;padding-top:0;padding-bottom:0;text-align:center;width:1%}.input-group-button a,.input-group-button button,.input-group-button input{margin:0}fieldset{border:0;padding:0;margin:0}legend{margin-bottom:.5rem;max-width:100%}.fieldset{border:1px solid #cacaca;padding:1.25rem;margin:1.125rem 0}.fieldset legend{background:#fefefe;padding:0 .1875rem;margin:0;margin-left:-.1875rem}select{height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-size:1rem;font-family:inherit;line-height:normal;color:#0a0a0a;background-color:#fefefe;border-radius:0;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;utf8,');background-size:9px 6px;background-position:right center;background-origin:content-box;background-repeat:no-repeat}@media screen and (min-width:0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:disabled{background-color:#e6e6e6;cursor:default}select::-ms-expand{display:none}select[multiple]{height:auto}.is-invalid-input:not(:focus){background-color:rgba(236,88,64,.1);border-color:#ec5840}.form-error,.is-invalid-label{color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.form-error.is-visible{display:block}.hide{display:none!important}.invisible{visibility:hidden}@media screen and (min-width:0em) and (max-width:39.9375em){.hide-for-small-only{display:none!important}}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.show-on-focus:active,.show-on-focus:focus{position:static!important;height:auto;width:auto;overflow:visible;clip:auto}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:landscape){.hide-for-landscape,.show-for-portrait{display:none!important}}@media screen and (orientation:portrait){.hide-for-landscape,.show-for-portrait{display:block!important}}.float-left{float:left!important}.float-right{float:right!important}.float-center{display:block;margin-left:auto;margin-right:auto}.clearfix:after,.clearfix:before{content:' ';display:table}.clearfix:after{clear:both}.accordion{list-style-type:none;background:#fefefe;border:1px solid #e6e6e6;border-bottom:0;border-radius:0;margin-left:0}.accordion-title{display:block;padding:1.25rem 1rem;line-height:1;font-size:.75rem;color:#2199e8;position:relative;border-bottom:1px solid #e6e6e6}.accordion-title:focus,.accordion-title:hover{background-color:#e6e6e6}.accordion-title:before{content:'+';position:absolute;right:1rem;top:50%;margin-top:-.5rem}.is-active>.accordion-title:before{content:'–'}.accordion-content{padding:1rem;display:none;border-bottom:1px solid #e6e6e6;background-color:#fefefe}.is-accordion-submenu-parent>a{position:relative}.is-accordion-submenu-parent>a:after{content:'';display:block;width:0;height:0;border:6px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;position:absolute;top:50%;margin-top:-4px;right:1rem}.is-accordion-submenu-parent[aria-expanded=true]>a:after{-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.badge{display:inline-block;padding:.3em;min-width:2.1em;font-size:.6rem;text-align:center;border-radius:50%;background:#2199e8;color:#fefefe}.badge.secondary{background:#777;color:#fefefe}.badge.success{background:#3adb76;color:#fefefe}.badge.alert{background:#ec5840;color:#fefefe}.badge.warning{background:#ffae00;color:#fefefe}.breadcrumbs{list-style:none;margin:0 0 1rem}.breadcrumbs:after,.breadcrumbs:before{content:' ';display:table}.breadcrumbs:after{clear:both}.breadcrumbs li{float:left;color:#0a0a0a;font-size:.6875rem;cursor:default;text-transform:uppercase}.breadcrumbs li:not(:last-child):after{color:#cacaca;content:"/";margin:0 .75rem;position:relative;top:1px;opacity:1}.breadcrumbs a{color:#2199e8}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .disabled{color:#cacaca}.button-group{margin-bottom:1rem;font-size:.9rem}.button-group:after,.button-group:before{content:' ';display:table}.button-group:after{clear:both}.button-group .button{float:left;margin:0;font-size:inherit}.button-group .button:not(:last-child){border-right:1px solid #fefefe}.button-group.tiny{font-size:.6rem}.button-group.small{font-size:.75rem}.button-group.large{font-size:1.25rem}.button-group.expanded{display:table;table-layout:fixed;width:100%}.button-group.expanded:after,.button-group.expanded:before{display:none}.button-group.expanded .button{display:table-cell;float:none}.button-group.primary .button{background-color:#2199e8;color:#fefefe}.button-group.primary .button:focus,.button-group.primary .button:hover{background-color:#147cc0;color:#fefefe}.button-group.secondary .button{background-color:#777;color:#fefefe}.button-group.secondary .button:focus,.button-group.secondary .button:hover{background-color:#5f5f5f;color:#fefefe}.button-group.success .button{background-color:#3adb76;color:#fefefe}.button-group.success .button:focus,.button-group.success .button:hover{background-color:#22bb5b;color:#fefefe}.button-group.alert .button{background-color:#ec5840;color:#fefefe}.button-group.alert .button:focus,.button-group.alert .button:hover{background-color:#da3116;color:#fefefe}.button-group.warning .button{background-color:#ffae00;color:#fefefe}.button-group.warning .button:focus,.button-group.warning .button:hover{background-color:#cc8b00;color:#fefefe}.button-group.stacked-for-small .button,.button-group.stacked .button{width:100%}.button-group.stacked-for-small .button:not(:last-child),.button-group.stacked .button:not(:last-child){border-right:1px solid}@media screen and (min-width:40em){.button-group.stacked-for-small .button{width:auto}.button-group.stacked-for-small .button:not(:last-child){border-right:1px solid #fefefe}}@media screen and (min-width:0em) and (max-width:39.9375em){.button-group.stacked-for-small.expanded{display:block}.button-group.stacked-for-small.expanded .button{display:block;border-right:0}}.callout{margin:0 0 1rem;padding:1rem;border:1px solid hsla(0,0%,4%,.25);border-radius:0;position:relative;color:#0a0a0a;background-color:#fff}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#def0fc}.callout.secondary{background-color:#ebebeb}.callout.success{background-color:#e1faea}.callout.alert{background-color:#fce6e2}.callout.warning{background-color:#fff3d9}.callout.small{padding:.5rem}.callout.large{padding:3rem}.close-button{position:absolute;color:#8a8a8a;right:1rem;top:.5rem;font-size:2em;line-height:1;cursor:pointer}[data-whatinput=mouse] .close-button{outline:0}.close-button:focus,.close-button:hover{color:#0a0a0a}.is-drilldown{position:relative;overflow:hidden}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;height:100%;width:100%;background:#fefefe;transition:-webkit-transform .15s linear;transition:transform .15s linear;transition:transform .15s linear,-webkit-transform .15s linear}.is-drilldown-submenu.is-active{z-index:1;display:block;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.is-drilldown-submenu.is-closing{-webkit-transform:translateX(100%);transform:translateX(100%)}.is-drilldown-submenu-parent>a{position:relative}.is-drilldown-submenu-parent>a:after{content:'';display:block;width:0;height:0;border:6px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0;position:absolute;top:50%;margin-top:-6px;right:1rem}.js-drilldown-back>a:before{content:'';display:block;width:0;height:0;border:6px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0;display:inline-block;vertical-align:middle;margin-right:.75rem}.dropdown-pane{background-color:#fefefe;border:1px solid #cacaca;border-radius:0;display:block;font-size:1rem;padding:1rem;position:absolute;visibility:hidden;width:300px;z-index:3}.dropdown-pane.is-open{visibility:visible}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}[data-whatinput=mouse] .dropdown.menu a{outline:0}.no-js .dropdown.menu ul{display:none}.dropdown.menu:not(.vertical) .is-dropdown-submenu.first-sub{top:100%;left:0;right:auto}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;left:auto;right:0}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-menu.vertical>li .is-dropdown-submenu{top:0;left:100%}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a:after{float:right;margin-top:3px;margin-left:10px}.is-dropdown-submenu-parent.is-down-arrow a{padding-right:1.5rem;position:relative}.is-dropdown-submenu-parent.is-down-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;position:absolute;top:.825rem;right:5px}.is-dropdown-submenu-parent.is-left-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0;float:left;margin-left:0;margin-right:10px}.is-dropdown-submenu-parent.is-right-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}.is-dropdown-submenu-parent.is-left-arrow.opens-inner .is-dropdown-submenu{right:0;left:auto}.is-dropdown-submenu-parent.is-right-arrow.opens-inner .is-dropdown-submenu{left:0;right:auto}.is-dropdown-submenu-parent.opens-inner .is-dropdown-submenu{top:100%}.is-dropdown-submenu-parent.opens-left .is-dropdown-submenu{left:auto;right:100%}.is-dropdown-submenu{display:none;position:absolute;top:0;left:100%;min-width:200px;z-index:1;background:#fefefe;border:1px solid #cacaca}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active,.is-dropdown-submenu:not(.js-dropdown-nohover)>.is-dropdown-submenu-parent:hover>.is-dropdown-submenu{display:block}.flex-video{position:relative;height:0;padding-bottom:75%;margin-bottom:1rem;overflow:hidden}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen{padding-bottom:56.25%}.flex-video.vimeo{padding-top:0}.label{display:inline-block;padding:.33333rem .5rem;font-size:.8rem;line-height:1;white-space:nowrap;cursor:default;border-radius:0;background:#2199e8;color:#fefefe}.label.secondary{background:#777;color:#fefefe}.label.success{background:#3adb76;color:#fefefe}.label.alert{background:#ec5840;color:#fefefe}.label.warning{background:#ffae00;color:#fefefe}.media-object{margin-bottom:1rem;display:block}.media-object img{max-width:none}@media screen and (min-width:0em) and (max-width:39.9375em){.media-object.stack-for-small .media-object-section{display:block;padding:0;padding-bottom:1rem}.media-object.stack-for-small .media-object-section img{width:100%}}.media-object-section{display:table-cell;vertical-align:top}.media-object-section:first-child{padding-right:1rem}.media-object-section:last-child:not(:nth-child(2)){padding-left:1rem}.media-object-section.middle{vertical-align:middle}.media-object-section.bottom{vertical-align:bottom}.menu{margin:0;list-style-type:none}.menu>li{display:table-cell;vertical-align:middle}[data-whatinput=mouse] .menu>li{outline:0}.menu>li>a{display:block;padding:.7rem 1rem;line-height:1}.menu a,.menu button,.menu input{margin-bottom:0}.menu>li>a>i,.menu>li>a>img,.menu>li>a>span{vertical-align:middle}.menu>li>a>i,.menu>li>a>img{display:inline-block;margin-right:.25rem}.menu>li{display:table-cell}.menu.vertical>li{display:block}@media screen and (min-width:40em){.menu.medium-horizontal>li{display:table-cell}.menu.medium-vertical>li{display:block}}@media screen and (min-width:64em){.menu.large-horizontal>li{display:table-cell}.menu.large-vertical>li{display:block}}.menu.simple li{line-height:1;display:inline-block;margin-right:1rem}.menu.simple a{padding:0}.menu.align-right>li{float:right}.menu.expanded{display:table;table-layout:fixed;width:100%}.menu.expanded>li:first-child:last-child{width:100%}.menu.icon-top>li>a{text-align:center}.menu.icon-top>li>a>i,.menu.icon-top>li>a>img{display:block;margin:0 auto .25rem}.menu.nested{margin-left:1rem}.menu-text{font-weight:700;color:inherit;line-height:1;padding-top:0;padding-bottom:0;padding:.7rem 1rem}.no-js [data-responsive-menu] ul{display:none}body,html{height:100%}.off-canvas-wrapper{width:100%;overflow-x:hidden;position:relative;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-overflow-scrolling:auto}.off-canvas-wrapper-inner{position:relative;width:100%;transition:-webkit-transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease}.off-canvas-wrapper-inner:after,.off-canvas-wrapper-inner:before{content:' ';display:table}.off-canvas-wrapper-inner:after{clear:both}.off-canvas-content{min-height:100%;background:#fefefe;transition:-webkit-transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;box-shadow:0 0 10px hsla(0,0%,4%,.5)}.js-off-canvas-exit{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:hsla(0,0%,100%,.25);cursor:pointer;transition:background .5s ease}.off-canvas{position:absolute;background:#e6e6e6;z-index:-1;max-height:100%;overflow-y:auto;-webkit-transform:translateX(0);transform:translateX(0)}[data-whatinput=mouse] .off-canvas{outline:0}.off-canvas.position-left{left:-250px;top:0;width:250px}.is-open-left{-webkit-transform:translateX(250px);transform:translateX(250px)}.off-canvas.position-right{right:-250px;top:0;width:250px}.is-open-right{-webkit-transform:translateX(-250px);transform:translateX(-250px)}@media screen and (min-width:40em){.position-left.reveal-for-medium{left:0;z-index:auto;position:fixed}.position-left.reveal-for-medium~.off-canvas-content{margin-left:250px}.position-right.reveal-for-medium{right:0;z-index:auto;position:fixed}.position-right.reveal-for-medium~.off-canvas-content{margin-right:250px}}@media screen and (min-width:64em){.position-left.reveal-for-large{left:0;z-index:auto;position:fixed}.position-left.reveal-for-large~.off-canvas-content{margin-left:250px}.position-right.reveal-for-large{right:0;z-index:auto;position:fixed}.position-right.reveal-for-large~.off-canvas-content{margin-right:250px}}.orbit,.orbit-container{position:relative}.orbit-container{margin:0;overflow:hidden;list-style:none}.orbit-slide{width:100%;max-height:100%}.orbit-slide.no-motionui.is-active{top:0;left:0}.orbit-figure{margin:0}.orbit-image{margin:0;width:100%;max-width:100%}.orbit-caption{bottom:0;width:100%;margin-bottom:0;background-color:hsla(0,0%,4%,.5)}.orbit-caption,.orbit-next,.orbit-previous{position:absolute;padding:1rem;color:#fefefe}.orbit-next,.orbit-previous{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:3}[data-whatinput=mouse] .orbit-next,[data-whatinput=mouse] .orbit-previous{outline:0}.orbit-next:active,.orbit-next:focus,.orbit-next:hover,.orbit-previous:active,.orbit-previous:focus,.orbit-previous:hover{background-color:hsla(0,0%,4%,.5)}.orbit-previous{left:0}.orbit-next{left:auto;right:0}.orbit-bullets{position:relative;margin-top:.8rem;margin-bottom:.8rem;text-align:center}[data-whatinput=mouse] .orbit-bullets{outline:0}.orbit-bullets button{width:1.2rem;height:1.2rem;margin:.1rem;background-color:#cacaca;border-radius:50%}.orbit-bullets button.is-active,.orbit-bullets button:hover{background-color:#8a8a8a}.pagination{margin-left:0;margin-bottom:1rem}.pagination:after,.pagination:before{content:' ';display:table}.pagination:after{clear:both}.pagination li{font-size:.875rem;margin-right:.0625rem;border-radius:0;display:none}.pagination li:first-child,.pagination li:last-child{display:inline-block}@media screen and (min-width:40em){.pagination li{display:inline-block}}.pagination a,.pagination button{color:#0a0a0a;display:block;padding:.1875rem .625rem;border-radius:0}.pagination a:hover,.pagination button:hover{background:#e6e6e6}.pagination .current{padding:.1875rem .625rem;background:#2199e8;color:#fefefe;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#cacaca;cursor:default}.pagination .disabled:hover{background:transparent}.pagination .ellipsis:after{content:'…';padding:.1875rem .625rem;color:#0a0a0a}.pagination-previous.disabled:before,.pagination-previous a:before{content:'«';display:inline-block;margin-right:.5rem}.pagination-next.disabled:after,.pagination-next a:after{content:'»';display:inline-block;margin-left:.5rem}.progress{background-color:#cacaca;height:1rem;margin-bottom:1rem;border-radius:0}.progress.primary .progress-meter{background-color:#2199e8}.progress.secondary .progress-meter{background-color:#777}.progress.success .progress-meter{background-color:#3adb76}.progress.alert .progress-meter{background-color:#ec5840}.progress.warning .progress-meter{background-color:#ffae00}.progress-meter{position:relative;display:block;width:0;height:100%;background-color:#2199e8}.progress-meter-text{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);position:absolute;margin:0;font-size:.75rem;font-weight:700;color:#fefefe;white-space:nowrap}.slider{position:relative;height:.5rem;margin-top:1.25rem;margin-bottom:2.25rem;background-color:#e6e6e6;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:none;touch-action:none}.slider-fill{position:absolute;top:0;left:0;display:inline-block;max-width:100%;height:.5rem;background-color:#cacaca;transition:all .2s ease-in-out}.slider-fill.is-dragging{transition:all 0s linear}.slider-handle{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);position:absolute;left:0;z-index:1;display:inline-block;width:1.4rem;height:1.4rem;background-color:#2199e8;transition:all .2s ease-in-out;-ms-touch-action:manipulation;touch-action:manipulation;border-radius:0}[data-whatinput=mouse] .slider-handle{outline:0}.slider-handle:hover{background-color:#1583cc}.slider-handle.is-dragging{transition:all 0s linear}.slider.disabled,.slider[disabled]{opacity:.25;cursor:not-allowed}.slider.vertical{display:inline-block;width:.5rem;height:12.5rem;margin:0 1.25rem;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.slider.vertical .slider-fill{top:0;width:.5rem;max-height:100%}.slider.vertical .slider-handle{position:absolute;top:0;left:50%;width:1.4rem;height:1.4rem;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.sticky-container{position:relative}.sticky{position:absolute;z-index:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.sticky.is-stuck{position:fixed;z-index:2}.sticky.is-stuck.is-at-top{top:0}.sticky.is-stuck.is-at-bottom{bottom:0}.sticky.is-anchored{position:absolute;left:auto;right:auto}.sticky.is-anchored.is-at-bottom{bottom:0}body.is-reveal-open{overflow:hidden}.reveal-overlay{display:none;position:fixed;top:0;bottom:0;left:0;right:0;z-index:4;background-color:hsla(0,0%,4%,.45);overflow-y:scroll}.reveal{display:none;z-index:5;padding:1rem;border:1px solid #cacaca;margin:6.25rem auto 0;background-color:#fefefe;border-radius:0;position:absolute;overflow-y:auto}[data-whatinput=mouse] .reveal{outline:0}@media screen and (min-width:40em){.reveal{min-height:0}}.reveal .column,.reveal .columns{min-width:0}.reveal>:last-child{margin-bottom:0}@media screen and (min-width:40em){.reveal{width:600px;max-width:75rem}}@media screen and (min-width:40em){.reveal .reveal{left:auto;right:auto;margin:0 auto}}.reveal.collapse{padding:0}@media screen and (min-width:40em){.reveal.tiny{width:30%;max-width:75rem}}@media screen and (min-width:40em){.reveal.small{width:50%;max-width:75rem}}@media screen and (min-width:40em){.reveal.large{width:90%;max-width:75rem}}.reveal.full{top:0;left:0;width:100%;height:100%;height:100vh;min-height:100vh;max-width:none;margin-left:0;border:0}.switch{margin-bottom:1rem;outline:0;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#fefefe;font-weight:700;font-size:.875rem}.switch-input{opacity:0;position:absolute}.switch-paddle{background:#cacaca;cursor:pointer;display:block;position:relative;width:4rem;height:2rem;transition:all .25s ease-out;border-radius:0;color:inherit;font-weight:inherit}input+.switch-paddle{margin:0}.switch-paddle:after{background:#fefefe;content:'';display:block;position:absolute;height:1.5rem;left:.25rem;top:.25rem;width:1.5rem;transition:all .25s ease-out;-webkit-transform:translateZ(0);transform:translateZ(0);border-radius:0}input:checked~.switch-paddle{background:#2199e8}input:checked~.switch-paddle:after{left:2.25rem}[data-whatinput=mouse] input:focus~.switch-paddle{outline:0}.switch-active,.switch-inactive{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.switch-active{left:8%;display:none}input:checked+label>.switch-active{display:block}.switch-inactive{right:15%}input:checked+label>.switch-inactive{display:none}.switch.tiny .switch-paddle{width:3rem;height:1.5rem;font-size:.625rem}.switch.tiny .switch-paddle:after{width:1rem;height:1rem}.switch.tiny input:checked~.switch-paddle:after{left:1.75rem}.switch.small .switch-paddle{width:3.5rem;height:1.75rem;font-size:.75rem}.switch.small .switch-paddle:after{width:1.25rem;height:1.25rem}.switch.small input:checked~.switch-paddle:after{left:2rem}.switch.large .switch-paddle{width:5rem;height:2.5rem;font-size:1rem}.switch.large .switch-paddle:after{width:2rem;height:2rem}.switch.large input:checked~.switch-paddle:after{left:2.75rem}table{width:100%;margin-bottom:1rem;border-radius:0}table tbody,table tfoot,table thead{border:1px solid #f1f1f1;background-color:#fefefe}table caption{font-weight:700;padding:.5rem .625rem .625rem}table tfoot,table thead{background:#f8f8f8;color:#0a0a0a}table tfoot tr,table thead tr{background:transparent}table tfoot td,table tfoot th,table thead td,table thead th{padding:.5rem .625rem .625rem;font-weight:700;text-align:left}table tbody tr:nth-child(even){background-color:#f1f1f1}table tbody td,table tbody th{padding:.5rem .625rem .625rem}@media screen and (max-width:63.9375em){table.stack tfoot,table.stack thead{display:none}table.stack td,table.stack th,table.stack tr{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover tr:hover{background-color:#f9f9f9}table.hover tr:nth-of-type(even):hover{background-color:#ececec}.tabs{margin:0;list-style-type:none;background:#fefefe;border:1px solid #e6e6e6}.tabs:after,.tabs:before{content:' ';display:table}.tabs:after{clear:both}.tabs.vertical>li{width:auto;float:none;display:block}.tabs.simple>li>a{padding:0}.tabs.simple>li>a:hover{background:transparent}.tabs.primary{background:#2199e8}.tabs.primary>li>a{color:#fefefe}.tabs.primary>li>a:focus,.tabs.primary>li>a:hover{background:#1893e4}.tabs-title{float:left}.tabs-title>a{display:block;padding:1.25rem 1.5rem;line-height:1;font-size:12px;color:#2199e8}.tabs-title>a:hover{background:#fefefe}.tabs-title>a:focus,.tabs-title>a[aria-selected=true]{background:#e6e6e6}.tabs-content{background:#fefefe;transition:all .5s ease;border:1px solid #e6e6e6;border-top:0}.tabs-content.vertical{border:1px solid #e6e6e6;border-left:0}.tabs-panel{display:none;padding:1rem}.tabs-panel.is-active{display:block}.thumbnail{border:4px solid #fefefe;box-shadow:0 0 0 1px hsla(0,0%,4%,.2);display:inline-block;line-height:0;max-width:100%;transition:box-shadow .2s ease-out;border-radius:0;margin-bottom:1rem}.thumbnail:focus,.thumbnail:hover{box-shadow:0 0 6px 1px rgba(33,153,232,.5)}.title-bar{background:#0a0a0a;color:#fefefe;padding:.5rem}.title-bar:after,.title-bar:before{content:' ';display:table}.title-bar:after{clear:both}.title-bar .menu-icon{margin-left:.25rem;margin-right:.5rem}.title-bar-left{float:left}.title-bar-right{float:right;text-align:right}.title-bar-title{font-weight:700}.menu-icon,.title-bar-title{vertical-align:middle;display:inline-block}.menu-icon{position:relative;cursor:pointer;width:20px;height:16px}.menu-icon:after{content:'';position:absolute;display:block;width:100%;height:2px;background:#fefefe;top:0;left:0;box-shadow:0 7px 0 #fefefe,0 14px 0 #fefefe}.menu-icon:hover:after{background:#cacaca;box-shadow:0 7px 0 #cacaca,0 14px 0 #cacaca}.menu-icon.dark{position:relative;display:inline-block;vertical-align:middle;cursor:pointer;width:20px;height:16px}.menu-icon.dark:after{content:'';position:absolute;display:block;width:100%;height:2px;background:#0a0a0a;top:0;left:0;box-shadow:0 7px 0 #0a0a0a,0 14px 0 #0a0a0a}.menu-icon.dark:hover:after{background:#8a8a8a;box-shadow:0 7px 0 #8a8a8a,0 14px 0 #8a8a8a}.has-tip{border-bottom:1px dotted #8a8a8a;font-weight:700;position:relative;display:inline-block;cursor:help}.tooltip{background-color:#0a0a0a;color:#fefefe;font-size:80%;padding:.75rem;position:absolute;z-index:3;top:calc(100% + .6495rem);max-width:10rem!important;border-radius:0}.tooltip:before{border-color:transparent transparent #0a0a0a;border-bottom-style:solid;border-top-width:0;bottom:100%;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.top:before,.tooltip:before{content:'';display:block;width:0;height:0;border:.75rem inset}.tooltip.top:before{border-color:#0a0a0a transparent transparent;border-top-style:solid;border-bottom-width:0;top:100%;bottom:auto}.tooltip.left:before{border-color:transparent transparent transparent #0a0a0a;border-left-style:solid;border-right-width:0;left:100%}.tooltip.left:before,.tooltip.right:before{content:'';display:block;width:0;height:0;border:.75rem inset;bottom:auto;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.right:before{border-color:transparent #0a0a0a transparent transparent;border-right-style:solid;border-left-width:0;left:auto;right:100%}.top-bar{padding:.5rem}.top-bar:after,.top-bar:before{content:' ';display:table}.top-bar:after{clear:both}.top-bar,.top-bar ul{background-color:#e6e6e6}.top-bar input{width:200px;margin-right:1rem}.top-bar input.button{width:auto}@media screen and (max-width:39.9375em){.stacked-for-small .top-bar-left,.stacked-for-small .top-bar-right,.stacked-for-small .top-bar-title{width:100%}}@media screen and (max-width:63.9375em){.stacked-for-medium .top-bar-left,.stacked-for-medium .top-bar-right,.stacked-for-medium .top-bar-title{width:100%}}@media screen and (max-width:74.9375em){.stacked-for-large .top-bar-left,.stacked-for-large .top-bar-right,.stacked-for-large .top-bar-title{width:100%}}@media screen and (min-width:0em) and (max-width:39.9375em){.top-bar-left,.top-bar-right,.top-bar-title{width:100%}}.top-bar-title{float:left;margin-right:1rem}.top-bar-left{float:left}.top-bar-right{float:right} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{font-size:100%;box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{padding:0;margin:0;font-family:Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#0a0a0a;background:#fefefe;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;-ms-interpolation-mode:bicubic;display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px;border-radius:0}select{width:100%;border-radius:0}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{-webkit-appearance:none;-moz-appearance:none;background:transparent;padding:0;border:0;border-radius:0;line-height:1}.is-visible{display:block!important}.is-hidden{display:none!important}.align-right{-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.align-center{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.align-justify{-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around}.align-top{-webkit-align-items:flex-start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}.align-self-top{-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-webkit-align-items:flex-end;-ms-flex-align:end;-ms-grid-row-align:flex-end;align-items:flex-end}.align-self-bottom{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.align-middle{-webkit-align-items:center;-ms-flex-align:center;-ms-grid-row-align:center;align-items:center}.align-self-middle{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.align-stretch{-webkit-align-items:stretch;-ms-flex-align:stretch;-ms-grid-row-align:stretch;align-items:stretch}.align-self-stretch{-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}.small{-webkit-order:1;-ms-flex-order:1;order:1;-webkit-order:2;-ms-flex-order:2;order:2;-webkit-order:3;-ms-flex-order:3;order:3;-webkit-order:4;-ms-flex-order:4;order:4;-webkit-order:5;-ms-flex-order:5;order:5;-webkit-order:6;-ms-flex-order:6;order:6}@media screen and (min-width:40em){.medium{-webkit-order:1;-ms-flex-order:1;order:1;-webkit-order:2;-ms-flex-order:2;order:2;-webkit-order:3;-ms-flex-order:3;order:3;-webkit-order:4;-ms-flex-order:4;order:4;-webkit-order:5;-ms-flex-order:5;order:5;-webkit-order:6;-ms-flex-order:6;order:6}}@media screen and (min-width:64em){.large{-webkit-order:1;-ms-flex-order:1;order:1;-webkit-order:2;-ms-flex-order:2;order:2;-webkit-order:3;-ms-flex-order:3;order:3;-webkit-order:4;-ms-flex-order:4;order:4;-webkit-order:5;-ms-flex-order:5;order:5;-webkit-order:6;-ms-flex-order:6;order:6}}.row{max-width:75rem;margin-left:auto;margin-right:auto;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap}.row .row{margin-left:-.625rem;margin-right:-.625rem}@media screen and (min-width:40em){.row .row{margin-left:-.9375rem;margin-right:-.9375rem}}.row.expanded{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-left:0;padding-right:0}.column,.columns{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px;padding-left:.625rem;padding-right:.625rem}@media screen and (min-width:40em){.column,.columns{padding-left:.9375rem;padding-right:.9375rem}}.column.row.row,.row.row.columns{float:none}.row .column.row.row,.row .row.row.columns{padding-left:0;padding-right:0;margin-left:0;margin-right:0}.small-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0}.small-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-1>.column,.small-up-1>.columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-up-2{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-2>.column,.small-up-2>.columns{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-up-3{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-3>.column,.small-up-3>.columns{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-up-4{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-4>.column,.small-up-4>.columns{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-up-5{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-5>.column,.small-up-5>.columns{-webkit-flex:0 0 20%;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.small-up-6{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-6>.column,.small-up-6>.columns{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-up-1>.column,.small-up-1>.columns{width:100%;float:left}.small-up-1>.column:nth-of-type(1n),.small-up-1>.columns:nth-of-type(1n){clear:none}.small-up-1>.column:nth-of-type(1n+1),.small-up-1>.columns:nth-of-type(1n+1){clear:both}.small-up-1>.column:last-child,.small-up-1>.columns:last-child{float:left}.small-up-2>.column,.small-up-2>.columns{width:50%;float:left}.small-up-2>.column:nth-of-type(1n),.small-up-2>.columns:nth-of-type(1n){clear:none}.small-up-2>.column:nth-of-type(2n+1),.small-up-2>.columns:nth-of-type(2n+1){clear:both}.small-up-2>.column:last-child,.small-up-2>.columns:last-child{float:left}.small-up-3>.column,.small-up-3>.columns{width:33.33333%;float:left}.small-up-3>.column:nth-of-type(1n),.small-up-3>.columns:nth-of-type(1n){clear:none}.small-up-3>.column:nth-of-type(3n+1),.small-up-3>.columns:nth-of-type(3n+1){clear:both}.small-up-3>.column:last-child,.small-up-3>.columns:last-child{float:left}.small-up-4>.column,.small-up-4>.columns{width:25%;float:left}.small-up-4>.column:nth-of-type(1n),.small-up-4>.columns:nth-of-type(1n){clear:none}.small-up-4>.column:nth-of-type(4n+1),.small-up-4>.columns:nth-of-type(4n+1){clear:both}.small-up-4>.column:last-child,.small-up-4>.columns:last-child{float:left}.small-up-5>.column,.small-up-5>.columns{width:20%;float:left}.small-up-5>.column:nth-of-type(1n),.small-up-5>.columns:nth-of-type(1n){clear:none}.small-up-5>.column:nth-of-type(5n+1),.small-up-5>.columns:nth-of-type(5n+1){clear:both}.small-up-5>.column:last-child,.small-up-5>.columns:last-child{float:left}.small-up-6>.column,.small-up-6>.columns{width:16.66667%;float:left}.small-up-6>.column:nth-of-type(1n),.small-up-6>.columns:nth-of-type(1n){clear:none}.small-up-6>.column:nth-of-type(6n+1),.small-up-6>.columns:nth-of-type(6n+1){clear:both}.small-up-6>.column:last-child,.small-up-6>.columns:last-child{float:left}.small-up-7>.column,.small-up-7>.columns{width:14.28571%;float:left}.small-up-7>.column:nth-of-type(1n),.small-up-7>.columns:nth-of-type(1n){clear:none}.small-up-7>.column:nth-of-type(7n+1),.small-up-7>.columns:nth-of-type(7n+1){clear:both}.small-up-7>.column:last-child,.small-up-7>.columns:last-child{float:left}.small-up-8>.column,.small-up-8>.columns{width:12.5%;float:left}.small-up-8>.column:nth-of-type(1n),.small-up-8>.columns:nth-of-type(1n){clear:none}.small-up-8>.column:nth-of-type(8n+1),.small-up-8>.columns:nth-of-type(8n+1){clear:both}.small-up-8>.column:last-child,.small-up-8>.columns:last-child{float:left}.small-collapse>.column,.small-collapse>.columns{padding-left:0;padding-right:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-left:.625rem;padding-right:.625rem}@media screen and (min-width:40em){.medium-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0}.medium-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.medium-up-1{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-1>.column,.medium-up-1>.columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-up-2{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-2>.column,.medium-up-2>.columns{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-up-3{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-3>.column,.medium-up-3>.columns{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-up-4{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-4>.column,.medium-up-4>.columns{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-up-5{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-5>.column,.medium-up-5>.columns{-webkit-flex:0 0 20%;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.medium-up-6{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-6>.column,.medium-up-6>.columns{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-up-1>.column,.medium-up-1>.columns{width:100%;float:left}.medium-up-1>.column:nth-of-type(1n),.medium-up-1>.columns:nth-of-type(1n){clear:none}.medium-up-1>.column:nth-of-type(1n+1),.medium-up-1>.columns:nth-of-type(1n+1){clear:both}.medium-up-1>.column:last-child,.medium-up-1>.columns:last-child{float:left}.medium-up-2>.column,.medium-up-2>.columns{width:50%;float:left}.medium-up-2>.column:nth-of-type(1n),.medium-up-2>.columns:nth-of-type(1n){clear:none}.medium-up-2>.column:nth-of-type(2n+1),.medium-up-2>.columns:nth-of-type(2n+1){clear:both}.medium-up-2>.column:last-child,.medium-up-2>.columns:last-child{float:left}.medium-up-3>.column,.medium-up-3>.columns{width:33.33333%;float:left}.medium-up-3>.column:nth-of-type(1n),.medium-up-3>.columns:nth-of-type(1n){clear:none}.medium-up-3>.column:nth-of-type(3n+1),.medium-up-3>.columns:nth-of-type(3n+1){clear:both}.medium-up-3>.column:last-child,.medium-up-3>.columns:last-child{float:left}.medium-up-4>.column,.medium-up-4>.columns{width:25%;float:left}.medium-up-4>.column:nth-of-type(1n),.medium-up-4>.columns:nth-of-type(1n){clear:none}.medium-up-4>.column:nth-of-type(4n+1),.medium-up-4>.columns:nth-of-type(4n+1){clear:both}.medium-up-4>.column:last-child,.medium-up-4>.columns:last-child{float:left}.medium-up-5>.column,.medium-up-5>.columns{width:20%;float:left}.medium-up-5>.column:nth-of-type(1n),.medium-up-5>.columns:nth-of-type(1n){clear:none}.medium-up-5>.column:nth-of-type(5n+1),.medium-up-5>.columns:nth-of-type(5n+1){clear:both}.medium-up-5>.column:last-child,.medium-up-5>.columns:last-child{float:left}.medium-up-6>.column,.medium-up-6>.columns{width:16.66667%;float:left}.medium-up-6>.column:nth-of-type(1n),.medium-up-6>.columns:nth-of-type(1n){clear:none}.medium-up-6>.column:nth-of-type(6n+1),.medium-up-6>.columns:nth-of-type(6n+1){clear:both}.medium-up-6>.column:last-child,.medium-up-6>.columns:last-child{float:left}.medium-up-7>.column,.medium-up-7>.columns{width:14.28571%;float:left}.medium-up-7>.column:nth-of-type(1n),.medium-up-7>.columns:nth-of-type(1n){clear:none}.medium-up-7>.column:nth-of-type(7n+1),.medium-up-7>.columns:nth-of-type(7n+1){clear:both}.medium-up-7>.column:last-child,.medium-up-7>.columns:last-child{float:left}.medium-up-8>.column,.medium-up-8>.columns{width:12.5%;float:left}.medium-up-8>.column:nth-of-type(1n),.medium-up-8>.columns:nth-of-type(1n){clear:none}.medium-up-8>.column:nth-of-type(8n+1),.medium-up-8>.columns:nth-of-type(8n+1){clear:both}.medium-up-8>.column:last-child,.medium-up-8>.columns:last-child{float:left}}@media screen and (min-width:40em) and (min-width:40em){.medium-expand{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}.row.medium-unstack .column,.row.medium-unstack .columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:40em){.row.medium-unstack .column,.row.medium-unstack .columns{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width:40em){.medium-collapse>.column,.medium-collapse>.columns{padding-left:0;padding-right:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}@media screen and (min-width:64em){.large-1{-webkit-flex:0 0 8.33333%;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0}.large-2{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-webkit-flex:0 0 41.66667%;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-webkit-flex:0 0 58.33333%;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-webkit-flex:0 0 66.66667%;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-webkit-flex:0 0 75%;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-webkit-flex:0 0 83.33333%;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-webkit-flex:0 0 91.66667%;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.large-up-1{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-1>.column,.large-up-1>.columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-up-2{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-2>.column,.large-up-2>.columns{-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-up-3{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-3>.column,.large-up-3>.columns{-webkit-flex:0 0 33.33333%;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-up-4{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-4>.column,.large-up-4>.columns{-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-up-5{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-5>.column,.large-up-5>.columns{-webkit-flex:0 0 20%;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.large-up-6{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-6>.column,.large-up-6>.columns{-webkit-flex:0 0 16.66667%;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-up-1>.column,.large-up-1>.columns{width:100%;float:left}.large-up-1>.column:nth-of-type(1n),.large-up-1>.columns:nth-of-type(1n){clear:none}.large-up-1>.column:nth-of-type(1n+1),.large-up-1>.columns:nth-of-type(1n+1){clear:both}.large-up-1>.column:last-child,.large-up-1>.columns:last-child{float:left}.large-up-2>.column,.large-up-2>.columns{width:50%;float:left}.large-up-2>.column:nth-of-type(1n),.large-up-2>.columns:nth-of-type(1n){clear:none}.large-up-2>.column:nth-of-type(2n+1),.large-up-2>.columns:nth-of-type(2n+1){clear:both}.large-up-2>.column:last-child,.large-up-2>.columns:last-child{float:left}.large-up-3>.column,.large-up-3>.columns{width:33.33333%;float:left}.large-up-3>.column:nth-of-type(1n),.large-up-3>.columns:nth-of-type(1n){clear:none}.large-up-3>.column:nth-of-type(3n+1),.large-up-3>.columns:nth-of-type(3n+1){clear:both}.large-up-3>.column:last-child,.large-up-3>.columns:last-child{float:left}.large-up-4>.column,.large-up-4>.columns{width:25%;float:left}.large-up-4>.column:nth-of-type(1n),.large-up-4>.columns:nth-of-type(1n){clear:none}.large-up-4>.column:nth-of-type(4n+1),.large-up-4>.columns:nth-of-type(4n+1){clear:both}.large-up-4>.column:last-child,.large-up-4>.columns:last-child{float:left}.large-up-5>.column,.large-up-5>.columns{width:20%;float:left}.large-up-5>.column:nth-of-type(1n),.large-up-5>.columns:nth-of-type(1n){clear:none}.large-up-5>.column:nth-of-type(5n+1),.large-up-5>.columns:nth-of-type(5n+1){clear:both}.large-up-5>.column:last-child,.large-up-5>.columns:last-child{float:left}.large-up-6>.column,.large-up-6>.columns{width:16.66667%;float:left}.large-up-6>.column:nth-of-type(1n),.large-up-6>.columns:nth-of-type(1n){clear:none}.large-up-6>.column:nth-of-type(6n+1),.large-up-6>.columns:nth-of-type(6n+1){clear:both}.large-up-6>.column:last-child,.large-up-6>.columns:last-child{float:left}.large-up-7>.column,.large-up-7>.columns{width:14.28571%;float:left}.large-up-7>.column:nth-of-type(1n),.large-up-7>.columns:nth-of-type(1n){clear:none}.large-up-7>.column:nth-of-type(7n+1),.large-up-7>.columns:nth-of-type(7n+1){clear:both}.large-up-7>.column:last-child,.large-up-7>.columns:last-child{float:left}.large-up-8>.column,.large-up-8>.columns{width:12.5%;float:left}.large-up-8>.column:nth-of-type(1n),.large-up-8>.columns:nth-of-type(1n){clear:none}.large-up-8>.column:nth-of-type(8n+1),.large-up-8>.columns:nth-of-type(8n+1){clear:both}.large-up-8>.column:last-child,.large-up-8>.columns:last-child{float:left}}@media screen and (min-width:64em) and (min-width:64em){.large-expand{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack .column,.row.large-unstack .columns{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:64em){.row.large-unstack .column,.row.large-unstack .columns{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width:64em){.large-collapse>.column,.large-collapse>.columns{padding-left:0;padding-right:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}.shrink{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;max-width:100%}.align-top.columns,.column.align-top{-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.align-bottom.columns,.column.align-bottom{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.align-middle.columns,.column.align-middle{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.align-stretch.columns,.column.align-stretch{-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{font-size:inherit;line-height:1.6;margin-bottom:1rem;text-rendering:optimizeLegibility}em,i{font-style:italic}b,em,i,strong{line-height:inherit}b,strong{font-weight:700}small{font-size:80%;line-height:inherit}h1,h2,h3,h4,h5,h6{font-family:Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;font-style:normal;color:inherit;text-rendering:optimizeLegibility;margin-top:0;margin-bottom:.5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#cacaca;line-height:0}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1875rem}h4{font-size:1.125rem}h5{font-size:1.0625rem}h6{font-size:1rem}@media screen and (min-width:40em){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{color:#2199e8;text-decoration:none;line-height:inherit;cursor:pointer}a:focus,a:hover{color:#1585cf}a img{border:0}hr{max-width:75rem;height:0;border-right:0;border-top:0;border-bottom:1px solid #cacaca;border-left:0;margin:1.25rem auto;clear:both}dl,ol,ul{line-height:1.6;margin-bottom:1rem;list-style-position:outside}li{font-size:inherit}ul{list-style-type:disc}ol,ul{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:'\2014 \0020'}abbr{color:#0a0a0a;cursor:help;border-bottom:1px dotted #0a0a0a}code{font-weight:400;border:1px solid #cacaca;padding:.125rem .3125rem .0625rem}code,kbd{font-family:Consolas,Liberation Mono,Courier,monospace;color:#0a0a0a;background-color:#e6e6e6}kbd{padding:.125rem .25rem 0;margin:0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media screen and (min-width:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='#']:after,a[href^='javascript:']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-family:inherit;font-size:1rem;color:#0a0a0a;background-color:#fefefe;box-shadow:inset 0 1px 2px hsla(0,0%,4%,.1);border-radius:0;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{border:1px solid #8a8a8a;background-color:#fefefe;outline:none;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#cacaca}input::-moz-placeholder,textarea::-moz-placeholder{color:#cacaca}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#cacaca}input::placeholder,textarea::placeholder{color:#cacaca}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:default}[type=button],[type=submit]{border-radius:0;-webkit-appearance:none;-moz-appearance:none}input[type=search]{box-sizing:border-box}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}label>[type=checkbox],label>[type=radio]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:400;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#0a0a0a}.input-group{display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;margin-bottom:1rem;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}.input-group>:first-child,.input-group>:last-child>*{border-radius:0 0 0 0}.input-group-button,.input-group-field,.input-group-label{margin:0}.input-group-label{text-align:center;padding:0 1rem;background:#e6e6e6;color:#0a0a0a;border:1px solid #cacaca;white-space:nowrap;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px;width:auto;height:auto}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.input-group-button a,.input-group-button button,.input-group-button input{margin:0}.input-group .input-group-button{display:table-cell}fieldset{border:0;padding:0;margin:0}legend{margin-bottom:.5rem;max-width:100%}.fieldset{border:1px solid #cacaca;padding:1.25rem;margin:1.125rem 0}.fieldset legend{background:#fefefe;padding:0 .1875rem;margin:0;margin-left:-.1875rem}select{height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-size:1rem;font-family:inherit;line-height:normal;color:#0a0a0a;background-color:#fefefe;border-radius:0;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;utf8,');background-size:9px 6px;background-position:right center;background-origin:content-box;background-repeat:no-repeat}@media screen and (min-width:0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg==")}}select:disabled{background-color:#e6e6e6;cursor:default}select::-ms-expand{display:none}select[multiple]{height:auto}.is-invalid-input:not(:focus){background-color:rgba(236,88,64,.1);border-color:#ec5840}.form-error,.is-invalid-label{color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.form-error.is-visible{display:block}.button{display:inline-block;text-align:center;line-height:1;cursor:pointer;-webkit-appearance:none;transition:background-color .25s ease-out,color .25s ease-out;vertical-align:middle;border:1px solid transparent;border-radius:0;padding:.85em 1em;margin:0 0 1rem;font-size:.9rem;background-color:#2199e8;color:#fefefe}[data-whatinput=mouse] .button{outline:0}.button:focus,.button:hover{background-color:#1583cc;color:#fefefe}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-left:0;margin-right:0}.button.primary{background-color:#2199e8;color:#fefefe}.button.primary:focus,.button.primary:hover{background-color:#147cc0;color:#fefefe}.button.secondary{background-color:#777;color:#fefefe}.button.secondary:focus,.button.secondary:hover{background-color:#5f5f5f;color:#fefefe}.button.success{background-color:#3adb76;color:#fefefe}.button.success:focus,.button.success:hover{background-color:#22bb5b;color:#fefefe}.button.warning{background-color:#ffae00;color:#fefefe}.button.warning:focus,.button.warning:hover{background-color:#cc8b00;color:#fefefe}.button.alert{background-color:#ec5840;color:#fefefe}.button.alert:focus,.button.alert:hover{background-color:#da3116;color:#fefefe}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:focus,.button.hollow:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.primary{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.secondary{border:1px solid #777;color:#777}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#3c3c3c;color:#3c3c3c}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.hollow.alert{border:1px solid #ec5840;color:#ec5840}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#881f0e;color:#881f0e}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed;pointer-events:none}.button.dropdown:after{content:'';display:block;width:0;height:0;border:.4em inset;border-color:#fefefe transparent transparent;border-top-style:solid;border-bottom-width:0;position:relative;top:.4em;float:right;margin-left:1em;display:inline-block}.button.arrow-only:after{margin-left:0;float:none;top:-.1em}.hide{display:none!important}.invisible{visibility:hidden}@media screen and (max-width:39.9375em){.hide-for-small-only{display:none!important}}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.show-on-focus:active,.show-on-focus:focus{position:static!important;height:auto;width:auto;overflow:visible;clip:auto}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:landscape){.hide-for-landscape,.show-for-portrait{display:none!important}}@media screen and (orientation:portrait){.hide-for-landscape,.show-for-portrait{display:block!important}}.float-left{float:left!important}.float-right{float:right!important}.float-center{display:block;margin-left:auto;margin-right:auto}.clearfix:after,.clearfix:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.clearfix:after{clear:both}.accordion{list-style-type:none;background:#fefefe;border:1px solid #e6e6e6;border-bottom:0;border-radius:0;margin-left:0}.accordion-title{display:block;padding:1.25rem 1rem;line-height:1;font-size:.75rem;color:#2199e8;position:relative;border-bottom:1px solid #e6e6e6}.accordion-title:focus,.accordion-title:hover{background-color:#e6e6e6}.accordion-title:before{content:'+';position:absolute;right:1rem;top:50%;margin-top:-.5rem}.is-active>.accordion-title:before{content:'–'}.accordion-content{padding:1rem;display:none;border-bottom:1px solid #e6e6e6;background-color:#fefefe}.is-accordion-submenu-parent>a{position:relative}.is-accordion-submenu-parent>a:after{content:'';display:block;width:0;height:0;border:6px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;position:absolute;top:50%;margin-top:-4px;right:1rem}.is-accordion-submenu-parent[aria-expanded=true]>a:after{-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.badge{display:inline-block;padding:.3em;min-width:2.1em;font-size:.6rem;text-align:center;border-radius:50%;background:#2199e8;color:#fefefe}.badge.secondary{background:#777;color:#fefefe}.badge.success{background:#3adb76;color:#fefefe}.badge.warning{background:#ffae00;color:#fefefe}.badge.alert{background:#ec5840;color:#fefefe}.breadcrumbs{list-style:none;margin:0 0 1rem}.breadcrumbs:after,.breadcrumbs:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.breadcrumbs:after{clear:both}.breadcrumbs li{float:left;color:#0a0a0a;font-size:.6875rem;cursor:default;text-transform:uppercase}.breadcrumbs li:not(:last-child):after{color:#cacaca;content:"/";margin:0 .75rem;position:relative;top:1px;opacity:1}.breadcrumbs a{color:#2199e8}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .disabled{color:#cacaca}.button-group{margin-bottom:1rem;font-size:0;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}.button-group:after,.button-group:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.button-group:after{clear:both}.button-group .button{margin:0;font-size:.9rem;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.button-group .button:not(:last-child){margin-right:1px}.button-group.tiny .button{font-size:.6rem}.button-group.small .button{font-size:.75rem}.button-group.large .button{font-size:1.25rem}.button-group.expanded .button{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.button-group.primary .button{background-color:#2199e8;color:#fefefe}.button-group.primary .button:focus,.button-group.primary .button:hover{background-color:#147cc0;color:#fefefe}.button-group.secondary .button{background-color:#777;color:#fefefe}.button-group.secondary .button:focus,.button-group.secondary .button:hover{background-color:#5f5f5f;color:#fefefe}.button-group.success .button{background-color:#3adb76;color:#fefefe}.button-group.success .button:focus,.button-group.success .button:hover{background-color:#22bb5b;color:#fefefe}.button-group.warning .button{background-color:#ffae00;color:#fefefe}.button-group.warning .button:focus,.button-group.warning .button:hover{background-color:#cc8b00;color:#fefefe}.button-group.alert .button{background-color:#ec5840;color:#fefefe}.button-group.alert .button:focus,.button-group.alert .button:hover{background-color:#da3116;color:#fefefe}.button-group.stacked,.button-group.stacked-for-medium,.button-group.stacked-for-small{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.button-group.stacked-for-medium .button,.button-group.stacked-for-small .button,.button-group.stacked .button{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}.button-group.stacked-for-medium .button:not(:last-child),.button-group.stacked-for-small .button:not(:last-child),.button-group.stacked .button:not(:last-child){margin-right:0}@media screen and (min-width:40em){.button-group.stacked-for-small .button{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.button-group.stacked-for-small .button:not(:last-child){margin-right:1px}}@media screen and (min-width:64em){.button-group.stacked-for-medium .button{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.button-group.stacked-for-medium .button:not(:last-child){margin-right:1px}}@media screen and (max-width:39.9375em){.button-group.stacked-for-small.expanded{display:block}.button-group.stacked-for-small.expanded .button{display:block;margin-right:0}}.callout{margin:0 0 1rem;padding:1rem;border:1px solid hsla(0,0%,4%,.25);border-radius:0;position:relative;color:#0a0a0a;background-color:#fff}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#def0fc}.callout.secondary{background-color:#ebebeb}.callout.success{background-color:#e1faea}.callout.warning{background-color:#fff3d9}.callout.alert{background-color:#fce6e2}.callout.small{padding:.5rem}.callout.large{padding:3rem}.close-button{position:absolute;color:#8a8a8a;right:1rem;top:.5rem;font-size:2em;line-height:1;cursor:pointer}[data-whatinput=mouse] .close-button{outline:0}.close-button:focus,.close-button:hover{color:#0a0a0a}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block!important}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;height:100%;width:100%;background:#fefefe;transition:-webkit-transform .15s linear;transition:transform .15s linear;transition:transform .15s linear,-webkit-transform .15s linear}.is-drilldown-submenu.is-active{z-index:1;display:block;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.is-drilldown-submenu.is-closing{-webkit-transform:translateX(100%);transform:translateX(100%)}.is-drilldown-submenu-parent>a{position:relative}.is-drilldown-submenu-parent>a:after{content:'';display:block;width:0;height:0;border:6px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0;position:absolute;top:50%;margin-top:-6px;right:1rem}.js-drilldown-back>a:before{content:'';display:block;width:0;height:0;border:6px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0;display:inline-block;vertical-align:middle;margin-right:.75rem}.dropdown-pane{background-color:#fefefe;border:1px solid #cacaca;border-radius:0;display:block;font-size:1rem;padding:1rem;position:absolute;visibility:hidden;width:300px;z-index:3}.dropdown-pane.is-open{visibility:visible}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}[data-whatinput=mouse] .dropdown.menu a{outline:0}.no-js .dropdown.menu ul{display:none}.dropdown.menu:not(.vertical) .is-dropdown-submenu.first-sub{top:100%;left:0;right:auto}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;left:auto;right:0}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-menu.vertical>li .is-dropdown-submenu{top:0;left:100%}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a:after{float:right;margin-top:3px;margin-left:10px}.is-dropdown-submenu-parent.is-down-arrow a{padding-right:1.5rem;position:relative}.is-dropdown-submenu-parent.is-down-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:#2199e8 transparent transparent;border-top-style:solid;border-bottom-width:0;position:absolute;top:.825rem;right:5px}.is-dropdown-submenu-parent.is-left-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent #2199e8 transparent transparent;border-right-style:solid;border-left-width:0;float:left;margin-left:0;margin-right:10px}.is-dropdown-submenu-parent.is-right-arrow>a:after{content:'';display:block;width:0;height:0;border:5px inset;border-color:transparent transparent transparent #2199e8;border-left-style:solid;border-right-width:0}.is-dropdown-submenu-parent.is-left-arrow.opens-inner .is-dropdown-submenu{right:0;left:auto}.is-dropdown-submenu-parent.is-right-arrow.opens-inner .is-dropdown-submenu{left:0;right:auto}.is-dropdown-submenu-parent.opens-inner .is-dropdown-submenu{top:100%}.is-dropdown-submenu-parent.opens-left .is-dropdown-submenu{left:auto;right:100%}.is-dropdown-submenu{display:none;position:absolute;top:0;left:100%;min-width:200px;z-index:1;background:#fefefe;border:1px solid #cacaca}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active,.is-dropdown-submenu:not(.js-dropdown-nohover)>.is-dropdown-submenu-parent:hover>.is-dropdown-submenu{display:block}.flex-video{position:relative;height:0;padding-bottom:75%;margin-bottom:1rem;overflow:hidden}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen{padding-bottom:56.25%}.flex-video.vimeo{padding-top:0}.label{display:inline-block;padding:.33333rem .5rem;font-size:.8rem;line-height:1;white-space:nowrap;cursor:default;border-radius:0;background:#2199e8;color:#fefefe}.label.secondary{background:#777;color:#fefefe}.label.success{background:#3adb76;color:#fefefe}.label.warning{background:#ffae00;color:#fefefe}.label.alert{background:#ec5840;color:#fefefe}.media-object{margin-bottom:1rem;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.media-object img{max-width:none}.media-object.stack-for-small{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media screen and (max-width:39.9375em){.media-object.stack-for-small .media-object-section{padding:0;padding-bottom:1rem;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.media-object.stack-for-small .media-object-section img{width:100%}}.media-object-section{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.media-object-section:first-child{padding-right:1rem}.media-object-section:last-child:not(:nth-child(2)){padding-left:1rem}.media-object-section.main-section{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.menu{margin:0;list-style-type:none;width:100%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}[data-whatinput=mouse] .menu>li{outline:0}.menu>li>a{display:block;padding:.7rem 1rem;line-height:1}.menu a,.menu button,.menu input{margin-bottom:0}.menu>li>a{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row}.menu>li{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.menu.vertical{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.menu.vertical>li{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}@media screen and (min-width:40em){.menu.medium-horizontal{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.menu.medium-horizontal>li{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.menu.medium-vertical{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.menu.medium-vertical>li{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (min-width:64em){.menu.large-horizontal{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.menu.large-horizontal>li{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.menu.large-vertical{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.menu.large-vertical>li{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}.menu.simple li{line-height:1;display:inline-block;margin-right:1rem}.menu.simple a{padding:0}.menu.align-right{-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.menu.expanded>li{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.menu.expanded>li:first-child:last-child{width:100%}.menu.icon-top>li>a{-webkit-flex-flow:column nowrap;-ms-flex-flow:column nowrap;flex-flow:column}.menu.nested{margin-left:1rem}.menu .active>a{color:#fefefe;background:#2199e8}.menu-text{font-weight:700;color:inherit;line-height:1;padding-top:0;padding-bottom:0;padding:.7rem 1rem}.no-js [data-responsive-menu] ul{display:none}.menu-icon{position:relative;display:inline-block;vertical-align:middle;cursor:pointer;width:20px;height:16px}.menu-icon:after{content:'';position:absolute;display:block;width:100%;height:2px;background:#fefefe;top:0;left:0;box-shadow:0 7px 0 #fefefe,0 14px 0 #fefefe}.menu-icon:hover:after{background:#cacaca;box-shadow:0 7px 0 #cacaca,0 14px 0 #cacaca}body,html{height:100%}.off-canvas-wrapper{width:100%;overflow-x:hidden;position:relative;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-overflow-scrolling:auto}.off-canvas-wrapper-inner{position:relative;width:100%;transition:-webkit-transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease}.off-canvas-wrapper-inner:after,.off-canvas-wrapper-inner:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.off-canvas-wrapper-inner:after{clear:both}.off-canvas-content{min-height:100%;background:#fefefe;transition:-webkit-transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;padding-bottom:.1px;box-shadow:0 0 10px hsla(0,0%,4%,.5)}.js-off-canvas-exit{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:hsla(0,0%,100%,.25);cursor:pointer;transition:background .5s ease}.off-canvas{position:absolute;background:#e6e6e6;z-index:-1;max-height:100%;overflow-y:auto;-webkit-transform:translateX(0);transform:translateX(0)}[data-whatinput=mouse] .off-canvas{outline:0}.off-canvas.position-left{left:-250px;top:0;width:250px}.is-open-left{-webkit-transform:translateX(250px);transform:translateX(250px)}.off-canvas.position-right{right:-250px;top:0;width:250px}.is-open-right{-webkit-transform:translateX(-250px);transform:translateX(-250px)}@media screen and (min-width:40em){.position-left.reveal-for-medium{left:0;z-index:auto;position:fixed}.position-left.reveal-for-medium~.off-canvas-content{margin-left:250px}.position-right.reveal-for-medium{right:0;z-index:auto;position:fixed}.position-right.reveal-for-medium~.off-canvas-content{margin-right:250px}}@media screen and (min-width:64em){.position-left.reveal-for-large{left:0;z-index:auto;position:fixed}.position-left.reveal-for-large~.off-canvas-content{margin-left:250px}.position-right.reveal-for-large{right:0;z-index:auto;position:fixed}.position-right.reveal-for-large~.off-canvas-content{margin-right:250px}}.orbit,.orbit-container{position:relative}.orbit-container{margin:0;overflow:hidden;list-style:none}.orbit-slide{width:100%;max-height:100%}.orbit-slide.no-motionui.is-active{top:0;left:0}.orbit-figure{margin:0}.orbit-image{margin:0;width:100%;max-width:100%}.orbit-caption{bottom:0;width:100%;margin-bottom:0;background-color:hsla(0,0%,4%,.5)}.orbit-caption,.orbit-next,.orbit-previous{position:absolute;padding:1rem;color:#fefefe}.orbit-next,.orbit-previous{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:3}[data-whatinput=mouse] .orbit-next,[data-whatinput=mouse] .orbit-previous{outline:0}.orbit-next:active,.orbit-next:focus,.orbit-next:hover,.orbit-previous:active,.orbit-previous:focus,.orbit-previous:hover{background-color:hsla(0,0%,4%,.5)}.orbit-previous{left:0}.orbit-next{left:auto;right:0}.orbit-bullets{position:relative;margin-top:.8rem;margin-bottom:.8rem;text-align:center}[data-whatinput=mouse] .orbit-bullets{outline:0}.orbit-bullets button{width:1.2rem;height:1.2rem;margin:.1rem;background-color:#cacaca;border-radius:50%}.orbit-bullets button.is-active,.orbit-bullets button:hover{background-color:#8a8a8a}.pagination{margin-left:0;margin-bottom:1rem}.pagination:after,.pagination:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.pagination:after{clear:both}.pagination li{font-size:.875rem;margin-right:.0625rem;border-radius:0;display:none}.pagination li:first-child,.pagination li:last-child{display:inline-block}@media screen and (min-width:40em){.pagination li{display:inline-block}}.pagination a,.pagination button{color:#0a0a0a;display:block;padding:.1875rem .625rem;border-radius:0}.pagination a:hover,.pagination button:hover{background:#e6e6e6}.pagination .current{padding:.1875rem .625rem;background:#2199e8;color:#fefefe;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#cacaca;cursor:default}.pagination .disabled:hover{background:transparent}.pagination .ellipsis:after{content:'\2026';padding:.1875rem .625rem;color:#0a0a0a}.pagination-previous.disabled:before,.pagination-previous a:before{content:'\00ab';display:inline-block;margin-right:.5rem}.pagination-next.disabled:after,.pagination-next a:after{content:'\00bb';display:inline-block;margin-left:.5rem}.progress{background-color:#cacaca;height:1rem;margin-bottom:1rem;border-radius:0}.progress.primary .progress-meter{background-color:#2199e8}.progress.secondary .progress-meter{background-color:#777}.progress.success .progress-meter{background-color:#3adb76}.progress.warning .progress-meter{background-color:#ffae00}.progress.alert .progress-meter{background-color:#ec5840}.progress-meter{position:relative;display:block;width:0;height:100%;background-color:#2199e8}.progress-meter-text{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);position:absolute;margin:0;font-size:.75rem;font-weight:700;color:#fefefe;white-space:nowrap}.slider{position:relative;height:.5rem;margin-top:1.25rem;margin-bottom:2.25rem;background-color:#e6e6e6;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:none;touch-action:none}.slider-fill{position:absolute;top:0;left:0;display:inline-block;max-width:100%;height:.5rem;background-color:#cacaca;transition:all .2s ease-in-out}.slider-fill.is-dragging{transition:all 0s linear}.slider-handle{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);position:absolute;left:0;z-index:1;display:inline-block;width:1.4rem;height:1.4rem;background-color:#2199e8;transition:all .2s ease-in-out;-ms-touch-action:manipulation;touch-action:manipulation;border-radius:0}[data-whatinput=mouse] .slider-handle{outline:0}.slider-handle:hover{background-color:#1583cc}.slider-handle.is-dragging{transition:all 0s linear}.slider.disabled,.slider[disabled]{opacity:.25;cursor:not-allowed}.slider.vertical{display:inline-block;width:.5rem;height:12.5rem;margin:0 1.25rem;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.slider.vertical .slider-fill{top:0;width:.5rem;max-height:100%}.slider.vertical .slider-handle{position:absolute;top:0;left:50%;width:1.4rem;height:1.4rem;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.sticky-container{position:relative}.sticky{position:absolute;z-index:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.sticky.is-stuck{position:fixed;z-index:2}.sticky.is-stuck.is-at-top{top:0}.sticky.is-stuck.is-at-bottom{bottom:0}.sticky.is-anchored{position:absolute;left:auto;right:auto}.sticky.is-anchored.is-at-bottom{bottom:0}body.is-reveal-open{overflow:hidden}.reveal-overlay{display:none;position:fixed;top:0;bottom:0;left:0;right:0;z-index:4;background-color:hsla(0,0%,4%,.45);overflow-y:scroll}.reveal{display:none;z-index:5;padding:1rem;border:1px solid #cacaca;background-color:#fefefe;border-radius:0;position:absolute;overflow-y:auto}[data-whatinput=mouse] .reveal{outline:0}@media screen and (min-width:40em){.reveal{min-height:0}}.reveal .column,.reveal .columns{min-width:0}.reveal>:last-child{margin-bottom:0}@media screen and (min-width:40em){.reveal{width:600px;max-width:75rem}}@media screen and (min-width:40em){.reveal .reveal{left:auto;right:auto;margin:0 auto}}.reveal.collapse{padding:0}@media screen and (min-width:40em){.reveal.tiny{width:30%;max-width:75rem}}@media screen and (min-width:40em){.reveal.small{width:50%;max-width:75rem}}@media screen and (min-width:40em){.reveal.large{width:90%;max-width:75rem}}.reveal.full{top:0;left:0;width:100%;height:100%;height:100vh;min-height:100vh;max-width:none;margin-left:0;border:0}.switch{margin-bottom:1rem;outline:0;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#fefefe;font-weight:700;font-size:.875rem}.switch-input{opacity:0;position:absolute}.switch-paddle{background:#cacaca;cursor:pointer;display:block;position:relative;width:4rem;height:2rem;transition:all .25s ease-out;border-radius:0;color:inherit;font-weight:inherit}input+.switch-paddle{margin:0}.switch-paddle:after{background:#fefefe;content:'';display:block;position:absolute;height:1.5rem;left:.25rem;top:.25rem;width:1.5rem;transition:all .25s ease-out;-webkit-transform:translateZ(0);transform:translateZ(0);border-radius:0}input:checked~.switch-paddle{background:#2199e8}input:checked~.switch-paddle:after{left:2.25rem}[data-whatinput=mouse] input:focus~.switch-paddle{outline:0}.switch-active,.switch-inactive{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.switch-active{left:8%;display:none}input:checked+label>.switch-active{display:block}.switch-inactive{right:15%}input:checked+label>.switch-inactive{display:none}.switch.tiny .switch-paddle{width:3rem;height:1.5rem;font-size:.625rem}.switch.tiny .switch-paddle:after{width:1rem;height:1rem}.switch.tiny input:checked~.switch-paddle:after{left:1.75rem}.switch.small .switch-paddle{width:3.5rem;height:1.75rem;font-size:.75rem}.switch.small .switch-paddle:after{width:1.25rem;height:1.25rem}.switch.small input:checked~.switch-paddle:after{left:2rem}.switch.large .switch-paddle{width:5rem;height:2.5rem;font-size:1rem}.switch.large .switch-paddle:after{width:2rem;height:2rem}.switch.large input:checked~.switch-paddle:after{left:2.75rem}table{width:100%;margin-bottom:1rem;border-radius:0}table tbody,table tfoot,table thead{border:1px solid #f1f1f1;background-color:#fefefe}table caption{font-weight:700;padding:.5rem .625rem .625rem}table tfoot,table thead{background:#f8f8f8;color:#0a0a0a}table tfoot tr,table thead tr{background:transparent}table tfoot td,table tfoot th,table thead td,table thead th{padding:.5rem .625rem .625rem;font-weight:700;text-align:left}table tbody tr:nth-child(even){background-color:#f1f1f1}table tbody td,table tbody th{padding:.5rem .625rem .625rem}@media screen and (max-width:63.9375em){table.stack tfoot,table.stack thead{display:none}table.stack td,table.stack th,table.stack tr{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover tr:hover{background-color:#f9f9f9}table.hover tr:nth-of-type(even):hover{background-color:#ececec}.tabs{margin:0;list-style-type:none;background:#fefefe;border:1px solid #e6e6e6}.tabs:after,.tabs:before{content:' ';display:table;-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;-webkit-order:1;-ms-flex-order:1;order:1}.tabs:after{clear:both}.tabs.vertical>li{width:auto;float:none;display:block}.tabs.simple>li>a{padding:0}.tabs.simple>li>a:hover{background:transparent}.tabs.primary{background:#2199e8}.tabs.primary>li>a{color:#fefefe}.tabs.primary>li>a:focus,.tabs.primary>li>a:hover{background:#1893e4}.tabs-title{float:left}.tabs-title>a{display:block;padding:1.25rem 1.5rem;line-height:1;font-size:.75rem}.tabs-title>a:hover{background:#fefefe}.tabs-title>a:focus,.tabs-title>a[aria-selected=true]{background:#e6e6e6}.tabs-content{background:#fefefe;transition:all .5s ease;border:1px solid #e6e6e6;border-top:0}.tabs-content.vertical{border:1px solid #e6e6e6;border-left:0}.tabs-panel{display:none;padding:1rem}.tabs-panel.is-active{display:block}.thumbnail{border:4px solid #fefefe;box-shadow:0 0 0 1px hsla(0,0%,4%,.2);display:inline-block;line-height:0;max-width:100%;transition:box-shadow .2s ease-out;border-radius:0;margin-bottom:1rem}.thumbnail:focus,.thumbnail:hover{box-shadow:0 0 6px 1px rgba(33,153,232,.5)}.title-bar{background:#0a0a0a;color:#fefefe;padding:.5rem;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.title-bar .menu-icon{margin-left:.25rem;margin-right:.5rem}.title-bar-left,.title-bar-right{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}.title-bar-right{text-align:right}.title-bar-title{font-weight:700}.menu-icon.dark,.title-bar-title{vertical-align:middle;display:inline-block}.menu-icon.dark{position:relative;cursor:pointer;width:20px;height:16px}.menu-icon.dark:after{content:'';position:absolute;display:block;width:100%;height:2px;background:#0a0a0a;top:0;left:0;box-shadow:0 7px 0 #0a0a0a,0 14px 0 #0a0a0a}.menu-icon.dark:hover:after{background:#8a8a8a;box-shadow:0 7px 0 #8a8a8a,0 14px 0 #8a8a8a}.has-tip{border-bottom:1px dotted #8a8a8a;font-weight:700;position:relative;display:inline-block;cursor:help}.tooltip{background-color:#0a0a0a;color:#fefefe;font-size:80%;padding:.75rem;position:absolute;z-index:3;top:calc(100% + .6495rem);max-width:10rem!important;border-radius:0}.tooltip:before{border-color:transparent transparent #0a0a0a;border-bottom-style:solid;border-top-width:0;bottom:100%;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.top:before,.tooltip:before{content:'';display:block;width:0;height:0;border:.75rem inset}.tooltip.top:before{border-color:#0a0a0a transparent transparent;border-top-style:solid;border-bottom-width:0;top:100%;bottom:auto}.tooltip.left:before{border-color:transparent transparent transparent #0a0a0a;border-left-style:solid;border-right-width:0;left:100%}.tooltip.left:before,.tooltip.right:before{content:'';display:block;width:0;height:0;border:.75rem inset;bottom:auto;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.right:before{border-color:transparent #0a0a0a transparent transparent;border-right-style:solid;border-left-width:0;left:auto;right:100%}.top-bar{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;padding:.5rem}.top-bar,.top-bar ul{background-color:#e6e6e6}.top-bar input{width:200px;margin-right:1rem}.top-bar .input-group-field{width:100%;margin-right:0}.top-bar input.button{width:auto}@media screen and (max-width:39.9375em){.stacked-for-small{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.stacked-for-small .top-bar-left,.stacked-for-small .top-bar-right{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (max-width:63.9375em){.stacked-for-medium{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.stacked-for-medium .top-bar-left,.stacked-for-medium .top-bar-right{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (max-width:74.9375em){.stacked-for-large{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.stacked-for-large .top-bar-left,.stacked-for-large .top-bar-right{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;.top-bar-left,.top-bar-right{-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}@media screen and (min-width:40em){-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;.top-bar-left,.top-bar-right{-webkit-flex:1 1 0px;-ms-flex:1 1 0px;flex:1 1 0px}}.top-bar-title{margin-right:1rem}.top-bar-left,.top-bar-right,.top-bar-title{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto} \ No newline at end of file diff --git a/dist/foundation.css b/dist/foundation.css index 02bba00c2f..8f1c7761d6 100644 --- a/dist/foundation.css +++ b/dist/foundation.css @@ -1,7 +1,7 @@ @charset "UTF-8"; /** * Foundation for Sites by ZURB - * Version 6.1.2 + * Version 6.2.0-rc.1 * foundation.zurb.com * Licensed under MIT Open Source */ @@ -432,7 +432,13 @@ button { margin-right: auto; } .row::before, .row::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .row::after { clear: both; } .row.collapse > .column, .row.collapse > .columns { @@ -455,10 +461,10 @@ button { margin-right: auto; } .column, .columns { - padding-left: 0.625rem; - padding-right: 0.625rem; width: 100%; - float: left; } + float: left; + padding-left: 0.625rem; + padding-right: 0.625rem; } @media screen and (min-width: 40em) { .column, .columns { padding-left: 0.9375rem; @@ -1427,7 +1433,7 @@ kbd { content: " (" attr(title) ")"; } pre, blockquote { - border: 1px solid #999; + border: 1px solid #8a8a8a; page-break-inside: avoid; } thead { display: table-header-group; } @@ -1447,128 +1453,6 @@ kbd { h3 { page-break-after: avoid; } } -.button { - display: inline-block; - text-align: center; - line-height: 1; - cursor: pointer; - -webkit-appearance: none; - transition: background-color 0.25s ease-out, color 0.25s ease-out; - vertical-align: middle; - border: 1px solid transparent; - border-radius: 0; - padding: 0.85em 1em; - margin: 0 0 1rem 0; - font-size: 0.9rem; - background-color: #2199e8; - color: #fff; } - [data-whatinput='mouse'] .button { - outline: 0; } - .button:hover, .button:focus { - background-color: #1583cc; - color: #fff; } - .button.tiny { - font-size: 0.6rem; } - .button.small { - font-size: 0.75rem; } - .button.large { - font-size: 1.25rem; } - .button.expanded { - display: block; - width: 100%; - margin-left: 0; - margin-right: 0; } - .button.primary { - background-color: #2199e8; - color: #fff; } - .button.primary:hover, .button.primary:focus { - background-color: #147cc0; - color: #fff; } - .button.secondary { - background-color: #777; - color: #fff; } - .button.secondary:hover, .button.secondary:focus { - background-color: #5f5f5f; - color: #fff; } - .button.success { - background-color: #3adb76; - color: #fff; } - .button.success:hover, .button.success:focus { - background-color: #22bb5b; - color: #fff; } - .button.alert { - background-color: #ec5840; - color: #fff; } - .button.alert:hover, .button.alert:focus { - background-color: #da3116; - color: #fff; } - .button.warning { - background-color: #ffae00; - color: #fff; } - .button.warning:hover, .button.warning:focus { - background-color: #cc8b00; - color: #fff; } - .button.hollow { - border: 1px solid #2199e8; - color: #2199e8; } - .button.hollow, .button.hollow:hover, .button.hollow:focus { - background-color: transparent; } - .button.hollow:hover, .button.hollow:focus { - border-color: #0c4d78; - color: #0c4d78; } - .button.hollow.primary { - border: 1px solid #2199e8; - color: #2199e8; } - .button.hollow.primary:hover, .button.hollow.primary:focus { - border-color: #0c4d78; - color: #0c4d78; } - .button.hollow.secondary { - border: 1px solid #777; - color: #777; } - .button.hollow.secondary:hover, .button.hollow.secondary:focus { - border-color: #3c3c3c; - color: #3c3c3c; } - .button.hollow.success { - border: 1px solid #3adb76; - color: #3adb76; } - .button.hollow.success:hover, .button.hollow.success:focus { - border-color: #157539; - color: #157539; } - .button.hollow.alert { - border: 1px solid #ec5840; - color: #ec5840; } - .button.hollow.alert:hover, .button.hollow.alert:focus { - border-color: #881f0e; - color: #881f0e; } - .button.hollow.warning { - border: 1px solid #ffae00; - color: #ffae00; } - .button.hollow.warning:hover, .button.hollow.warning:focus { - border-color: #805700; - color: #805700; } - .button.disabled, .button[disabled] { - opacity: 0.25; - cursor: not-allowed; - pointer-events: none; } - .button.dropdown::after { - content: ''; - display: block; - width: 0; - height: 0; - border: inset 0.4em; - border-color: #fefefe transparent transparent; - border-top-style: solid; - border-bottom-width: 0; - position: relative; - top: 0.4em; - float: right; - margin-left: 1em; - display: inline-block; } - .button.arrow-only::after { - margin-left: 0; - float: none; - top: 0.2em; } - [type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea { display: block; @@ -1600,6 +1484,22 @@ textarea { textarea[rows] { height: auto; } +input::-webkit-input-placeholder, +textarea::-webkit-input-placeholder { + color: #cacaca; } + +input::-moz-placeholder, +textarea::-moz-placeholder { + color: #cacaca; } + +input:-ms-input-placeholder, +textarea:-ms-input-placeholder { + color: #cacaca; } + +input::placeholder, +textarea::placeholder { + color: #cacaca; } + input:disabled, input[readonly], textarea:disabled, textarea[readonly] { @@ -1629,7 +1529,7 @@ input[type='search'] { vertical-align: baseline; } label > [type='checkbox'], -label > [type='label'] { +label > [type='radio'] { margin-right: 0.5rem; } [type='file'] { @@ -1650,7 +1550,7 @@ label { margin-top: -0.5rem; font-size: 0.8125rem; font-style: italic; - color: #333; } + color: #0a0a0a; } .input-group { display: table; @@ -1662,19 +1562,19 @@ label { border-radius: 0 0 0 0; } .input-group-label, .input-group-field, .input-group-button { - display: table-cell; margin: 0; + display: table-cell; vertical-align: middle; } .input-group-label { text-align: center; - width: 1%; - height: 100%; padding: 0 1rem; background: #e6e6e6; color: #0a0a0a; border: 1px solid #cacaca; - white-space: nowrap; } + white-space: nowrap; + width: 1%; + height: 100%; } .input-group-label:first-child { border-right: 0; } .input-group-label:last-child { @@ -1685,16 +1585,19 @@ label { height: 2.5rem; } .input-group-button { - height: 100%; padding-top: 0; padding-bottom: 0; text-align: center; + height: 100%; width: 1%; } .input-group-button a, .input-group-button input, .input-group-button button { margin: 0; } +.input-group .input-group-button { + display: table-cell; } + fieldset { border: 0; padding: 0; @@ -1727,14 +1630,14 @@ select { border-radius: 0; -webkit-appearance: none; -moz-appearance: none; - background-image: url('data:image/svg+xml;utf8,'); + background-image: url('data:image/svg+xml;utf8,'); background-size: 9px 6px; background-position: right center; background-origin: content-box; background-repeat: no-repeat; } @media screen and (min-width: 0\0) { select { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } } + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg=="); } } select:disabled { background-color: #e6e6e6; cursor: default; } @@ -1760,13 +1663,135 @@ select { .form-error.is-visible { display: block; } +.button { + display: inline-block; + text-align: center; + line-height: 1; + cursor: pointer; + -webkit-appearance: none; + transition: background-color 0.25s ease-out, color 0.25s ease-out; + vertical-align: middle; + border: 1px solid transparent; + border-radius: 0; + padding: 0.85em 1em; + margin: 0 0 1rem 0; + font-size: 0.9rem; + background-color: #2199e8; + color: #fefefe; } + [data-whatinput='mouse'] .button { + outline: 0; } + .button:hover, .button:focus { + background-color: #1583cc; + color: #fefefe; } + .button.tiny { + font-size: 0.6rem; } + .button.small { + font-size: 0.75rem; } + .button.large { + font-size: 1.25rem; } + .button.expanded { + display: block; + width: 100%; + margin-left: 0; + margin-right: 0; } + .button.primary { + background-color: #2199e8; + color: #fefefe; } + .button.primary:hover, .button.primary:focus { + background-color: #147cc0; + color: #fefefe; } + .button.secondary { + background-color: #777; + color: #fefefe; } + .button.secondary:hover, .button.secondary:focus { + background-color: #5f5f5f; + color: #fefefe; } + .button.success { + background-color: #3adb76; + color: #fefefe; } + .button.success:hover, .button.success:focus { + background-color: #22bb5b; + color: #fefefe; } + .button.warning { + background-color: #ffae00; + color: #fefefe; } + .button.warning:hover, .button.warning:focus { + background-color: #cc8b00; + color: #fefefe; } + .button.alert { + background-color: #ec5840; + color: #fefefe; } + .button.alert:hover, .button.alert:focus { + background-color: #da3116; + color: #fefefe; } + .button.hollow { + border: 1px solid #2199e8; + color: #2199e8; } + .button.hollow, .button.hollow:hover, .button.hollow:focus { + background-color: transparent; } + .button.hollow:hover, .button.hollow:focus { + border-color: #0c4d78; + color: #0c4d78; } + .button.hollow.primary { + border: 1px solid #2199e8; + color: #2199e8; } + .button.hollow.primary:hover, .button.hollow.primary:focus { + border-color: #0c4d78; + color: #0c4d78; } + .button.hollow.secondary { + border: 1px solid #777; + color: #777; } + .button.hollow.secondary:hover, .button.hollow.secondary:focus { + border-color: #3c3c3c; + color: #3c3c3c; } + .button.hollow.success { + border: 1px solid #3adb76; + color: #3adb76; } + .button.hollow.success:hover, .button.hollow.success:focus { + border-color: #157539; + color: #157539; } + .button.hollow.warning { + border: 1px solid #ffae00; + color: #ffae00; } + .button.hollow.warning:hover, .button.hollow.warning:focus { + border-color: #805700; + color: #805700; } + .button.hollow.alert { + border: 1px solid #ec5840; + color: #ec5840; } + .button.hollow.alert:hover, .button.hollow.alert:focus { + border-color: #881f0e; + color: #881f0e; } + .button.disabled, .button[disabled] { + opacity: 0.25; + cursor: not-allowed; + pointer-events: none; } + .button.dropdown::after { + content: ''; + display: block; + width: 0; + height: 0; + border: inset 0.4em; + border-color: #fefefe transparent transparent; + border-top-style: solid; + border-bottom-width: 0; + position: relative; + top: 0.4em; + float: right; + margin-left: 1em; + display: inline-block; } + .button.arrow-only::after { + margin-left: 0; + float: none; + top: -0.1em; } + .hide { display: none !important; } .invisible { visibility: hidden; } -@media screen and (min-width: 0em) and (max-width: 39.9375em) { +@media screen and (max-width: 39.9375em) { .hide-for-small-only { display: none !important; } } @@ -1858,7 +1883,13 @@ select { .clearfix::before, .clearfix::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .clearfix::after { clear: both; } @@ -1935,19 +1966,25 @@ select { .badge.success { background: #3adb76; color: #fefefe; } - .badge.alert { - background: #ec5840; - color: #fefefe; } .badge.warning { background: #ffae00; color: #fefefe; } + .badge.alert { + background: #ec5840; + color: #fefefe; } .breadcrumbs { list-style: none; margin: 0 0 1rem 0; } .breadcrumbs::before, .breadcrumbs::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .breadcrumbs::after { clear: both; } .breadcrumbs li { @@ -1972,33 +2009,54 @@ select { .button-group { margin-bottom: 1rem; - font-size: 0.9rem; } + font-size: 0; } .button-group::before, .button-group::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .button-group::after { clear: both; } .button-group .button { - float: left; margin: 0; - font-size: inherit; } + font-size: 0.9rem; + float: left; } .button-group .button:not(:last-child) { border-right: 1px solid #fefefe; } - .button-group.tiny { + .button-group.tiny .button { font-size: 0.6rem; } - .button-group.small { + .button-group.small .button { font-size: 0.75rem; } - .button-group.large { + .button-group.large .button { font-size: 1.25rem; } .button-group.expanded { - display: table; - table-layout: fixed; - width: 100%; } + margin-right: -1px; } .button-group.expanded::before, .button-group.expanded::after { display: none; } - .button-group.expanded .button { - display: table-cell; - float: none; } + .button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button { + display: inline-block; + width: calc(50% - 1px); + margin-right: 1px; } + .button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button { + display: inline-block; + width: calc(33.33333% - 1px); + margin-right: 1px; } + .button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button { + display: inline-block; + width: calc(25% - 1px); + margin-right: 1px; } + .button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button { + display: inline-block; + width: calc(20% - 1px); + margin-right: 1px; } + .button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button { + display: inline-block; + width: calc(16.66667% - 1px); + margin-right: 1px; } .button-group.primary .button { background-color: #2199e8; color: #fefefe; } @@ -2017,33 +2075,38 @@ select { .button-group.success .button:hover, .button-group.success .button:focus { background-color: #22bb5b; color: #fefefe; } - .button-group.alert .button { - background-color: #ec5840; - color: #fefefe; } - .button-group.alert .button:hover, .button-group.alert .button:focus { - background-color: #da3116; - color: #fefefe; } .button-group.warning .button { background-color: #ffae00; color: #fefefe; } .button-group.warning .button:hover, .button-group.warning .button:focus { background-color: #cc8b00; color: #fefefe; } - .button-group.stacked .button, .button-group.stacked-for-small .button { + .button-group.alert .button { + background-color: #ec5840; + color: #fefefe; } + .button-group.alert .button:hover, .button-group.alert .button:focus { + background-color: #da3116; + color: #fefefe; } + .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button { width: 100%; } - .button-group.stacked .button:not(:last-child), .button-group.stacked-for-small .button:not(:last-child) { - border-right: 1px solid; } + .button-group.stacked .button:not(:last-child), .button-group.stacked-for-small .button:not(:last-child), .button-group.stacked-for-medium .button:not(:last-child) { + margin-right: 0; } @media screen and (min-width: 40em) { .button-group.stacked-for-small .button { width: auto; } .button-group.stacked-for-small .button:not(:last-child) { - border-right: 1px solid #fefefe; } } - @media screen and (min-width: 0em) and (max-width: 39.9375em) { + margin-right: 1px; } } + @media screen and (min-width: 64em) { + .button-group.stacked-for-medium .button { + width: auto; } + .button-group.stacked-for-medium .button:not(:last-child) { + margin-right: 1px; } } + @media screen and (max-width: 39.9375em) { .button-group.stacked-for-small.expanded { display: block; } .button-group.stacked-for-small.expanded .button { display: block; - border-right: 0; } } + margin-right: 0; } } .callout { margin: 0 0 1rem 0; @@ -2063,10 +2126,10 @@ select { background-color: #ebebeb; } .callout.success { background-color: #e1faea; } - .callout.alert { - background-color: #fce6e2; } .callout.warning { background-color: #fff3d9; } + .callout.alert { + background-color: #fce6e2; } .callout.small { padding-top: 0.5rem; padding-right: 0.5rem; @@ -2094,6 +2157,8 @@ select { .is-drilldown { position: relative; overflow: hidden; } + .is-drilldown li { + display: block !important; } .is-drilldown-submenu { position: absolute; @@ -2300,23 +2365,23 @@ select { .label.success { background: #3adb76; color: #fefefe; } - .label.alert { - background: #ec5840; - color: #fefefe; } .label.warning { background: #ffae00; color: #fefefe; } + .label.alert { + background: #ec5840; + color: #fefefe; } .media-object { margin-bottom: 1rem; display: block; } .media-object img { max-width: none; } - @media screen and (min-width: 0em) and (max-width: 39.9375em) { + @media screen and (max-width: 39.9375em) { .media-object.stack-for-small .media-object-section { - display: block; padding: 0; - padding-bottom: 1rem; } + padding-bottom: 1rem; + display: block; } .media-object.stack-for-small .media-object-section img { width: 100%; } } @@ -2348,13 +2413,14 @@ select { .menu a, .menu button { margin-bottom: 0; } - .menu > li > a > img, - .menu > li > a > i { + .menu > li > a img, + .menu > li > a i { vertical-align: middle; } - .menu > li > a > span { + .menu > li > a i + span, + .menu > li > a img + span { vertical-align: middle; } - .menu > li > a > img, - .menu > li > a > i { + .menu > li > a img, + .menu > li > a i { display: inline-block; margin-right: 0.25rem; } .menu > li { @@ -2380,9 +2446,9 @@ select { .menu.align-right > li { float: right; } .menu.expanded { + width: 100%; display: table; - table-layout: fixed; - width: 100%; } + table-layout: fixed; } .menu.expanded > li:first-child:last-child { width: 100%; } .menu.icon-top > li > a { @@ -2393,6 +2459,9 @@ select { margin: 0 auto 0.25rem; } .menu.nested { margin-left: 1rem; } + .menu .active > a { + color: #fefefe; + background: #2199e8; } .menu-text { font-weight: bold; @@ -2405,6 +2474,48 @@ select { .no-js [data-responsive-menu] ul { display: none; } +.menu-icon { + position: relative; + display: inline-block; + vertical-align: middle; + cursor: pointer; + width: 20px; + height: 16px; } + .menu-icon::after { + content: ''; + position: absolute; + display: block; + width: 100%; + height: 2px; + background: #fefefe; + top: 0; + left: 0; + box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe; } + .menu-icon:hover::after { + background: #cacaca; + box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; } + +.menu-icon.dark { + position: relative; + display: inline-block; + vertical-align: middle; + cursor: pointer; + width: 20px; + height: 16px; } + .menu-icon.dark::after { + content: ''; + position: absolute; + display: block; + width: 100%; + height: 2px; + background: #0a0a0a; + top: 0; + left: 0; + box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a; } + .menu-icon.dark:hover::after { + background: #8a8a8a; + box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; } + html, body { height: 100%; } @@ -2425,7 +2536,13 @@ body { transition: transform 0.5s ease, -webkit-transform 0.5s ease; } .off-canvas-wrapper-inner::before, .off-canvas-wrapper-inner::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .off-canvas-wrapper-inner::after { clear: both; } @@ -2439,6 +2556,7 @@ body { -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; + padding-bottom: 0.1px; box-shadow: 0 0 10px rgba(10, 10, 10, 0.5); } .js-off-canvas-exit { @@ -2585,7 +2703,13 @@ body { margin-bottom: 1rem; } .pagination::before, .pagination::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .pagination::after { clear: both; } .pagination li { @@ -2619,19 +2743,19 @@ body { .pagination .disabled:hover { background: transparent; } .pagination .ellipsis::after { - content: '…'; + content: '\2026'; padding: 0.1875rem 0.625rem; color: #0a0a0a; } .pagination-previous a::before, .pagination-previous.disabled::before { - content: '«'; + content: '\00ab'; display: inline-block; margin-right: 0.5rem; } .pagination-next a::after, .pagination-next.disabled::after { - content: '»'; + content: '\00bb'; display: inline-block; margin-left: 0.5rem; } @@ -2646,10 +2770,10 @@ body { background-color: #777; } .progress.success .progress-meter { background-color: #3adb76; } - .progress.alert .progress-meter { - background-color: #ec5840; } .progress.warning .progress-meter { background-color: #ffae00; } + .progress.alert .progress-meter { + background-color: #ec5840; } .progress-meter { position: relative; @@ -2792,7 +2916,6 @@ body.is-reveal-open { z-index: 1006; padding: 1rem; border: 1px solid #cacaca; - margin: 6.25rem auto 0; background-color: #fefefe; border-radius: 0; position: absolute; @@ -3006,7 +3129,13 @@ table.hover tr:nth-of-type(even):hover { border: 1px solid #e6e6e6; } .tabs::before, .tabs::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .tabs::after { clear: both; } @@ -3033,8 +3162,7 @@ table.hover tr:nth-of-type(even):hover { display: block; padding: 1.25rem 1.5rem; line-height: 1; - font-size: 12px; - color: #2199e8; } + font-size: 0.75rem; } .tabs-title > a:hover { background: #fefefe; } .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] { @@ -3074,7 +3202,13 @@ table.hover tr:nth-of-type(even):hover { padding: 0.5rem; } .title-bar::before, .title-bar::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .title-bar::after { clear: both; } .title-bar .menu-icon { @@ -3093,27 +3227,6 @@ table.hover tr:nth-of-type(even):hover { vertical-align: middle; display: inline-block; } -.menu-icon { - position: relative; - display: inline-block; - vertical-align: middle; - cursor: pointer; - width: 20px; - height: 16px; } - .menu-icon::after { - content: ''; - position: absolute; - display: block; - width: 100%; - height: 2px; - background: #fefefe; - top: 0; - left: 0; - box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe; } - .menu-icon:hover::after { - background: #cacaca; - box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; } - .menu-icon.dark { position: relative; display: inline-block; @@ -3214,7 +3327,13 @@ table.hover tr:nth-of-type(even):hover { padding: 0.5rem; } .top-bar::before, .top-bar::after { content: ' '; - display: table; } + display: table; + -webkit-flex-basis: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } .top-bar::after { clear: both; } .top-bar, @@ -3223,40 +3342,35 @@ table.hover tr:nth-of-type(even):hover { .top-bar input { width: 200px; margin-right: 1rem; } + .top-bar .input-group-field { + width: 100%; + margin-right: 0; } .top-bar input.button { width: auto; } @media screen and (max-width: 39.9375em) { - .stacked-for-small .top-bar-title { - width: 100%; } + .stacked-for-small .top-bar-left, .stacked-for-small .top-bar-right { - width: 100%; } - .stacked-for-small .top-bar-left { width: 100%; } } @media screen and (max-width: 63.9375em) { - .stacked-for-medium .top-bar-title { - width: 100%; } + .stacked-for-medium .top-bar-left, .stacked-for-medium .top-bar-right { - width: 100%; } - .stacked-for-medium .top-bar-left { width: 100%; } } @media screen and (max-width: 74.9375em) { - .stacked-for-large .top-bar-title { - width: 100%; } + .stacked-for-large .top-bar-left, .stacked-for-large .top-bar-right { - width: 100%; } - .stacked-for-large .top-bar-left { width: 100%; } } -@media screen and (min-width: 0em) and (max-width: 39.9375em) { - .top-bar-title { - width: 100%; } +.top-bar-left, +.top-bar-right { + width: 100%; } + +@media screen and (min-width: 40em) { + .top-bar-left, .top-bar-right { - width: 100%; } - .top-bar-left { - width: 100%; } } + width: auto; } } .top-bar-title { float: left; diff --git a/dist/foundation.js b/dist/foundation.js index e7fa0f42bf..46ddfb9a64 100644 --- a/dist/foundation.js +++ b/dist/foundation.js @@ -1,7794 +1,6544 @@ -!function($) { -"use strict"; - -var FOUNDATION_VERSION = '6.1.2'; - -// Global Foundation object -// This is attached to the window, or used as a module for AMD/Browserify -var Foundation = { - version: FOUNDATION_VERSION, - - /** - * Stores initialized plugins. - */ - _plugins: {}, - - /** - * Stores generated unique ids for plugin instances - */ - _uuids: [], - - /** - * Returns a boolean for RTL support - */ - rtl: function(){ - return $('html').attr('dir') === 'rtl'; - }, - /** - * Defines a Foundation plugin, adding it to the `Foundation` namespace and the list of plugins to initialize when reflowing. - * @param {Object} plugin - The constructor of the plugin. - */ - plugin: function(plugin, name) { - // Object key to use when adding to global Foundation object - // Examples: Foundation.Reveal, Foundation.OffCanvas - var className = (name || functionName(plugin)); - // Object key to use when storing the plugin, also used to create the identifying data attribute for the plugin - // Examples: data-reveal, data-off-canvas - var attrName = hyphenate(className); - - // Add to the Foundation object and the plugins list (for reflowing) - this._plugins[attrName] = this[className] = plugin; - }, - /** - * @function - * Populates the _uuids array with pointers to each individual plugin instance. - * Adds the `zfPlugin` data-attribute to programmatically created plugins to allow use of $(selector).foundation(method) calls. - * Also fires the initialization event for each plugin, consolidating repeditive code. - * @param {Object} plugin - an instance of a plugin, usually `this` in context. - * @param {String} name - the name of the plugin, passed as a camelCased string. - * @fires Plugin#init - */ - registerPlugin: function(plugin, name){ - var pluginName = name ? hyphenate(name) : functionName(plugin.constructor).toLowerCase(); - plugin.uuid = this.GetYoDigits(6, pluginName); - - if(!plugin.$element.attr('data-' + pluginName)){ plugin.$element.attr('data-' + pluginName, plugin.uuid); } - if(!plugin.$element.data('zfPlugin')){ plugin.$element.data('zfPlugin', plugin); } - /** - * Fires when the plugin has initialized. - * @event Plugin#init - */ - plugin.$element.trigger('init.zf.' + pluginName); - - this._uuids.push(plugin.uuid); - - return; - }, - /** - * @function - * Removes the plugins uuid from the _uuids array. - * Removes the zfPlugin data attribute, as well as the data-plugin-name attribute. - * Also fires the destroyed event for the plugin, consolidating repeditive code. - * @param {Object} plugin - an instance of a plugin, usually `this` in context. - * @fires Plugin#destroyed - */ - unregisterPlugin: function(plugin){ - var pluginName = hyphenate(functionName(plugin.$element.data('zfPlugin').constructor)); - - this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1); - plugin.$element.removeAttr('data-' + pluginName).removeData('zfPlugin') - /** - * Fires when the plugin has been destroyed. - * @event Plugin#destroyed - */ - .trigger('destroyed.zf.' + pluginName); - for(var prop in plugin){ - plugin[prop] = null;//clean up script to prep for garbage collection. - } - return; - }, - - /** - * @function - * Causes one or more active plugins to re-initialize, resetting event listeners, recalculating positions, etc. - * @param {String} plugins - optional string of an individual plugin key, attained by calling `$(element).data('pluginName')`, or string of a plugin class i.e. `'dropdown'` - * @default If no argument is passed, reflow all currently active plugins. - */ - reInit: function(plugins){ - var isJQ = plugins instanceof $; - try{ - if(isJQ){ - plugins.each(function(){ - $(this).data('zfPlugin')._init(); - }); - }else{ - var type = typeof plugins, - _this = this, - fns = { - 'object': function(plgs){ - plgs.forEach(function(p){ - $('[data-'+ p +']').foundation('_init'); - }); - }, - 'string': function(){ - $('[data-'+ plugins +']').foundation('_init'); - }, - 'undefined': function(){ - this['object'](Object.keys(_this._plugins)); - } - }; - fns[type](plugins); - } - }catch(err){ - console.error(err); - }finally{ - return plugins; - } - }, - - /** - * returns a random base-36 uid with namespacing - * @function - * @param {Number} length - number of random base-36 digits desired. Increase for more random strings. - * @param {String} namespace - name of plugin to be incorporated in uid, optional. - * @default {String} '' - if no plugin name is provided, nothing is appended to the uid. - * @returns {String} - unique id - */ - GetYoDigits: function(length, namespace){ - length = length || 6; - return Math.round((Math.pow(36, length + 1) - Math.random() * Math.pow(36, length))).toString(36).slice(1) + (namespace ? '-' + namespace : ''); - }, - /** - * Initialize plugins on any elements within `elem` (and `elem` itself) that aren't already initialized. - * @param {Object} elem - jQuery object containing the element to check inside. Also checks the element itself, unless it's the `document` object. - * @param {String|Array} plugins - A list of plugins to initialize. Leave this out to initialize everything. - */ - reflow: function(elem, plugins) { - - // If plugins is undefined, just grab everything - if (typeof plugins === 'undefined') { - plugins = Object.keys(this._plugins); - } - // If plugins is a string, convert it to an array with one item - else if (typeof plugins === 'string') { - plugins = [plugins]; - } - - var _this = this; +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationCore = mod.exports; + } +})(this, function () { + 'use strict'; - // Iterate through each plugin - $.each(plugins, function(i, name) { - // Get the current plugin - var plugin = _this._plugins[name]; + !function ($) { + "use strict"; - // Localize the search to all elements inside elem, as well as elem itself, unless elem === document - var $elem = $(elem).find('[data-'+name+']').addBack('[data-'+name+']'); + var FOUNDATION_VERSION = '6.2.0-rc.1'; + var Foundation = { + version: FOUNDATION_VERSION, + _plugins: {}, + _uuids: [], + rtl: function () { + return $('html').attr('dir') === 'rtl'; + }, + plugin: function (plugin, name) { + var className = name || functionName(plugin); + var attrName = hyphenate(className); + this._plugins[attrName] = this[className] = plugin; + }, + registerPlugin: function (plugin, name) { + var pluginName = name ? hyphenate(name) : functionName(plugin.constructor).toLowerCase(); + plugin.uuid = this.GetYoDigits(6, pluginName); - // For each plugin found, initialize it - $elem.each(function() { - var $el = $(this), - opts = {}; - // Don't double-dip on plugins - if ($el.data('zfPlugin')) { - console.warn("Tried to initialize "+name+" on an element that already has a Foundation plugin."); - return; + if (!plugin.$element.attr('data-' + pluginName)) { + plugin.$element.attr('data-' + pluginName, plugin.uuid); } - if($el.attr('data-options')){ - var thing = $el.attr('data-options').split(';').forEach(function(e, i){ - var opt = e.split(':').map(function(el){ return el.trim(); }); - if(opt[0]) opts[opt[0]] = parseValue(opt[1]); - }); - } - try{ - $el.data('zfPlugin', new plugin($(this), opts)); - }catch(er){ - console.error(er); - }finally{ - return; + if (!plugin.$element.data('zfPlugin')) { + plugin.$element.data('zfPlugin', plugin); } - }); - }); - }, - getFnName: functionName, - transitionend: function($elem){ - var transitions = { - 'transition': 'transitionend', - 'WebkitTransition': 'webkitTransitionEnd', - 'MozTransition': 'transitionend', - 'OTransition': 'otransitionend' - }; - var elem = document.createElement('div'), - end; - for (var t in transitions){ - if (typeof elem.style[t] !== 'undefined'){ - end = transitions[t]; - } - } - if(end){ - return end; - }else{ - end = setTimeout(function(){ - $elem.triggerHandler('transitionend', [$elem]); - }, 1); - return 'transitionend'; - } - } -}; + plugin.$element.trigger('init.zf.' + pluginName); + this._uuids.push(plugin.uuid); -Foundation.util = { - /** - * Function for applying a debounce effect to a function call. - * @function - * @param {Function} func - Function to be called at end of timeout. - * @param {Number} delay - Time in ms to delay the call of `func`. - * @returns function - */ - throttle: function (func, delay) { - var timer = null; - - return function () { - var context = this, args = arguments; + return; + }, + unregisterPlugin: function (plugin) { + var pluginName = hyphenate(functionName(plugin.$element.data('zfPlugin').constructor)); - if (timer === null) { - timer = setTimeout(function () { - func.apply(context, args); - timer = null; - }, delay); - } - }; - } -}; - -// TODO: consider not making this a jQuery function -// TODO: need way to reflow vs. re-initialize -/** - * The Foundation jQuery method. - * @param {String|Array} method - An action to perform on the current jQuery object. - */ -var foundation = function(method) { - var type = typeof method, - $meta = $('meta.foundation-mq'), - $noJS = $('.no-js'); - - if(!$meta.length){ - $('').appendTo(document.head); - } - if($noJS.length){ - $noJS.removeClass('no-js'); - } + this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1); - if(type === 'undefined'){//needs to initialize the Foundation object, or an individual plugin. - Foundation.MediaQuery._init(); - Foundation.reflow(this); - }else if(type === 'string'){//an individual method to invoke on a plugin or group of plugins - var args = Array.prototype.slice.call(arguments, 1);//collect all the arguments, if necessary - var plugClass = this.data('zfPlugin');//determine the class of plugin - - if(plugClass !== undefined && plugClass[method] !== undefined){//make sure both the class and method exist - if(this.length === 1){//if there's only one, call it directly. - plugClass[method].apply(plugClass, args); - }else{ - this.each(function(i, el){//otherwise loop through the jQuery collection and invoke the method on each - plugClass[method].apply($(el).data('zfPlugin'), args); - }); - } - }else{//error for no class or no method - throw new ReferenceError("We're sorry, '" + method + "' is not an available method for " + (plugClass ? functionName(plugClass) : 'this element') + '.'); - } - }else{//error for invalid argument type - throw new TypeError("We're sorry, '" + type + "' is not a valid parameter. You must use a string representing the method you wish to invoke."); - } - return this; -}; - -window.Foundation = Foundation; -$.fn.foundation = foundation; - -// Polyfill for requestAnimationFrame -(function() { - if (!Date.now || !window.Date.now) - window.Date.now = Date.now = function() { return new Date().getTime(); }; - - var vendors = ['webkit', 'moz']; - for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) { - var vp = vendors[i]; - window.requestAnimationFrame = window[vp+'RequestAnimationFrame']; - window.cancelAnimationFrame = (window[vp+'CancelAnimationFrame'] - || window[vp+'CancelRequestAnimationFrame']); - } - if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) - || !window.requestAnimationFrame || !window.cancelAnimationFrame) { - var lastTime = 0; - window.requestAnimationFrame = function(callback) { - var now = Date.now(); - var nextTime = Math.max(lastTime + 16, now); - return setTimeout(function() { callback(lastTime = nextTime); }, - nextTime - now); - }; - window.cancelAnimationFrame = clearTimeout; - } - /** - * Polyfill for performance.now, required by rAF - */ - if(!window.performance || !window.performance.now){ - window.performance = { - start: Date.now(), - now: function(){ return Date.now() - this.start; } - }; - } -})(); -if (!Function.prototype.bind) { - Function.prototype.bind = function(oThis) { - if (typeof this !== 'function') { - // closest thing possible to the ECMAScript 5 - // internal IsCallable function - throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable'); - } + plugin.$element.removeAttr('data-' + pluginName).removeData('zfPlugin').trigger('destroyed.zf.' + pluginName); - var aArgs = Array.prototype.slice.call(arguments, 1), - fToBind = this, - fNOP = function() {}, - fBound = function() { - return fToBind.apply(this instanceof fNOP - ? this - : oThis, - aArgs.concat(Array.prototype.slice.call(arguments))); - }; + for (var prop in plugin) { + plugin[prop] = null; + } - if (this.prototype) { - // native functions don't have a prototype - fNOP.prototype = this.prototype; - } - fBound.prototype = new fNOP(); - - return fBound; - }; -} -// Polyfill to get the name of a function in IE9 -function functionName(fn) { - if (Function.prototype.name === undefined) { - var funcNameRegex = /function\s([^(]{1,})\(/; - var results = (funcNameRegex).exec((fn).toString()); - return (results && results.length > 1) ? results[1].trim() : ""; - } - else if (fn.prototype === undefined) { - return fn.constructor.name; - } - else { - return fn.prototype.constructor.name; - } -} -function parseValue(str){ - if(/true/.test(str)) return true; - else if(/false/.test(str)) return false; - else if(!isNaN(str * 1)) return parseFloat(str); - return str; -} -// Convert PascalCase to kebab-case -// Thank you: http://stackoverflow.com/a/8955580 -function hyphenate(str) { - return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase(); -} - -}(jQuery); - -!function(Foundation, window){ - /** - * Compares the dimensions of an element to a container and determines collision events with container. - * @function - * @param {jQuery} element - jQuery object to test for collisions. - * @param {jQuery} parent - jQuery object to use as bounding container. - * @param {Boolean} lrOnly - set to true to check left and right values only. - * @param {Boolean} tbOnly - set to true to check top and bottom values only. - * @default if no parent object passed, detects collisions with `window`. - * @returns {Boolean} - true if collision free, false if a collision in any direction. - */ - var ImNotTouchingYou = function(element, parent, lrOnly, tbOnly){ - var eleDims = GetDimensions(element), - top, bottom, left, right; - - if(parent){ - var parDims = GetDimensions(parent); - - bottom = (eleDims.offset.top + eleDims.height <= parDims.height + parDims.offset.top); - top = (eleDims.offset.top >= parDims.offset.top); - left = (eleDims.offset.left >= parDims.offset.left); - right = (eleDims.offset.left + eleDims.width <= parDims.width); - }else{ - bottom = (eleDims.offset.top + eleDims.height <= eleDims.windowDims.height + eleDims.windowDims.offset.top); - top = (eleDims.offset.top >= eleDims.windowDims.offset.top); - left = (eleDims.offset.left >= eleDims.windowDims.offset.left); - right = (eleDims.offset.left + eleDims.width <= eleDims.windowDims.width); - } - var allDirs = [bottom, top, left, right]; - - if(lrOnly){ return left === right === true; } - if(tbOnly){ return top === bottom === true; } - - return allDirs.indexOf(false) === -1; - }; - - /** - * Uses native methods to return an object of dimension values. - * @function - * @param {jQuery || HTML} element - jQuery object or DOM element for which to get the dimensions. Can be any element other that document or window. - * @returns {Object} - nested object of integer pixel values - * TODO - if element is window, return only those values. - */ - var GetDimensions = function(elem, test){ - elem = elem.length ? elem[0] : elem; - - if(elem === window || elem === document){ throw new Error("I'm sorry, Dave. I'm afraid I can't do that."); } - - var rect = elem.getBoundingClientRect(), - parRect = elem.parentNode.getBoundingClientRect(), - winRect = document.body.getBoundingClientRect(), - winY = window.pageYOffset, - winX = window.pageXOffset; - - return { - width: rect.width, - height: rect.height, - offset: { - top: rect.top + winY, - left: rect.left + winX + return; }, - parentDims: { - width: parRect.width, - height: parRect.height, - offset: { - top: parRect.top + winY, - left: parRect.left + winX + reInit: function (plugins) { + var isJQ = plugins instanceof $; + + try { + if (isJQ) { + plugins.each(function () { + $(this).data('zfPlugin')._init(); + }); + } else { + var type = typeof plugins, + _this = this, + fns = { + 'object': function (plgs) { + plgs.forEach(function (p) { + p = hyphenate(p); + $('[data-' + p + ']').foundation('_init'); + }); + }, + 'string': function () { + plugins = hyphenate(plugins); + $('[data-' + plugins + ']').foundation('_init'); + }, + 'undefined': function () { + this['object'](Object.keys(_this._plugins)); + } + }; + + fns[type](plugins); + } + } catch (err) { + console.error(err); + } finally { + return plugins; } }, - windowDims: { - width: winRect.width, - height: winRect.height, - offset: { - top: winY, - left: winX + GetYoDigits: function (length, namespace) { + length = length || 6; + return Math.round(Math.pow(36, length + 1) - Math.random() * Math.pow(36, length)).toString(36).slice(1) + (namespace ? '-' + namespace : ''); + }, + reflow: function (elem, plugins) { + if (typeof plugins === 'undefined') { + plugins = Object.keys(this._plugins); + } else if (typeof plugins === 'string') { + plugins = [plugins]; } - } - }; - }; - /** - * Returns an object of top and left integer pixel values for dynamically rendered elements, - * such as: Tooltip, Reveal, and Dropdown - * @function - * @param {jQuery} element - jQuery object for the element being positioned. - * @param {jQuery} anchor - jQuery object for the element's anchor point. - * @param {String} position - a string relating to the desired position of the element, relative to it's anchor - * @param {Number} vOffset - integer pixel value of desired vertical separation between anchor and element. - * @param {Number} hOffset - integer pixel value of desired horizontal separation between anchor and element. - * @param {Boolean} isOverflow - if a collision event is detected, sets to true to default the element to full width - any desired offset. - * TODO alter/rewrite to work with `em` values as well/instead of pixels - */ - var GetOffsets = function(element, anchor, position, vOffset, hOffset, isOverflow){ - var $eleDims = GetDimensions(element), - // var $eleDims = GetDimensions(element), - $anchorDims = anchor ? GetDimensions(anchor) : null; - // $anchorDims = anchor ? GetDimensions(anchor) : null; - switch(position){ - case 'top': - return { - left: $anchorDims.offset.left, - top: $anchorDims.offset.top - ($eleDims.height + vOffset) - }; - break; - case 'left': - return { - left: $anchorDims.offset.left - ($eleDims.width + hOffset), - top: $anchorDims.offset.top - }; - break; - case 'right': - return { - left: $anchorDims.offset.left + $anchorDims.width + hOffset, - top: $anchorDims.offset.top - }; - break; - case 'center top': - return { - left: ($anchorDims.offset.left + ($anchorDims.width / 2)) - ($eleDims.width / 2), - top: $anchorDims.offset.top - ($eleDims.height + vOffset) - }; - break; - case 'center bottom': - return { - left: isOverflow ? hOffset : (($anchorDims.offset.left + ($anchorDims.width / 2)) - ($eleDims.width / 2)), - top: $anchorDims.offset.top + $anchorDims.height + vOffset - }; - break; - case 'center left': - return { - left: $anchorDims.offset.left - ($eleDims.width + hOffset), - top: ($anchorDims.offset.top + ($anchorDims.height / 2)) - ($eleDims.height / 2) - }; - break; - case 'center right': - return { - left: $anchorDims.offset.left + $anchorDims.width + hOffset + 1, - top: ($anchorDims.offset.top + ($anchorDims.height / 2)) - ($eleDims.height / 2) - }; - break; - case 'center': - return { - left: ($eleDims.windowDims.offset.left + ($eleDims.windowDims.width / 2)) - ($eleDims.width / 2), - top: ($eleDims.windowDims.offset.top + ($eleDims.windowDims.height / 2)) - ($eleDims.height / 2) - }; - break; - case 'reveal': - return { - left: ($eleDims.windowDims.width - $eleDims.width) / 2, - top: $eleDims.windowDims.offset.top + vOffset - }; - case 'reveal full': - return { - left: $eleDims.windowDims.offset.left, - top: $eleDims.windowDims.offset.top - }; - break; - default: - return { - left: $anchorDims.offset.left, - top: $anchorDims.offset.top + $anchorDims.height + vOffset - }; - } - }; - Foundation.Box = { - ImNotTouchingYou: ImNotTouchingYou, - GetDimensions: GetDimensions, - GetOffsets: GetOffsets - }; -}(window.Foundation, window); - -/******************************************* - * * - * This util was created by Marius Olbertz * - * Please thank Marius on GitHub /owlbertz * - * or the web http://www.mariusolbertz.de/ * - * * - ******************************************/ -!function($, Foundation){ - 'use strict'; - Foundation.Keyboard = {}; - - var keyCodes = { - 9: 'TAB', - 13: 'ENTER', - 27: 'ESCAPE', - 32: 'SPACE', - 37: 'ARROW_LEFT', - 38: 'ARROW_UP', - 39: 'ARROW_RIGHT', - 40: 'ARROW_DOWN' - }; - - /* - * Constants for easier comparing. - * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE - */ - var keys = (function(kcs) { - var k = {}; - for (var kc in kcs) k[kcs[kc]] = kcs[kc]; - return k; - })(keyCodes); - - Foundation.Keyboard.keys = keys; - - /** - * Parses the (keyboard) event and returns a String that represents its key - * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE - * @param {Event} event - the event generated by the event handler - * @return String key - String that represents the key pressed - */ - var parseKey = function(event) { - var key = keyCodes[event.which || event.keyCode] || String.fromCharCode(event.which).toUpperCase(); - if (event.shiftKey) key = 'SHIFT_' + key; - if (event.ctrlKey) key = 'CTRL_' + key; - if (event.altKey) key = 'ALT_' + key; - return key; - }; - Foundation.Keyboard.parseKey = parseKey; - - - // plain commands per component go here, ltr and rtl are merged based on orientation - var commands = {}; - - /** - * Handles the given (keyboard) event - * @param {Event} event - the event generated by the event handler - * @param {String} component - Foundation component's name, e.g. Slider or Reveal - * @param {Objects} functions - collection of functions that are to be executed - */ - var handleKey = function(event, component, functions) { - var commandList = commands[component], - keyCode = parseKey(event), - cmds, - command, - fn; - if (!commandList) return console.warn('Component not defined!'); - - if (typeof commandList.ltr === 'undefined') { // this component does not differentiate between ltr and rtl - cmds = commandList; // use plain list - } else { // merge ltr and rtl: if document is rtl, rtl overwrites ltr and vice versa - if (Foundation.rtl()) cmds = $.extend({}, commandList.ltr, commandList.rtl); - - else cmds = $.extend({}, commandList.rtl, commandList.ltr); - } - command = cmds[keyCode]; + var _this = this; - fn = functions[command]; - if (fn && typeof fn === 'function') { // execute function if exists - fn.apply(); - if (functions.handled || typeof functions.handled === 'function') { // execute function when event was handled - functions.handled.apply(); - } - } else { - if (functions.unhandled || typeof functions.unhandled === 'function') { // execute function when event was not handled - functions.unhandled.apply(); - } - } - }; - Foundation.Keyboard.handleKey = handleKey; - - /** - * Finds all focusable elements within the given `$element` - * @param {jQuery} $element - jQuery object to search within - * @return {jQuery} $focusable - all focusable elements within `$element` - */ - var findFocusable = function($element) { - return $element.find('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]').filter(function() { - if (!$(this).is(':visible') || $(this).attr('tabindex') < 0) { return false; } //only have visible elements and those that have a tabindex greater or equal 0 - return true; - }); - }; - Foundation.Keyboard.findFocusable = findFocusable; - - /** - * Returns the component name name - * @param {Object} component - Foundation component, e.g. Slider or Reveal - * @return String componentName - */ - - var register = function(componentName, cmds) { - commands[componentName] = cmds; - }; - Foundation.Keyboard.register = register; -}(jQuery, window.Foundation); - -!function($, Foundation) { - -// Default set of media queries -var defaultQueries = { - 'default' : 'only screen', - landscape : 'only screen and (orientation: landscape)', - portrait : 'only screen and (orientation: portrait)', - retina : 'only screen and (-webkit-min-device-pixel-ratio: 2),' + - 'only screen and (min--moz-device-pixel-ratio: 2),' + - 'only screen and (-o-min-device-pixel-ratio: 2/1),' + - 'only screen and (min-device-pixel-ratio: 2),' + - 'only screen and (min-resolution: 192dpi),' + - 'only screen and (min-resolution: 2dppx)' -}; - -var MediaQuery = { - queries: [], - current: '', - - /** - * Checks if the screen is at least as wide as a breakpoint. - * @function - * @param {String} size - Name of the breakpoint to check. - * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller. - */ - atLeast: function(size) { - var query = this.get(size); - - if (query) { - return window.matchMedia(query).matches; - } + $.each(plugins, function (i, name) { + var plugin = _this._plugins[name]; + var $elem = $(elem).find('[data-' + name + ']').addBack('[data-' + name + ']'); + $elem.each(function () { + var $el = $(this), + opts = {}; - return false; - }, - - /** - * Gets the media query of a breakpoint. - * @function - * @param {String} size - Name of the breakpoint to get. - * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist. - */ - get: function(size) { - for (var i in this.queries) { - var query = this.queries[i]; - if (size === query.name) return query.value; - } + if ($el.data('zfPlugin')) { + console.warn("Tried to initialize " + name + " on an element that already has a Foundation plugin."); + return; + } - return null; - }, - - /** - * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher. - * @function - * @private - */ - _init: function() { - var self = this; - var extractedStyles = $('.foundation-mq').css('font-family'); - var namedQueries; - - namedQueries = parseStyleToObject(extractedStyles); - - for (var key in namedQueries) { - self.queries.push({ - name: key, - value: 'only screen and (min-width: ' + namedQueries[key] + ')' - }); - } + if ($el.attr('data-options')) { + var thing = $el.attr('data-options').split(';').forEach(function (e, i) { + var opt = e.split(':').map(function (el) { + return el.trim(); + }); + if (opt[0]) opts[opt[0]] = parseValue(opt[1]); + }); + } - this.current = this._getCurrentSize(); + try { + $el.data('zfPlugin', new plugin($(this), opts)); + } catch (er) { + console.error(er); + } finally { + return; + } + }); + }); + }, + getFnName: functionName, + transitionend: function ($elem) { + var transitions = { + 'transition': 'transitionend', + 'WebkitTransition': 'webkitTransitionEnd', + 'MozTransition': 'transitionend', + 'OTransition': 'otransitionend' + }; + var elem = document.createElement('div'), + end; - this._watcher(); + for (var t in transitions) { + if (typeof elem.style[t] !== 'undefined') { + end = transitions[t]; + } + } - // Extend default queries - // namedQueries = $.extend(defaultQueries, namedQueries); - }, + if (end) { + return end; + } else { + end = setTimeout(function () { + $elem.triggerHandler('transitionend', [$elem]); + }, 1); + return 'transitionend'; + } + } + }; + Foundation.util = { + throttle: function (func, delay) { + var timer = null; + return function () { + var context = this, + args = arguments; + + if (timer === null) { + timer = setTimeout(function () { + func.apply(context, args); + timer = null; + }, delay); + } + }; + } + }; - /** - * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one). - * @function - * @private - * @returns {String} Name of the current breakpoint. - */ - _getCurrentSize: function() { - var matched; + var foundation = function (method) { + var type = typeof method, + $meta = $('meta.foundation-mq'), + $noJS = $('.no-js'); - for (var i in this.queries) { - var query = this.queries[i]; + if (!$meta.length) { + $('').appendTo(document.head); + } - if (window.matchMedia(query.value).matches) { - matched = query; + if ($noJS.length) { + $noJS.removeClass('no-js'); } - } - if(typeof matched === 'object') { - return matched.name; - } else { - return matched; - } - }, + if (type === 'undefined') { + Foundation.MediaQuery._init(); - /** - * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes. - * @function - * @private - */ - _watcher: function() { - var _this = this; + Foundation.reflow(this); + } else if (type === 'string') { + var args = Array.prototype.slice.call(arguments, 1); + var plugClass = this.data('zfPlugin'); - $(window).on('resize.zf.mediaquery', function() { - var newSize = _this._getCurrentSize(); + if (plugClass !== undefined && plugClass[method] !== undefined) { + if (this.length === 1) { + plugClass[method].apply(plugClass, args); + } else { + this.each(function (i, el) { + plugClass[method].apply($(el).data('zfPlugin'), args); + }); + } + } else { + throw new ReferenceError("We're sorry, '" + method + "' is not an available method for " + (plugClass ? functionName(plugClass) : 'this element') + '.'); + } + } else { + throw new TypeError('We\'re sorry, ' + type + ' is not a valid parameter. You must use a string representing the method you wish to invoke.'); + } - if (newSize !== _this.current) { - // Broadcast the media query change on the window - $(window).trigger('changed.zf.mediaquery', [newSize, _this.current]); + return this; + }; - // Change the current media query - _this.current = newSize; - } - }); - } -}; + window.Foundation = Foundation; + $.fn.foundation = foundation; -Foundation.MediaQuery = MediaQuery; + (function () { + if (!Date.now || !window.Date.now) window.Date.now = Date.now = function () { + return new Date().getTime(); + }; + var vendors = ['webkit', 'moz']; -// matchMedia() polyfill - Test a CSS media type/query in JS. -// Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license -window.matchMedia || (window.matchMedia = function() { - 'use strict'; + for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) { + var vp = vendors[i]; + window.requestAnimationFrame = window[vp + 'RequestAnimationFrame']; + window.cancelAnimationFrame = window[vp + 'CancelAnimationFrame'] || window[vp + 'CancelRequestAnimationFrame']; + } - // For browsers that support matchMedium api such as IE 9 and webkit - var styleMedia = (window.styleMedia || window.media); + if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) || !window.requestAnimationFrame || !window.cancelAnimationFrame) { + var lastTime = 0; - // For those that don't support matchMedium - if (!styleMedia) { - var style = document.createElement('style'), - script = document.getElementsByTagName('script')[0], - info = null; + window.requestAnimationFrame = function (callback) { + var now = Date.now(); + var nextTime = Math.max(lastTime + 16, now); + return setTimeout(function () { + callback(lastTime = nextTime); + }, nextTime - now); + }; - style.type = 'text/css'; - style.id = 'matchmediajs-test'; + window.cancelAnimationFrame = clearTimeout; + } - script.parentNode.insertBefore(style, script); + if (!window.performance || !window.performance.now) { + window.performance = { + start: Date.now(), + now: function () { + return Date.now() - this.start; + } + }; + } + })(); - // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers - info = ('getComputedStyle' in window) && window.getComputedStyle(style, null) || style.currentStyle; + if (!Function.prototype.bind) { + Function.prototype.bind = function (oThis) { + if (typeof this !== 'function') { + throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable'); + } - styleMedia = { - matchMedium: function(media) { - var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }'; + var aArgs = Array.prototype.slice.call(arguments, 1), + fToBind = this, + fNOP = function () {}, + fBound = function () { + return fToBind.apply(this instanceof fNOP ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments))); + }; - // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers - if (style.styleSheet) { - style.styleSheet.cssText = text; - } else { - style.textContent = text; + if (this.prototype) { + fNOP.prototype = this.prototype; } - // Test if media query is true or false - return info.width === '1px'; + fBound.prototype = new fNOP(); + return fBound; + }; + } + + function functionName(fn) { + if (Function.prototype.name === undefined) { + var funcNameRegex = /function\s([^(]{1,})\(/; + var results = funcNameRegex.exec(fn.toString()); + return results && results.length > 1 ? results[1].trim() : ""; + } else if (fn.prototype === undefined) { + return fn.constructor.name; + } else { + return fn.prototype.constructor.name; } + } + + function parseValue(str) { + if (/true/.test(str)) return true;else if (/false/.test(str)) return false;else if (!isNaN(str * 1)) return parseFloat(str); + return str; + } + + function hyphenate(str) { + return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase(); + } + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} }; + factory(); + global.foundationUtilBox = mod.exports; } +})(this, function () { + 'use strict'; - return function(media) { - return { - matches: styleMedia.matchMedium(media || 'all'), - media: media || 'all' + !function ($) { + Foundation.Box = { + ImNotTouchingYou: ImNotTouchingYou, + GetDimensions: GetDimensions, + GetOffsets: GetOffsets }; - }; -}()); -// Thank you: https://github.com/sindresorhus/query-string -function parseStyleToObject(str) { - var styleObject = {}; + function ImNotTouchingYou(element, parent, lrOnly, tbOnly) { + var eleDims = GetDimensions(element), + top, + bottom, + left, + right; + + if (parent) { + var parDims = GetDimensions(parent); + bottom = eleDims.offset.top + eleDims.height <= parDims.height + parDims.offset.top; + top = eleDims.offset.top >= parDims.offset.top; + left = eleDims.offset.left >= parDims.offset.left; + right = eleDims.offset.left + eleDims.width <= parDims.width; + } else { + bottom = eleDims.offset.top + eleDims.height <= eleDims.windowDims.height + eleDims.windowDims.offset.top; + top = eleDims.offset.top >= eleDims.windowDims.offset.top; + left = eleDims.offset.left >= eleDims.windowDims.offset.left; + right = eleDims.offset.left + eleDims.width <= eleDims.windowDims.width; + } - if (typeof str !== 'string') { - return styleObject; - } + var allDirs = [bottom, top, left, right]; - str = str.trim().slice(1, -1); // browsers re-quote string style values + if (lrOnly) { + return left === right === true; + } - if (!str) { - return styleObject; - } + if (tbOnly) { + return top === bottom === true; + } - styleObject = str.split('&').reduce(function(ret, param) { - var parts = param.replace(/\+/g, ' ').split('='); - var key = parts[0]; - var val = parts[1]; - key = decodeURIComponent(key); - - // missing `=` should be `null`: - // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters - val = val === undefined ? null : decodeURIComponent(val); - - if (!ret.hasOwnProperty(key)) { - ret[key] = val; - } else if (Array.isArray(ret[key])) { - ret[key].push(val); - } else { - ret[key] = [ret[key], val]; + return allDirs.indexOf(false) === -1; } - return ret; - }, {}); - - return styleObject; -} - -}(jQuery, Foundation); - -/** - * Motion module. - * @module foundation.motion - */ -!function($, Foundation) { - -var initClasses = ['mui-enter', 'mui-leave']; -var activeClasses = ['mui-enter-active', 'mui-leave-active']; - -function animate(isIn, element, animation, cb) { - element = $(element).eq(0); - - if (!element.length) return; - - var initClass = isIn ? initClasses[0] : initClasses[1]; - var activeClass = isIn ? activeClasses[0] : activeClasses[1]; - - // Set up the animation - reset(); - element.addClass(animation) - .css('transition', 'none'); - // .addClass(initClass); - // if(isIn) element.show(); - requestAnimationFrame(function() { - element.addClass(initClass); - if (isIn) element.show(); - }); - // Start the animation - requestAnimationFrame(function() { - element[0].offsetWidth; - element.css('transition', ''); - element.addClass(activeClass); - }); - // Move(500, element, function(){ - // // element[0].offsetWidth; - // element.css('transition', ''); - // element.addClass(activeClass); - // }); - - // Clean up the animation when it finishes - element.one(Foundation.transitionend(element), finish);//.one('finished.zf.animate', finish); - - // Hides the element (for out animations), resets the element, and runs a callback - function finish() { - if (!isIn) element.hide(); - reset(); - if (cb) cb.apply(element); - } - // Resets transitions and removes motion-specific classes - function reset() { - element[0].style.transitionDuration = 0; - element.removeClass(initClass + ' ' + activeClass + ' ' + animation); - } -} + ; -var Motion = { - animateIn: function(element, animation, /*duration,*/ cb) { - animate(true, element, animation, cb); - }, + function GetDimensions(elem, test) { + elem = elem.length ? elem[0] : elem; - animateOut: function(element, animation, /*duration,*/ cb) { - animate(false, element, animation, cb); - } -}; - -var Move = function(duration, elem, fn){ - var anim, prog, start = null; - // console.log('called'); - - function move(ts){ - if(!start) start = window.performance.now(); - // console.log(start, ts); - prog = ts - start; - fn.apply(elem); - - if(prog < duration){ anim = window.requestAnimationFrame(move, elem); } - else{ - window.cancelAnimationFrame(anim); - elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]); + if (elem === window || elem === document) { + throw new Error("I'm sorry, Dave. I'm afraid I can't do that."); + } + + var rect = elem.getBoundingClientRect(), + parRect = elem.parentNode.getBoundingClientRect(), + winRect = document.body.getBoundingClientRect(), + winY = window.pageYOffset, + winX = window.pageXOffset; + return { + width: rect.width, + height: rect.height, + offset: { + top: rect.top + winY, + left: rect.left + winX + }, + parentDims: { + width: parRect.width, + height: parRect.height, + offset: { + top: parRect.top + winY, + left: parRect.left + winX + } + }, + windowDims: { + width: winRect.width, + height: winRect.height, + offset: { + top: winY, + left: winX + } + } + }; } - } - anim = window.requestAnimationFrame(move); -}; -Foundation.Move = Move; -Foundation.Motion = Motion; + function GetOffsets(element, anchor, position, vOffset, hOffset, isOverflow) { + var $eleDims = GetDimensions(element), + $anchorDims = anchor ? GetDimensions(anchor) : null; -}(jQuery, Foundation); + switch (position) { + case 'top': + return { + left: $anchorDims.offset.left, + top: $anchorDims.offset.top - ($eleDims.height + vOffset) + }; + break; -!function($, Foundation){ - 'use strict'; - Foundation.Nest = { - Feather: function(menu, type){ - menu.attr('role', 'menubar'); - type = type || 'zf'; - var items = menu.find('li').attr({'role': 'menuitem'}), - subMenuClass = 'is-' + type + '-submenu', - subItemClass = subMenuClass + '-item', - hasSubClass = 'is-' + type + '-submenu-parent'; - menu.find('a:first').attr('tabindex', 0); - items.each(function(){ - var $item = $(this), - $sub = $item.children('ul'); - if($sub.length){ - $item.addClass(hasSubClass) - .attr({ - 'aria-haspopup': true, - 'aria-expanded': false, - 'aria-label': $item.children('a:first').text() - }); - $sub.addClass('submenu ' + subMenuClass) - .attr({ - 'data-submenu': '', - 'aria-hidden': true, - 'role': 'menu' - }); - } - if($item.parent('[data-submenu]').length){ - $item.addClass('is-submenu-item ' + subItemClass); - } - }); - return; - }, - Burn: function(menu, type){ - var items = menu.find('li').removeAttr('tabindex'), - subMenuClass = 'is-' + type + '-submenu', - subItemClass = subMenuClass + '-item', - hasSubClass = 'is-' + type + '-submenu-parent'; - - // menu.find('.is-active').removeClass('is-active'); - menu.find('*') - // menu.find('.' + subMenuClass + ', .' + subItemClass + ', .is-active, .has-submenu, .is-submenu-item, .submenu, [data-submenu]') - .removeClass(subMenuClass + ' ' + subItemClass + ' ' + hasSubClass + ' is-submenu-item submenu is-active') - .removeAttr('data-submenu').css('display', ''); - - // console.log( menu.find('.' + subMenuClass + ', .' + subItemClass + ', .has-submenu, .is-submenu-item, .submenu, [data-submenu]') - // .removeClass(subMenuClass + ' ' + subItemClass + ' has-submenu is-submenu-item submenu') - // .removeAttr('data-submenu')); - // items.each(function(){ - // var $item = $(this), - // $sub = $item.children('ul'); - // if($item.parent('[data-submenu]').length){ - // $item.removeClass('is-submenu-item ' + subItemClass); - // } - // if($sub.length){ - // $item.removeClass('has-submenu'); - // $sub.removeClass('submenu ' + subMenuClass).removeAttr('data-submenu'); - // } - // }); - } - }; -}(jQuery, window.Foundation); + case 'left': + return { + left: $anchorDims.offset.left - ($eleDims.width + hOffset), + top: $anchorDims.offset.top + }; + break; -!function($, Foundation){ - 'use strict'; - var Timer = function(elem, options, cb){ - var _this = this, - duration = options.duration,//options is an object for easily adding features later. - nameSpace = Object.keys(elem.data())[0] || 'timer', - remain = -1, - start, - timer; - - this.isPaused = false; - - this.restart = function(){ - remain = -1; - clearTimeout(timer); - this.start(); - }; + case 'right': + return { + left: $anchorDims.offset.left + $anchorDims.width + hOffset, + top: $anchorDims.offset.top + }; + break; - this.start = function(){ - this.isPaused = false - // if(!elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things. - clearTimeout(timer); - remain = remain <= 0 ? duration : remain; - elem.data('paused', false); - start = Date.now(); - timer = setTimeout(function(){ - if(options.infinite){ - _this.restart();//rerun the timer. - } - cb(); - }, remain); - elem.trigger('timerstart.zf.' + nameSpace); - }; + case 'center top': + return { + left: $anchorDims.offset.left + $anchorDims.width / 2 - $eleDims.width / 2, + top: $anchorDims.offset.top - ($eleDims.height + vOffset) + }; + break; - this.pause = function(){ - this.isPaused = true; - //if(elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things. - clearTimeout(timer); - elem.data('paused', true); - var end = Date.now(); - remain = remain - (end - start); - elem.trigger('timerpaused.zf.' + nameSpace); - }; - }; - /** - * Runs a callback function when images are fully loaded. - * @param {Object} images - Image(s) to check if loaded. - * @param {Func} callback - Function to execute when image is fully loaded. - */ - var onImagesLoaded = function(images, callback){ - var self = this, - unloaded = images.length; - - if (unloaded === 0) { - callback(); - } + case 'center bottom': + return { + left: isOverflow ? hOffset : $anchorDims.offset.left + $anchorDims.width / 2 - $eleDims.width / 2, + top: $anchorDims.offset.top + $anchorDims.height + vOffset + }; + break; - var singleImageLoaded = function() { - unloaded--; - if (unloaded === 0) { - callback(); - } - }; + case 'center left': + return { + left: $anchorDims.offset.left - ($eleDims.width + hOffset), + top: $anchorDims.offset.top + $anchorDims.height / 2 - $eleDims.height / 2 + }; + break; - images.each(function() { - if (this.complete) { - singleImageLoaded(); - } - else if (typeof this.naturalWidth !== 'undefined' && this.naturalWidth > 0) { - singleImageLoaded(); - } - else { - $(this).one('load', function() { - singleImageLoaded(); - }); - } - }); - }; - - Foundation.Timer = Timer; - Foundation.onImagesLoaded = onImagesLoaded; -}(jQuery, window.Foundation); - -//************************************************** -//**Work inspired by multiple jquery swipe plugins** -//**Done by Yohai Ararat *************************** -//************************************************** -(function($) { - - $.spotSwipe = { - version: '1.0.0', - enabled: 'ontouchstart' in document.documentElement, - preventDefault: false, - moveThreshold: 75, - timeThreshold: 200 - }; - - var startPosX, - startPosY, - startTime, - elapsedTime, - isMoving = false; - - function onTouchEnd() { - // alert(this); - this.removeEventListener('touchmove', onTouchMove); - this.removeEventListener('touchend', onTouchEnd); - isMoving = false; - } + case 'center right': + return { + left: $anchorDims.offset.left + $anchorDims.width + hOffset + 1, + top: $anchorDims.offset.top + $anchorDims.height / 2 - $eleDims.height / 2 + }; + break; - function onTouchMove(e) { - if ($.spotSwipe.preventDefault) { e.preventDefault(); } - if(isMoving) { - var x = e.touches[0].pageX; - var y = e.touches[0].pageY; - var dx = startPosX - x; - var dy = startPosY - y; - var dir; - elapsedTime = new Date().getTime() - startTime; - if(Math.abs(dx) >= $.spotSwipe.moveThreshold && elapsedTime <= $.spotSwipe.timeThreshold) { - dir = dx > 0 ? 'left' : 'right'; - } - // else if(Math.abs(dy) >= $.spotSwipe.moveThreshold && elapsedTime <= $.spotSwipe.timeThreshold) { - // dir = dy > 0 ? 'down' : 'up'; - // } - if(dir) { - e.preventDefault(); - onTouchEnd.call(this); - $(this).trigger('swipe', dir).trigger('swipe' + dir); + case 'center': + return { + left: $eleDims.windowDims.offset.left + $eleDims.windowDims.width / 2 - $eleDims.width / 2, + top: $eleDims.windowDims.offset.top + $eleDims.windowDims.height / 2 - $eleDims.height / 2 + }; + break; + + case 'reveal': + return { + left: ($eleDims.windowDims.width - $eleDims.width) / 2, + top: $eleDims.windowDims.offset.top + vOffset + }; + + case 'reveal full': + return { + left: $eleDims.windowDims.offset.left, + top: $eleDims.windowDims.offset.top + }; + break; + + default: + return { + left: $anchorDims.offset.left, + top: $anchorDims.offset.top + $anchorDims.height + vOffset + }; } } + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationUtilKeyboard = mod.exports; } +})(this, function () { + 'use strict'; - function onTouchStart(e) { - if (e.touches.length == 1) { - startPosX = e.touches[0].pageX; - startPosY = e.touches[0].pageY; - isMoving = true; - startTime = new Date().getTime(); - this.addEventListener('touchmove', onTouchMove, false); - this.addEventListener('touchend', onTouchEnd, false); - } - } + !function ($) { + var keyCodes = { + 9: 'TAB', + 13: 'ENTER', + 27: 'ESCAPE', + 32: 'SPACE', + 37: 'ARROW_LEFT', + 38: 'ARROW_UP', + 39: 'ARROW_RIGHT', + 40: 'ARROW_DOWN' + }; + var commands = {}; + var Keyboard = { + keys: getKeyCodes(keyCodes), + parseKey: function (event) { + var key = keyCodes[event.which || event.keyCode] || String.fromCharCode(event.which).toUpperCase(); + if (event.shiftKey) key = 'SHIFT_' + key; + if (event.ctrlKey) key = 'CTRL_' + key; + if (event.altKey) key = 'ALT_' + key; + return key; + }, + handleKey: function (event, component, functions) { + var commandList = commands[component], + keyCode = this.parseKey(event), + cmds, + command, + fn; + if (!commandList) return console.warn('Component not defined!'); + + if (typeof commandList.ltr === 'undefined') { + cmds = commandList; + } else { + if (Foundation.rtl()) cmds = $.extend({}, commandList.ltr, commandList.rtl);else cmds = $.extend({}, commandList.rtl, commandList.ltr); + } - function init() { - this.addEventListener && this.addEventListener('touchstart', onTouchStart, false); - } + command = cmds[keyCode]; + fn = functions[command]; - function teardown() { - this.removeEventListener('touchstart', onTouchStart); - } + if (fn && typeof fn === 'function') { + fn.apply(); - $.event.special.swipe = { setup: init }; - - $.each(['left', 'up', 'down', 'right'], function () { - $.event.special['swipe' + this] = { setup: function(){ - $(this).on('swipe', $.noop); - } }; - }); -})(jQuery); -/**************************************************** - * Method for adding psuedo drag events to elements * - ***************************************************/ -!function($){ - $.fn.addTouch = function(){ - this.each(function(i,el){ - $(el).bind('touchstart touchmove touchend touchcancel',function(){ - //we pass the original event object because the jQuery event - //object is normalized to w3c specs and does not provide the TouchList - handleTouch(event); - }); - }); + if (functions.handled || typeof functions.handled === 'function') { + functions.handled.apply(); + } + } else { + if (functions.unhandled || typeof functions.unhandled === 'function') { + functions.unhandled.apply(); + } + } + }, + findFocusable: function ($element) { + return $element.find('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]').filter(function () { + if (!$(this).is(':visible') || $(this).attr('tabindex') < 0) { + return false; + } - var handleTouch = function(event){ - var touches = event.changedTouches, - first = touches[0], - eventTypes = { - touchstart: 'mousedown', - touchmove: 'mousemove', - touchend: 'mouseup' - }, - type = eventTypes[event.type], - simulatedEvent - ; - - if('MouseEvent' in window && typeof window.MouseEvent === 'function') { - simulatedEvent = window.MouseEvent(type, { - 'bubbles': true, - 'cancelable': true, - 'screenX': first.screenX, - 'screenY': first.screenY, - 'clientX': first.clientX, - 'clientY': first.clientY + return true; }); - } else { - simulatedEvent = document.createEvent('MouseEvent'); - simulatedEvent.initMouseEvent(type, true, true, window, 1, first.screenX, first.screenY, first.clientX, first.clientY, false, false, false, false, 0/*left*/, null); + }, + register: function (componentName, cmds) { + commands[componentName] = cmds; } - first.target.dispatchEvent(simulatedEvent); }; - }; -}(jQuery); - - -//********************************** -//**From the jQuery Mobile Library** -//**need to recreate functionality** -//**and try to improve if possible** -//********************************** -/* Removing the jQuery function **** -************************************ + function getKeyCodes(kcs) { + var k = {}; -(function( $, window, undefined ) { + for (var kc in kcs) { + k[kcs[kc]] = kcs[kc]; + } - var $document = $( document ), - // supportTouch = $.mobile.support.touch, - touchStartEvent = 'touchstart'//supportTouch ? "touchstart" : "mousedown", - touchStopEvent = 'touchend'//supportTouch ? "touchend" : "mouseup", - touchMoveEvent = 'touchmove'//supportTouch ? "touchmove" : "mousemove"; + return k; + } - // setup new event shortcuts - $.each( ( "touchstart touchmove touchend " + - "swipe swipeleft swiperight" ).split( " " ), function( i, name ) { + Foundation.Keyboard = Keyboard; + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationUtilMediaQuery = mod.exports; + } +})(this, function () { + 'use strict'; - $.fn[ name ] = function( fn ) { - return fn ? this.bind( name, fn ) : this.trigger( name ); - }; + !function ($) { + var defaultQueries = { + 'default': 'only screen', + landscape: 'only screen and (orientation: landscape)', + portrait: 'only screen and (orientation: portrait)', + retina: 'only screen and (-webkit-min-device-pixel-ratio: 2),' + 'only screen and (min--moz-device-pixel-ratio: 2),' + 'only screen and (-o-min-device-pixel-ratio: 2/1),' + 'only screen and (min-device-pixel-ratio: 2),' + 'only screen and (min-resolution: 192dpi),' + 'only screen and (min-resolution: 2dppx)' + }; + var MediaQuery = { + queries: [], + current: '', + _init: function () { + var self = this; + var extractedStyles = $('.foundation-mq').css('font-family'); + var namedQueries; + namedQueries = parseStyleToObject(extractedStyles); + + for (var key in namedQueries) { + self.queries.push({ + name: key, + value: 'only screen and (min-width: ' + namedQueries[key] + ')' + }); + } - // jQuery < 1.8 - if ( $.attrFn ) { - $.attrFn[ name ] = true; - } - }); - - function triggerCustomEvent( obj, eventType, event, bubble ) { - var originalType = event.type; - event.type = eventType; - if ( bubble ) { - $.event.trigger( event, undefined, obj ); - } else { - $.event.dispatch.call( obj, event ); - } - event.type = originalType; - } + this.current = this._getCurrentSize(); - // also handles taphold + this._watcher(); + }, + atLeast: function (size) { + var query = this.get(size); - // Also handles swipeleft, swiperight - $.event.special.swipe = { + if (query) { + return window.matchMedia(query).matches; + } - // More than this horizontal displacement, and we will suppress scrolling. - scrollSupressionThreshold: 30, + return false; + }, + get: function (size) { + for (var i in this.queries) { + var query = this.queries[i]; + if (size === query.name) return query.value; + } - // More time than this, and it isn't a swipe. - durationThreshold: 1000, + return null; + }, + _getCurrentSize: function () { + var matched; - // Swipe horizontal displacement must be more than this. - horizontalDistanceThreshold: window.devicePixelRatio >= 2 ? 15 : 30, + for (var i in this.queries) { + var query = this.queries[i]; - // Swipe vertical displacement must be less than this. - verticalDistanceThreshold: window.devicePixelRatio >= 2 ? 15 : 30, + if (window.matchMedia(query.value).matches) { + matched = query; + } + } - getLocation: function ( event ) { - var winPageX = window.pageXOffset, - winPageY = window.pageYOffset, - x = event.clientX, - y = event.clientY; + if (typeof matched === 'object') { + return matched.name; + } else { + return matched; + } + }, + _watcher: function () { + var _this = this; - if ( event.pageY === 0 && Math.floor( y ) > Math.floor( event.pageY ) || - event.pageX === 0 && Math.floor( x ) > Math.floor( event.pageX ) ) { + $(window).on('resize.zf.mediaquery', function () { + var newSize = _this._getCurrentSize(); - // iOS4 clientX/clientY have the value that should have been - // in pageX/pageY. While pageX/page/ have the value 0 - x = x - winPageX; - y = y - winPageY; - } else if ( y < ( event.pageY - winPageY) || x < ( event.pageX - winPageX ) ) { - - // Some Android browsers have totally bogus values for clientX/Y - // when scrolling/zooming a page. Detectable since clientX/clientY - // should never be smaller than pageX/pageY minus page scroll - x = event.pageX - winPageX; - y = event.pageY - winPageY; - } - - return { - x: x, - y: y - }; - }, - - start: function( event ) { - var data = event.originalEvent.touches ? - event.originalEvent.touches[ 0 ] : event, - location = $.event.special.swipe.getLocation( data ); - return { - time: ( new Date() ).getTime(), - coords: [ location.x, location.y ], - origin: $( event.target ) - }; - }, - - stop: function( event ) { - var data = event.originalEvent.touches ? - event.originalEvent.touches[ 0 ] : event, - location = $.event.special.swipe.getLocation( data ); - return { - time: ( new Date() ).getTime(), - coords: [ location.x, location.y ] - }; - }, - - handleSwipe: function( start, stop, thisObject, origTarget ) { - if ( stop.time - start.time < $.event.special.swipe.durationThreshold && - Math.abs( start.coords[ 0 ] - stop.coords[ 0 ] ) > $.event.special.swipe.horizontalDistanceThreshold && - Math.abs( start.coords[ 1 ] - stop.coords[ 1 ] ) < $.event.special.swipe.verticalDistanceThreshold ) { - var direction = start.coords[0] > stop.coords[ 0 ] ? "swipeleft" : "swiperight"; - - triggerCustomEvent( thisObject, "swipe", $.Event( "swipe", { target: origTarget, swipestart: start, swipestop: stop }), true ); - triggerCustomEvent( thisObject, direction,$.Event( direction, { target: origTarget, swipestart: start, swipestop: stop } ), true ); - return true; - } - return false; + if (newSize !== _this.current) { + $(window).trigger('changed.zf.mediaquery', [newSize, _this.current]); + _this.current = newSize; + } + }); + } + }; + Foundation.MediaQuery = MediaQuery; + window.matchMedia || (window.matchMedia = function () { + 'use strict'; + + var styleMedia = window.styleMedia || window.media; + + if (!styleMedia) { + var style = document.createElement('style'), + script = document.getElementsByTagName('script')[0], + info = null; + style.type = 'text/css'; + style.id = 'matchmediajs-test'; + script.parentNode.insertBefore(style, script); + info = 'getComputedStyle' in window && window.getComputedStyle(style, null) || style.currentStyle; + styleMedia = { + matchMedium: function (media) { + var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }'; + + if (style.styleSheet) { + style.styleSheet.cssText = text; + } else { + style.textContent = text; + } - }, + return info.width === '1px'; + } + }; + } - // This serves as a flag to ensure that at most one swipe event event is - // in work at any given time - eventInProgress: false, + return function (media) { + return { + matches: styleMedia.matchMedium(media || 'all'), + media: media || 'all' + }; + }; + }()); - setup: function() { - var events, - thisObject = this, - $this = $( thisObject ), - context = {}; + function parseStyleToObject(str) { + var styleObject = {}; - // Retrieve the events data for this element and add the swipe context - events = $.data( this, "mobile-events" ); - if ( !events ) { - events = { length: 0 }; - $.data( this, "mobile-events", events ); - } - events.length++; - events.swipe = context; + if (typeof str !== 'string') { + return styleObject; + } - context.start = function( event ) { + str = str.trim().slice(1, -1); - // Bail if we're already working on a swipe event - if ( $.event.special.swipe.eventInProgress ) { - return; - } - $.event.special.swipe.eventInProgress = true; - - var stop, - start = $.event.special.swipe.start( event ), - origTarget = event.target, - emitted = false; - - context.move = function( event ) { - if ( !start || event.isDefaultPrevented() ) { - return; - } - - stop = $.event.special.swipe.stop( event ); - if ( !emitted ) { - emitted = $.event.special.swipe.handleSwipe( start, stop, thisObject, origTarget ); - if ( emitted ) { - - // Reset the context to make way for the next swipe event - $.event.special.swipe.eventInProgress = false; - } - } - // prevent scrolling - if ( Math.abs( start.coords[ 0 ] - stop.coords[ 0 ] ) > $.event.special.swipe.scrollSupressionThreshold ) { - event.preventDefault(); - } - }; - - context.stop = function() { - emitted = true; - - // Reset the context to make way for the next swipe event - $.event.special.swipe.eventInProgress = false; - $document.off( touchMoveEvent, context.move ); - context.move = null; - }; - - $document.on( touchMoveEvent, context.move ) - .one( touchStopEvent, context.stop ); - }; - $this.on( touchStartEvent, context.start ); - }, - - teardown: function() { - var events, context; - - events = $.data( this, "mobile-events" ); - if ( events ) { - context = events.swipe; - delete events.swipe; - events.length--; - if ( events.length === 0 ) { - $.removeData( this, "mobile-events" ); - } - } + if (!str) { + return styleObject; + } - if ( context ) { - if ( context.start ) { - $( this ).off( touchStartEvent, context.start ); - } - if ( context.move ) { - $document.off( touchMoveEvent, context.move ); - } - if ( context.stop ) { - $document.off( touchStopEvent, context.stop ); - } - } - } - }; - $.each({ - swipeleft: "swipe.left", - swiperight: "swipe.right" - }, function( event, sourceEvent ) { - - $.event.special[ event ] = { - setup: function() { - $( this ).bind( sourceEvent, $.noop ); - }, - teardown: function() { - $( this ).unbind( sourceEvent ); - } - }; - }); -})( jQuery, this ); -*/ + styleObject = str.split('&').reduce(function (ret, param) { + var parts = param.replace(/\+/g, ' ').split('='); + var key = parts[0]; + var val = parts[1]; + key = decodeURIComponent(key); + val = val === undefined ? null : decodeURIComponent(val); + + if (!ret.hasOwnProperty(key)) { + ret[key] = val; + } else if (Array.isArray(ret[key])) { + ret[key].push(val); + } else { + ret[key] = [ret[key], val]; + } -!function(Foundation, $) { + return ret; + }, {}); + return styleObject; + } + + Foundation.MediaQuery = MediaQuery; + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationUtilMotion = mod.exports; + } +})(this, function () { 'use strict'; - // Elements with [data-open] will reveal a plugin that supports it when clicked. - $(document).on('click.zf.trigger', '[data-open]', function() { - var id = $(this).data('open'); - $('#' + id).triggerHandler('open.zf.trigger', [$(this)]); - }); - - // Elements with [data-close] will close a plugin that supports it when clicked. - // If used without a value on [data-close], the event will bubble, allowing it to close a parent component. - $(document).on('click.zf.trigger', '[data-close]', function() { - var id = $(this).data('close'); - if (id) { - $('#' + id).triggerHandler('close.zf.trigger', [$(this)]); - } - else { - $(this).trigger('close.zf.trigger'); - } - }); - - // Elements with [data-toggle] will toggle a plugin that supports it when clicked. - $(document).on('click.zf.trigger', '[data-toggle]', function() { - var id = $(this).data('toggle'); - $('#' + id).triggerHandler('toggle.zf.trigger', [$(this)]); - }); - - // Elements with [data-closable] will respond to close.zf.trigger events. - $(document).on('close.zf.trigger', '[data-closable]', function(e){ - e.stopPropagation(); - var animation = $(this).data('closable'); - - if(animation !== ''){ - Foundation.Motion.animateOut($(this), animation, function() { - $(this).trigger('closed.zf'); - }); - }else{ - $(this).fadeOut().trigger('closed.zf'); - } - }); - var MutationObserver = (function () { - var prefixes = ['WebKit', 'Moz', 'O', 'Ms', '']; - for (var i=0; i < prefixes.length; i++) { - if (prefixes[i] + 'MutationObserver' in window) { - return window[prefixes[i] + 'MutationObserver']; - } - } - return false; - }()); - - - var checkListeners = function(){ - eventsListener(); - resizeListener(); - scrollListener(); - closemeListener(); - }; - /** - * Fires once after all other scripts have loaded - * @function - * @private - */ - $(window).load(function(){ - checkListeners(); - }); - - //******** only fires this function once on load, if there's something to watch ******** - var closemeListener = function(pluginName){ - var yetiBoxes = $('[data-yeti-box]'), - plugNames = ['dropdown', 'tooltip', 'reveal']; - - if(pluginName){ - if(typeof pluginName === 'string'){ - plugNames.push(pluginName); - }else if(typeof pluginName === 'object' && typeof pluginName[0] === 'string'){ - plugNames.concat(pluginName); - }else{ - console.error('Plugin names must be strings'); + !function ($) { + var initClasses = ['mui-enter', 'mui-leave']; + var activeClasses = ['mui-enter-active', 'mui-leave-active']; + var Motion = { + animateIn: function (element, animation, cb) { + animate(true, element, animation, cb); + }, + animateOut: function (element, animation, cb) { + animate(false, element, animation, cb); } - } - if(yetiBoxes.length){ - var listeners = plugNames.map(function(name){ - return 'closeme.zf.' + name; - }).join(' '); + }; - $(window).off(listeners).on(listeners, function(e, pluginId){ - var plugin = e.namespace.split('.')[0]; - var plugins = $('[data-' + plugin + ']').not('[data-yeti-box="' + pluginId + '"]'); + function Move(duration, elem, fn) { + var anim, + prog, + start = null; - plugins.each(function(){ - var _this = $(this); + function move(ts) { + if (!start) start = window.performance.now(); + prog = ts - start; + fn.apply(elem); - _this.triggerHandler('close.zf.trigger', [_this]); - }); - }); + if (prog < duration) { + anim = window.requestAnimationFrame(move, elem); + } else { + window.cancelAnimationFrame(anim); + elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]); + } + } + + anim = window.requestAnimationFrame(move); } - }; - var resizeListener = function(debounce){ - var timer, - $nodes = $('[data-resize]'); - if($nodes.length){ - $(window).off('resize.zf.trigger') - .on('resize.zf.trigger', function(e) { - if (timer) { clearTimeout(timer); } - - timer = setTimeout(function(){ - - if(!MutationObserver){//fallback for IE 9 - $nodes.each(function(){ - $(this).triggerHandler('resizeme.zf.trigger'); - }); - } - //trigger all listening elements and signal a resize event - $nodes.attr('data-events', "resize"); - }, debounce || 10);//default time to emit resize event + + function animate(isIn, element, animation, cb) { + element = $(element).eq(0); + if (!element.length) return; + var initClass = isIn ? initClasses[0] : initClasses[1]; + var activeClass = isIn ? activeClasses[0] : activeClasses[1]; + reset(); + element.addClass(animation).css('transition', 'none'); + requestAnimationFrame(function () { + element.addClass(initClass); + if (isIn) element.show(); }); - } - }; - var scrollListener = function(debounce){ - var timer, - $nodes = $('[data-scroll]'); - if($nodes.length){ - $(window).off('scroll.zf.trigger') - .on('scroll.zf.trigger', function(e){ - if(timer){ clearTimeout(timer); } - - timer = setTimeout(function(){ - - if(!MutationObserver){//fallback for IE 9 - $nodes.each(function(){ - $(this).triggerHandler('scrollme.zf.trigger'); - }); - } - //trigger all listening elements and signal a scroll event - $nodes.attr('data-events', "scroll"); - }, debounce || 10);//default time to emit scroll event + requestAnimationFrame(function () { + element[0].offsetWidth; + element.css('transition', '').addClass(activeClass); }); - } - }; - // function domMutationObserver(debounce) { - // // !!! This is coming soon and needs more work; not active !!! // - // var timer, - // nodes = document.querySelectorAll('[data-mutate]'); - // // - // if (nodes.length) { - // // var MutationObserver = (function () { - // // var prefixes = ['WebKit', 'Moz', 'O', 'Ms', '']; - // // for (var i=0; i < prefixes.length; i++) { - // // if (prefixes[i] + 'MutationObserver' in window) { - // // return window[prefixes[i] + 'MutationObserver']; - // // } - // // } - // // return false; - // // }()); - // - // - // //for the body, we need to listen for all changes effecting the style and class attributes - // var bodyObserver = new MutationObserver(bodyMutation); - // bodyObserver.observe(document.body, { attributes: true, childList: true, characterData: false, subtree:true, attributeFilter:["style", "class"]}); - // - // - // //body callback - // function bodyMutation(mutate) { - // //trigger all listening elements and signal a mutation event - // if (timer) { clearTimeout(timer); } - // - // timer = setTimeout(function() { - // bodyObserver.disconnect(); - // $('[data-mutate]').attr('data-events',"mutate"); - // }, debounce || 150); - // } - // } - // } - var eventsListener = function() { - if(!MutationObserver){ return false; } - var nodes = document.querySelectorAll('[data-resize], [data-scroll], [data-mutate]'); - - //element callback - var listeningElementsMutation = function(mutationRecordsList) { - var $target = $(mutationRecordsList[0].target); - //trigger the event handler for the element depending on type - switch ($target.attr("data-events")) { - - case "resize" : - $target.triggerHandler('resizeme.zf.trigger', [$target]); - break; - - case "scroll" : - $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]); - break; - - // case "mutate" : - // console.log('mutate', $target); - // $target.triggerHandler('mutate.zf.trigger'); - // - // //make sure we don't get stuck in an infinite loop from sloppy codeing - // if ($target.index('[data-mutate]') == $("[data-mutate]").length-1) { - // domMutationObserver(); - // } - // break; - - default : - return false; - //nothing + element.one(Foundation.transitionend(element), finish); + + function finish() { + if (!isIn) element.hide(); + reset(); + if (cb) cb.apply(element); } - } - if(nodes.length){ - //for each element that needs to listen for resizing, scrolling, (or coming soon mutation) add a single observer - for (var i = 0; i <= nodes.length-1; i++) { - var elementObserver = new MutationObserver(listeningElementsMutation); - elementObserver.observe(nodes[i], { attributes: true, childList: false, characterData: false, subtree:false, attributeFilter:["data-events"]}); + function reset() { + element[0].style.transitionDuration = 0; + element.removeClass(initClass + ' ' + activeClass + ' ' + animation); } } - }; - // ------------------------------------ - // [PH] - // Foundation.CheckWatchers = checkWatchers; - Foundation.IHearYou = checkListeners; - // Foundation.ISeeYou = scrollListener; - // Foundation.IFeelYou = closemeListener; + Foundation.Move = Move; + Foundation.Motion = Motion; + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationUtilNest = mod.exports; + } +})(this, function () { + 'use strict'; -}(window.Foundation, window.jQuery); + !function ($) { + var Nest = { + Feather: function (menu) { + var type = arguments.length <= 1 || arguments[1] === undefined ? 'zf' : arguments[1]; + menu.attr('role', 'menubar'); + var items = menu.find('li').attr({ + 'role': 'menuitem' + }), + subMenuClass = 'is-' + type + '-submenu', + subItemClass = subMenuClass + '-item', + hasSubClass = 'is-' + type + '-submenu-parent'; + menu.find('a:first').attr('tabindex', 0); + items.each(function () { + var $item = $(this), + $sub = $item.children('ul'); + + if ($sub.length) { + $item.addClass(hasSubClass).attr({ + 'aria-haspopup': true, + 'aria-expanded': false, + 'aria-label': $item.children('a:first').text() + }); + $sub.addClass('submenu ' + subMenuClass).attr({ + 'data-submenu': '', + 'aria-hidden': true, + 'role': 'menu' + }); + } -!function(Foundation, $) { + if ($item.parent('[data-submenu]').length) { + $item.addClass('is-submenu-item ' + subItemClass); + } + }); + return; + }, + Burn: function (menu, type) { + var items = menu.find('li').removeAttr('tabindex'), + subMenuClass = 'is-' + type + '-submenu', + subItemClass = subMenuClass + '-item', + hasSubClass = 'is-' + type + '-submenu-parent'; + menu.find('*').removeClass(subMenuClass + ' ' + subItemClass + ' ' + hasSubClass + ' is-submenu-item submenu is-active').removeAttr('data-submenu').css('display', ''); + } + }; + Foundation.Nest = Nest; + }(jQuery); +}); +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.foundationUtilTimerAndImageLoader = mod.exports; + } +})(this, function () { 'use strict'; - /** - * Creates a new instance of Abide. - * @class - * @fires Abide#init - * @param {Object} element - jQuery object to add the trigger to. - * @param {Object} options - Overrides to the default plugin settings. - */ - function Abide(element, options) { - this.$element = element; - this.options = $.extend({}, Abide.defaults, this.$element.data(), options); + !function ($) { + function Timer(elem, options, cb) { + var _this = this, + duration = options.duration, + nameSpace = Object.keys(elem.data())[0] || 'timer', + remain = -1, + start, + timer; + + this.isPaused = false; + + this.restart = function () { + remain = -1; + clearTimeout(timer); + this.start(); + }; - this._init(); + this.start = function () { + this.isPaused = false; + clearTimeout(timer); + remain = remain <= 0 ? duration : remain; + elem.data('paused', false); + start = Date.now(); + timer = setTimeout(function () { + if (options.infinite) { + _this.restart(); + } - Foundation.registerPlugin(this, 'Abide'); - } + cb(); + }, remain); + elem.trigger('timerstart.zf.' + nameSpace); + }; - /** - * Default settings for plugin - */ - Abide.defaults = { - /** - * The default event to validate inputs. Checkboxes and radios validate immediately. - * Remove or change this value for manual validation. - * @option - * @example 'fieldChange' - */ - validateOn: 'fieldChange', - /** - * Class to be applied to input labels on failed validation. - * @option - * @example 'is-invalid-label' - */ - labelErrorClass: 'is-invalid-label', - /** - * Class to be applied to inputs on failed validation. - * @option - * @example 'is-invalid-input' - */ - inputErrorClass: 'is-invalid-input', - /** - * Class selector to use to target Form Errors for show/hide. - * @option - * @example '.form-error' - */ - formErrorSelector: '.form-error', - /** - * Class added to Form Errors on failed validation. - * @option - * @example 'is-visible' - */ - formErrorClass: 'is-visible', - /** - * Set to true to validate text inputs on any value change. - * @option - * @example false - */ - liveValidate: false, - - patterns: { - alpha : /^[a-zA-Z]+$/, - alpha_numeric : /^[a-zA-Z0-9]+$/, - integer : /^[-+]?\d+$/, - number : /^[-+]?\d*(?:[\.\,]\d+)?$/, - - // amex, visa, diners - card : /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/, - cvv : /^([0-9]){3,4}$/, - - // http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#valid-e-mail-address - email : /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/, - - url : /^(https?|ftp|file|ssh):\/\/(((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/, - // abc.de - domain : /^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/, - - datetime : /^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/, - // YYYY-MM-DD - date : /(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/, - // HH:MM:SS - time : /^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/, - dateISO : /^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/, - // MM/DD/YYYY - month_day_year : /^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/, - // DD/MM/YYYY - day_month_year : /^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/, - - // #FFF or #FFFFFF - color : /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/ - }, - /** - * Optional validation functions to be used. `equalTo` being the only default included function. - * Functions should return only a boolean if the input is valid or not. Functions are given the following arguments: - * el : The jQuery element to validate. - * required : Boolean value of the required attribute be present or not. - * parent : The direct parent of the input. - * @option - */ - validators: { - equalTo: function (el, required, parent) { - return $('#' + el.attr('data-equalto')).val() === el.val(); - } + this.pause = function () { + this.isPaused = true; + clearTimeout(timer); + elem.data('paused', true); + var end = Date.now(); + remain = remain - (end - start); + elem.trigger('timerpaused.zf.' + nameSpace); + }; } - }; - - - /** - * Initializes the Abide plugin and calls functions to get Abide functioning on load. - * @private - */ - Abide.prototype._init = function(){ - this.$inputs = this.$element.find('input, textarea, select').not('[data-abide-ignore]'); - - this._events(); - }; - - /** - * Initializes events for Abide. - * @private - */ - Abide.prototype._events = function() { - var _this = this; - - this.$element.off('.abide') - .on('reset.zf.abide', function(e){ - _this.resetForm(); - }) - .on('submit.zf.abide', function(e){ - return _this.validateForm(); - }); - if(this.options.validateOn === 'fieldChange'){ - this.$inputs.off('change.zf.abide') - .on('change.zf.abide', function(e){ - _this.validateInput($(this)); - }); - } + function onImagesLoaded(images, callback) { + var self = this, + unloaded = images.length; + + if (unloaded === 0) { + callback(); + } - if(this.options.liveValidate){ - this.$inputs.off('input.zf.abide') - .on('input.zf.abide', function(e){ - _this.validateInput($(this)); + images.each(function () { + if (this.complete) { + singleImageLoaded(); + } else if (typeof this.naturalWidth !== 'undefined' && this.naturalWidth > 0) { + singleImageLoaded(); + } else { + $(this).one('load', function () { + singleImageLoaded(); }); - } - }, - /** - * Calls necessary functions to update Abide upon DOM change - * @private - */ - Abide.prototype._reflow = function() { - this._init(); - }; - /** - * Checks whether or not a form element has the required attribute and if it's checked or not - * @param {Object} element - jQuery object to check for required attribute - * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty - */ - Abide.prototype.requiredCheck = function($el) { - if(!$el.attr('required')) return true; - var isGood = true; - switch ($el[0].type) { - - case 'checkbox': - case 'radio': - isGood = $el[0].checked; - break; - - case 'select': - case 'select-one': - case 'select-multiple': - var opt = $el.find('option:selected'); - if(!opt.length || !opt.val()) isGood = false; - break; - - default: - if(!$el.val() || !$el.val().length) isGood = false; - } - return isGood; - }; - /** - * Based on $el, get the first element with selector in this order: - * 1. The element's direct sibling('s). - * 3. The element's parent's children. - * - * This allows for multiple form errors per input, though if none are found, no form errors will be shown. - * - * @param {Object} $el - jQuery object to use as reference to find the form error selector. - * @returns {Object} jQuery object with the selector. - */ - Abide.prototype.findFormError = function($el){ - var $error = $el.siblings(this.options.formErrorSelector); - if(!$error.length){ - $error = $el.parent().find(this.options.formErrorSelector); - } - return $error; - }; - /** - * Get the first element in this order: - * 2. The