From 8952bbbf38a3515b60e0cfa47bd420258a7e43a2 Mon Sep 17 00:00:00 2001 From: "renater.salaun" <renater.salaun@047e039d-479c-447e-8a29-aa6bf4a09bab> Date: Mon, 15 Dec 2014 16:00:38 +0000 Subject: [PATCH] O.Lumineau: Adapt look & feel to eduGAIN/GEANT CSS Also fixed some bugs in the HTML git-svn-id: https://svn.geant.net/GEANT/edugain_testidp_account_manager/trunk@75 047e039d-479c-447e-8a29-aa6bf4a09bab --- resources/css/style.css | 311 + resources/foundation/css/foundation.css | 6191 +++++++++++++++++ resources/foundation/css/foundation.min.css | 1 + resources/foundation/css/normalize.css | 427 ++ resources/foundation/humans.txt | 8 + resources/foundation/img/.gitkeep | 1 + resources/foundation/index.html | 166 + resources/foundation/js/foundation.min.js | 5725 +++++++++++++++ .../js/foundation/foundation.abide.js | 314 + .../js/foundation/foundation.accordion.js | 66 + .../js/foundation/foundation.alert.js | 43 + .../js/foundation/foundation.clearing.js | 558 ++ .../js/foundation/foundation.dropdown.js | 326 + .../js/foundation/foundation.equalizer.js | 74 + .../js/foundation/foundation.interchange.js | 344 + .../js/foundation/foundation.joyride.js | 917 +++ .../foundation/js/foundation/foundation.js | 625 ++ .../js/foundation/foundation.magellan.js | 189 + .../js/foundation/foundation.offcanvas.js | 152 + .../js/foundation/foundation.orbit.js | 472 ++ .../js/foundation/foundation.reveal.js | 444 ++ .../js/foundation/foundation.slider.js | 239 + .../js/foundation/foundation.tab.js | 217 + .../js/foundation/foundation.tooltip.js | 300 + .../js/foundation/foundation.topbar.js | 445 ++ resources/foundation/js/vendor/fastclick.js | 9 + .../foundation/js/vendor/jquery.cookie.js | 8 + resources/foundation/js/vendor/jquery.js | 26 + resources/foundation/js/vendor/modernizr.js | 8 + resources/foundation/js/vendor/placeholder.js | 2 + resources/foundation/robots.txt | 4 + resources/images/edugain_logo.png | Bin 0 -> 16534 bytes resources/images/edugain_test_idp_basics.png | Bin 0 -> 179093 bytes .../{ => images}/geant_logo_rgb_300dpi.jpg | Bin templates/web/account_wizard.tt2.html | 1 - templates/web/errors.tt2.html | 4 +- templates/web/generate_token.tt2.html | 2 +- templates/web/home.tt2.html | 27 +- templates/web/index.tt2.html | 100 +- templates/web/select_sp.tt2.html | 7 +- templates/web/validate_token.tt2.html | 59 +- 41 files changed, 18709 insertions(+), 103 deletions(-) create mode 100644 resources/css/style.css create mode 100644 resources/foundation/css/foundation.css create mode 100644 resources/foundation/css/foundation.min.css create mode 100644 resources/foundation/css/normalize.css create mode 100644 resources/foundation/humans.txt create mode 100644 resources/foundation/img/.gitkeep create mode 100644 resources/foundation/index.html create mode 100644 resources/foundation/js/foundation.min.js create mode 100644 resources/foundation/js/foundation/foundation.abide.js create mode 100644 resources/foundation/js/foundation/foundation.accordion.js create mode 100644 resources/foundation/js/foundation/foundation.alert.js create mode 100644 resources/foundation/js/foundation/foundation.clearing.js create mode 100644 resources/foundation/js/foundation/foundation.dropdown.js create mode 100644 resources/foundation/js/foundation/foundation.equalizer.js create mode 100644 resources/foundation/js/foundation/foundation.interchange.js create mode 100644 resources/foundation/js/foundation/foundation.joyride.js create mode 100644 resources/foundation/js/foundation/foundation.js create mode 100644 resources/foundation/js/foundation/foundation.magellan.js create mode 100644 resources/foundation/js/foundation/foundation.offcanvas.js create mode 100644 resources/foundation/js/foundation/foundation.orbit.js create mode 100644 resources/foundation/js/foundation/foundation.reveal.js create mode 100644 resources/foundation/js/foundation/foundation.slider.js create mode 100644 resources/foundation/js/foundation/foundation.tab.js create mode 100644 resources/foundation/js/foundation/foundation.tooltip.js create mode 100644 resources/foundation/js/foundation/foundation.topbar.js create mode 100644 resources/foundation/js/vendor/fastclick.js create mode 100644 resources/foundation/js/vendor/jquery.cookie.js create mode 100644 resources/foundation/js/vendor/jquery.js create mode 100644 resources/foundation/js/vendor/modernizr.js create mode 100644 resources/foundation/js/vendor/placeholder.js create mode 100644 resources/foundation/robots.txt create mode 100644 resources/images/edugain_logo.png create mode 100644 resources/images/edugain_test_idp_basics.png rename resources/{ => images}/geant_logo_rgb_300dpi.jpg (100%) diff --git a/resources/css/style.css b/resources/css/style.css new file mode 100644 index 0000000..fd0a835 --- /dev/null +++ b/resources/css/style.css @@ -0,0 +1,311 @@ +/* ------------------------------------------------------------------------*/ +/* le bleu edugain est #19398a ou hsl(223,69%,32%), il est éclairci ici de 10% soit #214BB5 ou hsl(223,69%,42%);*/ + + +html { + height: 100%; +} + +body { + color: #4F4F4F; + font-family: "TrebuchetMS", "BitstreamVeraSans", verdana, lucida, arial, helvetica, sans-serif; + font-size: 0.85em; + background-color: #fff; + -webkit-text-size-adjust: 100%; + min-height: 100%; +} + +#wrapper{ + margin:0; + padding:0; +} +#content{ + margin:0; + padding:2rem 1rem; +} + + +/* Header*/ +#header { + width: 100%; + margin:0; + padding:0; +} +#header ul { + width: 100%; + display:table; + table-layout:fixed; + margin:0; + padding:0.3rem 0.5rem; + box-sizing:border-box; +} +#header ul li{ + display:table-cell; + width:40%; +} +#header ul li.logo{ + width: 30%; +} + +#header .title{ + width: 100%; + height:5rem; + line-height: 5rem; + margin:0; + padding:0; + background-color:#FF8547; + background-color:hsl(20,100%,64%); +} + +#header .title span{ + height:5rem; + line-height: 5rem; + margin:0; + padding:0; +} + +#header .title span h1{ + width: 100%; + font-size: 1.6em; + letter-spacing:0.1rem; + color: #fff; + font-weight:bold; + height:5rem; + line-height:5rem; + text-align:center; +} + +#header .title h1 small{ + font-size: 0.9em; + color: #fff; + clear: left; +} + +/* Footer*/ +#footer{ + width:100%; + height:2rem; + line-height:2rem; + background-color:#FF8547; + background-color:hsl(20,100%,44%); + color:#fff; +} + +#footer span{ + height:2rem; + line-height:2rem; +} + +/* Alignment classes*/ +.align-center{ + text-align:center; +} +.align-right{ + text-align:right; +} +.align-left{ + text-align:left; +} + +/* Changes for foundation buttons*/ +button, .button{ + background:#214BB5; + background:hsl(223,69%,42%); + border: 2px solid #214BB5; + border:2px solid hsl(223,69%,42%); + font-weight:bold; + border-radius:10px; +} +button:hover, .button:hover{ + background:none; + color:#214BB5; + color:hsl(223,69%,42%); +} + +.alert-box{ + margin-left:auto; + margin-right:auto; +} +.alert-box.radius{ + border-radius:5px; +} + + +/* CUSTOM WIZARD*/ +.wizard > .steps .current a, .wizard > .steps .current a:hover, .wizard > .steps .current a:active { + background: none repeat scroll 0% 0% #214BB5; + color: #FFF; + cursor: default; + border-radius: 10px; +} +.wizard > .steps a, .wizard > .steps a:hover, .wizard > .steps a:active { + display: block; + width: auto; + margin: 0px 0.5em 0.5em; + padding: 1em; + text-decoration: none; + border-radius: 10px; +} +.wizard > .content { + background: none; + overflow: auto; + overflow-x: hidden; + border:2px solid #214BB5; + border:2px solid hsl(223,69%,42%); + border-radius: 10px; +} +.wizard > .content fieldset{ + border:none; + margin-left:auto; + margin-right:auto; +} + +.wizard > .actions a, .wizard > .actions a:active { + text-decoration: none; + background:hsl(223,69%,42%); + background:#214BB5; + border: 2px solid #214BB5; + border:2px solid hsl(223,69%,42%); + font-weight:bold; + border-radius:10px; +} + +.wizard > .actions a:hover{ + color:#214BB5; + color:hsl(223,69%,42%); + background:none; + border: 2px solid #214BB5; + border:2px solid hsl(223,69%,42%); + font-weight:bold; + border-radius:10px; +} + +.wizard > .actions .disabled a, .wizard > .actions .disabled a:hover, .wizard > .actions .disabled a:active { + background: none repeat scroll 0% 0% #9DC8E2; + color: #fff; + border: 2px solid #9DC8E2; +} + +.wizard > .content > .body label[for="sp_entityid"] { + display:block; + margin-bottom: 0; + font-weight:bold; +} + +.wizard > .content > .body label.error { + color: #fff; + width: 100%; + margin-left: 0; + background: #f04124; + padding: 0.3rem 2rem ; + margin: 1rem auto; +} +.wizard > .content > .body span.custom-combobox label.error { + position:absolute; + margin: 3rem auto; +} + + +/* Accounts profile page*/ +.accounts_profile{ + box-sizing:border-box; +} + +/* +.accounts_profile ol{ +width: 100%; +margin-top:2rem; +margin-left:0; +} +.accounts_profile li{ +margin-top:1rem; +margin-bottom:1rem; +} +*/ + +.accounts_profile table{ + width:100%; + margin-top:2rem; +} +.show_account_details{ + margin-bottom:0; + padding:0.5rem 1rem; +} +.accounts_profile table caption{ + + background-color:#FF8547; + background-color:hsl(20,100%,54%); + color:#fff; + padding:0.2rem 0 0.2rem 1rem; + border-radius:5px 5px 0 0; + text-align:left; +} + +.login {float: left} +.menu {float: right} +.footer {text-align: center} +.prod {background-color: #028A34} +h1 {text-align: center} +li.parametre {margin-bottom: 15px;} +dd.parametre {margin-bottom: 15px;} +div.important{border-style:solid;border-color:black;border-width:1px;background-color:#F5DEB3;padding:5px;} +.mandatory{color:#e00853;font-style:italic;font-weight:bold;margin:0 3px} +.notice{border:2px solid #05a;padding:5px 5px 5px 5px;margin:20px;} +#sp_entityid{width:100%;} +.scrollable{overflow-y: scroll;} +fieldset.scrollable{height: 75%;} +.wizard .content div.radio_inline input[type="radio"]{display: inline;} + +.custom-combobox { + position: relative; + display: inline-block; +} +.custom-combobox-toggle { + position: absolute; + top: 0; + bottom: 0; + margin-left: -1px; + padding: 0; +} +.custom-combobox-input { + margin: 0; + padding: 5px 10px; + padding-left: 40px; + width: 600px; + +} + +.ui-autocomplete { + max-height: 400px; + overflow-y: auto; + /* prevent horizontal scrollbar */ + overflow-x: hidden; +} +/* IE 6 doesn't support max-height +* we use height instead, but this forces the menu to always be this tall +*/ +* html .ui-autocomplete { + height: 400px; +} + + +/*Global*/ +h1,h2,h3,h4,h5,h6 { + color:#214BB5; + color:hsl(223,69%,42%); +} +h3{ + margin-top:2rem; +} + +/* Links */ +a, a:visited, a:active, a:link{ + text-decoration:underline; +} + +a:hover{ + text-decoration:none; +} + + + diff --git a/resources/foundation/css/foundation.css b/resources/foundation/css/foundation.css new file mode 100644 index 0000000..190bdd1 --- /dev/null +++ b/resources/foundation/css/foundation.css @@ -0,0 +1,6191 @@ +meta.foundation-version { + font-family: "/5.4.7/"; } + +meta.foundation-mq-small { + font-family: "/only screen/"; + width: 0em; } + +meta.foundation-mq-medium { + font-family: "/only screen and (min-width:40.063em)/"; + width: 40.063em; } + +meta.foundation-mq-large { + font-family: "/only screen and (min-width:64.063em)/"; + width: 64.063em; } + +meta.foundation-mq-xlarge { + font-family: "/only screen and (min-width:90.063em)/"; + width: 90.063em; } + +meta.foundation-mq-xxlarge { + font-family: "/only screen and (min-width:120.063em)/"; + width: 120.063em; } + +meta.foundation-data-attribute-namespace { + font-family: false; } + +html, body { + height: 100%; } + +*, +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + +html, +body { + font-size: 100%; } + +body { + background: white; + color: #222222; + padding: 0; + margin: 0; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-weight: normal; + font-style: normal; + line-height: 1.5; + position: relative; + cursor: auto; } + +a:hover { + cursor: pointer; } + +img { + max-width: 100%; + height: auto; } + +img { + -ms-interpolation-mode: bicubic; } + +#map_canvas img, +#map_canvas embed, +#map_canvas object, +.map_canvas img, +.map_canvas embed, +.map_canvas object { + max-width: none !important; } + +.left { + float: left !important; } + +.right { + float: right !important; } + +.clearfix:before, .clearfix:after { + content: " "; + display: table; } +.clearfix:after { + clear: both; } + +.hide { + display: none !important; + visibility: hidden; } + +.invisible { + visibility: hidden; } + +.antialiased { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; } + +img { + display: inline-block; + vertical-align: middle; } + +textarea { + height: auto; + min-height: 50px; } + +select { + width: 100%; } + +.row { + width: 100%; + margin-left: auto; + margin-right: auto; + margin-top: 0; + margin-bottom: 0; + max-width: 62.5rem; } + .row:before, .row:after { + content: " "; + display: table; } + .row:after { + clear: both; } + .row.collapse > .column, + .row.collapse > .columns { + padding-left: 0; + padding-right: 0; } + .row.collapse .row { + margin-left: 0; + margin-right: 0; } + .row .row { + width: auto; + margin-left: -0.9375rem; + margin-right: -0.9375rem; + margin-top: 0; + margin-bottom: 0; + max-width: none; } + .row .row:before, .row .row:after { + content: " "; + display: table; } + .row .row:after { + clear: both; } + .row .row.collapse { + width: auto; + margin: 0; + max-width: none; } + .row .row.collapse:before, .row .row.collapse:after { + content: " "; + display: table; } + .row .row.collapse:after { + clear: both; } + +.column, +.columns { + padding-left: 0.9375rem; + padding-right: 0.9375rem; + width: 100%; + float: left; } + +[class*="column"] + [class*="column"]:last-child { + float: right; } + +[class*="column"] + [class*="column"].end { + float: left; } + +@media only screen { + .small-push-0 { + position: relative; + left: 0%; + right: auto; } + + .small-pull-0 { + position: relative; + right: 0%; + left: auto; } + + .small-push-1 { + position: relative; + left: 8.33333%; + right: auto; } + + .small-pull-1 { + position: relative; + right: 8.33333%; + left: auto; } + + .small-push-2 { + position: relative; + left: 16.66667%; + right: auto; } + + .small-pull-2 { + position: relative; + right: 16.66667%; + left: auto; } + + .small-push-3 { + position: relative; + left: 25%; + right: auto; } + + .small-pull-3 { + position: relative; + right: 25%; + left: auto; } + + .small-push-4 { + position: relative; + left: 33.33333%; + right: auto; } + + .small-pull-4 { + position: relative; + right: 33.33333%; + left: auto; } + + .small-push-5 { + position: relative; + left: 41.66667%; + right: auto; } + + .small-pull-5 { + position: relative; + right: 41.66667%; + left: auto; } + + .small-push-6 { + position: relative; + left: 50%; + right: auto; } + + .small-pull-6 { + position: relative; + right: 50%; + left: auto; } + + .small-push-7 { + position: relative; + left: 58.33333%; + right: auto; } + + .small-pull-7 { + position: relative; + right: 58.33333%; + left: auto; } + + .small-push-8 { + position: relative; + left: 66.66667%; + right: auto; } + + .small-pull-8 { + position: relative; + right: 66.66667%; + left: auto; } + + .small-push-9 { + position: relative; + left: 75%; + right: auto; } + + .small-pull-9 { + position: relative; + right: 75%; + left: auto; } + + .small-push-10 { + position: relative; + left: 83.33333%; + right: auto; } + + .small-pull-10 { + position: relative; + right: 83.33333%; + left: auto; } + + .small-push-11 { + position: relative; + left: 91.66667%; + right: auto; } + + .small-pull-11 { + position: relative; + right: 91.66667%; + left: auto; } + + .column, + .columns { + position: relative; + padding-left: 0.9375rem; + padding-right: 0.9375rem; + float: left; } + + .small-1 { + width: 8.33333%; } + + .small-2 { + width: 16.66667%; } + + .small-3 { + width: 25%; } + + .small-4 { + width: 33.33333%; } + + .small-5 { + width: 41.66667%; } + + .small-6 { + width: 50%; } + + .small-7 { + width: 58.33333%; } + + .small-8 { + width: 66.66667%; } + + .small-9 { + width: 75%; } + + .small-10 { + width: 83.33333%; } + + .small-11 { + width: 91.66667%; } + + .small-12 { + width: 100%; } + + .small-offset-0 { + margin-left: 0% !important; } + + .small-offset-1 { + margin-left: 8.33333% !important; } + + .small-offset-2 { + margin-left: 16.66667% !important; } + + .small-offset-3 { + margin-left: 25% !important; } + + .small-offset-4 { + margin-left: 33.33333% !important; } + + .small-offset-5 { + margin-left: 41.66667% !important; } + + .small-offset-6 { + margin-left: 50% !important; } + + .small-offset-7 { + margin-left: 58.33333% !important; } + + .small-offset-8 { + margin-left: 66.66667% !important; } + + .small-offset-9 { + margin-left: 75% !important; } + + .small-offset-10 { + margin-left: 83.33333% !important; } + + .small-offset-11 { + margin-left: 91.66667% !important; } + + .small-reset-order { + margin-left: 0; + margin-right: 0; + left: auto; + right: auto; + float: left; } + + .column.small-centered, + .columns.small-centered { + margin-left: auto; + margin-right: auto; + float: none; } + + .column.small-uncentered, + .columns.small-uncentered { + margin-left: 0; + margin-right: 0; + float: left; } + + .column.small-centered:last-child, + .columns.small-centered:last-child { + float: none; } + + .column.small-uncentered:last-child, + .columns.small-uncentered:last-child { + float: left; } + + .column.small-uncentered.opposite, + .columns.small-uncentered.opposite { + float: right; } } +@media only screen and (min-width: 40.063em) { + .medium-push-0 { + position: relative; + left: 0%; + right: auto; } + + .medium-pull-0 { + position: relative; + right: 0%; + left: auto; } + + .medium-push-1 { + position: relative; + left: 8.33333%; + right: auto; } + + .medium-pull-1 { + position: relative; + right: 8.33333%; + left: auto; } + + .medium-push-2 { + position: relative; + left: 16.66667%; + right: auto; } + + .medium-pull-2 { + position: relative; + right: 16.66667%; + left: auto; } + + .medium-push-3 { + position: relative; + left: 25%; + right: auto; } + + .medium-pull-3 { + position: relative; + right: 25%; + left: auto; } + + .medium-push-4 { + position: relative; + left: 33.33333%; + right: auto; } + + .medium-pull-4 { + position: relative; + right: 33.33333%; + left: auto; } + + .medium-push-5 { + position: relative; + left: 41.66667%; + right: auto; } + + .medium-pull-5 { + position: relative; + right: 41.66667%; + left: auto; } + + .medium-push-6 { + position: relative; + left: 50%; + right: auto; } + + .medium-pull-6 { + position: relative; + right: 50%; + left: auto; } + + .medium-push-7 { + position: relative; + left: 58.33333%; + right: auto; } + + .medium-pull-7 { + position: relative; + right: 58.33333%; + left: auto; } + + .medium-push-8 { + position: relative; + left: 66.66667%; + right: auto; } + + .medium-pull-8 { + position: relative; + right: 66.66667%; + left: auto; } + + .medium-push-9 { + position: relative; + left: 75%; + right: auto; } + + .medium-pull-9 { + position: relative; + right: 75%; + left: auto; } + + .medium-push-10 { + position: relative; + left: 83.33333%; + right: auto; } + + .medium-pull-10 { + position: relative; + right: 83.33333%; + left: auto; } + + .medium-push-11 { + position: relative; + left: 91.66667%; + right: auto; } + + .medium-pull-11 { + position: relative; + right: 91.66667%; + left: auto; } + + .column, + .columns { + position: relative; + padding-left: 0.9375rem; + padding-right: 0.9375rem; + float: left; } + + .medium-1 { + width: 8.33333%; } + + .medium-2 { + width: 16.66667%; } + + .medium-3 { + width: 25%; } + + .medium-4 { + width: 33.33333%; } + + .medium-5 { + width: 41.66667%; } + + .medium-6 { + width: 50%; } + + .medium-7 { + width: 58.33333%; } + + .medium-8 { + width: 66.66667%; } + + .medium-9 { + width: 75%; } + + .medium-10 { + width: 83.33333%; } + + .medium-11 { + width: 91.66667%; } + + .medium-12 { + width: 100%; } + + .medium-offset-0 { + margin-left: 0% !important; } + + .medium-offset-1 { + margin-left: 8.33333% !important; } + + .medium-offset-2 { + margin-left: 16.66667% !important; } + + .medium-offset-3 { + margin-left: 25% !important; } + + .medium-offset-4 { + margin-left: 33.33333% !important; } + + .medium-offset-5 { + margin-left: 41.66667% !important; } + + .medium-offset-6 { + margin-left: 50% !important; } + + .medium-offset-7 { + margin-left: 58.33333% !important; } + + .medium-offset-8 { + margin-left: 66.66667% !important; } + + .medium-offset-9 { + margin-left: 75% !important; } + + .medium-offset-10 { + margin-left: 83.33333% !important; } + + .medium-offset-11 { + margin-left: 91.66667% !important; } + + .medium-reset-order { + margin-left: 0; + margin-right: 0; + left: auto; + right: auto; + float: left; } + + .column.medium-centered, + .columns.medium-centered { + margin-left: auto; + margin-right: auto; + float: none; } + + .column.medium-uncentered, + .columns.medium-uncentered { + margin-left: 0; + margin-right: 0; + float: left; } + + .column.medium-centered:last-child, + .columns.medium-centered:last-child { + float: none; } + + .column.medium-uncentered:last-child, + .columns.medium-uncentered:last-child { + float: left; } + + .column.medium-uncentered.opposite, + .columns.medium-uncentered.opposite { + float: right; } + + .push-0 { + position: relative; + left: 0%; + right: auto; } + + .pull-0 { + position: relative; + right: 0%; + left: auto; } + + .push-1 { + position: relative; + left: 8.33333%; + right: auto; } + + .pull-1 { + position: relative; + right: 8.33333%; + left: auto; } + + .push-2 { + position: relative; + left: 16.66667%; + right: auto; } + + .pull-2 { + position: relative; + right: 16.66667%; + left: auto; } + + .push-3 { + position: relative; + left: 25%; + right: auto; } + + .pull-3 { + position: relative; + right: 25%; + left: auto; } + + .push-4 { + position: relative; + left: 33.33333%; + right: auto; } + + .pull-4 { + position: relative; + right: 33.33333%; + left: auto; } + + .push-5 { + position: relative; + left: 41.66667%; + right: auto; } + + .pull-5 { + position: relative; + right: 41.66667%; + left: auto; } + + .push-6 { + position: relative; + left: 50%; + right: auto; } + + .pull-6 { + position: relative; + right: 50%; + left: auto; } + + .push-7 { + position: relative; + left: 58.33333%; + right: auto; } + + .pull-7 { + position: relative; + right: 58.33333%; + left: auto; } + + .push-8 { + position: relative; + left: 66.66667%; + right: auto; } + + .pull-8 { + position: relative; + right: 66.66667%; + left: auto; } + + .push-9 { + position: relative; + left: 75%; + right: auto; } + + .pull-9 { + position: relative; + right: 75%; + left: auto; } + + .push-10 { + position: relative; + left: 83.33333%; + right: auto; } + + .pull-10 { + position: relative; + right: 83.33333%; + left: auto; } + + .push-11 { + position: relative; + left: 91.66667%; + right: auto; } + + .pull-11 { + position: relative; + right: 91.66667%; + left: auto; } } +@media only screen and (min-width: 64.063em) { + .large-push-0 { + position: relative; + left: 0%; + right: auto; } + + .large-pull-0 { + position: relative; + right: 0%; + left: auto; } + + .large-push-1 { + position: relative; + left: 8.33333%; + right: auto; } + + .large-pull-1 { + position: relative; + right: 8.33333%; + left: auto; } + + .large-push-2 { + position: relative; + left: 16.66667%; + right: auto; } + + .large-pull-2 { + position: relative; + right: 16.66667%; + left: auto; } + + .large-push-3 { + position: relative; + left: 25%; + right: auto; } + + .large-pull-3 { + position: relative; + right: 25%; + left: auto; } + + .large-push-4 { + position: relative; + left: 33.33333%; + right: auto; } + + .large-pull-4 { + position: relative; + right: 33.33333%; + left: auto; } + + .large-push-5 { + position: relative; + left: 41.66667%; + right: auto; } + + .large-pull-5 { + position: relative; + right: 41.66667%; + left: auto; } + + .large-push-6 { + position: relative; + left: 50%; + right: auto; } + + .large-pull-6 { + position: relative; + right: 50%; + left: auto; } + + .large-push-7 { + position: relative; + left: 58.33333%; + right: auto; } + + .large-pull-7 { + position: relative; + right: 58.33333%; + left: auto; } + + .large-push-8 { + position: relative; + left: 66.66667%; + right: auto; } + + .large-pull-8 { + position: relative; + right: 66.66667%; + left: auto; } + + .large-push-9 { + position: relative; + left: 75%; + right: auto; } + + .large-pull-9 { + position: relative; + right: 75%; + left: auto; } + + .large-push-10 { + position: relative; + left: 83.33333%; + right: auto; } + + .large-pull-10 { + position: relative; + right: 83.33333%; + left: auto; } + + .large-push-11 { + position: relative; + left: 91.66667%; + right: auto; } + + .large-pull-11 { + position: relative; + right: 91.66667%; + left: auto; } + + .column, + .columns { + position: relative; + padding-left: 0.9375rem; + padding-right: 0.9375rem; + float: left; } + + .large-1 { + width: 8.33333%; } + + .large-2 { + width: 16.66667%; } + + .large-3 { + width: 25%; } + + .large-4 { + width: 33.33333%; } + + .large-5 { + width: 41.66667%; } + + .large-6 { + width: 50%; } + + .large-7 { + width: 58.33333%; } + + .large-8 { + width: 66.66667%; } + + .large-9 { + width: 75%; } + + .large-10 { + width: 83.33333%; } + + .large-11 { + width: 91.66667%; } + + .large-12 { + width: 100%; } + + .large-offset-0 { + margin-left: 0% !important; } + + .large-offset-1 { + margin-left: 8.33333% !important; } + + .large-offset-2 { + margin-left: 16.66667% !important; } + + .large-offset-3 { + margin-left: 25% !important; } + + .large-offset-4 { + margin-left: 33.33333% !important; } + + .large-offset-5 { + margin-left: 41.66667% !important; } + + .large-offset-6 { + margin-left: 50% !important; } + + .large-offset-7 { + margin-left: 58.33333% !important; } + + .large-offset-8 { + margin-left: 66.66667% !important; } + + .large-offset-9 { + margin-left: 75% !important; } + + .large-offset-10 { + margin-left: 83.33333% !important; } + + .large-offset-11 { + margin-left: 91.66667% !important; } + + .large-reset-order { + margin-left: 0; + margin-right: 0; + left: auto; + right: auto; + float: left; } + + .column.large-centered, + .columns.large-centered { + margin-left: auto; + margin-right: auto; + float: none; } + + .column.large-uncentered, + .columns.large-uncentered { + margin-left: 0; + margin-right: 0; + float: left; } + + .column.large-centered:last-child, + .columns.large-centered:last-child { + float: none; } + + .column.large-uncentered:last-child, + .columns.large-uncentered:last-child { + float: left; } + + .column.large-uncentered.opposite, + .columns.large-uncentered.opposite { + float: right; } + + .push-0 { + position: relative; + left: 0%; + right: auto; } + + .pull-0 { + position: relative; + right: 0%; + left: auto; } + + .push-1 { + position: relative; + left: 8.33333%; + right: auto; } + + .pull-1 { + position: relative; + right: 8.33333%; + left: auto; } + + .push-2 { + position: relative; + left: 16.66667%; + right: auto; } + + .pull-2 { + position: relative; + right: 16.66667%; + left: auto; } + + .push-3 { + position: relative; + left: 25%; + right: auto; } + + .pull-3 { + position: relative; + right: 25%; + left: auto; } + + .push-4 { + position: relative; + left: 33.33333%; + right: auto; } + + .pull-4 { + position: relative; + right: 33.33333%; + left: auto; } + + .push-5 { + position: relative; + left: 41.66667%; + right: auto; } + + .pull-5 { + position: relative; + right: 41.66667%; + left: auto; } + + .push-6 { + position: relative; + left: 50%; + right: auto; } + + .pull-6 { + position: relative; + right: 50%; + left: auto; } + + .push-7 { + position: relative; + left: 58.33333%; + right: auto; } + + .pull-7 { + position: relative; + right: 58.33333%; + left: auto; } + + .push-8 { + position: relative; + left: 66.66667%; + right: auto; } + + .pull-8 { + position: relative; + right: 66.66667%; + left: auto; } + + .push-9 { + position: relative; + left: 75%; + right: auto; } + + .pull-9 { + position: relative; + right: 75%; + left: auto; } + + .push-10 { + position: relative; + left: 83.33333%; + right: auto; } + + .pull-10 { + position: relative; + right: 83.33333%; + left: auto; } + + .push-11 { + position: relative; + left: 91.66667%; + right: auto; } + + .pull-11 { + position: relative; + right: 91.66667%; + left: auto; } } +button, .button { + border-style: solid; + border-width: 0px; + cursor: pointer; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-weight: normal; + line-height: normal; + margin: 0 0 1.25rem; + position: relative; + text-decoration: none; + text-align: center; + -webkit-appearance: none; + -webkit-border-radius: 0; + display: inline-block; + padding-top: 1rem; + padding-right: 2rem; + padding-bottom: 1.0625rem; + padding-left: 2rem; + font-size: 1rem; + background-color: #008cba; + border-color: #007095; + color: white; + transition: background-color 300ms ease-out; } + button:hover, button:focus, .button:hover, .button:focus { + background-color: #007095; } + button:hover, button:focus, .button:hover, .button:focus { + color: white; } + button.secondary, .button.secondary { + background-color: #e7e7e7; + border-color: #b9b9b9; + color: #333333; } + button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus { + background-color: #b9b9b9; } + button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus { + color: #333333; } + button.success, .button.success { + background-color: #43ac6a; + border-color: #368a55; + color: white; } + button.success:hover, button.success:focus, .button.success:hover, .button.success:focus { + background-color: #368a55; } + button.success:hover, button.success:focus, .button.success:hover, .button.success:focus { + color: white; } + button.alert, .button.alert { + background-color: #f04124; + border-color: #cf2a0e; + color: white; } + button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus { + background-color: #cf2a0e; } + button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus { + color: white; } + button.warning, .button.warning { + background-color: #f08a24; + border-color: #cf6e0e; + color: white; } + button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus { + background-color: #cf6e0e; } + button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus { + color: white; } + button.info, .button.info { + background-color: #a0d3e8; + border-color: #61b6d9; + color: #333333; } + button.info:hover, button.info:focus, .button.info:hover, .button.info:focus { + background-color: #61b6d9; } + button.info:hover, button.info:focus, .button.info:hover, .button.info:focus { + color: white; } + button.large, .button.large { + padding-top: 1.125rem; + padding-right: 2.25rem; + padding-bottom: 1.1875rem; + padding-left: 2.25rem; + font-size: 1.25rem; } + button.small, .button.small { + padding-top: 0.875rem; + padding-right: 1.75rem; + padding-bottom: 0.9375rem; + padding-left: 1.75rem; + font-size: 0.8125rem; } + button.tiny, .button.tiny { + padding-top: 0.625rem; + padding-right: 1.25rem; + padding-bottom: 0.6875rem; + padding-left: 1.25rem; + font-size: 0.6875rem; } + button.expand, .button.expand { + padding-right: 0; + padding-left: 0; + width: 100%; } + button.left-align, .button.left-align { + text-align: left; + text-indent: 0.75rem; } + button.right-align, .button.right-align { + text-align: right; + padding-right: 0.75rem; } + button.radius, .button.radius { + border-radius: 3px; } + button.round, .button.round { + border-radius: 1000px; } + button.disabled, button[disabled], .button.disabled, .button[disabled] { + background-color: #008cba; + border-color: #007095; + color: white; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus { + background-color: #007095; } + button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus { + color: white; } + button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus { + background-color: #008cba; } + button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .button[disabled].secondary { + background-color: #e7e7e7; + border-color: #b9b9b9; + color: #333333; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus { + background-color: #b9b9b9; } + button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus { + color: #333333; } + button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus { + background-color: #e7e7e7; } + button.disabled.success, button[disabled].success, .button.disabled.success, .button[disabled].success { + background-color: #43ac6a; + border-color: #368a55; + color: white; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus { + background-color: #368a55; } + button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus { + color: white; } + button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus { + background-color: #43ac6a; } + button.disabled.alert, button[disabled].alert, .button.disabled.alert, .button[disabled].alert { + background-color: #f04124; + border-color: #cf2a0e; + color: white; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus { + background-color: #cf2a0e; } + button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus { + color: white; } + button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus { + background-color: #f04124; } + button.disabled.warning, button[disabled].warning, .button.disabled.warning, .button[disabled].warning { + background-color: #f08a24; + border-color: #cf6e0e; + color: white; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus { + background-color: #cf6e0e; } + button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus { + color: white; } + button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus { + background-color: #f08a24; } + button.disabled.info, button[disabled].info, .button.disabled.info, .button[disabled].info { + background-color: #a0d3e8; + border-color: #61b6d9; + color: #333333; + cursor: default; + opacity: 0.7; + box-shadow: none; } + button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus { + background-color: #61b6d9; } + button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus { + color: white; } + button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus { + background-color: #a0d3e8; } + +button::-moz-focus-inner { + border: 0; + padding: 0; } + +@media only screen and (min-width: 40.063em) { + button, .button { + display: inline-block; } } +/* Standard Forms */ +form { + margin: 0 0 1rem; } + +/* Using forms within rows, we need to set some defaults */ +form .row .row { + margin: 0 -0.5rem; } + form .row .row .column, + form .row .row .columns { + padding: 0 0.5rem; } + form .row .row.collapse { + margin: 0; } + form .row .row.collapse .column, + form .row .row.collapse .columns { + padding: 0; } + form .row .row.collapse input { + -webkit-border-bottom-right-radius: 0; + -webkit-border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; } +form .row input.column, +form .row input.columns, +form .row textarea.column, +form .row textarea.columns { + padding-left: 0.5rem; } + +/* Label Styles */ +label { + font-size: 0.875rem; + color: #4d4d4d; + cursor: pointer; + display: block; + font-weight: normal; + line-height: 1.5; + margin-bottom: 0; + /* Styles for required inputs */ } + label.right { + float: none !important; + text-align: right; } + label.inline { + margin: 0 0 1rem 0; + padding: 0.5625rem 0; } + label small { + text-transform: capitalize; + color: #676767; } + +/* Attach elements to the beginning or end of an input */ +.prefix, +.postfix { + display: block; + position: relative; + z-index: 2; + text-align: center; + width: 100%; + padding-top: 0; + padding-bottom: 0; + border-style: solid; + border-width: 1px; + overflow: hidden; + font-size: 0.875rem; + height: 2.3125rem; + line-height: 2.3125rem; } + +/* Adjust padding, alignment and radius if pre/post element is a button */ +.postfix.button { + padding-left: 0; + padding-right: 0; + padding-top: 0; + padding-bottom: 0; + text-align: center; + line-height: 2.125rem; + border: none; } + +.prefix.button { + padding-left: 0; + padding-right: 0; + padding-top: 0; + padding-bottom: 0; + text-align: center; + line-height: 2.125rem; + border: none; } + +.prefix.button.radius { + border-radius: 0; + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } + +.postfix.button.radius { + border-radius: 0; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } + +.prefix.button.round { + border-radius: 0; + -webkit-border-bottom-left-radius: 1000px; + -webkit-border-top-left-radius: 1000px; + border-bottom-left-radius: 1000px; + border-top-left-radius: 1000px; } + +.postfix.button.round { + border-radius: 0; + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } + +/* Separate prefix and postfix styles when on span or label so buttons keep their own */ +span.prefix, label.prefix { + background: #f2f2f2; + border-right: none; + color: #333333; + border-color: #cccccc; } + +span.postfix, label.postfix { + background: #f2f2f2; + border-left: none; + color: #333333; + border-color: #cccccc; } + +/* We use this to get basic styling on all basic form elements */ +input[type="text"], +input[type="password"], +input[type="date"], +input[type="datetime"], +input[type="datetime-local"], +input[type="month"], +input[type="week"], +input[type="email"], +input[type="number"], +input[type="search"], +input[type="tel"], +input[type="time"], +input[type="url"], +input[type="color"], +textarea { + -webkit-appearance: none; + -webkit-border-radius: 0px; + background-color: white; + font-family: inherit; + border-style: solid; + border-width: 1px; + border-color: #cccccc; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + color: rgba(0, 0, 0, 0.75); + display: block; + font-size: 0.875rem; + margin: 0 0 1rem 0; + padding: 0.5rem; + height: 2.3125rem; + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + transition: box-shadow 0.45s, border-color 0.45s ease-in-out; } + input[type="text"]:focus, + input[type="password"]:focus, + input[type="date"]:focus, + input[type="datetime"]:focus, + input[type="datetime-local"]:focus, + input[type="month"]:focus, + input[type="week"]:focus, + input[type="email"]:focus, + input[type="number"]:focus, + input[type="search"]:focus, + input[type="tel"]:focus, + input[type="time"]:focus, + input[type="url"]:focus, + input[type="color"]:focus, + textarea:focus { + box-shadow: 0 0 5px #999999; + border-color: #999999; } + input[type="text"]:focus, + input[type="password"]:focus, + input[type="date"]:focus, + input[type="datetime"]:focus, + input[type="datetime-local"]:focus, + input[type="month"]:focus, + input[type="week"]:focus, + input[type="email"]:focus, + input[type="number"]:focus, + input[type="search"]:focus, + input[type="tel"]:focus, + input[type="time"]:focus, + input[type="url"]:focus, + input[type="color"]:focus, + textarea:focus { + background: #fafafa; + border-color: #999999; + outline: none; } + input[type="text"]:disabled, + input[type="password"]:disabled, + input[type="date"]:disabled, + input[type="datetime"]:disabled, + input[type="datetime-local"]:disabled, + input[type="month"]:disabled, + input[type="week"]:disabled, + input[type="email"]:disabled, + input[type="number"]:disabled, + input[type="search"]:disabled, + input[type="tel"]:disabled, + input[type="time"]:disabled, + input[type="url"]:disabled, + input[type="color"]:disabled, + textarea:disabled { + background-color: #dddddd; + cursor: default; } + input[type="text"][disabled], input[type="text"][readonly], fieldset[disabled] input[type="text"], + input[type="password"][disabled], + input[type="password"][readonly], fieldset[disabled] + input[type="password"], + input[type="date"][disabled], + input[type="date"][readonly], fieldset[disabled] + input[type="date"], + input[type="datetime"][disabled], + input[type="datetime"][readonly], fieldset[disabled] + input[type="datetime"], + input[type="datetime-local"][disabled], + input[type="datetime-local"][readonly], fieldset[disabled] + input[type="datetime-local"], + input[type="month"][disabled], + input[type="month"][readonly], fieldset[disabled] + input[type="month"], + input[type="week"][disabled], + input[type="week"][readonly], fieldset[disabled] + input[type="week"], + input[type="email"][disabled], + input[type="email"][readonly], fieldset[disabled] + input[type="email"], + input[type="number"][disabled], + input[type="number"][readonly], fieldset[disabled] + input[type="number"], + input[type="search"][disabled], + input[type="search"][readonly], fieldset[disabled] + input[type="search"], + input[type="tel"][disabled], + input[type="tel"][readonly], fieldset[disabled] + input[type="tel"], + input[type="time"][disabled], + input[type="time"][readonly], fieldset[disabled] + input[type="time"], + input[type="url"][disabled], + input[type="url"][readonly], fieldset[disabled] + input[type="url"], + input[type="color"][disabled], + input[type="color"][readonly], fieldset[disabled] + input[type="color"], + textarea[disabled], + textarea[readonly], fieldset[disabled] + textarea { + background-color: #dddddd; + cursor: default; } + input[type="text"].radius, + input[type="password"].radius, + input[type="date"].radius, + input[type="datetime"].radius, + input[type="datetime-local"].radius, + input[type="month"].radius, + input[type="week"].radius, + input[type="email"].radius, + input[type="number"].radius, + input[type="search"].radius, + input[type="tel"].radius, + input[type="time"].radius, + input[type="url"].radius, + input[type="color"].radius, + textarea.radius { + border-radius: 3px; } + +form .row .prefix-radius.row.collapse input, +form .row .prefix-radius.row.collapse textarea, +form .row .prefix-radius.row.collapse select { + border-radius: 0; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } +form .row .prefix-radius.row.collapse .prefix { + border-radius: 0; + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } +form .row .postfix-radius.row.collapse input, +form .row .postfix-radius.row.collapse textarea, +form .row .postfix-radius.row.collapse select { + border-radius: 0; + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } +form .row .postfix-radius.row.collapse .postfix { + border-radius: 0; + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } +form .row .prefix-round.row.collapse input, +form .row .prefix-round.row.collapse textarea, +form .row .prefix-round.row.collapse select { + border-radius: 0; + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } +form .row .prefix-round.row.collapse .prefix { + border-radius: 0; + -webkit-border-bottom-left-radius: 1000px; + -webkit-border-top-left-radius: 1000px; + border-bottom-left-radius: 1000px; + border-top-left-radius: 1000px; } +form .row .postfix-round.row.collapse input, +form .row .postfix-round.row.collapse textarea, +form .row .postfix-round.row.collapse select { + border-radius: 0; + -webkit-border-bottom-left-radius: 1000px; + -webkit-border-top-left-radius: 1000px; + border-bottom-left-radius: 1000px; + border-top-left-radius: 1000px; } +form .row .postfix-round.row.collapse .postfix { + border-radius: 0; + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } + +input[type="submit"] { + -webkit-appearance: none; + -webkit-border-radius: 0px; } + +/* Respect enforced amount of rows for textarea */ +textarea[rows] { + height: auto; } + +/* Not allow resize out of parent */ +textarea { + max-width: 100%; } + +/* Add height value for select elements to match text input height */ +select { + -webkit-appearance: none !important; + -webkit-border-radius: 0px; + background-color: #fafafa; + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+); + background-position: 100% center; + background-repeat: no-repeat; + border-style: solid; + border-width: 1px; + border-color: #cccccc; + padding: 0.5rem; + font-size: 0.875rem; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + color: rgba(0, 0, 0, 0.75); + line-height: normal; + border-radius: 0; + height: 2.3125rem; } + select::-ms-expand { + display: none; } + select.radius { + border-radius: 3px; } + select:hover { + background-color: #f3f3f3; + border-color: #999999; } + select:disabled { + background-color: #dddddd; + cursor: default; } + +/* Adjust margin for form elements below */ +input[type="file"], +input[type="checkbox"], +input[type="radio"], +select { + margin: 0 0 1rem 0; } + +input[type="checkbox"] + label, +input[type="radio"] + label { + display: inline-block; + margin-left: 0.5rem; + margin-right: 1rem; + margin-bottom: 0; + vertical-align: baseline; } + +/* Normalize file input width */ +input[type="file"] { + width: 100%; } + +/* HTML5 Number spinners settings */ +/* We add basic fieldset styling */ +fieldset { + border: 1px solid #dddddd; + padding: 1.25rem; + margin: 1.125rem 0; } + fieldset legend { + font-weight: bold; + background: white; + padding: 0 0.1875rem; + margin: 0; + margin-left: -0.1875rem; } + +/* Error Handling */ +[data-abide] .error small.error, [data-abide] .error span.error, [data-abide] span.error, [data-abide] small.error { + display: block; + padding: 0.375rem 0.5625rem 0.5625rem; + margin-top: -1px; + margin-bottom: 1rem; + font-size: 0.75rem; + font-weight: normal; + font-style: italic; + background: #f04124; + color: white; } +[data-abide] span.error, [data-abide] small.error { + display: none; } + +span.error, small.error { + display: block; + padding: 0.375rem 0.5625rem 0.5625rem; + margin-top: -1px; + margin-bottom: 1rem; + font-size: 0.75rem; + font-weight: normal; + font-style: italic; + background: #f04124; + color: white; } + +.error input, +.error textarea, +.error select { + margin-bottom: 0; } +.error input[type="checkbox"], +.error input[type="radio"] { + margin-bottom: 1rem; } +.error label, +.error label.error { + color: #f04124; } +.error small.error { + display: block; + padding: 0.375rem 0.5625rem 0.5625rem; + margin-top: -1px; + margin-bottom: 1rem; + font-size: 0.75rem; + font-weight: normal; + font-style: italic; + background: #f04124; + color: white; } +.error > label > small { + color: #676767; + background: transparent; + padding: 0; + text-transform: capitalize; + font-style: normal; + font-size: 60%; + margin: 0; + display: inline; } +.error span.error-message { + display: block; } + +input.error, +textarea.error, +select.error { + margin-bottom: 0; } + +label.error { + color: #f04124; } + +meta.foundation-mq-topbar { + font-family: "/only screen and (min-width:40.063em)/"; + width: 40.063em; } + +/* Wrapped around .top-bar to contain to grid width */ +.contain-to-grid { + width: 100%; + background: #333333; } + .contain-to-grid .top-bar { + margin-bottom: 0; } + +.fixed { + width: 100%; + left: 0; + position: fixed; + top: 0; + z-index: 99; } + .fixed.expanded:not(.top-bar) { + overflow-y: auto; + height: auto; + width: 100%; + max-height: 100%; } + .fixed.expanded:not(.top-bar) .title-area { + position: fixed; + width: 100%; + z-index: 99; } + .fixed.expanded:not(.top-bar) .top-bar-section { + z-index: 98; + margin-top: 45px; } + +.top-bar { + overflow: hidden; + height: 45px; + line-height: 45px; + position: relative; + background: #333333; + margin-bottom: 0; } + .top-bar ul { + margin-bottom: 0; + list-style: none; } + .top-bar .row { + max-width: none; } + .top-bar form, + .top-bar input { + margin-bottom: 0; } + .top-bar input { + height: 1.8rem; + padding-top: .35rem; + padding-bottom: .35rem; + font-size: 0.75rem; } + .top-bar .button, .top-bar button { + padding-top: 0.4125rem; + padding-bottom: 0.4125rem; + margin-bottom: 0; + font-size: 0.75rem; } + @media only screen and (max-width: 40em) { + .top-bar .button, .top-bar button { + position: relative; + top: -1px; } } + .top-bar .title-area { + position: relative; + margin: 0; } + .top-bar .name { + height: 45px; + margin: 0; + font-size: 16px; } + .top-bar .name h1 { + line-height: 45px; + font-size: 1.0625rem; + margin: 0; } + .top-bar .name h1 a { + font-weight: normal; + color: white; + width: 75%; + display: block; + padding: 0 15px; } + .top-bar .toggle-topbar { + position: absolute; + right: 0; + top: 0; } + .top-bar .toggle-topbar a { + color: white; + text-transform: uppercase; + font-size: 0.8125rem; + font-weight: bold; + position: relative; + display: block; + padding: 0 15px; + height: 45px; + line-height: 45px; } + .top-bar .toggle-topbar.menu-icon { + top: 50%; + margin-top: -16px; } + .top-bar .toggle-topbar.menu-icon a { + height: 34px; + line-height: 33px; + padding: 0 40px 0 15px; + color: white; + position: relative; } + .top-bar .toggle-topbar.menu-icon a span::after { + content: ""; + position: absolute; + display: block; + height: 0; + top: 50%; + margin-top: -8px; + right: 15px; + box-shadow: 0 0px 0 1px white, 0 7px 0 1px white, 0 14px 0 1px white; + width: 16px; } + .top-bar .toggle-topbar.menu-icon a span:hover:after { + box-shadow: 0 0px 0 1px "", 0 7px 0 1px "", 0 14px 0 1px ""; } + .top-bar.expanded { + height: auto; + background: transparent; } + .top-bar.expanded .title-area { + background: #333333; } + .top-bar.expanded .toggle-topbar a { + color: #888888; } + .top-bar.expanded .toggle-topbar a span::after { + box-shadow: 0 0px 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888; } + +.top-bar-section { + left: 0; + position: relative; + width: auto; + transition: left 300ms ease-out; } + .top-bar-section ul { + padding: 0; + width: 100%; + height: auto; + display: block; + font-size: 16px; + margin: 0; } + .top-bar-section .divider, + .top-bar-section [role="separator"] { + border-top: solid 1px #1a1a1a; + clear: both; + height: 1px; + width: 100%; } + .top-bar-section ul li { + background: #333333; } + .top-bar-section ul li > a { + display: block; + width: 100%; + color: white; + padding: 12px 0 12px 0; + padding-left: 15px; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-size: 0.8125rem; + font-weight: normal; + text-transform: none; } + .top-bar-section ul li > a.button { + font-size: 0.8125rem; + padding-right: 15px; + padding-left: 15px; + background-color: #008cba; + border-color: #007095; + color: white; } + .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus { + background-color: #007095; } + .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus { + color: white; } + .top-bar-section ul li > a.button.secondary { + background-color: #e7e7e7; + border-color: #b9b9b9; + color: #333333; } + .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus { + background-color: #b9b9b9; } + .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus { + color: #333333; } + .top-bar-section ul li > a.button.success { + background-color: #43ac6a; + border-color: #368a55; + color: white; } + .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus { + background-color: #368a55; } + .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus { + color: white; } + .top-bar-section ul li > a.button.alert { + background-color: #f04124; + border-color: #cf2a0e; + color: white; } + .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus { + background-color: #cf2a0e; } + .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus { + color: white; } + .top-bar-section ul li > a.button.warning { + background-color: #f08a24; + border-color: #cf6e0e; + color: white; } + .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus { + background-color: #cf6e0e; } + .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus { + color: white; } + .top-bar-section ul li > button { + font-size: 0.8125rem; + padding-right: 15px; + padding-left: 15px; + background-color: #008cba; + border-color: #007095; + color: white; } + .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus { + background-color: #007095; } + .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus { + color: white; } + .top-bar-section ul li > button.secondary { + background-color: #e7e7e7; + border-color: #b9b9b9; + color: #333333; } + .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus { + background-color: #b9b9b9; } + .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus { + color: #333333; } + .top-bar-section ul li > button.success { + background-color: #43ac6a; + border-color: #368a55; + color: white; } + .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus { + background-color: #368a55; } + .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus { + color: white; } + .top-bar-section ul li > button.alert { + background-color: #f04124; + border-color: #cf2a0e; + color: white; } + .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus { + background-color: #cf2a0e; } + .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus { + color: white; } + .top-bar-section ul li > button.warning { + background-color: #f08a24; + border-color: #cf6e0e; + color: white; } + .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus { + background-color: #cf6e0e; } + .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus { + color: white; } + .top-bar-section ul li:hover:not(.has-form) > a { + background-color: #555555; + background: #272727; + color: white; } + .top-bar-section ul li.active > a { + background: #008cba; + color: white; } + .top-bar-section ul li.active > a:hover { + background: #0078a0; + color: white; } + .top-bar-section .has-form { + padding: 15px; } + .top-bar-section .has-dropdown { + position: relative; } + .top-bar-section .has-dropdown > a:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 5px; + border-color: transparent transparent transparent rgba(255, 255, 255, 0.4); + border-left-style: solid; + margin-right: 15px; + margin-top: -4.5px; + position: absolute; + top: 50%; + right: 0; } + .top-bar-section .has-dropdown.moved { + position: static; } + .top-bar-section .has-dropdown.moved > .dropdown { + display: block; + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; + position: absolute !important; + width: 100%; } + .top-bar-section .has-dropdown.moved > a:after { + display: none; } + .top-bar-section .dropdown { + padding: 0; + position: absolute; + left: 100%; + top: 0; + z-index: 99; + display: block; + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + .top-bar-section .dropdown li { + width: 100%; + height: auto; } + .top-bar-section .dropdown li a { + font-weight: normal; + padding: 8px 15px; } + .top-bar-section .dropdown li a.parent-link { + font-weight: normal; } + .top-bar-section .dropdown li.title h5, .top-bar-section .dropdown li.parent-link { + margin-bottom: 0; + margin-top: 0; + font-size: 1.125rem; } + .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown li.parent-link a { + color: white; + display: block; } + .top-bar-section .dropdown li.title h5 a:hover, .top-bar-section .dropdown li.parent-link a:hover { + background: none; } + .top-bar-section .dropdown li.has-form { + padding: 8px 15px; } + .top-bar-section .dropdown li .button, .top-bar-section .dropdown li button { + top: auto; } + .top-bar-section .dropdown label { + padding: 8px 15px 2px; + margin-bottom: 0; + text-transform: uppercase; + color: #777777; + font-weight: bold; + font-size: 0.625rem; } + +.js-generated { + display: block; } + +@media only screen and (min-width: 40.063em) { + .top-bar { + background: #333333; + overflow: visible; } + .top-bar:before, .top-bar:after { + content: " "; + display: table; } + .top-bar:after { + clear: both; } + .top-bar .toggle-topbar { + display: none; } + .top-bar .title-area { + float: left; } + .top-bar .name h1 a { + width: auto; } + .top-bar input, + .top-bar .button, + .top-bar button { + font-size: 0.875rem; + position: relative; + top: 7px; } + .top-bar.expanded { + background: #333333; } + + .contain-to-grid .top-bar { + max-width: 62.5rem; + margin: 0 auto; + margin-bottom: 0; } + + .top-bar-section { + transition: none 0 0; + left: 0 !important; } + .top-bar-section ul { + width: auto; + height: auto !important; + display: inline; } + .top-bar-section ul li { + float: left; } + .top-bar-section ul li .js-generated { + display: none; } + .top-bar-section li.hover > a:not(.button) { + background-color: #555555; + background: #272727; + color: white; } + .top-bar-section li:not(.has-form) a:not(.button) { + padding: 0 15px; + line-height: 45px; + background: #333333; } + .top-bar-section li:not(.has-form) a:not(.button):hover { + background-color: #555555; + background: #272727; } + .top-bar-section li.active:not(.has-form) a:not(.button) { + padding: 0 15px; + line-height: 45px; + color: white; + background: #008cba; } + .top-bar-section li.active:not(.has-form) a:not(.button):hover { + background: #0078a0; + color: white; } + .top-bar-section .has-dropdown > a { + padding-right: 35px !important; } + .top-bar-section .has-dropdown > a:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 5px; + border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent; + border-top-style: solid; + margin-top: -2.5px; + top: 22.5px; } + .top-bar-section .has-dropdown.moved { + position: relative; } + .top-bar-section .has-dropdown.moved > .dropdown { + display: block; + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + .top-bar-section .has-dropdown.hover > .dropdown, .top-bar-section .has-dropdown.not-click:hover > .dropdown { + display: block; + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; + position: absolute !important; } + .top-bar-section .has-dropdown > a:focus + .dropdown { + display: block; + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; + position: absolute !important; } + .top-bar-section .has-dropdown .dropdown li.has-dropdown > a:after { + border: none; + content: "\00bb"; + top: 1rem; + margin-top: -1px; + right: 5px; + line-height: 1.2; } + .top-bar-section .dropdown { + left: 0; + top: auto; + background: transparent; + min-width: 100%; } + .top-bar-section .dropdown li a { + color: white; + line-height: 45px; + white-space: nowrap; + padding: 12px 15px; + background: #333333; } + .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) { + color: white; + background: #333333; } + .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) { + color: white; + background-color: #555555; + background: #272727; } + .top-bar-section .dropdown li label { + white-space: nowrap; + background: #333333; } + .top-bar-section .dropdown li .dropdown { + left: 100%; + top: 0; } + .top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] { + border-bottom: none; + border-top: none; + border-right: solid 1px #4e4e4e; + clear: none; + height: 45px; + width: 0; } + .top-bar-section .has-form { + background: #333333; + padding: 0 15px; + height: 45px; } + .top-bar-section .right li .dropdown { + left: auto; + right: 0; } + .top-bar-section .right li .dropdown li .dropdown { + right: 100%; } + .top-bar-section .left li .dropdown { + right: auto; + left: 0; } + .top-bar-section .left li .dropdown li .dropdown { + left: 100%; } + + .no-js .top-bar-section ul li:hover > a { + background-color: #555555; + background: #272727; + color: white; } + .no-js .top-bar-section ul li:active > a { + background: #008cba; + color: white; } + .no-js .top-bar-section .has-dropdown:hover > .dropdown { + display: block; + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; + position: absolute !important; } + .no-js .top-bar-section .has-dropdown > a:focus + .dropdown { + display: block; + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; + position: absolute !important; } } +.breadcrumbs { + display: block; + padding: 0.5625rem 0.875rem 0.5625rem; + overflow: hidden; + margin-left: 0; + list-style: none; + border-style: solid; + border-width: 1px; + background-color: #f4f4f4; + border-color: gainsboro; + border-radius: 3px; } + .breadcrumbs > * { + margin: 0; + float: left; + font-size: 0.6875rem; + line-height: 0.6875rem; + text-transform: uppercase; + color: #008cba; } + .breadcrumbs > *:hover a, .breadcrumbs > *:focus a { + text-decoration: underline; } + .breadcrumbs > * a { + color: #008cba; } + .breadcrumbs > *.current { + cursor: default; + color: #333333; } + .breadcrumbs > *.current a { + cursor: default; + color: #333333; } + .breadcrumbs > *.current:hover, .breadcrumbs > *.current:hover a, .breadcrumbs > *.current:focus, .breadcrumbs > *.current:focus a { + text-decoration: none; } + .breadcrumbs > *.unavailable { + color: #999999; } + .breadcrumbs > *.unavailable a { + color: #999999; } + .breadcrumbs > *.unavailable:hover, .breadcrumbs > *.unavailable:hover a, .breadcrumbs > *.unavailable:focus, + .breadcrumbs > *.unavailable a:focus { + text-decoration: none; + color: #999999; + cursor: default; } + .breadcrumbs > *:before { + content: "/"; + color: #aaaaaa; + margin: 0 0.75rem; + position: relative; + top: 1px; } + .breadcrumbs > *:first-child:before { + content: " "; + margin: 0; } + +/* Accessibility - hides the forward slash */ +[aria-label="breadcrumbs"] [aria-hidden="true"]:after { + content: "/"; } + +.alert-box { + border-style: solid; + border-width: 1px; + display: block; + font-weight: normal; + margin-bottom: 1.25rem; + position: relative; + padding: 0.875rem 1.5rem 0.875rem 0.875rem; + font-size: 0.8125rem; + transition: opacity 300ms ease-out; + background-color: #008cba; + border-color: #0078a0; + color: white; } + .alert-box .close { + font-size: 1.375rem; + padding: 9px 6px 4px; + line-height: 0; + position: absolute; + top: 50%; + margin-top: -0.6875rem; + right: 0.25rem; + color: #333333; + opacity: 0.3; + background: inherit; } + .alert-box .close:hover, .alert-box .close:focus { + opacity: 0.5; } + .alert-box.radius { + border-radius: 3px; } + .alert-box.round { + border-radius: 1000px; } + .alert-box.success { + background-color: #43ac6a; + border-color: #3a945b; + color: white; } + .alert-box.alert { + background-color: #f04124; + border-color: #de2d0f; + color: white; } + .alert-box.secondary { + background-color: #e7e7e7; + border-color: #c7c7c7; + color: #4f4f4f; } + .alert-box.warning { + background-color: #f08a24; + border-color: #de770f; + color: white; } + .alert-box.info { + background-color: #a0d3e8; + border-color: #74bfdd; + color: #4f4f4f; } + .alert-box.alert-close { + opacity: 0; } + +.inline-list { + margin: 0 auto 1.0625rem auto; + margin-left: -1.375rem; + margin-right: 0; + padding: 0; + list-style: none; + overflow: hidden; } + .inline-list > li { + list-style: none; + float: left; + margin-left: 1.375rem; + display: block; } + .inline-list > li > * { + display: block; } + +.button-group { + list-style: none; + margin: 0; + left: 0; } + .button-group:before, .button-group:after { + content: " "; + display: table; } + .button-group:after { + clear: both; } + .button-group > li { + margin: 0 -2px; + display: inline-block; } + .button-group > li > button, .button-group > li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group > li:first-child button, .button-group > li:first-child .button { + border-left: 0; } + .button-group.stack > li { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; + float: none; } + .button-group.stack > li > button, .button-group.stack > li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.stack > li:first-child button, .button-group.stack > li:first-child .button { + border-left: 0; } + .button-group.stack > li > button, .button-group.stack > li .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.stack > li:first-child button, .button-group.stack > li:first-child .button { + border-top: 0; } + .button-group.stack-for-small > li { + margin: 0 -2px; + display: inline-block; } + .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button { + border-left: 0; } + @media only screen and (max-width: 40em) { + .button-group.stack-for-small > li { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; } + .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button { + border-left: 0; } + .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button { + border-top: 0; } } + .button-group.radius > * { + margin: 0 -2px; + display: inline-block; } + .button-group.radius > * > button, .button-group.radius > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.radius > *:first-child button, .button-group.radius > *:first-child .button { + border-left: 0; } + .button-group.radius > *, .button-group.radius > * > a, .button-group.radius > * > button, .button-group.radius > * > .button { + border-radius: 0; } + .button-group.radius > *:first-child, .button-group.radius > *:first-child > a, .button-group.radius > *:first-child > button, .button-group.radius > *:first-child > .button { + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } + .button-group.radius > *:last-child, .button-group.radius > *:last-child > a, .button-group.radius > *:last-child > button, .button-group.radius > *:last-child > .button { + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } + .button-group.radius.stack > * { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; } + .button-group.radius.stack > * > button, .button-group.radius.stack > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.radius.stack > *:first-child button, .button-group.radius.stack > *:first-child .button { + border-left: 0; } + .button-group.radius.stack > * > button, .button-group.radius.stack > * .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.radius.stack > *:first-child button, .button-group.radius.stack > *:first-child .button { + border-top: 0; } + .button-group.radius.stack > *, .button-group.radius.stack > * > a, .button-group.radius.stack > * > button, .button-group.radius.stack > * > .button { + border-radius: 0; } + .button-group.radius.stack > *:first-child, .button-group.radius.stack > *:first-child > a, .button-group.radius.stack > *:first-child > button, .button-group.radius.stack > *:first-child > .button { + -webkit-top-left-radius: 3px; + -webkit-top-right-radius: 3px; + border-top-left-radius: 3px; + border-top-right-radius: 3px; } + .button-group.radius.stack > *:last-child, .button-group.radius.stack > *:last-child > a, .button-group.radius.stack > *:last-child > button, .button-group.radius.stack > *:last-child > .button { + -webkit-bottom-left-radius: 3px; + -webkit-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; } + @media only screen and (min-width: 40.063em) { + .button-group.radius.stack-for-small > * { + margin: 0 -2px; + display: inline-block; } + .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button { + border-left: 0; } + .button-group.radius.stack-for-small > *, .button-group.radius.stack-for-small > * > a, .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * > .button { + border-radius: 0; } + .button-group.radius.stack-for-small > *:first-child, .button-group.radius.stack-for-small > *:first-child > a, .button-group.radius.stack-for-small > *:first-child > button, .button-group.radius.stack-for-small > *:first-child > .button { + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } + .button-group.radius.stack-for-small > *:last-child, .button-group.radius.stack-for-small > *:last-child > a, .button-group.radius.stack-for-small > *:last-child > button, .button-group.radius.stack-for-small > *:last-child > .button { + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } } + @media only screen and (max-width: 40em) { + .button-group.radius.stack-for-small > * { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; } + .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button { + border-left: 0; } + .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button { + border-top: 0; } + .button-group.radius.stack-for-small > *, .button-group.radius.stack-for-small > * > a, .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * > .button { + border-radius: 0; } + .button-group.radius.stack-for-small > *:first-child, .button-group.radius.stack-for-small > *:first-child > a, .button-group.radius.stack-for-small > *:first-child > button, .button-group.radius.stack-for-small > *:first-child > .button { + -webkit-top-left-radius: 3px; + -webkit-top-right-radius: 3px; + border-top-left-radius: 3px; + border-top-right-radius: 3px; } + .button-group.radius.stack-for-small > *:last-child, .button-group.radius.stack-for-small > *:last-child > a, .button-group.radius.stack-for-small > *:last-child > button, .button-group.radius.stack-for-small > *:last-child > .button { + -webkit-bottom-left-radius: 3px; + -webkit-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; } } + .button-group.round > * { + margin: 0 -2px; + display: inline-block; } + .button-group.round > * > button, .button-group.round > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.round > *:first-child button, .button-group.round > *:first-child .button { + border-left: 0; } + .button-group.round > *, .button-group.round > * > a, .button-group.round > * > button, .button-group.round > * > .button { + border-radius: 0; } + .button-group.round > *:first-child, .button-group.round > *:first-child > a, .button-group.round > *:first-child > button, .button-group.round > *:first-child > .button { + -webkit-border-bottom-left-radius: 1000px; + -webkit-border-top-left-radius: 1000px; + border-bottom-left-radius: 1000px; + border-top-left-radius: 1000px; } + .button-group.round > *:last-child, .button-group.round > *:last-child > a, .button-group.round > *:last-child > button, .button-group.round > *:last-child > .button { + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } + .button-group.round.stack > * { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; } + .button-group.round.stack > * > button, .button-group.round.stack > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.round.stack > *:first-child button, .button-group.round.stack > *:first-child .button { + border-left: 0; } + .button-group.round.stack > * > button, .button-group.round.stack > * .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.round.stack > *:first-child button, .button-group.round.stack > *:first-child .button { + border-top: 0; } + .button-group.round.stack > *, .button-group.round.stack > * > a, .button-group.round.stack > * > button, .button-group.round.stack > * > .button { + border-radius: 0; } + .button-group.round.stack > *:first-child, .button-group.round.stack > *:first-child > a, .button-group.round.stack > *:first-child > button, .button-group.round.stack > *:first-child > .button { + -webkit-top-left-radius: 1rem; + -webkit-top-right-radius: 1rem; + border-top-left-radius: 1rem; + border-top-right-radius: 1rem; } + .button-group.round.stack > *:last-child, .button-group.round.stack > *:last-child > a, .button-group.round.stack > *:last-child > button, .button-group.round.stack > *:last-child > .button { + -webkit-bottom-left-radius: 1rem; + -webkit-bottom-right-radius: 1rem; + border-bottom-left-radius: 1rem; + border-bottom-right-radius: 1rem; } + @media only screen and (min-width: 40.063em) { + .button-group.round.stack-for-small > * { + margin: 0 -2px; + display: inline-block; } + .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button { + border-left: 0; } + .button-group.round.stack-for-small > *, .button-group.round.stack-for-small > * > a, .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * > .button { + border-radius: 0; } + .button-group.round.stack-for-small > *:first-child, .button-group.round.stack-for-small > *:first-child > a, .button-group.round.stack-for-small > *:first-child > button, .button-group.round.stack-for-small > *:first-child > .button { + -webkit-border-bottom-left-radius: 1000px; + -webkit-border-top-left-radius: 1000px; + border-bottom-left-radius: 1000px; + border-top-left-radius: 1000px; } + .button-group.round.stack-for-small > *:last-child, .button-group.round.stack-for-small > *:last-child > a, .button-group.round.stack-for-small > *:last-child > button, .button-group.round.stack-for-small > *:last-child > .button { + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } } + @media only screen and (max-width: 40em) { + .button-group.round.stack-for-small > * { + margin: 0 -2px; + display: inline-block; + display: block; + margin: 0; } + .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button { + border-left: 0; } + .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button { + border-top: 1px solid; + border-color: rgba(255, 255, 255, 0.5); + border-left-width: 0px; + margin: 0; + display: block; } + .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button { + border-top: 0; } + .button-group.round.stack-for-small > *, .button-group.round.stack-for-small > * > a, .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * > .button { + border-radius: 0; } + .button-group.round.stack-for-small > *:first-child, .button-group.round.stack-for-small > *:first-child > a, .button-group.round.stack-for-small > *:first-child > button, .button-group.round.stack-for-small > *:first-child > .button { + -webkit-top-left-radius: 1rem; + -webkit-top-right-radius: 1rem; + border-top-left-radius: 1rem; + border-top-right-radius: 1rem; } + .button-group.round.stack-for-small > *:last-child, .button-group.round.stack-for-small > *:last-child > a, .button-group.round.stack-for-small > *:last-child > button, .button-group.round.stack-for-small > *:last-child > .button { + -webkit-bottom-left-radius: 1rem; + -webkit-bottom-right-radius: 1rem; + border-bottom-left-radius: 1rem; + border-bottom-right-radius: 1rem; } } + .button-group.even-2 li { + margin: 0 -2px; + display: inline-block; + width: 50%; } + .button-group.even-2 li > button, .button-group.even-2 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-2 li:first-child button, .button-group.even-2 li:first-child .button { + border-left: 0; } + .button-group.even-2 li button, .button-group.even-2 li .button { + width: 100%; } + .button-group.even-3 li { + margin: 0 -2px; + display: inline-block; + width: 33.33333%; } + .button-group.even-3 li > button, .button-group.even-3 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-3 li:first-child button, .button-group.even-3 li:first-child .button { + border-left: 0; } + .button-group.even-3 li button, .button-group.even-3 li .button { + width: 100%; } + .button-group.even-4 li { + margin: 0 -2px; + display: inline-block; + width: 25%; } + .button-group.even-4 li > button, .button-group.even-4 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-4 li:first-child button, .button-group.even-4 li:first-child .button { + border-left: 0; } + .button-group.even-4 li button, .button-group.even-4 li .button { + width: 100%; } + .button-group.even-5 li { + margin: 0 -2px; + display: inline-block; + width: 20%; } + .button-group.even-5 li > button, .button-group.even-5 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-5 li:first-child button, .button-group.even-5 li:first-child .button { + border-left: 0; } + .button-group.even-5 li button, .button-group.even-5 li .button { + width: 100%; } + .button-group.even-6 li { + margin: 0 -2px; + display: inline-block; + width: 16.66667%; } + .button-group.even-6 li > button, .button-group.even-6 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-6 li:first-child button, .button-group.even-6 li:first-child .button { + border-left: 0; } + .button-group.even-6 li button, .button-group.even-6 li .button { + width: 100%; } + .button-group.even-7 li { + margin: 0 -2px; + display: inline-block; + width: 14.28571%; } + .button-group.even-7 li > button, .button-group.even-7 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-7 li:first-child button, .button-group.even-7 li:first-child .button { + border-left: 0; } + .button-group.even-7 li button, .button-group.even-7 li .button { + width: 100%; } + .button-group.even-8 li { + margin: 0 -2px; + display: inline-block; + width: 12.5%; } + .button-group.even-8 li > button, .button-group.even-8 li .button { + border-left: 1px solid; + border-color: rgba(255, 255, 255, 0.5); } + .button-group.even-8 li:first-child button, .button-group.even-8 li:first-child .button { + border-left: 0; } + .button-group.even-8 li button, .button-group.even-8 li .button { + width: 100%; } + +.button-bar:before, .button-bar:after { + content: " "; + display: table; } +.button-bar:after { + clear: both; } +.button-bar .button-group { + float: left; + margin-right: 0.625rem; } + .button-bar .button-group div { + overflow: hidden; } + +/* Panels */ +.panel { + border-style: solid; + border-width: 1px; + border-color: #d8d8d8; + margin-bottom: 1.25rem; + padding: 1.25rem; + background: #f2f2f2; + color: #333333; } + .panel > :first-child { + margin-top: 0; } + .panel > :last-child { + margin-bottom: 0; } + .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6, .panel p, .panel li, .panel dl { + color: #333333; } + .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6 { + line-height: 1; + margin-bottom: 0.625rem; } + .panel h1.subheader, .panel h2.subheader, .panel h3.subheader, .panel h4.subheader, .panel h5.subheader, .panel h6.subheader { + line-height: 1.4; } + .panel.callout { + border-style: solid; + border-width: 1px; + border-color: #b6edff; + margin-bottom: 1.25rem; + padding: 1.25rem; + background: #ecfaff; + color: #333333; } + .panel.callout > :first-child { + margin-top: 0; } + .panel.callout > :last-child { + margin-bottom: 0; } + .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6, .panel.callout p, .panel.callout li, .panel.callout dl { + color: #333333; } + .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6 { + line-height: 1; + margin-bottom: 0.625rem; } + .panel.callout h1.subheader, .panel.callout h2.subheader, .panel.callout h3.subheader, .panel.callout h4.subheader, .panel.callout h5.subheader, .panel.callout h6.subheader { + line-height: 1.4; } + .panel.callout a:not(.button) { + color: #008cba; } + .panel.radius { + border-radius: 3px; } + +.dropdown.button, button.dropdown { + position: relative; + outline: none; + padding-right: 3.5625rem; } + .dropdown.button::after, button.dropdown::after { + position: absolute; + content: ""; + width: 0; + height: 0; + display: block; + border-style: solid; + border-color: white transparent transparent transparent; + top: 50%; } + .dropdown.button::after, button.dropdown::after { + border-width: 0.375rem; + right: 1.40625rem; + margin-top: -0.15625rem; } + .dropdown.button::after, button.dropdown::after { + border-color: white transparent transparent transparent; } + .dropdown.button.tiny, button.dropdown.tiny { + padding-right: 2.625rem; } + .dropdown.button.tiny:after, button.dropdown.tiny:after { + border-width: 0.375rem; + right: 1.125rem; + margin-top: -0.125rem; } + .dropdown.button.tiny::after, button.dropdown.tiny::after { + border-color: white transparent transparent transparent; } + .dropdown.button.small, button.dropdown.small { + padding-right: 3.0625rem; } + .dropdown.button.small::after, button.dropdown.small::after { + border-width: 0.4375rem; + right: 1.3125rem; + margin-top: -0.15625rem; } + .dropdown.button.small::after, button.dropdown.small::after { + border-color: white transparent transparent transparent; } + .dropdown.button.large, button.dropdown.large { + padding-right: 3.625rem; } + .dropdown.button.large::after, button.dropdown.large::after { + border-width: 0.3125rem; + right: 1.71875rem; + margin-top: -0.15625rem; } + .dropdown.button.large::after, button.dropdown.large::after { + border-color: white transparent transparent transparent; } + .dropdown.button.secondary:after, button.dropdown.secondary:after { + border-color: #333333 transparent transparent transparent; } + +/* Image Thumbnails */ +.th { + line-height: 0; + display: inline-block; + border: solid 4px white; + max-width: 100%; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); + transition: all 200ms ease-out; } + .th:hover, .th:focus { + box-shadow: 0 0 6px 1px rgba(0, 140, 186, 0.5); } + .th.radius { + border-radius: 3px; } + +.toolbar { + background: #333333; + width: 100%; + font-size: 0; + display: inline-block; } + .toolbar.label-bottom .tab .tab-content i, .toolbar.label-bottom .tab .tab-content img { + margin-bottom: 10px; } + .toolbar.label-right .tab .tab-content i, .toolbar.label-right .tab .tab-content img { + margin-right: 10px; + display: inline-block; } + .toolbar.label-right .tab .tab-content label { + display: inline-block; } + .toolbar.vertical.label-right .tab .tab-content { + text-align: left; } + .toolbar.vertical { + height: 100%; + width: auto; } + .toolbar.vertical .tab { + width: auto; + margin: auto; + float: none; } + .toolbar .tab { + text-align: center; + width: 25%; + margin: 0 auto; + display: block; + padding: 20px; + float: left; } + .toolbar .tab:hover { + background: rgba(255, 255, 255, 0.1); } + +.toolbar .tab-content { + font-size: 16px; + text-align: center; } + .toolbar .tab-content label { + color: #cccccc; } + .toolbar .tab-content i { + font-size: 30px; + display: block; + margin: 0 auto; + color: #cccccc; + vertical-align: middle; } + .toolbar .tab-content img { + width: 30px; + height: 30px; + display: block; + margin: 0 auto; } + +/* Pricing Tables */ +.pricing-table { + border: solid 1px #dddddd; + margin-left: 0; + margin-bottom: 1.25rem; } + .pricing-table * { + list-style: none; + line-height: 1; } + .pricing-table .title { + background-color: #333333; + padding: 0.9375rem 1.25rem; + text-align: center; + color: #eeeeee; + font-weight: normal; + font-size: 1rem; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; } + .pricing-table .price { + background-color: #f6f6f6; + padding: 0.9375rem 1.25rem; + text-align: center; + color: #333333; + font-weight: normal; + font-size: 2rem; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; } + .pricing-table .description { + background-color: white; + padding: 0.9375rem; + text-align: center; + color: #777777; + font-size: 0.75rem; + font-weight: normal; + line-height: 1.4; + border-bottom: dotted 1px #dddddd; } + .pricing-table .bullet-item { + background-color: white; + padding: 0.9375rem; + text-align: center; + color: #333333; + font-size: 0.875rem; + font-weight: normal; + border-bottom: dotted 1px #dddddd; } + .pricing-table .cta-button { + background-color: white; + text-align: center; + padding: 1.25rem 1.25rem 0; } + +@-webkit-keyframes rotate { + from { + -webkit-transform: rotate(0deg); } + + to { + -webkit-transform: rotate(360deg); } } + +@-moz-keyframes rotate { + from { + -moz-transform: rotate(0deg); } + + to { + -moz-transform: rotate(360deg); } } + +@-o-keyframes rotate { + from { + -o-transform: rotate(0deg); } + + to { + -o-transform: rotate(360deg); } } + +@keyframes rotate { + from { + transform: rotate(0deg); } + + to { + transform: rotate(360deg); } } + +/* Orbit Graceful Loading */ +.slideshow-wrapper { + position: relative; } + .slideshow-wrapper ul { + list-style-type: none; + margin: 0; } + .slideshow-wrapper ul li, + .slideshow-wrapper ul li .orbit-caption { + display: none; } + .slideshow-wrapper ul li:first-child { + display: block; } + .slideshow-wrapper .orbit-container { + background-color: transparent; } + .slideshow-wrapper .orbit-container li { + display: block; } + .slideshow-wrapper .orbit-container li .orbit-caption { + display: block; } + .slideshow-wrapper .orbit-container .orbit-bullets li { + display: inline-block; } + .slideshow-wrapper .preloader { + display: block; + width: 40px; + height: 40px; + position: absolute; + top: 50%; + left: 50%; + margin-top: -20px; + margin-left: -20px; + border: solid 3px; + border-color: #555555 white; + border-radius: 1000px; + animation-name: rotate; + animation-duration: 1.5s; + animation-iteration-count: infinite; + animation-timing-function: linear; } + +.orbit-container { + overflow: hidden; + width: 100%; + position: relative; + background: none; } + .orbit-container .orbit-slides-container { + list-style: none; + margin: 0; + padding: 0; + position: relative; + -webkit-transform: translateZ(0); } + .orbit-container .orbit-slides-container img { + display: block; + max-width: 100%; } + .orbit-container .orbit-slides-container > * { + position: absolute; + top: 0; + width: 100%; + margin-left: 100%; } + .orbit-container .orbit-slides-container > *:first-child { + margin-left: 0%; } + .orbit-container .orbit-slides-container > * .orbit-caption { + position: absolute; + bottom: 0; + background-color: rgba(51, 51, 51, 0.8); + color: white; + width: 100%; + padding: 0.625rem 0.875rem; + font-size: 0.875rem; } + .orbit-container .orbit-slide-number { + position: absolute; + top: 10px; + left: 10px; + font-size: 12px; + color: white; + background: rgba(0, 0, 0, 0); + z-index: 10; } + .orbit-container .orbit-slide-number span { + font-weight: 700; + padding: 0.3125rem; } + .orbit-container .orbit-timer { + position: absolute; + top: 12px; + right: 10px; + height: 6px; + width: 100px; + z-index: 10; } + .orbit-container .orbit-timer .orbit-progress { + height: 3px; + background-color: rgba(255, 255, 255, 0.3); + display: block; + width: 0%; + position: relative; + right: 20px; + top: 5px; } + .orbit-container .orbit-timer > span { + display: none; + position: absolute; + top: 0px; + right: 0; + width: 11px; + height: 14px; + border: solid 4px white; + border-top: none; + border-bottom: none; } + .orbit-container .orbit-timer.paused > span { + right: -4px; + top: 0px; + width: 11px; + height: 14px; + border: inset 8px; + border-left-style: solid; + border-color: transparent; + border-left-color: white; } + .orbit-container .orbit-timer.paused > span.dark { + border-left-color: #333333; } + .orbit-container:hover .orbit-timer > span { + display: block; } + .orbit-container .orbit-prev, + .orbit-container .orbit-next { + position: absolute; + top: 45%; + margin-top: -25px; + width: 36px; + height: 60px; + line-height: 50px; + color: white; + background-color: transparent; + text-indent: -9999px !important; + z-index: 10; } + .orbit-container .orbit-prev:hover, + .orbit-container .orbit-next:hover { + background-color: rgba(0, 0, 0, 0.3); } + .orbit-container .orbit-prev > span, + .orbit-container .orbit-next > span { + position: absolute; + top: 50%; + margin-top: -10px; + display: block; + width: 0; + height: 0; + border: inset 10px; } + .orbit-container .orbit-prev { + left: 0; } + .orbit-container .orbit-prev > span { + border-right-style: solid; + border-color: transparent; + border-right-color: white; } + .orbit-container .orbit-prev:hover > span { + border-right-color: white; } + .orbit-container .orbit-next { + right: 0; } + .orbit-container .orbit-next > span { + border-color: transparent; + border-left-style: solid; + border-left-color: white; + left: 50%; + margin-left: -4px; } + .orbit-container .orbit-next:hover > span { + border-left-color: white; } + +.orbit-bullets-container { + text-align: center; } + +.orbit-bullets { + margin: 0 auto 30px auto; + overflow: hidden; + position: relative; + top: 10px; + float: none; + text-align: center; + display: block; } + .orbit-bullets li { + cursor: pointer; + display: inline-block; + width: 0.5625rem; + height: 0.5625rem; + background: #cccccc; + float: none; + margin-right: 6px; + border-radius: 1000px; } + .orbit-bullets li.active { + background: #999999; } + .orbit-bullets li:last-child { + margin-right: 0; } + +.touch .orbit-container .orbit-prev, +.touch .orbit-container .orbit-next { + display: none; } +.touch .orbit-bullets { + display: none; } + +@media only screen and (min-width: 40.063em) { + .touch .orbit-container .orbit-prev, + .touch .orbit-container .orbit-next { + display: inherit; } + .touch .orbit-bullets { + display: block; } } +@media only screen and (max-width: 40em) { + .orbit-stack-on-small .orbit-slides-container { + height: auto !important; } + .orbit-stack-on-small .orbit-slides-container > * { + position: relative; + margin: 0% !important; + opacity: 1 !important; } + .orbit-stack-on-small .orbit-slide-number { + display: none; } + + .orbit-timer { + display: none; } + + .orbit-next, .orbit-prev { + display: none; } + + .orbit-bullets { + display: none; } } +[data-magellan-expedition], [data-magellan-expedition-clone] { + background: white; + z-index: 50; + min-width: 100%; + padding: 10px; } + [data-magellan-expedition] .sub-nav, [data-magellan-expedition-clone] .sub-nav { + margin-bottom: 0; } + [data-magellan-expedition] .sub-nav dd, [data-magellan-expedition-clone] .sub-nav dd { + margin-bottom: 0; } + [data-magellan-expedition] .sub-nav a, [data-magellan-expedition-clone] .sub-nav a { + line-height: 1.8em; } + +.icon-bar { + width: 100%; + font-size: 0; + display: inline-block; + background: #333333; } + .icon-bar > * { + text-align: center; + font-size: 1rem; + width: 25%; + margin: 0 auto; + display: block; + padding: 1.25rem; + float: left; } + .icon-bar > * i, .icon-bar > * img { + display: block; + margin: 0 auto; } + .icon-bar > * i + label, .icon-bar > * img + label { + margin-top: .0625rem; } + .icon-bar > * i { + font-size: 1.875rem; + vertical-align: middle; } + .icon-bar > * img { + width: 1.875rem; + height: 1.875rem; } + .icon-bar.label-right > * i, .icon-bar.label-right > * img { + margin: 0 .0625rem 0 0; + display: inline-block; } + .icon-bar.label-right > * i + label, .icon-bar.label-right > * img + label { + margin-top: 0; } + .icon-bar.label-right > * label { + display: inline-block; } + .icon-bar.vertical.label-right > * { + text-align: left; } + .icon-bar.vertical, .icon-bar.small-vertical { + height: 100%; + width: auto; } + .icon-bar.vertical .item, .icon-bar.small-vertical .item { + width: auto; + margin: auto; + float: none; } + @media only screen and (min-width: 40.063em) { + .icon-bar.medium-vertical { + height: 100%; + width: auto; } + .icon-bar.medium-vertical .item { + width: auto; + margin: auto; + float: none; } } + @media only screen and (min-width: 64.063em) { + .icon-bar.large-vertical { + height: 100%; + width: auto; } + .icon-bar.large-vertical .item { + width: auto; + margin: auto; + float: none; } } + .icon-bar > * { + font-size: 1rem; + padding: 1.25rem; } + .icon-bar > * i + label, .icon-bar > * img + label { + margin-top: .0625rem; } + .icon-bar > * i { + font-size: 1.875rem; } + .icon-bar > * img { + width: 1.875rem; + height: 1.875rem; } + .icon-bar > *:hover { + background: #008cba; } + .icon-bar > * label { + color: white; } + .icon-bar > * i { + color: white; } + +.icon-bar.two-up .item { + width: 50%; } +.icon-bar.two-up.vertical .item, .icon-bar.two-up.small-vertical .item { + width: auto; } +@media only screen and (min-width: 40.063em) { + .icon-bar.two-up.medium-vertical .item { + width: auto; } } +@media only screen and (min-width: 64.063em) { + .icon-bar.two-up.large-vertical .item { + width: auto; } } +.icon-bar.three-up .item { + width: 33.3333%; } +.icon-bar.three-up.vertical .item, .icon-bar.three-up.small-vertical .item { + width: auto; } +@media only screen and (min-width: 40.063em) { + .icon-bar.three-up.medium-vertical .item { + width: auto; } } +@media only screen and (min-width: 64.063em) { + .icon-bar.three-up.large-vertical .item { + width: auto; } } +.icon-bar.four-up .item { + width: 25%; } +.icon-bar.four-up.vertical .item, .icon-bar.four-up.small-vertical .item { + width: auto; } +@media only screen and (min-width: 40.063em) { + .icon-bar.four-up.medium-vertical .item { + width: auto; } } +@media only screen and (min-width: 64.063em) { + .icon-bar.four-up.large-vertical .item { + width: auto; } } +.icon-bar.five-up .item { + width: 20%; } +.icon-bar.five-up.vertical .item, .icon-bar.five-up.small-vertical .item { + width: auto; } +@media only screen and (min-width: 40.063em) { + .icon-bar.five-up.medium-vertical .item { + width: auto; } } +@media only screen and (min-width: 64.063em) { + .icon-bar.five-up.large-vertical .item { + width: auto; } } +.icon-bar.six-up .item { + width: 16.66667%; } +.icon-bar.six-up.vertical .item, .icon-bar.six-up.small-vertical .item { + width: auto; } +@media only screen and (min-width: 40.063em) { + .icon-bar.six-up.medium-vertical .item { + width: auto; } } +@media only screen and (min-width: 64.063em) { + .icon-bar.six-up.large-vertical .item { + width: auto; } } + +.tabs { + margin-bottom: 0 !important; + margin-left: 0; } + .tabs:before, .tabs:after { + content: " "; + display: table; } + .tabs:after { + clear: both; } + .tabs dd, .tabs .tab-title { + position: relative; + margin-bottom: 0 !important; + list-style: none; + float: left; } + .tabs dd > a, .tabs .tab-title > a { + outline: none; + display: block; + background-color: #efefef; + color: #222222; + padding: 1rem 2rem; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-size: 1rem; } + .tabs dd > a:hover, .tabs .tab-title > a:hover { + background-color: #e1e1e1; } + .tabs dd.active a, .tabs .tab-title.active a { + background-color: white; + color: #222222; } + .tabs.radius dd:first-child a, .tabs.radius .tab:first-child a { + -webkit-border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; } + .tabs.radius dd:last-child a, .tabs.radius .tab:last-child a { + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } + .tabs.vertical dd, .tabs.vertical .tab-title { + position: inherit; + float: none; + display: block; + top: auto; } + +.tabs-content { + margin-bottom: 1.5rem; + width: 100%; } + .tabs-content:before, .tabs-content:after { + content: " "; + display: table; } + .tabs-content:after { + clear: both; } + .tabs-content > .content { + display: none; + float: left; + padding: 0.9375rem 0; + width: 100%; } + .tabs-content > .content.active { + display: block; + float: none; } + .tabs-content > .content.contained { + padding: 0.9375rem; } + .tabs-content.vertical { + display: block; } + .tabs-content.vertical > .content { + padding: 0 0.9375rem; } + +@media only screen and (min-width: 40.063em) { + .tabs.vertical { + width: 20%; + max-width: 20%; + float: left; + margin: 0 0 1.25rem; } + + .tabs-content.vertical { + width: 80%; + max-width: 80%; + float: left; + margin-left: -1px; + padding-left: 1rem; } } +.no-js .tabs-content > .content { + display: block; + float: none; } + +ul.pagination { + display: block; + min-height: 1.5rem; + margin-left: -0.3125rem; } + ul.pagination li { + height: 1.5rem; + color: #222222; + font-size: 0.875rem; + margin-left: 0.3125rem; } + ul.pagination li a, ul.pagination li button { + display: block; + padding: 0.0625rem 0.625rem 0.0625rem; + color: #999999; + background: none; + border-radius: 3px; + font-weight: normal; + font-size: 1em; + line-height: inherit; + transition: background-color 300ms ease-out; } + ul.pagination li:hover a, + ul.pagination li a:focus, ul.pagination li:hover button, + ul.pagination li button:focus { + background: #e6e6e6; } + ul.pagination li.unavailable a, ul.pagination li.unavailable button { + cursor: default; + color: #999999; } + ul.pagination li.unavailable:hover a, ul.pagination li.unavailable a:focus, ul.pagination li.unavailable:hover button, ul.pagination li.unavailable button:focus { + background: transparent; } + ul.pagination li.current a, ul.pagination li.current button { + background: #008cba; + color: white; + font-weight: bold; + cursor: default; } + ul.pagination li.current a:hover, ul.pagination li.current a:focus, ul.pagination li.current button:hover, ul.pagination li.current button:focus { + background: #008cba; } + ul.pagination li { + float: left; + display: block; } + +/* Pagination centred wrapper */ +.pagination-centered { + text-align: center; } + .pagination-centered ul.pagination li { + float: none; + display: inline-block; } + +.side-nav { + display: block; + margin: 0; + padding: 0.875rem 0; + list-style-type: none; + list-style-position: outside; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; } + .side-nav li { + margin: 0 0 0.4375rem 0; + font-size: 0.875rem; + font-weight: normal; } + .side-nav li a:not(.button) { + display: block; + color: #008cba; + margin: 0; + padding: 0.4375rem 0.875rem; } + .side-nav li a:not(.button):hover, .side-nav li a:not(.button):focus { + background: rgba(0, 0, 0, 0.025); + color: #1cc7ff; } + .side-nav li.active > a:first-child:not(.button) { + color: #1cc7ff; + font-weight: normal; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; } + .side-nav li.divider { + border-top: 1px solid; + height: 0; + padding: 0; + list-style: none; + border-top-color: white; } + .side-nav li.heading { + color: #008cba; + font-size: 0.875rem; + font-weight: bold; + text-transform: uppercase; } + +.accordion { + margin-bottom: 0; } + .accordion:before, .accordion:after { + content: " "; + display: table; } + .accordion:after { + clear: both; } + .accordion .accordion-navigation, .accordion dd { + display: block; + margin-bottom: 0 !important; } + .accordion .accordion-navigation.active > a, .accordion dd.active > a { + background: #e8e8e8; } + .accordion .accordion-navigation > a, .accordion dd > a { + background: #efefef; + color: #222222; + padding: 1rem; + display: block; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-size: 1rem; } + .accordion .accordion-navigation > a:hover, .accordion dd > a:hover { + background: #e3e3e3; } + .accordion .accordion-navigation > .content, .accordion dd > .content { + display: none; + padding: 0.9375rem; } + .accordion .accordion-navigation > .content.active, .accordion dd > .content.active { + display: block; + background: white; } + +.text-left { + text-align: left !important; } + +.text-right { + text-align: right !important; } + +.text-center { + text-align: center !important; } + +.text-justify { + text-align: justify !important; } + +@media only screen and (max-width: 40em) { + .small-only-text-left { + text-align: left !important; } + + .small-only-text-right { + text-align: right !important; } + + .small-only-text-center { + text-align: center !important; } + + .small-only-text-justify { + text-align: justify !important; } } +@media only screen { + .small-text-left { + text-align: left !important; } + + .small-text-right { + text-align: right !important; } + + .small-text-center { + text-align: center !important; } + + .small-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 40.063em) and (max-width: 64em) { + .medium-only-text-left { + text-align: left !important; } + + .medium-only-text-right { + text-align: right !important; } + + .medium-only-text-center { + text-align: center !important; } + + .medium-only-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 40.063em) { + .medium-text-left { + text-align: left !important; } + + .medium-text-right { + text-align: right !important; } + + .medium-text-center { + text-align: center !important; } + + .medium-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 64.063em) and (max-width: 90em) { + .large-only-text-left { + text-align: left !important; } + + .large-only-text-right { + text-align: right !important; } + + .large-only-text-center { + text-align: center !important; } + + .large-only-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 64.063em) { + .large-text-left { + text-align: left !important; } + + .large-text-right { + text-align: right !important; } + + .large-text-center { + text-align: center !important; } + + .large-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 90.063em) and (max-width: 120em) { + .xlarge-only-text-left { + text-align: left !important; } + + .xlarge-only-text-right { + text-align: right !important; } + + .xlarge-only-text-center { + text-align: center !important; } + + .xlarge-only-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 90.063em) { + .xlarge-text-left { + text-align: left !important; } + + .xlarge-text-right { + text-align: right !important; } + + .xlarge-text-center { + text-align: center !important; } + + .xlarge-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 120.063em) and (max-width: 99999999em) { + .xxlarge-only-text-left { + text-align: left !important; } + + .xxlarge-only-text-right { + text-align: right !important; } + + .xxlarge-only-text-center { + text-align: center !important; } + + .xxlarge-only-text-justify { + text-align: justify !important; } } +@media only screen and (min-width: 120.063em) { + .xxlarge-text-left { + text-align: left !important; } + + .xxlarge-text-right { + text-align: right !important; } + + .xxlarge-text-center { + text-align: center !important; } + + .xxlarge-text-justify { + text-align: justify !important; } } +/* Typography resets */ +div, +dl, +dt, +dd, +ul, +ol, +li, +h1, +h2, +h3, +h4, +h5, +h6, +pre, +form, +p, +blockquote, +th, +td { + margin: 0; + padding: 0; } + +/* Default Link Styles */ +a { + color: #008cba; + text-decoration: none; + line-height: inherit; } + a:hover, a:focus { + color: #0078a0; } + a img { + border: none; } + +/* Default paragraph styles */ +p { + font-family: inherit; + font-weight: normal; + font-size: 1rem; + line-height: 1.6; + margin-bottom: 1.25rem; + text-rendering: optimizeLegibility; } + p.lead { + font-size: 1.21875rem; + line-height: 1.6; } + p aside { + font-size: 0.875rem; + line-height: 1.35; + font-style: italic; } + +/* Default header styles */ +h1, h2, h3, h4, h5, h6 { + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-weight: normal; + font-style: normal; + color: #222222; + text-rendering: optimizeLegibility; + margin-top: 0.2rem; + margin-bottom: 0.5rem; + line-height: 1.4; } + h1 small, h2 small, h3 small, h4 small, h5 small, h6 small { + font-size: 60%; + color: #6f6f6f; + line-height: 0; } + +h1 { + font-size: 2.125rem; } + +h2 { + font-size: 1.6875rem; } + +h3 { + font-size: 1.375rem; } + +h4 { + font-size: 1.125rem; } + +h5 { + font-size: 1.125rem; } + +h6 { + font-size: 1rem; } + +.subheader { + line-height: 1.4; + color: #6f6f6f; + font-weight: normal; + margin-top: 0.2rem; + margin-bottom: 0.5rem; } + +hr { + border: solid #dddddd; + border-width: 1px 0 0; + clear: both; + margin: 1.25rem 0 1.1875rem; + height: 0; } + +/* Helpful Typography Defaults */ +em, +i { + font-style: italic; + line-height: inherit; } + +strong, +b { + font-weight: bold; + line-height: inherit; } + +small { + font-size: 60%; + line-height: inherit; } + +code { + font-family: Consolas, "Liberation Mono", Courier, monospace; + font-weight: normal; + color: #333333; + background-color: #f8f8f8; + border-width: 1px; + border-style: solid; + border-color: #dfdfdf; + padding: 0.125rem 0.3125rem 0.0625rem; } + +/* Lists */ +ul, +ol, +dl { + font-size: 1rem; + line-height: 1.6; + margin-bottom: 1.25rem; + list-style-position: outside; + font-family: inherit; } + +ul { + margin-left: 1.1rem; } + ul.no-bullet { + margin-left: 0; } + ul.no-bullet li ul, + ul.no-bullet li ol { + margin-left: 1.25rem; + margin-bottom: 0; + list-style: none; } + +/* Unordered Lists */ +ul li ul, +ul li ol { + margin-left: 1.25rem; + margin-bottom: 0; } +ul.square li ul, ul.circle li ul, ul.disc li ul { + list-style: inherit; } +ul.square { + list-style-type: square; + margin-left: 1.1rem; } +ul.circle { + list-style-type: circle; + margin-left: 1.1rem; } +ul.disc { + list-style-type: disc; + margin-left: 1.1rem; } +ul.no-bullet { + list-style: none; } + +/* Ordered Lists */ +ol { + margin-left: 1.4rem; } + ol li ul, + ol li ol { + margin-left: 1.25rem; + margin-bottom: 0; } + +/* Definition Lists */ +dl dt { + margin-bottom: 0.3rem; + font-weight: bold; } +dl dd { + margin-bottom: 0.75rem; } + +/* Abbreviations */ +abbr, +acronym { + text-transform: uppercase; + font-size: 90%; + color: #222222; + cursor: help; } + +abbr { + text-transform: none; } + abbr[title] { + border-bottom: 1px dotted #dddddd; } + +/* Blockquotes */ +blockquote { + margin: 0 0 1.25rem; + padding: 0.5625rem 1.25rem 0 1.1875rem; + border-left: 1px solid #dddddd; } + blockquote cite { + display: block; + font-size: 0.8125rem; + color: #555555; } + blockquote cite:before { + content: "\2014 \0020"; } + blockquote cite a, + blockquote cite a:visited { + color: #555555; } + +blockquote, +blockquote p { + line-height: 1.6; + color: #6f6f6f; } + +/* Microformats */ +.vcard { + display: inline-block; + margin: 0 0 1.25rem 0; + border: 1px solid #dddddd; + padding: 0.625rem 0.75rem; } + .vcard li { + margin: 0; + display: block; } + .vcard .fn { + font-weight: bold; + font-size: 0.9375rem; } + +.vevent .summary { + font-weight: bold; } +.vevent abbr { + cursor: default; + text-decoration: none; + font-weight: bold; + border: none; + padding: 0 0.0625rem; } + +@media only screen and (min-width: 40.063em) { + h1, h2, h3, h4, h5, h6 { + line-height: 1.4; } + + h1 { + font-size: 2.75rem; } + + h2 { + font-size: 2.3125rem; } + + h3 { + font-size: 1.6875rem; } + + h4 { + font-size: 1.4375rem; } + + h5 { + font-size: 1.125rem; } + + h6 { + font-size: 1rem; } } +/* + * Print styles. + * + * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/ + * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com) +*/ +.print-only { + display: none !important; } + +@media print { + * { + background: transparent !important; + color: black !important; + /* Black prints faster: h5bp.com/s */ + box-shadow: none !important; + text-shadow: none !important; } + + a, + a:visited { + text-decoration: underline; } + + a[href]:after { + content: " (" attr(href) ")"; } + + abbr[title]:after { + content: " (" attr(title) ")"; } + + .ir a:after, + a[href^="javascript:"]:after, + a[href^="#"]:after { + content: ""; } + + pre, + blockquote { + border: 1px solid #999999; + page-break-inside: avoid; } + + thead { + display: table-header-group; + /* h5bp.com/t */ } + + tr, + img { + page-break-inside: avoid; } + + img { + max-width: 100% !important; } + + @page { + margin: 0.5cm; } + + p, + h2, + h3 { + orphans: 3; + widows: 3; } + + h2, + h3 { + page-break-after: avoid; } + + .hide-on-print { + display: none !important; } + + .print-only { + display: block !important; } + + .hide-for-print { + display: none !important; } + + .show-for-print { + display: inherit !important; } } +.split.button { + position: relative; + padding-right: 5.0625rem; } + .split.button span { + display: block; + height: 100%; + position: absolute; + right: 0; + top: 0; + border-left: solid 1px; } + .split.button span:after { + position: absolute; + content: ""; + width: 0; + height: 0; + display: block; + border-style: inset; + top: 50%; + left: 50%; } + .split.button span:active { + background-color: rgba(0, 0, 0, 0.1); } + .split.button span { + border-left-color: rgba(255, 255, 255, 0.5); } + .split.button span { + width: 3.09375rem; } + .split.button span:after { + border-top-style: solid; + border-width: 0.375rem; + top: 48%; + margin-left: -0.375rem; } + .split.button span:after { + border-color: white transparent transparent transparent; } + .split.button.secondary span { + border-left-color: rgba(255, 255, 255, 0.5); } + .split.button.secondary span:after { + border-color: white transparent transparent transparent; } + .split.button.alert span { + border-left-color: rgba(255, 255, 255, 0.5); } + .split.button.success span { + border-left-color: rgba(255, 255, 255, 0.5); } + .split.button.tiny { + padding-right: 3.75rem; } + .split.button.tiny span { + width: 2.25rem; } + .split.button.tiny span:after { + border-top-style: solid; + border-width: 0.375rem; + top: 48%; + margin-left: -0.375rem; } + .split.button.small { + padding-right: 4.375rem; } + .split.button.small span { + width: 2.625rem; } + .split.button.small span:after { + border-top-style: solid; + border-width: 0.4375rem; + top: 48%; + margin-left: -0.375rem; } + .split.button.large { + padding-right: 5.5rem; } + .split.button.large span { + width: 3.4375rem; } + .split.button.large span:after { + border-top-style: solid; + border-width: 0.3125rem; + top: 48%; + margin-left: -0.375rem; } + .split.button.expand { + padding-left: 2rem; } + .split.button.secondary span:after { + border-color: #333333 transparent transparent transparent; } + .split.button.radius span { + -webkit-border-bottom-right-radius: 3px; + -webkit-border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; } + .split.button.round span { + -webkit-border-bottom-right-radius: 1000px; + -webkit-border-top-right-radius: 1000px; + border-bottom-right-radius: 1000px; + border-top-right-radius: 1000px; } + +.reveal-modal-bg { + position: fixed; + top: 0; + bottom: 0; + left: 0; + right: 0; + background: black; + background: rgba(0, 0, 0, 0.45); + z-index: 1004; + display: none; + left: 0; } + +.reveal-modal, dialog { + visibility: hidden; + display: none; + position: absolute; + z-index: 1005; + width: 100vw; + top: 0; + border-radius: 3px; + left: 0; + background-color: white; + padding: 1.25rem; + border: solid 1px #666666; + box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); + padding: 1.875rem; } + @media only screen and (max-width: 40em) { + .reveal-modal, dialog { + min-height: 100vh; } } + .reveal-modal .column, dialog .column, .reveal-modal .columns, dialog .columns { + min-width: 0; } + .reveal-modal > :first-child, dialog > :first-child { + margin-top: 0; } + .reveal-modal > :last-child, dialog > :last-child { + margin-bottom: 0; } + @media only screen and (min-width: 40.063em) { + .reveal-modal, dialog { + width: 80%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + @media only screen and (min-width: 40.063em) { + .reveal-modal, dialog { + top: 6.25rem; } } + .reveal-modal.radius, dialog.radius { + border-radius: 3px; } + .reveal-modal.round, dialog.round { + border-radius: 1000px; } + .reveal-modal.collapse, dialog.collapse { + padding: 0; } + @media only screen and (min-width: 40.063em) { + .reveal-modal.tiny, dialog.tiny { + width: 30%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + @media only screen and (min-width: 40.063em) { + .reveal-modal.small, dialog.small { + width: 40%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + @media only screen and (min-width: 40.063em) { + .reveal-modal.medium, dialog.medium { + width: 60%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + @media only screen and (min-width: 40.063em) { + .reveal-modal.large, dialog.large { + width: 70%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + @media only screen and (min-width: 40.063em) { + .reveal-modal.xlarge, dialog.xlarge { + width: 95%; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + .reveal-modal.full, dialog.full { + top: 0; + left: 0; + height: 100%; + height: 100vh; + min-height: 100vh; + max-width: none !important; + margin-left: 0 !important; } + @media only screen and (min-width: 40.063em) { + .reveal-modal.full, dialog.full { + width: 100vw; + max-width: 62.5rem; + left: 0; + right: 0; + margin: 0 auto; } } + .reveal-modal .close-reveal-modal, dialog .close-reveal-modal { + font-size: 2.5rem; + line-height: 1; + position: absolute; + top: 0.5rem; + right: 0.6875rem; + color: #aaaaaa; + font-weight: bold; + cursor: pointer; } + +dialog { + display: none; } + dialog::backdrop, dialog + .backdrop { + position: fixed; + top: 0; + bottom: 0; + left: 0; + right: 0; + background: black; + background: rgba(0, 0, 0, 0.45); + z-index: auto; + display: none; + left: 0; } + dialog[open] { + display: block; } + +@media print { + dialog, .reveal-modal, dialog { + display: none; + background: white !important; } } +/* Tooltips */ +.has-tip { + border-bottom: dotted 1px #cccccc; + cursor: help; + font-weight: bold; + color: #333333; } + .has-tip:hover, .has-tip:focus { + border-bottom: dotted 1px #003f54; + color: #008cba; } + .has-tip.tip-left, .has-tip.tip-right { + float: none !important; } + +.tooltip { + display: none; + position: absolute; + z-index: 1006; + font-weight: normal; + font-size: 0.875rem; + line-height: 1.3; + padding: 0.75rem; + max-width: 300px; + left: 50%; + width: 100%; + color: white; + background: #333333; } + .tooltip > .nub { + display: block; + left: 5px; + position: absolute; + width: 0; + height: 0; + border: solid 5px; + border-color: transparent transparent #333333 transparent; + top: -10px; + pointer-events: none; } + .tooltip > .nub.rtl { + left: auto; + right: 5px; } + .tooltip.radius { + border-radius: 3px; } + .tooltip.round { + border-radius: 1000px; } + .tooltip.round > .nub { + left: 2rem; } + .tooltip.opened { + color: #008cba !important; + border-bottom: dotted 1px #003f54 !important; } + +.tap-to-close { + display: block; + font-size: 0.625rem; + color: #777777; + font-weight: normal; } + +@media only screen and (min-width: 40.063em) { + .tooltip > .nub { + border-color: transparent transparent #333333 transparent; + top: -10px; } + .tooltip.tip-top > .nub { + border-color: #333333 transparent transparent transparent; + top: auto; + bottom: -10px; } + .tooltip.tip-left, .tooltip.tip-right { + float: none !important; } + .tooltip.tip-left > .nub { + border-color: transparent transparent transparent #333333; + right: -10px; + left: auto; + top: 50%; + margin-top: -5px; } + .tooltip.tip-right > .nub { + border-color: transparent #333333 transparent transparent; + right: auto; + left: -10px; + top: 50%; + margin-top: -5px; } } +/* Clearing Styles */ +.clearing-thumbs, [data-clearing] { + margin-bottom: 0; + margin-left: 0; + list-style: none; } + .clearing-thumbs:before, .clearing-thumbs:after, [data-clearing]:before, [data-clearing]:after { + content: " "; + display: table; } + .clearing-thumbs:after, [data-clearing]:after { + clear: both; } + .clearing-thumbs li, [data-clearing] li { + float: left; + margin-right: 10px; } + .clearing-thumbs[class*="block-grid-"] li, [data-clearing][class*="block-grid-"] li { + margin-right: 0; } + +.clearing-blackout { + background: #333333; + position: fixed; + width: 100%; + height: 100%; + top: 0; + left: 0; + z-index: 998; } + .clearing-blackout .clearing-close { + display: block; } + +.clearing-container { + position: relative; + z-index: 998; + height: 100%; + overflow: hidden; + margin: 0; } + +.clearing-touch-label { + position: absolute; + top: 50%; + left: 50%; + color: #aaaaaa; + font-size: 0.6em; } + +.visible-img { + height: 95%; + position: relative; } + .visible-img img { + position: absolute; + left: 50%; + top: 50%; + margin-left: -50%; + max-height: 100%; + max-width: 100%; } + +.clearing-caption { + color: #cccccc; + font-size: 0.875em; + line-height: 1.3; + margin-bottom: 0; + text-align: center; + bottom: 0; + background: #333333; + width: 100%; + padding: 10px 30px 20px; + position: absolute; + left: 0; } + +.clearing-close { + z-index: 999; + padding-left: 20px; + padding-top: 10px; + font-size: 30px; + line-height: 1; + color: #cccccc; + display: none; } + .clearing-close:hover, .clearing-close:focus { + color: #cccccc; } + +.clearing-assembled .clearing-container { + height: 100%; } + .clearing-assembled .clearing-container .carousel > ul { + display: none; } + +.clearing-feature li { + display: none; } + .clearing-feature li.clearing-featured-img { + display: block; } + +@media only screen and (min-width: 40.063em) { + .clearing-main-prev, + .clearing-main-next { + position: absolute; + height: 100%; + width: 40px; + top: 0; } + .clearing-main-prev > span, + .clearing-main-next > span { + position: absolute; + top: 50%; + display: block; + width: 0; + height: 0; + border: solid 12px; } + .clearing-main-prev > span:hover, + .clearing-main-next > span:hover { + opacity: 0.8; } + + .clearing-main-prev { + left: 0; } + .clearing-main-prev > span { + left: 5px; + border-color: transparent; + border-right-color: #cccccc; } + + .clearing-main-next { + right: 0; } + .clearing-main-next > span { + border-color: transparent; + border-left-color: #cccccc; } + + .clearing-main-prev.disabled, + .clearing-main-next.disabled { + opacity: 0.3; } + + .clearing-assembled .clearing-container .carousel { + background: rgba(51, 51, 51, 0.8); + height: 120px; + margin-top: 10px; + text-align: center; } + .clearing-assembled .clearing-container .carousel > ul { + display: inline-block; + z-index: 999; + height: 100%; + position: relative; + float: none; } + .clearing-assembled .clearing-container .carousel > ul li { + display: block; + width: 120px; + min-height: inherit; + float: left; + overflow: hidden; + margin-right: 0; + padding: 0; + position: relative; + cursor: pointer; + opacity: 0.4; + clear: none; } + .clearing-assembled .clearing-container .carousel > ul li.fix-height img { + height: 100%; + max-width: none; } + .clearing-assembled .clearing-container .carousel > ul li a.th { + border: none; + box-shadow: none; + display: block; } + .clearing-assembled .clearing-container .carousel > ul li img { + cursor: pointer !important; + width: 100% !important; } + .clearing-assembled .clearing-container .carousel > ul li.visible { + opacity: 1; } + .clearing-assembled .clearing-container .carousel > ul li:hover { + opacity: 0.8; } + .clearing-assembled .clearing-container .visible-img { + background: #333333; + overflow: hidden; + height: 85%; } + + .clearing-close { + position: absolute; + top: 10px; + right: 20px; + padding-left: 0; + padding-top: 0; } } +/* Progress Bar */ +.progress { + background-color: #f6f6f6; + height: 1.5625rem; + border: 1px solid white; + padding: 0.125rem; + margin-bottom: 0.625rem; } + .progress .meter { + background: #008cba; + height: 100%; + display: block; } + .progress.secondary .meter { + background: #e7e7e7; + height: 100%; + display: block; } + .progress.success .meter { + background: #43ac6a; + height: 100%; + display: block; } + .progress.alert .meter { + background: #f04124; + height: 100%; + display: block; } + .progress.radius { + border-radius: 3px; } + .progress.radius .meter { + border-radius: 2px; } + .progress.round { + border-radius: 1000px; } + .progress.round .meter { + border-radius: 999px; } + +.sub-nav { + display: block; + width: auto; + overflow: hidden; + margin-bottom: -0.25rem 0 1.125rem; + padding-top: 0.25rem; } + .sub-nav dt { + text-transform: uppercase; } + .sub-nav dt, + .sub-nav dd, + .sub-nav li { + float: left; + display: inline; + margin-left: 1rem; + margin-bottom: 0; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + font-weight: normal; + font-size: 0.875rem; + color: #999999; } + .sub-nav dt a, + .sub-nav dd a, + .sub-nav li a { + text-decoration: none; + color: #999999; + padding: 0.1875rem 1rem; } + .sub-nav dt a:hover, + .sub-nav dd a:hover, + .sub-nav li a:hover { + color: #737373; } + .sub-nav dt.active a, + .sub-nav dd.active a, + .sub-nav li.active a { + border-radius: 3px; + font-weight: normal; + background: #008cba; + padding: 0.1875rem 1rem; + cursor: default; + color: white; } + .sub-nav dt.active a:hover, + .sub-nav dd.active a:hover, + .sub-nav li.active a:hover { + background: #0078a0; } + +/* Foundation Joyride */ +.joyride-list { + display: none; } + +/* Default styles for the container */ +.joyride-tip-guide { + display: none; + position: absolute; + background: #333333; + color: white; + z-index: 101; + top: 0; + left: 2.5%; + font-family: inherit; + font-weight: normal; + width: 95%; } + +.lt-ie9 .joyride-tip-guide { + max-width: 800px; + left: 50%; + margin-left: -400px; } + +.joyride-content-wrapper { + width: 100%; + padding: 1.125rem 1.25rem 1.5rem; } + .joyride-content-wrapper .button { + margin-bottom: 0 !important; } + .joyride-content-wrapper .joyride-prev-tip { + margin-right: 10px; } + +/* Add a little css triangle pip, older browser just miss out on the fanciness of it */ +.joyride-tip-guide .joyride-nub { + display: block; + position: absolute; + left: 22px; + width: 0; + height: 0; + border: 10px solid #333333; } + .joyride-tip-guide .joyride-nub.top { + border-top-style: solid; + border-color: #333333; + border-top-color: transparent !important; + border-left-color: transparent !important; + border-right-color: transparent !important; + top: -20px; } + .joyride-tip-guide .joyride-nub.bottom { + border-bottom-style: solid; + border-color: #333333 !important; + border-bottom-color: transparent !important; + border-left-color: transparent !important; + border-right-color: transparent !important; + bottom: -20px; } + .joyride-tip-guide .joyride-nub.right { + right: -20px; } + .joyride-tip-guide .joyride-nub.left { + left: -20px; } + +/* Typography */ +.joyride-tip-guide h1, +.joyride-tip-guide h2, +.joyride-tip-guide h3, +.joyride-tip-guide h4, +.joyride-tip-guide h5, +.joyride-tip-guide h6 { + line-height: 1.25; + margin: 0; + font-weight: bold; + color: white; } + +.joyride-tip-guide p { + margin: 0 0 1.125rem 0; + font-size: 0.875rem; + line-height: 1.3; } + +.joyride-timer-indicator-wrap { + width: 50px; + height: 3px; + border: solid 1px #555555; + position: absolute; + right: 1.0625rem; + bottom: 1rem; } + +.joyride-timer-indicator { + display: block; + width: 0; + height: inherit; + background: #666666; } + +.joyride-close-tip { + position: absolute; + right: 12px; + top: 10px; + color: #777777 !important; + text-decoration: none; + font-size: 24px; + font-weight: normal; + line-height: .5 !important; } + .joyride-close-tip:hover, .joyride-close-tip:focus { + color: #eeeeee !important; } + +.joyride-modal-bg { + position: fixed; + height: 100%; + width: 100%; + background: transparent; + background: rgba(0, 0, 0, 0.5); + z-index: 100; + display: none; + top: 0; + left: 0; + cursor: pointer; } + +.joyride-expose-wrapper { + background-color: white; + position: absolute; + border-radius: 3px; + z-index: 102; + box-shadow: 0 0 15px white; } + +.joyride-expose-cover { + background: transparent; + border-radius: 3px; + position: absolute; + z-index: 9999; + top: 0; + left: 0; } + +/* Styles for screens that are at least 768px; */ +@media only screen and (min-width: 40.063em) { + .joyride-tip-guide { + width: 300px; + left: inherit; } + .joyride-tip-guide .joyride-nub.bottom { + border-color: #333333 !important; + border-bottom-color: transparent !important; + border-left-color: transparent !important; + border-right-color: transparent !important; + bottom: -20px; } + .joyride-tip-guide .joyride-nub.right { + border-color: #333333 !important; + border-top-color: transparent !important; + border-right-color: transparent !important; + border-bottom-color: transparent !important; + top: 22px; + left: auto; + right: -20px; } + .joyride-tip-guide .joyride-nub.left { + border-color: #333333 !important; + border-top-color: transparent !important; + border-left-color: transparent !important; + border-bottom-color: transparent !important; + top: 22px; + left: -20px; + right: auto; } } +.label { + font-weight: normal; + font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; + text-align: center; + text-decoration: none; + line-height: 1; + white-space: nowrap; + display: inline-block; + position: relative; + margin-bottom: inherit; + padding: 0.25rem 0.5rem 0.25rem; + font-size: 0.6875rem; + background-color: #008cba; + color: white; } + .label.radius { + border-radius: 3px; } + .label.round { + border-radius: 1000px; } + .label.alert { + background-color: #f04124; + color: white; } + .label.warning { + background-color: #f08a24; + color: white; } + .label.success { + background-color: #43ac6a; + color: white; } + .label.secondary { + background-color: #e7e7e7; + color: #333333; } + .label.info { + background-color: #a0d3e8; + color: #333333; } + +.off-canvas-wrap { + -webkit-backface-visibility: hidden; + position: relative; + width: 100%; + overflow: hidden; } + .off-canvas-wrap.move-right, .off-canvas-wrap.move-left { + min-height: 100%; + -webkit-overflow-scrolling: touch; } + +.inner-wrap { + -webkit-backface-visibility: hidden; + position: relative; + width: 100%; + -webkit-transition: -webkit-transform 500ms ease; + -moz-transition: -moz-transform 500ms ease; + -ms-transition: -ms-transform 500ms ease; + -o-transition: -o-transform 500ms ease; + transition: transform 500ms ease; } + .inner-wrap:before, .inner-wrap:after { + content: " "; + display: table; } + .inner-wrap:after { + clear: both; } + +.tab-bar { + -webkit-backface-visibility: hidden; + background: #333333; + color: white; + height: 2.8125rem; + line-height: 2.8125rem; + position: relative; } + .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4, .tab-bar h5, .tab-bar h6 { + color: white; + font-weight: bold; + line-height: 2.8125rem; + margin: 0; } + .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4 { + font-size: 1.125rem; } + +.left-small { + width: 2.8125rem; + height: 2.8125rem; + position: absolute; + top: 0; + border-right: solid 1px #1a1a1a; + left: 0; } + +.right-small { + width: 2.8125rem; + height: 2.8125rem; + position: absolute; + top: 0; + border-left: solid 1px #1a1a1a; + right: 0; } + +.tab-bar-section { + padding: 0 0.625rem; + position: absolute; + text-align: center; + height: 2.8125rem; + top: 0; } + @media only screen and (min-width: 40.063em) { + .tab-bar-section.left, .tab-bar-section.right { + text-align: left; } } + .tab-bar-section.left { + left: 0; + right: 2.8125rem; } + .tab-bar-section.right { + left: 2.8125rem; + right: 0; } + .tab-bar-section.middle { + left: 2.8125rem; + right: 2.8125rem; } + +.tab-bar .menu-icon { + text-indent: 2.1875rem; + width: 2.8125rem; + height: 2.8125rem; + display: block; + padding: 0; + color: white; + position: relative; + transform: translate3d(0, 0, 0); } + .tab-bar .menu-icon span::after { + content: ""; + position: absolute; + display: block; + height: 0; + top: 50%; + margin-top: -0.5rem; + left: 0.90625rem; + box-shadow: 0 0px 0 1px white, 0 7px 0 1px white, 0 14px 0 1px white; + width: 1rem; } + .tab-bar .menu-icon span:hover:after { + box-shadow: 0 0px 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3; } + +.left-off-canvas-menu { + -webkit-backface-visibility: hidden; + width: 15.625rem; + top: 0; + bottom: 0; + position: absolute; + overflow-x: hidden; + overflow-y: auto; + background: #333333; + z-index: 1001; + box-sizing: content-box; + transition: transform 500ms ease 0s; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + -ms-transform: translate(-100.5%, 0); + -webkit-transform: translate3d(-100.5%, 0, 0); + -moz-transform: translate3d(-100.5%, 0, 0); + -ms-transform: translate3d(-100.5%, 0, 0); + -o-transform: translate3d(-100.5%, 0, 0); + transform: translate3d(-100.5%, 0, 0); + left: 0; } + .left-off-canvas-menu * { + -webkit-backface-visibility: hidden; } + +.right-off-canvas-menu { + -webkit-backface-visibility: hidden; + width: 15.625rem; + top: 0; + bottom: 0; + position: absolute; + overflow-x: hidden; + overflow-y: auto; + background: #333333; + z-index: 1001; + box-sizing: content-box; + transition: transform 500ms ease 0s; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + -ms-transform: translate(100.5%, 0); + -webkit-transform: translate3d(100.5%, 0, 0); + -moz-transform: translate3d(100.5%, 0, 0); + -ms-transform: translate3d(100.5%, 0, 0); + -o-transform: translate3d(100.5%, 0, 0); + transform: translate3d(100.5%, 0, 0); + right: 0; } + .right-off-canvas-menu * { + -webkit-backface-visibility: hidden; } + +ul.off-canvas-list { + list-style-type: none; + padding: 0; + margin: 0; } + ul.off-canvas-list li label { + display: block; + padding: 0.3rem 0.9375rem; + color: #999999; + text-transform: uppercase; + font-size: 0.75rem; + font-weight: bold; + background: #444444; + border-top: 1px solid #5e5e5e; + border-bottom: none; + margin: 0; } + ul.off-canvas-list li a { + display: block; + padding: 0.66667rem; + color: rgba(255, 255, 255, 0.7); + border-bottom: 1px solid #262626; + transition: background 300ms ease; } + ul.off-canvas-list li a:hover { + background: #242424; } + +.move-right > .inner-wrap { + -ms-transform: translate(15.625rem, 0); + -webkit-transform: translate3d(15.625rem, 0, 0); + -moz-transform: translate3d(15.625rem, 0, 0); + -ms-transform: translate3d(15.625rem, 0, 0); + -o-transform: translate3d(15.625rem, 0, 0); + transform: translate3d(15.625rem, 0, 0); } +.move-right .exit-off-canvas { + -webkit-backface-visibility: hidden; + transition: background 300ms ease; + cursor: pointer; + box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5); + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + top: 0; + bottom: 0; + left: 0; + right: 0; + z-index: 1002; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } + @media only screen and (min-width: 40.063em) { + .move-right .exit-off-canvas:hover { + background: rgba(255, 255, 255, 0.05); } } + +.move-left > .inner-wrap { + -ms-transform: translate(-15.625rem, 0); + -webkit-transform: translate3d(-15.625rem, 0, 0); + -moz-transform: translate3d(-15.625rem, 0, 0); + -ms-transform: translate3d(-15.625rem, 0, 0); + -o-transform: translate3d(-15.625rem, 0, 0); + transform: translate3d(-15.625rem, 0, 0); } +.move-left .exit-off-canvas { + -webkit-backface-visibility: hidden; + transition: background 300ms ease; + cursor: pointer; + box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5); + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + top: 0; + bottom: 0; + left: 0; + right: 0; + z-index: 1002; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } + @media only screen and (min-width: 40.063em) { + .move-left .exit-off-canvas:hover { + background: rgba(255, 255, 255, 0.05); } } + +.offcanvas-overlap .left-off-canvas-menu, .offcanvas-overlap .right-off-canvas-menu { + -ms-transform: none; + -webkit-transform: none; + -moz-transform: none; + -o-transform: none; + transform: none; + z-index: 1003; } +.offcanvas-overlap .exit-off-canvas { + -webkit-backface-visibility: hidden; + transition: background 300ms ease; + cursor: pointer; + box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5); + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + top: 0; + bottom: 0; + left: 0; + right: 0; + z-index: 1002; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } + @media only screen and (min-width: 40.063em) { + .offcanvas-overlap .exit-off-canvas:hover { + background: rgba(255, 255, 255, 0.05); } } + +.offcanvas-overlap-left .right-off-canvas-menu { + -ms-transform: none; + -webkit-transform: none; + -moz-transform: none; + -o-transform: none; + transform: none; + z-index: 1003; } +.offcanvas-overlap-left .exit-off-canvas { + -webkit-backface-visibility: hidden; + transition: background 300ms ease; + cursor: pointer; + box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5); + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + top: 0; + bottom: 0; + left: 0; + right: 0; + z-index: 1002; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } + @media only screen and (min-width: 40.063em) { + .offcanvas-overlap-left .exit-off-canvas:hover { + background: rgba(255, 255, 255, 0.05); } } + +.offcanvas-overlap-right .left-off-canvas-menu { + -ms-transform: none; + -webkit-transform: none; + -moz-transform: none; + -o-transform: none; + transform: none; + z-index: 1003; } +.offcanvas-overlap-right .exit-off-canvas { + -webkit-backface-visibility: hidden; + transition: background 300ms ease; + cursor: pointer; + box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5); + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + top: 0; + bottom: 0; + left: 0; + right: 0; + z-index: 1002; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } + @media only screen and (min-width: 40.063em) { + .offcanvas-overlap-right .exit-off-canvas:hover { + background: rgba(255, 255, 255, 0.05); } } + +.no-csstransforms .left-off-canvas-menu { + left: -15.625rem; } +.no-csstransforms .right-off-canvas-menu { + right: -15.625rem; } +.no-csstransforms .move-left > .inner-wrap { + right: 15.625rem; } +.no-csstransforms .move-right > .inner-wrap { + left: 15.625rem; } + +.left-submenu { + -webkit-backface-visibility: hidden; + width: 15.625rem; + top: 0; + bottom: 0; + position: absolute; + margin: 0; + overflow-x: hidden; + overflow-y: auto; + background: #333333; + z-index: 1002; + box-sizing: content-box; + -webkit-overflow-scrolling: touch; + -ms-transform: translate(-100%, 0); + -webkit-transform: translate3d(-100%, 0, 0); + -moz-transform: translate3d(-100%, 0, 0); + -ms-transform: translate3d(-100%, 0, 0); + -o-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + left: 0; + -webkit-transition: -webkit-transform 500ms ease; + -moz-transition: -moz-transform 500ms ease; + -ms-transition: -ms-transform 500ms ease; + -o-transition: -o-transform 500ms ease; + transition: transform 500ms ease; } + .left-submenu * { + -webkit-backface-visibility: hidden; } + .left-submenu .back > a { + padding: 0.3rem 0.9375rem; + color: #999999; + text-transform: uppercase; + font-weight: bold; + background: #444444; + border-top: 1px solid #5e5e5e; + border-bottom: none; + margin: 0; } + .left-submenu .back > a:hover { + background: #303030; + border-top: 1px solid #5e5e5e; + border-bottom: none; } + .left-submenu .back > a:before { + content: "\AB"; + margin-right: 0.5rem; + display: inline; } + .left-submenu.move-right { + -ms-transform: translate(0%, 0); + -webkit-transform: translate3d(0%, 0, 0); + -moz-transform: translate3d(0%, 0, 0); + -ms-transform: translate3d(0%, 0, 0); + -o-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } + +.right-submenu { + -webkit-backface-visibility: hidden; + width: 15.625rem; + top: 0; + bottom: 0; + position: absolute; + margin: 0; + overflow-x: hidden; + overflow-y: auto; + background: #333333; + z-index: 1002; + box-sizing: content-box; + -webkit-overflow-scrolling: touch; + -ms-transform: translate(100%, 0); + -webkit-transform: translate3d(100%, 0, 0); + -moz-transform: translate3d(100%, 0, 0); + -ms-transform: translate3d(100%, 0, 0); + -o-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + right: 0; + -webkit-transition: -webkit-transform 500ms ease; + -moz-transition: -moz-transform 500ms ease; + -ms-transition: -ms-transform 500ms ease; + -o-transition: -o-transform 500ms ease; + transition: transform 500ms ease; } + .right-submenu * { + -webkit-backface-visibility: hidden; } + .right-submenu .back > a { + padding: 0.3rem 0.9375rem; + color: #999999; + text-transform: uppercase; + font-weight: bold; + background: #444444; + border-top: 1px solid #5e5e5e; + border-bottom: none; + margin: 0; } + .right-submenu .back > a:hover { + background: #303030; + border-top: 1px solid #5e5e5e; + border-bottom: none; } + .right-submenu .back > a:after { + content: "\BB"; + margin-left: 0.5rem; + display: inline; } + .right-submenu.move-left { + -ms-transform: translate(0%, 0); + -webkit-transform: translate3d(0%, 0, 0); + -moz-transform: translate3d(0%, 0, 0); + -ms-transform: translate3d(0%, 0, 0); + -o-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } + +.left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after { + content: "\BB"; + margin-left: 0.5rem; + display: inline; } + +.right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before { + content: "\AB"; + margin-right: 0.5rem; + display: inline; } + +/* Foundation Dropdowns */ +.f-dropdown { + position: absolute; + left: -9999px; + list-style: none; + margin-left: 0; + outline: none; + width: 100%; + max-height: none; + height: auto; + background: white; + border: solid 1px #cccccc; + font-size: 0.875rem; + z-index: 89; + margin-top: 2px; + max-width: 200px; } + .f-dropdown > *:first-child { + margin-top: 0; } + .f-dropdown > *:last-child { + margin-bottom: 0; } + .f-dropdown:before { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 6px; + border-color: transparent transparent white transparent; + border-bottom-style: solid; + position: absolute; + top: -12px; + left: 10px; + z-index: 89; } + .f-dropdown:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 7px; + border-color: transparent transparent #cccccc transparent; + border-bottom-style: solid; + position: absolute; + top: -14px; + left: 9px; + z-index: 88; } + .f-dropdown.right:before { + left: auto; + right: 10px; } + .f-dropdown.right:after { + left: auto; + right: 9px; } + .f-dropdown.drop-right { + position: absolute; + left: -9999px; + list-style: none; + margin-left: 0; + outline: none; + width: 100%; + max-height: none; + height: auto; + background: white; + border: solid 1px #cccccc; + font-size: 0.875rem; + z-index: 89; + margin-top: 0; + margin-left: 2px; + max-width: 200px; } + .f-dropdown.drop-right > *:first-child { + margin-top: 0; } + .f-dropdown.drop-right > *:last-child { + margin-bottom: 0; } + .f-dropdown.drop-right:before { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 6px; + border-color: transparent white transparent transparent; + border-right-style: solid; + position: absolute; + top: 10px; + left: -12px; + z-index: 89; } + .f-dropdown.drop-right:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 7px; + border-color: transparent #cccccc transparent transparent; + border-right-style: solid; + position: absolute; + top: 9px; + left: -14px; + z-index: 88; } + .f-dropdown.drop-left { + position: absolute; + left: -9999px; + list-style: none; + margin-left: 0; + outline: none; + width: 100%; + max-height: none; + height: auto; + background: white; + border: solid 1px #cccccc; + font-size: 0.875rem; + z-index: 89; + margin-top: 0; + margin-left: -2px; + max-width: 200px; } + .f-dropdown.drop-left > *:first-child { + margin-top: 0; } + .f-dropdown.drop-left > *:last-child { + margin-bottom: 0; } + .f-dropdown.drop-left:before { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 6px; + border-color: transparent transparent transparent white; + border-left-style: solid; + position: absolute; + top: 10px; + right: -12px; + left: auto; + z-index: 89; } + .f-dropdown.drop-left:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 7px; + border-color: transparent transparent transparent #cccccc; + border-left-style: solid; + position: absolute; + top: 9px; + right: -14px; + left: auto; + z-index: 88; } + .f-dropdown.drop-top { + position: absolute; + left: -9999px; + list-style: none; + margin-left: 0; + outline: none; + width: 100%; + max-height: none; + height: auto; + background: white; + border: solid 1px #cccccc; + font-size: 0.875rem; + z-index: 89; + margin-top: -2px; + margin-left: 0; + max-width: 200px; } + .f-dropdown.drop-top > *:first-child { + margin-top: 0; } + .f-dropdown.drop-top > *:last-child { + margin-bottom: 0; } + .f-dropdown.drop-top:before { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 6px; + border-color: white transparent transparent transparent; + border-top-style: solid; + position: absolute; + top: auto; + bottom: -12px; + left: 10px; + right: auto; + z-index: 89; } + .f-dropdown.drop-top:after { + content: ""; + display: block; + width: 0; + height: 0; + border: inset 7px; + border-color: #cccccc transparent transparent transparent; + border-top-style: solid; + position: absolute; + top: auto; + bottom: -14px; + left: 9px; + right: auto; + z-index: 88; } + .f-dropdown li { + font-size: 0.875rem; + cursor: pointer; + line-height: 1.125rem; + margin: 0; } + .f-dropdown li:hover, .f-dropdown li:focus { + background: #eeeeee; } + .f-dropdown li.radius { + border-radius: 3px; } + .f-dropdown li a { + display: block; + padding: 0.5rem; + color: #555555; } + .f-dropdown.content { + position: absolute; + left: -9999px; + list-style: none; + margin-left: 0; + outline: none; + padding: 1.25rem; + width: 100%; + height: auto; + max-height: none; + background: white; + border: solid 1px #cccccc; + font-size: 0.875rem; + z-index: 89; + max-width: 200px; } + .f-dropdown.content > *:first-child { + margin-top: 0; } + .f-dropdown.content > *:last-child { + margin-bottom: 0; } + .f-dropdown.tiny { + max-width: 200px; } + .f-dropdown.small { + max-width: 300px; } + .f-dropdown.medium { + max-width: 500px; } + .f-dropdown.large { + max-width: 800px; } + .f-dropdown.mega { + width: 100% !important; + max-width: 100% !important; } + .f-dropdown.mega.open { + left: 0 !important; } + +table { + background: white; + margin-bottom: 1.25rem; + border: solid 1px #dddddd; + table-layout: auto; } + table caption { + background: transparent; + color: #222222; + font-size: 1rem; + font-weight: bold; } + table thead { + background: whitesmoke; } + table thead tr th, + table thead tr td { + padding: 0.5rem 0.625rem 0.625rem; + font-size: 0.875rem; + font-weight: bold; + color: #222222; } + table tfoot { + background: whitesmoke; } + table tfoot tr th, + table tfoot tr td { + padding: 0.5rem 0.625rem 0.625rem; + font-size: 0.875rem; + font-weight: bold; + color: #222222; } + table tr th, + table tr td { + padding: 0.5625rem 0.625rem; + font-size: 0.875rem; + color: #222222; + text-align: left; } + table tr.even, table tr.alt, table tr:nth-of-type(even) { + background: #f9f9f9; } + table thead tr th, + table tfoot tr th, + table tfoot tr td, + table tbody tr th, + table tbody tr td, + table tr td { + display: table-cell; + line-height: 1.125rem; } + +.range-slider { + display: block; + position: relative; + width: 100%; + height: 1rem; + border: 1px solid #dddddd; + margin: 1.25rem 0; + -ms-touch-action: none; + touch-action: none; + background: #fafafa; } + .range-slider.vertical-range { + display: block; + position: relative; + width: 100%; + height: 1rem; + border: 1px solid #dddddd; + margin: 1.25rem 0; + -ms-touch-action: none; + touch-action: none; + display: inline-block; + width: 1rem; + height: 12.5rem; } + .range-slider.vertical-range .range-slider-handle { + margin-top: 0; + margin-left: -0.5rem; + position: absolute; + bottom: -10.5rem; } + .range-slider.vertical-range .range-slider-active-segment { + width: 0.875rem; + height: auto; + bottom: 0; } + .range-slider.radius { + background: #fafafa; + border-radius: 3px; } + .range-slider.radius .range-slider-handle { + background: #008cba; + border-radius: 3px; } + .range-slider.radius .range-slider-handle:hover { + background: #007ba4; } + .range-slider.round { + background: #fafafa; + border-radius: 1000px; } + .range-slider.round .range-slider-handle { + background: #008cba; + border-radius: 1000px; } + .range-slider.round .range-slider-handle:hover { + background: #007ba4; } + .range-slider.disabled, .range-slider[disabled] { + background: #fafafa; + cursor: default; + opacity: 0.7; } + .range-slider.disabled .range-slider-handle, .range-slider[disabled] .range-slider-handle { + background: #008cba; + cursor: default; + opacity: 0.7; } + .range-slider.disabled .range-slider-handle:hover, .range-slider[disabled] .range-slider-handle:hover { + background: #007ba4; } + +.range-slider-active-segment { + display: inline-block; + position: absolute; + height: 0.875rem; + background: #e5e5e5; } + +.range-slider-handle { + display: inline-block; + position: absolute; + z-index: 1; + top: -0.3125rem; + width: 2rem; + height: 1.375rem; + border: 1px solid none; + cursor: pointer; + -ms-touch-action: manipulation; + touch-action: manipulation; + background: #008cba; } + .range-slider-handle:hover { + background: #007ba4; } + +[class*="block-grid-"] { + display: block; + padding: 0; + margin: 0 -0.625rem; } + [class*="block-grid-"]:before, [class*="block-grid-"]:after { + content: " "; + display: table; } + [class*="block-grid-"]:after { + clear: both; } + [class*="block-grid-"] > li { + display: block; + height: auto; + float: left; + padding: 0 0.625rem 1.25rem; } + +@media only screen { + .small-block-grid-1 > li { + width: 100%; + list-style: none; } + .small-block-grid-1 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-1 > li:nth-of-type(1n+1) { + clear: both; } + + .small-block-grid-2 > li { + width: 50%; + list-style: none; } + .small-block-grid-2 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-2 > li:nth-of-type(2n+1) { + clear: both; } + + .small-block-grid-3 > li { + width: 33.33333%; + list-style: none; } + .small-block-grid-3 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-3 > li:nth-of-type(3n+1) { + clear: both; } + + .small-block-grid-4 > li { + width: 25%; + list-style: none; } + .small-block-grid-4 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-4 > li:nth-of-type(4n+1) { + clear: both; } + + .small-block-grid-5 > li { + width: 20%; + list-style: none; } + .small-block-grid-5 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-5 > li:nth-of-type(5n+1) { + clear: both; } + + .small-block-grid-6 > li { + width: 16.66667%; + list-style: none; } + .small-block-grid-6 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-6 > li:nth-of-type(6n+1) { + clear: both; } + + .small-block-grid-7 > li { + width: 14.28571%; + list-style: none; } + .small-block-grid-7 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-7 > li:nth-of-type(7n+1) { + clear: both; } + + .small-block-grid-8 > li { + width: 12.5%; + list-style: none; } + .small-block-grid-8 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-8 > li:nth-of-type(8n+1) { + clear: both; } + + .small-block-grid-9 > li { + width: 11.11111%; + list-style: none; } + .small-block-grid-9 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-9 > li:nth-of-type(9n+1) { + clear: both; } + + .small-block-grid-10 > li { + width: 10%; + list-style: none; } + .small-block-grid-10 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-10 > li:nth-of-type(10n+1) { + clear: both; } + + .small-block-grid-11 > li { + width: 9.09091%; + list-style: none; } + .small-block-grid-11 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-11 > li:nth-of-type(11n+1) { + clear: both; } + + .small-block-grid-12 > li { + width: 8.33333%; + list-style: none; } + .small-block-grid-12 > li:nth-of-type(1n) { + clear: none; } + .small-block-grid-12 > li:nth-of-type(12n+1) { + clear: both; } } +@media only screen and (min-width: 40.063em) { + .medium-block-grid-1 > li { + width: 100%; + list-style: none; } + .medium-block-grid-1 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-1 > li:nth-of-type(1n+1) { + clear: both; } + + .medium-block-grid-2 > li { + width: 50%; + list-style: none; } + .medium-block-grid-2 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-2 > li:nth-of-type(2n+1) { + clear: both; } + + .medium-block-grid-3 > li { + width: 33.33333%; + list-style: none; } + .medium-block-grid-3 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-3 > li:nth-of-type(3n+1) { + clear: both; } + + .medium-block-grid-4 > li { + width: 25%; + list-style: none; } + .medium-block-grid-4 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-4 > li:nth-of-type(4n+1) { + clear: both; } + + .medium-block-grid-5 > li { + width: 20%; + list-style: none; } + .medium-block-grid-5 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-5 > li:nth-of-type(5n+1) { + clear: both; } + + .medium-block-grid-6 > li { + width: 16.66667%; + list-style: none; } + .medium-block-grid-6 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-6 > li:nth-of-type(6n+1) { + clear: both; } + + .medium-block-grid-7 > li { + width: 14.28571%; + list-style: none; } + .medium-block-grid-7 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-7 > li:nth-of-type(7n+1) { + clear: both; } + + .medium-block-grid-8 > li { + width: 12.5%; + list-style: none; } + .medium-block-grid-8 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-8 > li:nth-of-type(8n+1) { + clear: both; } + + .medium-block-grid-9 > li { + width: 11.11111%; + list-style: none; } + .medium-block-grid-9 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-9 > li:nth-of-type(9n+1) { + clear: both; } + + .medium-block-grid-10 > li { + width: 10%; + list-style: none; } + .medium-block-grid-10 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-10 > li:nth-of-type(10n+1) { + clear: both; } + + .medium-block-grid-11 > li { + width: 9.09091%; + list-style: none; } + .medium-block-grid-11 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-11 > li:nth-of-type(11n+1) { + clear: both; } + + .medium-block-grid-12 > li { + width: 8.33333%; + list-style: none; } + .medium-block-grid-12 > li:nth-of-type(1n) { + clear: none; } + .medium-block-grid-12 > li:nth-of-type(12n+1) { + clear: both; } } +@media only screen and (min-width: 64.063em) { + .large-block-grid-1 > li { + width: 100%; + list-style: none; } + .large-block-grid-1 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-1 > li:nth-of-type(1n+1) { + clear: both; } + + .large-block-grid-2 > li { + width: 50%; + list-style: none; } + .large-block-grid-2 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-2 > li:nth-of-type(2n+1) { + clear: both; } + + .large-block-grid-3 > li { + width: 33.33333%; + list-style: none; } + .large-block-grid-3 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-3 > li:nth-of-type(3n+1) { + clear: both; } + + .large-block-grid-4 > li { + width: 25%; + list-style: none; } + .large-block-grid-4 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-4 > li:nth-of-type(4n+1) { + clear: both; } + + .large-block-grid-5 > li { + width: 20%; + list-style: none; } + .large-block-grid-5 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-5 > li:nth-of-type(5n+1) { + clear: both; } + + .large-block-grid-6 > li { + width: 16.66667%; + list-style: none; } + .large-block-grid-6 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-6 > li:nth-of-type(6n+1) { + clear: both; } + + .large-block-grid-7 > li { + width: 14.28571%; + list-style: none; } + .large-block-grid-7 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-7 > li:nth-of-type(7n+1) { + clear: both; } + + .large-block-grid-8 > li { + width: 12.5%; + list-style: none; } + .large-block-grid-8 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-8 > li:nth-of-type(8n+1) { + clear: both; } + + .large-block-grid-9 > li { + width: 11.11111%; + list-style: none; } + .large-block-grid-9 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-9 > li:nth-of-type(9n+1) { + clear: both; } + + .large-block-grid-10 > li { + width: 10%; + list-style: none; } + .large-block-grid-10 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-10 > li:nth-of-type(10n+1) { + clear: both; } + + .large-block-grid-11 > li { + width: 9.09091%; + list-style: none; } + .large-block-grid-11 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-11 > li:nth-of-type(11n+1) { + clear: both; } + + .large-block-grid-12 > li { + width: 8.33333%; + list-style: none; } + .large-block-grid-12 > li:nth-of-type(1n) { + clear: none; } + .large-block-grid-12 > li:nth-of-type(12n+1) { + clear: both; } } +.flex-video { + position: relative; + padding-top: 1.5625rem; + padding-bottom: 67.5%; + height: 0; + margin-bottom: 1rem; + overflow: hidden; } + .flex-video.widescreen { + padding-bottom: 56.34%; } + .flex-video.vimeo { + padding-top: 0; } + .flex-video iframe, + .flex-video object, + .flex-video embed, + .flex-video video { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; } + +.keystroke, +kbd { + background-color: #ededed; + border-color: #dddddd; + color: #222222; + border-style: solid; + border-width: 1px; + margin: 0; + font-family: "Consolas", "Menlo", "Courier", monospace; + font-size: inherit; + padding: 0.125rem 0.25rem 0; + border-radius: 3px; } + +.switch { + padding: 0; + border: none; + position: relative; + outline: 0; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; } + .switch label { + display: block; + margin-bottom: 1rem; + position: relative; + color: transparent; + background: #dddddd; + text-indent: 100%; + width: 4rem; + height: 2rem; + cursor: pointer; + transition: left 0.15s ease-out; } + .switch input { + opacity: 0; + position: absolute; + top: 9px; + left: 10px; + padding: 0; } + .switch input + label { + margin-left: 0; + margin-right: 0; } + .switch label:after { + content: ""; + display: block; + background: white; + position: absolute; + top: .25rem; + left: .25rem; + width: 1.5rem; + height: 1.5rem; + -webkit-transition: left 0.15s ease-out; + -moz-transition: left 0.15s ease-out; + transition: left 0.15s ease-out; + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + .switch input:checked + label { + background: #008cba; } + .switch input:checked + label:after { + left: 2.25rem; } + .switch label { + width: 4rem; + height: 2rem; } + .switch label:after { + width: 1.5rem; + height: 1.5rem; } + .switch input:checked + label:after { + left: 2.25rem; } + .switch label { + color: transparent; + background: #dddddd; } + .switch label:after { + background: white; } + .switch input:checked + label { + background: #008cba; } + .switch.large label { + width: 5rem; + height: 2.5rem; } + .switch.large label:after { + width: 2rem; + height: 2rem; } + .switch.large input:checked + label:after { + left: 2.75rem; } + .switch.small label { + width: 3.5rem; + height: 1.75rem; } + .switch.small label:after { + width: 1.25rem; + height: 1.25rem; } + .switch.small input:checked + label:after { + left: 2rem; } + .switch.tiny label { + width: 3rem; + height: 1.5rem; } + .switch.tiny label:after { + width: 1rem; + height: 1rem; } + .switch.tiny input:checked + label:after { + left: 1.75rem; } + .switch.radius label { + border-radius: 4px; } + .switch.radius label:after { + border-radius: 3px; } + .switch.round { + border-radius: 1000px; } + .switch.round label { + border-radius: 2rem; } + .switch.round label:after { + border-radius: 2rem; } + +/* small displays */ +@media only screen { + .show-for-small-only, .show-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xxlarge-only, .hide-for-xxlarge-up { + display: inherit !important; } + + .hide-for-small-only, .hide-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xxlarge-only, .show-for-xxlarge-up { + display: none !important; } + + .visible-for-small-only, .visible-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .hidden-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up { + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; } + + .hidden-for-small-only, .hidden-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xxlarge-only, .visible-for-xxlarge-up { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + + table.show-for-small-only, table.show-for-small-up, table.show-for-small, table.show-for-small-down, table.hide-for-medium-only, table.hide-for-medium-up, table.hide-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up { + display: table !important; } + + thead.show-for-small-only, thead.show-for-small-up, thead.show-for-small, thead.show-for-small-down, thead.hide-for-medium-only, thead.hide-for-medium-up, thead.hide-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up { + display: table-header-group !important; } + + tbody.show-for-small-only, tbody.show-for-small-up, tbody.show-for-small, tbody.show-for-small-down, tbody.hide-for-medium-only, tbody.hide-for-medium-up, tbody.hide-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up { + display: table-row-group !important; } + + tr.show-for-small-only, tr.show-for-small-up, tr.show-for-small, tr.show-for-small-down, tr.hide-for-medium-only, tr.hide-for-medium-up, tr.hide-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up { + display: table-row !important; } + + th.show-for-small-only, td.show-for-small-only, th.show-for-small-up, td.show-for-small-up, th.show-for-small, td.show-for-small, th.show-for-small-down, td.show-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.hide-for-medium-up, td.hide-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up { + display: table-cell !important; } } +/* medium displays */ +@media only screen and (min-width: 40.063em) { + .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xxlarge-only, .hide-for-xxlarge-up { + display: inherit !important; } + + .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xxlarge-only, .show-for-xxlarge-up { + display: none !important; } + + .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up { + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; } + + .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xxlarge-only, .visible-for-xxlarge-up { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + + table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.show-for-medium-only, table.show-for-medium-up, table.show-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up { + display: table !important; } + + thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.show-for-medium-only, thead.show-for-medium-up, thead.show-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up { + display: table-header-group !important; } + + tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.show-for-medium-only, tbody.show-for-medium-up, tbody.show-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up { + display: table-row-group !important; } + + tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.show-for-medium-only, tr.show-for-medium-up, tr.show-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up { + display: table-row !important; } + + th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.show-for-medium-only, td.show-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.show-for-medium, td.show-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up { + display: table-cell !important; } } +/* large displays */ +@media only screen and (min-width: 64.063em) { + .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xxlarge-only, .hide-for-xxlarge-up { + display: inherit !important; } + + .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xxlarge-only, .show-for-xxlarge-up { + display: none !important; } + + .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up { + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; } + + .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xxlarge-only, .visible-for-xxlarge-up { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + + table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.show-for-large-only, table.show-for-large-up, table.show-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up { + display: table !important; } + + thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.show-for-large-only, thead.show-for-large-up, thead.show-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up { + display: table-header-group !important; } + + tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.show-for-large-only, tbody.show-for-large-up, tbody.show-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up { + display: table-row-group !important; } + + tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.show-for-large-only, tr.show-for-large-up, tr.show-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up { + display: table-row !important; } + + th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.show-for-large-only, td.show-for-large-only, th.show-for-large-up, td.show-for-large-up, th.show-for-large, td.show-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up { + display: table-cell !important; } } +/* xlarge displays */ +@media only screen and (min-width: 90.063em) { + .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .hide-for-xxlarge-only, .hide-for-xxlarge-up { + display: inherit !important; } + + .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .show-for-xxlarge-only, .show-for-xxlarge-up { + display: none !important; } + + .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up { + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; } + + .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .visible-for-xxlarge-only, .visible-for-xxlarge-up { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + + table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.show-for-xlarge-only, table.show-for-xlarge-up, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up { + display: table !important; } + + thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.show-for-xlarge-only, thead.show-for-xlarge-up, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up { + display: table-header-group !important; } + + tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.show-for-xlarge-only, tbody.show-for-xlarge-up, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up { + display: table-row-group !important; } + + tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.show-for-xlarge-only, tr.show-for-xlarge-up, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up { + display: table-row !important; } + + th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.show-for-xlarge-only, td.show-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up { + display: table-cell !important; } } +/* xxlarge displays */ +@media only screen and (min-width: 120.063em) { + .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .hide-for-xlarge-only, .show-for-xlarge-up, .show-for-xxlarge-only, .show-for-xxlarge-up { + display: inherit !important; } + + .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .show-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xxlarge-only, .hide-for-xxlarge-up { + display: none !important; } + + .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .hidden-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xxlarge-only, .visible-for-xxlarge-up { + position: static !important; + height: auto; + width: auto; + overflow: visible; + clip: auto; } + + .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .visible-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); } + + table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.hide-for-xlarge-only, table.show-for-xlarge-up, table.show-for-xxlarge-only, table.show-for-xxlarge-up { + display: table !important; } + + thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.hide-for-xlarge-only, thead.show-for-xlarge-up, thead.show-for-xxlarge-only, thead.show-for-xxlarge-up { + display: table-header-group !important; } + + tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.hide-for-xlarge-only, tbody.show-for-xlarge-up, tbody.show-for-xxlarge-only, tbody.show-for-xxlarge-up { + display: table-row-group !important; } + + tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.hide-for-xlarge-only, tr.show-for-xlarge-up, tr.show-for-xxlarge-only, tr.show-for-xxlarge-up { + display: table-row !important; } + + th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.show-for-xxlarge-only, td.show-for-xxlarge-only, th.show-for-xxlarge-up, td.show-for-xxlarge-up { + display: table-cell !important; } } +/* Orientation targeting */ +.show-for-landscape, +.hide-for-portrait { + display: inherit !important; } + +.hide-for-landscape, +.show-for-portrait { + display: none !important; } + +/* Specific visibility for tables */ +table.hide-for-landscape, table.show-for-portrait { + display: table !important; } + +thead.hide-for-landscape, thead.show-for-portrait { + display: table-header-group !important; } + +tbody.hide-for-landscape, tbody.show-for-portrait { + display: table-row-group !important; } + +tr.hide-for-landscape, tr.show-for-portrait { + display: table-row !important; } + +td.hide-for-landscape, td.show-for-portrait, +th.hide-for-landscape, +th.show-for-portrait { + display: table-cell !important; } + +@media only screen and (orientation: landscape) { + .show-for-landscape, + .hide-for-portrait { + display: inherit !important; } + + .hide-for-landscape, + .show-for-portrait { + display: none !important; } + + /* Specific visibility for tables */ + table.show-for-landscape, table.hide-for-portrait { + display: table !important; } + + thead.show-for-landscape, thead.hide-for-portrait { + display: table-header-group !important; } + + tbody.show-for-landscape, tbody.hide-for-portrait { + display: table-row-group !important; } + + tr.show-for-landscape, tr.hide-for-portrait { + display: table-row !important; } + + td.show-for-landscape, td.hide-for-portrait, + th.show-for-landscape, + th.hide-for-portrait { + display: table-cell !important; } } +@media only screen and (orientation: portrait) { + .show-for-portrait, + .hide-for-landscape { + display: inherit !important; } + + .hide-for-portrait, + .show-for-landscape { + display: none !important; } + + /* Specific visibility for tables */ + table.show-for-portrait, table.hide-for-landscape { + display: table !important; } + + thead.show-for-portrait, thead.hide-for-landscape { + display: table-header-group !important; } + + tbody.show-for-portrait, tbody.hide-for-landscape { + display: table-row-group !important; } + + tr.show-for-portrait, tr.hide-for-landscape { + display: table-row !important; } + + td.show-for-portrait, td.hide-for-landscape, + th.show-for-portrait, + th.hide-for-landscape { + display: table-cell !important; } } +/* Touch-enabled device targeting */ +.show-for-touch { + display: none !important; } + +.hide-for-touch { + display: inherit !important; } + +.touch .show-for-touch { + display: inherit !important; } + +.touch .hide-for-touch { + display: none !important; } + +/* Specific visibility for tables */ +table.hide-for-touch { + display: table !important; } + +.touch table.show-for-touch { + display: table !important; } + +thead.hide-for-touch { + display: table-header-group !important; } + +.touch thead.show-for-touch { + display: table-header-group !important; } + +tbody.hide-for-touch { + display: table-row-group !important; } + +.touch tbody.show-for-touch { + display: table-row-group !important; } + +tr.hide-for-touch { + display: table-row !important; } + +.touch tr.show-for-touch { + display: table-row !important; } + +td.hide-for-touch { + display: table-cell !important; } + +.touch td.show-for-touch { + display: table-cell !important; } + +th.hide-for-touch { + display: table-cell !important; } + +.touch th.show-for-touch { + display: table-cell !important; } + +/* Print visibility */ +@media print { + .show-for-print { + display: block; } + + .hide-for-print { + display: none; } + + table.show-for-print { + display: table !important; } + + thead.show-for-print { + display: table-header-group !important; } + + tbody.show-for-print { + display: table-row-group !important; } + + tr.show-for-print { + display: table-row !important; } + + td.show-for-print { + display: table-cell !important; } + + th.show-for-print { + display: table-cell !important; } } diff --git a/resources/foundation/css/foundation.min.css b/resources/foundation/css/foundation.min.css new file mode 100644 index 0000000..a9e0be2 --- /dev/null +++ b/resources/foundation/css/foundation.min.css @@ -0,0 +1 @@ +meta.foundation-version{font-family:"/5.4.7/"}meta.foundation-mq-small{font-family:"/only screen/";width:0em}meta.foundation-mq-medium{font-family:"/only screen and (min-width:40.063em)/";width:40.063em}meta.foundation-mq-large{font-family:"/only screen and (min-width:64.063em)/";width:64.063em}meta.foundation-mq-xlarge{font-family:"/only screen and (min-width:90.063em)/";width:90.063em}meta.foundation-mq-xxlarge{font-family:"/only screen and (min-width:120.063em)/";width:120.063em}meta.foundation-data-attribute-namespace{font-family:false}html,body{height:100%}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body{font-size:100%}body{background:#fff;color:#222;padding:0;margin:0;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;font-style:normal;line-height:1.5;position:relative;cursor:auto}a:hover{cursor:pointer}img{max-width:100%;height:auto}img{-ms-interpolation-mode:bicubic}#map_canvas img,#map_canvas embed,#map_canvas object,.map_canvas img,.map_canvas embed,.map_canvas object{max-width:none !important}.left{float:left !important}.right{float:right !important}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.hide{display:none !important;visibility:hidden}.invisible{visibility:hidden}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px}select{width:100%}.row{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5rem}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.row.collapse>.column,.row.collapse>.columns{padding-left:0;padding-right:0}.row.collapse .row{margin-left:0;margin-right:0}.row .row{width:auto;margin-left:-0.9375rem;margin-right:-0.9375rem;margin-top:0;margin-bottom:0;max-width:none}.row .row:before,.row .row:after{content:" ";display:table}.row .row:after{clear:both}.row .row.collapse{width:auto;margin:0;max-width:none}.row .row.collapse:before,.row .row.collapse:after{content:" ";display:table}.row .row.collapse:after{clear:both}.column,.columns{padding-left:0.9375rem;padding-right:0.9375rem;width:100%;float:left}[class*="column"]+[class*="column"]:last-child{float:right}[class*="column"]+[class*="column"].end{float:left}@media only screen{.small-push-0{position:relative;left:0%;right:auto}.small-pull-0{position:relative;right:0%;left:auto}.small-push-1{position:relative;left:8.33333%;right:auto}.small-pull-1{position:relative;right:8.33333%;left:auto}.small-push-2{position:relative;left:16.66667%;right:auto}.small-pull-2{position:relative;right:16.66667%;left:auto}.small-push-3{position:relative;left:25%;right:auto}.small-pull-3{position:relative;right:25%;left:auto}.small-push-4{position:relative;left:33.33333%;right:auto}.small-pull-4{position:relative;right:33.33333%;left:auto}.small-push-5{position:relative;left:41.66667%;right:auto}.small-pull-5{position:relative;right:41.66667%;left:auto}.small-push-6{position:relative;left:50%;right:auto}.small-pull-6{position:relative;right:50%;left:auto}.small-push-7{position:relative;left:58.33333%;right:auto}.small-pull-7{position:relative;right:58.33333%;left:auto}.small-push-8{position:relative;left:66.66667%;right:auto}.small-pull-8{position:relative;right:66.66667%;left:auto}.small-push-9{position:relative;left:75%;right:auto}.small-pull-9{position:relative;right:75%;left:auto}.small-push-10{position:relative;left:83.33333%;right:auto}.small-pull-10{position:relative;right:83.33333%;left:auto}.small-push-11{position:relative;left:91.66667%;right:auto}.small-pull-11{position:relative;right:91.66667%;left:auto}.column,.columns{position:relative;padding-left:0.9375rem;padding-right:0.9375rem;float:left}.small-1{width:8.33333%}.small-2{width:16.66667%}.small-3{width:25%}.small-4{width:33.33333%}.small-5{width:41.66667%}.small-6{width:50%}.small-7{width:58.33333%}.small-8{width:66.66667%}.small-9{width:75%}.small-10{width:83.33333%}.small-11{width:91.66667%}.small-12{width:100%}.small-offset-0{margin-left:0% !important}.small-offset-1{margin-left:8.33333% !important}.small-offset-2{margin-left:16.66667% !important}.small-offset-3{margin-left:25% !important}.small-offset-4{margin-left:33.33333% !important}.small-offset-5{margin-left:41.66667% !important}.small-offset-6{margin-left:50% !important}.small-offset-7{margin-left:58.33333% !important}.small-offset-8{margin-left:66.66667% !important}.small-offset-9{margin-left:75% !important}.small-offset-10{margin-left:83.33333% !important}.small-offset-11{margin-left:91.66667% !important}.small-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}.column.small-centered,.columns.small-centered{margin-left:auto;margin-right:auto;float:none}.column.small-uncentered,.columns.small-uncentered{margin-left:0;margin-right:0;float:left}.column.small-centered:last-child,.columns.small-centered:last-child{float:none}.column.small-uncentered:last-child,.columns.small-uncentered:last-child{float:left}.column.small-uncentered.opposite,.columns.small-uncentered.opposite{float:right}}@media only screen and (min-width: 40.063em){.medium-push-0{position:relative;left:0%;right:auto}.medium-pull-0{position:relative;right:0%;left:auto}.medium-push-1{position:relative;left:8.33333%;right:auto}.medium-pull-1{position:relative;right:8.33333%;left:auto}.medium-push-2{position:relative;left:16.66667%;right:auto}.medium-pull-2{position:relative;right:16.66667%;left:auto}.medium-push-3{position:relative;left:25%;right:auto}.medium-pull-3{position:relative;right:25%;left:auto}.medium-push-4{position:relative;left:33.33333%;right:auto}.medium-pull-4{position:relative;right:33.33333%;left:auto}.medium-push-5{position:relative;left:41.66667%;right:auto}.medium-pull-5{position:relative;right:41.66667%;left:auto}.medium-push-6{position:relative;left:50%;right:auto}.medium-pull-6{position:relative;right:50%;left:auto}.medium-push-7{position:relative;left:58.33333%;right:auto}.medium-pull-7{position:relative;right:58.33333%;left:auto}.medium-push-8{position:relative;left:66.66667%;right:auto}.medium-pull-8{position:relative;right:66.66667%;left:auto}.medium-push-9{position:relative;left:75%;right:auto}.medium-pull-9{position:relative;right:75%;left:auto}.medium-push-10{position:relative;left:83.33333%;right:auto}.medium-pull-10{position:relative;right:83.33333%;left:auto}.medium-push-11{position:relative;left:91.66667%;right:auto}.medium-pull-11{position:relative;right:91.66667%;left:auto}.column,.columns{position:relative;padding-left:0.9375rem;padding-right:0.9375rem;float:left}.medium-1{width:8.33333%}.medium-2{width:16.66667%}.medium-3{width:25%}.medium-4{width:33.33333%}.medium-5{width:41.66667%}.medium-6{width:50%}.medium-7{width:58.33333%}.medium-8{width:66.66667%}.medium-9{width:75%}.medium-10{width:83.33333%}.medium-11{width:91.66667%}.medium-12{width:100%}.medium-offset-0{margin-left:0% !important}.medium-offset-1{margin-left:8.33333% !important}.medium-offset-2{margin-left:16.66667% !important}.medium-offset-3{margin-left:25% !important}.medium-offset-4{margin-left:33.33333% !important}.medium-offset-5{margin-left:41.66667% !important}.medium-offset-6{margin-left:50% !important}.medium-offset-7{margin-left:58.33333% !important}.medium-offset-8{margin-left:66.66667% !important}.medium-offset-9{margin-left:75% !important}.medium-offset-10{margin-left:83.33333% !important}.medium-offset-11{margin-left:91.66667% !important}.medium-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}.column.medium-centered,.columns.medium-centered{margin-left:auto;margin-right:auto;float:none}.column.medium-uncentered,.columns.medium-uncentered{margin-left:0;margin-right:0;float:left}.column.medium-centered:last-child,.columns.medium-centered:last-child{float:none}.column.medium-uncentered:last-child,.columns.medium-uncentered:last-child{float:left}.column.medium-uncentered.opposite,.columns.medium-uncentered.opposite{float:right}.push-0{position:relative;left:0%;right:auto}.pull-0{position:relative;right:0%;left:auto}.push-1{position:relative;left:8.33333%;right:auto}.pull-1{position:relative;right:8.33333%;left:auto}.push-2{position:relative;left:16.66667%;right:auto}.pull-2{position:relative;right:16.66667%;left:auto}.push-3{position:relative;left:25%;right:auto}.pull-3{position:relative;right:25%;left:auto}.push-4{position:relative;left:33.33333%;right:auto}.pull-4{position:relative;right:33.33333%;left:auto}.push-5{position:relative;left:41.66667%;right:auto}.pull-5{position:relative;right:41.66667%;left:auto}.push-6{position:relative;left:50%;right:auto}.pull-6{position:relative;right:50%;left:auto}.push-7{position:relative;left:58.33333%;right:auto}.pull-7{position:relative;right:58.33333%;left:auto}.push-8{position:relative;left:66.66667%;right:auto}.pull-8{position:relative;right:66.66667%;left:auto}.push-9{position:relative;left:75%;right:auto}.pull-9{position:relative;right:75%;left:auto}.push-10{position:relative;left:83.33333%;right:auto}.pull-10{position:relative;right:83.33333%;left:auto}.push-11{position:relative;left:91.66667%;right:auto}.pull-11{position:relative;right:91.66667%;left:auto}}@media only screen and (min-width: 64.063em){.large-push-0{position:relative;left:0%;right:auto}.large-pull-0{position:relative;right:0%;left:auto}.large-push-1{position:relative;left:8.33333%;right:auto}.large-pull-1{position:relative;right:8.33333%;left:auto}.large-push-2{position:relative;left:16.66667%;right:auto}.large-pull-2{position:relative;right:16.66667%;left:auto}.large-push-3{position:relative;left:25%;right:auto}.large-pull-3{position:relative;right:25%;left:auto}.large-push-4{position:relative;left:33.33333%;right:auto}.large-pull-4{position:relative;right:33.33333%;left:auto}.large-push-5{position:relative;left:41.66667%;right:auto}.large-pull-5{position:relative;right:41.66667%;left:auto}.large-push-6{position:relative;left:50%;right:auto}.large-pull-6{position:relative;right:50%;left:auto}.large-push-7{position:relative;left:58.33333%;right:auto}.large-pull-7{position:relative;right:58.33333%;left:auto}.large-push-8{position:relative;left:66.66667%;right:auto}.large-pull-8{position:relative;right:66.66667%;left:auto}.large-push-9{position:relative;left:75%;right:auto}.large-pull-9{position:relative;right:75%;left:auto}.large-push-10{position:relative;left:83.33333%;right:auto}.large-pull-10{position:relative;right:83.33333%;left:auto}.large-push-11{position:relative;left:91.66667%;right:auto}.large-pull-11{position:relative;right:91.66667%;left:auto}.column,.columns{position:relative;padding-left:0.9375rem;padding-right:0.9375rem;float:left}.large-1{width:8.33333%}.large-2{width:16.66667%}.large-3{width:25%}.large-4{width:33.33333%}.large-5{width:41.66667%}.large-6{width:50%}.large-7{width:58.33333%}.large-8{width:66.66667%}.large-9{width:75%}.large-10{width:83.33333%}.large-11{width:91.66667%}.large-12{width:100%}.large-offset-0{margin-left:0% !important}.large-offset-1{margin-left:8.33333% !important}.large-offset-2{margin-left:16.66667% !important}.large-offset-3{margin-left:25% !important}.large-offset-4{margin-left:33.33333% !important}.large-offset-5{margin-left:41.66667% !important}.large-offset-6{margin-left:50% !important}.large-offset-7{margin-left:58.33333% !important}.large-offset-8{margin-left:66.66667% !important}.large-offset-9{margin-left:75% !important}.large-offset-10{margin-left:83.33333% !important}.large-offset-11{margin-left:91.66667% !important}.large-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}.column.large-centered,.columns.large-centered{margin-left:auto;margin-right:auto;float:none}.column.large-uncentered,.columns.large-uncentered{margin-left:0;margin-right:0;float:left}.column.large-centered:last-child,.columns.large-centered:last-child{float:none}.column.large-uncentered:last-child,.columns.large-uncentered:last-child{float:left}.column.large-uncentered.opposite,.columns.large-uncentered.opposite{float:right}.push-0{position:relative;left:0%;right:auto}.pull-0{position:relative;right:0%;left:auto}.push-1{position:relative;left:8.33333%;right:auto}.pull-1{position:relative;right:8.33333%;left:auto}.push-2{position:relative;left:16.66667%;right:auto}.pull-2{position:relative;right:16.66667%;left:auto}.push-3{position:relative;left:25%;right:auto}.pull-3{position:relative;right:25%;left:auto}.push-4{position:relative;left:33.33333%;right:auto}.pull-4{position:relative;right:33.33333%;left:auto}.push-5{position:relative;left:41.66667%;right:auto}.pull-5{position:relative;right:41.66667%;left:auto}.push-6{position:relative;left:50%;right:auto}.pull-6{position:relative;right:50%;left:auto}.push-7{position:relative;left:58.33333%;right:auto}.pull-7{position:relative;right:58.33333%;left:auto}.push-8{position:relative;left:66.66667%;right:auto}.pull-8{position:relative;right:66.66667%;left:auto}.push-9{position:relative;left:75%;right:auto}.pull-9{position:relative;right:75%;left:auto}.push-10{position:relative;left:83.33333%;right:auto}.pull-10{position:relative;right:83.33333%;left:auto}.push-11{position:relative;left:91.66667%;right:auto}.pull-11{position:relative;right:91.66667%;left:auto}}button,.button{border-style:solid;border-width:0px;cursor:pointer;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;line-height:normal;margin:0 0 1.25rem;position:relative;text-decoration:none;text-align:center;-webkit-appearance:none;-webkit-border-radius:0;display:inline-block;padding-top:1rem;padding-right:2rem;padding-bottom:1.0625rem;padding-left:2rem;font-size:1rem;background-color:#008cba;border-color:#007095;color:#fff;transition:background-color 300ms ease-out}button:hover,button:focus,.button:hover,.button:focus{background-color:#007095}button:hover,button:focus,.button:hover,.button:focus{color:#fff}button.secondary,.button.secondary{background-color:#e7e7e7;border-color:#b9b9b9;color:#333}button.secondary:hover,button.secondary:focus,.button.secondary:hover,.button.secondary:focus{background-color:#b9b9b9}button.secondary:hover,button.secondary:focus,.button.secondary:hover,.button.secondary:focus{color:#333}button.success,.button.success{background-color:#43ac6a;border-color:#368a55;color:#fff}button.success:hover,button.success:focus,.button.success:hover,.button.success:focus{background-color:#368a55}button.success:hover,button.success:focus,.button.success:hover,.button.success:focus{color:#fff}button.alert,.button.alert{background-color:#f04124;border-color:#cf2a0e;color:#fff}button.alert:hover,button.alert:focus,.button.alert:hover,.button.alert:focus{background-color:#cf2a0e}button.alert:hover,button.alert:focus,.button.alert:hover,.button.alert:focus{color:#fff}button.warning,.button.warning{background-color:#f08a24;border-color:#cf6e0e;color:#fff}button.warning:hover,button.warning:focus,.button.warning:hover,.button.warning:focus{background-color:#cf6e0e}button.warning:hover,button.warning:focus,.button.warning:hover,.button.warning:focus{color:#fff}button.info,.button.info{background-color:#a0d3e8;border-color:#61b6d9;color:#333}button.info:hover,button.info:focus,.button.info:hover,.button.info:focus{background-color:#61b6d9}button.info:hover,button.info:focus,.button.info:hover,.button.info:focus{color:#fff}button.large,.button.large{padding-top:1.125rem;padding-right:2.25rem;padding-bottom:1.1875rem;padding-left:2.25rem;font-size:1.25rem}button.small,.button.small{padding-top:0.875rem;padding-right:1.75rem;padding-bottom:0.9375rem;padding-left:1.75rem;font-size:0.8125rem}button.tiny,.button.tiny{padding-top:0.625rem;padding-right:1.25rem;padding-bottom:0.6875rem;padding-left:1.25rem;font-size:0.6875rem}button.expand,.button.expand{padding-right:0;padding-left:0;width:100%}button.left-align,.button.left-align{text-align:left;text-indent:0.75rem}button.right-align,.button.right-align{text-align:right;padding-right:0.75rem}button.radius,.button.radius{border-radius:3px}button.round,.button.round{border-radius:1000px}button.disabled,button[disabled],.button.disabled,.button[disabled]{background-color:#008cba;border-color:#007095;color:#fff;cursor:default;opacity:0.7;box-shadow:none}button.disabled:hover,button.disabled:focus,button[disabled]:hover,button[disabled]:focus,.button.disabled:hover,.button.disabled:focus,.button[disabled]:hover,.button[disabled]:focus{background-color:#007095}button.disabled:hover,button.disabled:focus,button[disabled]:hover,button[disabled]:focus,.button.disabled:hover,.button.disabled:focus,.button[disabled]:hover,.button[disabled]:focus{color:#fff}button.disabled:hover,button.disabled:focus,button[disabled]:hover,button[disabled]:focus,.button.disabled:hover,.button.disabled:focus,.button[disabled]:hover,.button[disabled]:focus{background-color:#008cba}button.disabled.secondary,button[disabled].secondary,.button.disabled.secondary,.button[disabled].secondary{background-color:#e7e7e7;border-color:#b9b9b9;color:#333;cursor:default;opacity:0.7;box-shadow:none}button.disabled.secondary:hover,button.disabled.secondary:focus,button[disabled].secondary:hover,button[disabled].secondary:focus,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary:hover,.button[disabled].secondary:focus{background-color:#b9b9b9}button.disabled.secondary:hover,button.disabled.secondary:focus,button[disabled].secondary:hover,button[disabled].secondary:focus,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary:hover,.button[disabled].secondary:focus{color:#333}button.disabled.secondary:hover,button.disabled.secondary:focus,button[disabled].secondary:hover,button[disabled].secondary:focus,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary:hover,.button[disabled].secondary:focus{background-color:#e7e7e7}button.disabled.success,button[disabled].success,.button.disabled.success,.button[disabled].success{background-color:#43ac6a;border-color:#368a55;color:#fff;cursor:default;opacity:0.7;box-shadow:none}button.disabled.success:hover,button.disabled.success:focus,button[disabled].success:hover,button[disabled].success:focus,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success:hover,.button[disabled].success:focus{background-color:#368a55}button.disabled.success:hover,button.disabled.success:focus,button[disabled].success:hover,button[disabled].success:focus,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success:hover,.button[disabled].success:focus{color:#fff}button.disabled.success:hover,button.disabled.success:focus,button[disabled].success:hover,button[disabled].success:focus,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success:hover,.button[disabled].success:focus{background-color:#43ac6a}button.disabled.alert,button[disabled].alert,.button.disabled.alert,.button[disabled].alert{background-color:#f04124;border-color:#cf2a0e;color:#fff;cursor:default;opacity:0.7;box-shadow:none}button.disabled.alert:hover,button.disabled.alert:focus,button[disabled].alert:hover,button[disabled].alert:focus,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert:hover,.button[disabled].alert:focus{background-color:#cf2a0e}button.disabled.alert:hover,button.disabled.alert:focus,button[disabled].alert:hover,button[disabled].alert:focus,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert:hover,.button[disabled].alert:focus{color:#fff}button.disabled.alert:hover,button.disabled.alert:focus,button[disabled].alert:hover,button[disabled].alert:focus,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert:hover,.button[disabled].alert:focus{background-color:#f04124}button.disabled.warning,button[disabled].warning,.button.disabled.warning,.button[disabled].warning{background-color:#f08a24;border-color:#cf6e0e;color:#fff;cursor:default;opacity:0.7;box-shadow:none}button.disabled.warning:hover,button.disabled.warning:focus,button[disabled].warning:hover,button[disabled].warning:focus,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning:hover,.button[disabled].warning:focus{background-color:#cf6e0e}button.disabled.warning:hover,button.disabled.warning:focus,button[disabled].warning:hover,button[disabled].warning:focus,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning:hover,.button[disabled].warning:focus{color:#fff}button.disabled.warning:hover,button.disabled.warning:focus,button[disabled].warning:hover,button[disabled].warning:focus,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning:hover,.button[disabled].warning:focus{background-color:#f08a24}button.disabled.info,button[disabled].info,.button.disabled.info,.button[disabled].info{background-color:#a0d3e8;border-color:#61b6d9;color:#333;cursor:default;opacity:0.7;box-shadow:none}button.disabled.info:hover,button.disabled.info:focus,button[disabled].info:hover,button[disabled].info:focus,.button.disabled.info:hover,.button.disabled.info:focus,.button[disabled].info:hover,.button[disabled].info:focus{background-color:#61b6d9}button.disabled.info:hover,button.disabled.info:focus,button[disabled].info:hover,button[disabled].info:focus,.button.disabled.info:hover,.button.disabled.info:focus,.button[disabled].info:hover,.button[disabled].info:focus{color:#fff}button.disabled.info:hover,button.disabled.info:focus,button[disabled].info:hover,button[disabled].info:focus,.button.disabled.info:hover,.button.disabled.info:focus,.button[disabled].info:hover,.button[disabled].info:focus{background-color:#a0d3e8}button::-moz-focus-inner{border:0;padding:0}@media only screen and (min-width: 40.063em){button,.button{display:inline-block}}form{margin:0 0 1rem}form .row .row{margin:0 -0.5rem}form .row .row .column,form .row .row .columns{padding:0 0.5rem}form .row .row.collapse{margin:0}form .row .row.collapse .column,form .row .row.collapse .columns{padding:0}form .row .row.collapse input{-webkit-border-bottom-right-radius:0;-webkit-border-top-right-radius:0;border-bottom-right-radius:0;border-top-right-radius:0}form .row input.column,form .row input.columns,form .row textarea.column,form .row textarea.columns{padding-left:0.5rem}label{font-size:0.875rem;color:#4d4d4d;cursor:pointer;display:block;font-weight:normal;line-height:1.5;margin-bottom:0}label.right{float:none !important;text-align:right}label.inline{margin:0 0 1rem 0;padding:0.5625rem 0}label small{text-transform:capitalize;color:#676767}.prefix,.postfix{display:block;position:relative;z-index:2;text-align:center;width:100%;padding-top:0;padding-bottom:0;border-style:solid;border-width:1px;overflow:hidden;font-size:0.875rem;height:2.3125rem;line-height:2.3125rem}.postfix.button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;text-align:center;line-height:2.125rem;border:none}.prefix.button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;text-align:center;line-height:2.125rem;border:none}.prefix.button.radius{border-radius:0;-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}.postfix.button.radius{border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.prefix.button.round{border-radius:0;-webkit-border-bottom-left-radius:1000px;-webkit-border-top-left-radius:1000px;border-bottom-left-radius:1000px;border-top-left-radius:1000px}.postfix.button.round{border-radius:0;-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}span.prefix,label.prefix{background:#f2f2f2;border-right:none;color:#333;border-color:#ccc}span.postfix,label.postfix{background:#f2f2f2;border-left:none;color:#333;border-color:#ccc}input[type="text"],input[type="password"],input[type="date"],input[type="datetime"],input[type="datetime-local"],input[type="month"],input[type="week"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="time"],input[type="url"],input[type="color"],textarea{-webkit-appearance:none;-webkit-border-radius:0px;background-color:#fff;font-family:inherit;border-style:solid;border-width:1px;border-color:#ccc;box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);color:rgba(0,0,0,0.75);display:block;font-size:0.875rem;margin:0 0 1rem 0;padding:0.5rem;height:2.3125rem;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;transition:box-shadow 0.45s,border-color 0.45s ease-in-out}input[type="text"]:focus,input[type="password"]:focus,input[type="date"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="email"]:focus,input[type="number"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="time"]:focus,input[type="url"]:focus,input[type="color"]:focus,textarea:focus{box-shadow:0 0 5px #999;border-color:#999}input[type="text"]:focus,input[type="password"]:focus,input[type="date"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="email"]:focus,input[type="number"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="time"]:focus,input[type="url"]:focus,input[type="color"]:focus,textarea:focus{background:#fafafa;border-color:#999;outline:none}input[type="text"]:disabled,input[type="password"]:disabled,input[type="date"]:disabled,input[type="datetime"]:disabled,input[type="datetime-local"]:disabled,input[type="month"]:disabled,input[type="week"]:disabled,input[type="email"]:disabled,input[type="number"]:disabled,input[type="search"]:disabled,input[type="tel"]:disabled,input[type="time"]:disabled,input[type="url"]:disabled,input[type="color"]:disabled,textarea:disabled{background-color:#ddd;cursor:default}input[type="text"][disabled],input[type="text"][readonly],fieldset[disabled] input[type="text"],input[type="password"][disabled],input[type="password"][readonly],fieldset[disabled] input[type="password"],input[type="date"][disabled],input[type="date"][readonly],fieldset[disabled] input[type="date"],input[type="datetime"][disabled],input[type="datetime"][readonly],fieldset[disabled] input[type="datetime"],input[type="datetime-local"][disabled],input[type="datetime-local"][readonly],fieldset[disabled] input[type="datetime-local"],input[type="month"][disabled],input[type="month"][readonly],fieldset[disabled] input[type="month"],input[type="week"][disabled],input[type="week"][readonly],fieldset[disabled] input[type="week"],input[type="email"][disabled],input[type="email"][readonly],fieldset[disabled] input[type="email"],input[type="number"][disabled],input[type="number"][readonly],fieldset[disabled] input[type="number"],input[type="search"][disabled],input[type="search"][readonly],fieldset[disabled] input[type="search"],input[type="tel"][disabled],input[type="tel"][readonly],fieldset[disabled] input[type="tel"],input[type="time"][disabled],input[type="time"][readonly],fieldset[disabled] input[type="time"],input[type="url"][disabled],input[type="url"][readonly],fieldset[disabled] input[type="url"],input[type="color"][disabled],input[type="color"][readonly],fieldset[disabled] input[type="color"],textarea[disabled],textarea[readonly],fieldset[disabled] textarea{background-color:#ddd;cursor:default}input[type="text"].radius,input[type="password"].radius,input[type="date"].radius,input[type="datetime"].radius,input[type="datetime-local"].radius,input[type="month"].radius,input[type="week"].radius,input[type="email"].radius,input[type="number"].radius,input[type="search"].radius,input[type="tel"].radius,input[type="time"].radius,input[type="url"].radius,input[type="color"].radius,textarea.radius{border-radius:3px}form .row .prefix-radius.row.collapse input,form .row .prefix-radius.row.collapse textarea,form .row .prefix-radius.row.collapse select{border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}form .row .prefix-radius.row.collapse .prefix{border-radius:0;-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}form .row .postfix-radius.row.collapse input,form .row .postfix-radius.row.collapse textarea,form .row .postfix-radius.row.collapse select{border-radius:0;-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}form .row .postfix-radius.row.collapse .postfix{border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}form .row .prefix-round.row.collapse input,form .row .prefix-round.row.collapse textarea,form .row .prefix-round.row.collapse select{border-radius:0;-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}form .row .prefix-round.row.collapse .prefix{border-radius:0;-webkit-border-bottom-left-radius:1000px;-webkit-border-top-left-radius:1000px;border-bottom-left-radius:1000px;border-top-left-radius:1000px}form .row .postfix-round.row.collapse input,form .row .postfix-round.row.collapse textarea,form .row .postfix-round.row.collapse select{border-radius:0;-webkit-border-bottom-left-radius:1000px;-webkit-border-top-left-radius:1000px;border-bottom-left-radius:1000px;border-top-left-radius:1000px}form .row .postfix-round.row.collapse .postfix{border-radius:0;-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}input[type="submit"]{-webkit-appearance:none;-webkit-border-radius:0px}textarea[rows]{height:auto}textarea{max-width:100%}select{-webkit-appearance:none !important;-webkit-border-radius:0px;background-color:#fafafa;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);background-position:100% center;background-repeat:no-repeat;border-style:solid;border-width:1px;border-color:#ccc;padding:0.5rem;font-size:0.875rem;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;color:rgba(0,0,0,0.75);line-height:normal;border-radius:0;height:2.3125rem}select::-ms-expand{display:none}select.radius{border-radius:3px}select:hover{background-color:#f3f3f3;border-color:#999}select:disabled{background-color:#ddd;cursor:default}input[type="file"],input[type="checkbox"],input[type="radio"],select{margin:0 0 1rem 0}input[type="checkbox"]+label,input[type="radio"]+label{display:inline-block;margin-left:0.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}input[type="file"]{width:100%}fieldset{border:1px solid #ddd;padding:1.25rem;margin:1.125rem 0}fieldset legend{font-weight:bold;background:#fff;padding:0 0.1875rem;margin:0;margin-left:-0.1875rem}[data-abide] .error small.error,[data-abide] .error span.error,[data-abide] span.error,[data-abide] small.error{display:block;padding:0.375rem 0.5625rem 0.5625rem;margin-top:-1px;margin-bottom:1rem;font-size:0.75rem;font-weight:normal;font-style:italic;background:#f04124;color:#fff}[data-abide] span.error,[data-abide] small.error{display:none}span.error,small.error{display:block;padding:0.375rem 0.5625rem 0.5625rem;margin-top:-1px;margin-bottom:1rem;font-size:0.75rem;font-weight:normal;font-style:italic;background:#f04124;color:#fff}.error input,.error textarea,.error select{margin-bottom:0}.error input[type="checkbox"],.error input[type="radio"]{margin-bottom:1rem}.error label,.error label.error{color:#f04124}.error small.error{display:block;padding:0.375rem 0.5625rem 0.5625rem;margin-top:-1px;margin-bottom:1rem;font-size:0.75rem;font-weight:normal;font-style:italic;background:#f04124;color:#fff}.error>label>small{color:#676767;background:transparent;padding:0;text-transform:capitalize;font-style:normal;font-size:60%;margin:0;display:inline}.error span.error-message{display:block}input.error,textarea.error,select.error{margin-bottom:0}label.error{color:#f04124}meta.foundation-mq-topbar{font-family:"/only screen and (min-width:40.063em)/";width:40.063em}.contain-to-grid{width:100%;background:#333}.contain-to-grid .top-bar{margin-bottom:0}.fixed{width:100%;left:0;position:fixed;top:0;z-index:99}.fixed.expanded:not(.top-bar){overflow-y:auto;height:auto;width:100%;max-height:100%}.fixed.expanded:not(.top-bar) .title-area{position:fixed;width:100%;z-index:99}.fixed.expanded:not(.top-bar) .top-bar-section{z-index:98;margin-top:45px}.top-bar{overflow:hidden;height:45px;line-height:45px;position:relative;background:#333;margin-bottom:0}.top-bar ul{margin-bottom:0;list-style:none}.top-bar .row{max-width:none}.top-bar form,.top-bar input{margin-bottom:0}.top-bar input{height:1.8rem;padding-top:.35rem;padding-bottom:.35rem;font-size:0.75rem}.top-bar .button,.top-bar button{padding-top:0.4125rem;padding-bottom:0.4125rem;margin-bottom:0;font-size:0.75rem}@media only screen and (max-width: 40em){.top-bar .button,.top-bar button{position:relative;top:-1px}}.top-bar .title-area{position:relative;margin:0}.top-bar .name{height:45px;margin:0;font-size:16px}.top-bar .name h1{line-height:45px;font-size:1.0625rem;margin:0}.top-bar .name h1 a{font-weight:normal;color:#fff;width:75%;display:block;padding:0 15px}.top-bar .toggle-topbar{position:absolute;right:0;top:0}.top-bar .toggle-topbar a{color:#fff;text-transform:uppercase;font-size:0.8125rem;font-weight:bold;position:relative;display:block;padding:0 15px;height:45px;line-height:45px}.top-bar .toggle-topbar.menu-icon{top:50%;margin-top:-16px}.top-bar .toggle-topbar.menu-icon a{height:34px;line-height:33px;padding:0 40px 0 15px;color:#fff;position:relative}.top-bar .toggle-topbar.menu-icon a span::after{content:"";position:absolute;display:block;height:0;top:50%;margin-top:-8px;right:15px;box-shadow:0 0px 0 1px #fff,0 7px 0 1px #fff,0 14px 0 1px #fff;width:16px}.top-bar .toggle-topbar.menu-icon a span:hover:after{box-shadow:0 0px 0 1px "",0 7px 0 1px "",0 14px 0 1px ""}.top-bar.expanded{height:auto;background:transparent}.top-bar.expanded .title-area{background:#333}.top-bar.expanded .toggle-topbar a{color:#888}.top-bar.expanded .toggle-topbar a span::after{box-shadow:0 0px 0 1px #888,0 7px 0 1px #888,0 14px 0 1px #888}.top-bar-section{left:0;position:relative;width:auto;transition:left 300ms ease-out}.top-bar-section ul{padding:0;width:100%;height:auto;display:block;font-size:16px;margin:0}.top-bar-section .divider,.top-bar-section [role="separator"]{border-top:solid 1px #1a1a1a;clear:both;height:1px;width:100%}.top-bar-section ul li{background:#333}.top-bar-section ul li>a{display:block;width:100%;color:#fff;padding:12px 0 12px 0;padding-left:15px;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:0.8125rem;font-weight:normal;text-transform:none}.top-bar-section ul li>a.button{font-size:0.8125rem;padding-right:15px;padding-left:15px;background-color:#008cba;border-color:#007095;color:#fff}.top-bar-section ul li>a.button:hover,.top-bar-section ul li>a.button:focus{background-color:#007095}.top-bar-section ul li>a.button:hover,.top-bar-section ul li>a.button:focus{color:#fff}.top-bar-section ul li>a.button.secondary{background-color:#e7e7e7;border-color:#b9b9b9;color:#333}.top-bar-section ul li>a.button.secondary:hover,.top-bar-section ul li>a.button.secondary:focus{background-color:#b9b9b9}.top-bar-section ul li>a.button.secondary:hover,.top-bar-section ul li>a.button.secondary:focus{color:#333}.top-bar-section ul li>a.button.success{background-color:#43ac6a;border-color:#368a55;color:#fff}.top-bar-section ul li>a.button.success:hover,.top-bar-section ul li>a.button.success:focus{background-color:#368a55}.top-bar-section ul li>a.button.success:hover,.top-bar-section ul li>a.button.success:focus{color:#fff}.top-bar-section ul li>a.button.alert{background-color:#f04124;border-color:#cf2a0e;color:#fff}.top-bar-section ul li>a.button.alert:hover,.top-bar-section ul li>a.button.alert:focus{background-color:#cf2a0e}.top-bar-section ul li>a.button.alert:hover,.top-bar-section ul li>a.button.alert:focus{color:#fff}.top-bar-section ul li>a.button.warning{background-color:#f08a24;border-color:#cf6e0e;color:#fff}.top-bar-section ul li>a.button.warning:hover,.top-bar-section ul li>a.button.warning:focus{background-color:#cf6e0e}.top-bar-section ul li>a.button.warning:hover,.top-bar-section ul li>a.button.warning:focus{color:#fff}.top-bar-section ul li>button{font-size:0.8125rem;padding-right:15px;padding-left:15px;background-color:#008cba;border-color:#007095;color:#fff}.top-bar-section ul li>button:hover,.top-bar-section ul li>button:focus{background-color:#007095}.top-bar-section ul li>button:hover,.top-bar-section ul li>button:focus{color:#fff}.top-bar-section ul li>button.secondary{background-color:#e7e7e7;border-color:#b9b9b9;color:#333}.top-bar-section ul li>button.secondary:hover,.top-bar-section ul li>button.secondary:focus{background-color:#b9b9b9}.top-bar-section ul li>button.secondary:hover,.top-bar-section ul li>button.secondary:focus{color:#333}.top-bar-section ul li>button.success{background-color:#43ac6a;border-color:#368a55;color:#fff}.top-bar-section ul li>button.success:hover,.top-bar-section ul li>button.success:focus{background-color:#368a55}.top-bar-section ul li>button.success:hover,.top-bar-section ul li>button.success:focus{color:#fff}.top-bar-section ul li>button.alert{background-color:#f04124;border-color:#cf2a0e;color:#fff}.top-bar-section ul li>button.alert:hover,.top-bar-section ul li>button.alert:focus{background-color:#cf2a0e}.top-bar-section ul li>button.alert:hover,.top-bar-section ul li>button.alert:focus{color:#fff}.top-bar-section ul li>button.warning{background-color:#f08a24;border-color:#cf6e0e;color:#fff}.top-bar-section ul li>button.warning:hover,.top-bar-section ul li>button.warning:focus{background-color:#cf6e0e}.top-bar-section ul li>button.warning:hover,.top-bar-section ul li>button.warning:focus{color:#fff}.top-bar-section ul li:hover:not(.has-form)>a{background-color:#555;background:#272727;color:#fff}.top-bar-section ul li.active>a{background:#008cba;color:#fff}.top-bar-section ul li.active>a:hover{background:#0078a0;color:#fff}.top-bar-section .has-form{padding:15px}.top-bar-section .has-dropdown{position:relative}.top-bar-section .has-dropdown>a:after{content:"";display:block;width:0;height:0;border:inset 5px;border-color:transparent transparent transparent rgba(255,255,255,0.4);border-left-style:solid;margin-right:15px;margin-top:-4.5px;position:absolute;top:50%;right:0}.top-bar-section .has-dropdown.moved{position:static}.top-bar-section .has-dropdown.moved>.dropdown{display:block;position:static !important;height:auto;width:auto;overflow:visible;clip:auto;position:absolute !important;width:100%}.top-bar-section .has-dropdown.moved>a:after{display:none}.top-bar-section .dropdown{padding:0;position:absolute;left:100%;top:0;z-index:99;display:block;position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}.top-bar-section .dropdown li{width:100%;height:auto}.top-bar-section .dropdown li a{font-weight:normal;padding:8px 15px}.top-bar-section .dropdown li a.parent-link{font-weight:normal}.top-bar-section .dropdown li.title h5,.top-bar-section .dropdown li.parent-link{margin-bottom:0;margin-top:0;font-size:1.125rem}.top-bar-section .dropdown li.title h5 a,.top-bar-section .dropdown li.parent-link a{color:#fff;display:block}.top-bar-section .dropdown li.title h5 a:hover,.top-bar-section .dropdown li.parent-link a:hover{background:none}.top-bar-section .dropdown li.has-form{padding:8px 15px}.top-bar-section .dropdown li .button,.top-bar-section .dropdown li button{top:auto}.top-bar-section .dropdown label{padding:8px 15px 2px;margin-bottom:0;text-transform:uppercase;color:#777;font-weight:bold;font-size:0.625rem}.js-generated{display:block}@media only screen and (min-width: 40.063em){.top-bar{background:#333;overflow:visible}.top-bar:before,.top-bar:after{content:" ";display:table}.top-bar:after{clear:both}.top-bar .toggle-topbar{display:none}.top-bar .title-area{float:left}.top-bar .name h1 a{width:auto}.top-bar input,.top-bar .button,.top-bar button{font-size:0.875rem;position:relative;top:7px}.top-bar.expanded{background:#333}.contain-to-grid .top-bar{max-width:62.5rem;margin:0 auto;margin-bottom:0}.top-bar-section{transition:none 0 0;left:0 !important}.top-bar-section ul{width:auto;height:auto !important;display:inline}.top-bar-section ul li{float:left}.top-bar-section ul li .js-generated{display:none}.top-bar-section li.hover>a:not(.button){background-color:#555;background:#272727;color:#fff}.top-bar-section li:not(.has-form) a:not(.button){padding:0 15px;line-height:45px;background:#333}.top-bar-section li:not(.has-form) a:not(.button):hover{background-color:#555;background:#272727}.top-bar-section li.active:not(.has-form) a:not(.button){padding:0 15px;line-height:45px;color:#fff;background:#008cba}.top-bar-section li.active:not(.has-form) a:not(.button):hover{background:#0078a0;color:#fff}.top-bar-section .has-dropdown>a{padding-right:35px !important}.top-bar-section .has-dropdown>a:after{content:"";display:block;width:0;height:0;border:inset 5px;border-color:rgba(255,255,255,0.4) transparent transparent transparent;border-top-style:solid;margin-top:-2.5px;top:22.5px}.top-bar-section .has-dropdown.moved{position:relative}.top-bar-section .has-dropdown.moved>.dropdown{display:block;position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}.top-bar-section .has-dropdown.hover>.dropdown,.top-bar-section .has-dropdown.not-click:hover>.dropdown{display:block;position:static !important;height:auto;width:auto;overflow:visible;clip:auto;position:absolute !important}.top-bar-section .has-dropdown>a:focus+.dropdown{display:block;position:static !important;height:auto;width:auto;overflow:visible;clip:auto;position:absolute !important}.top-bar-section .has-dropdown .dropdown li.has-dropdown>a:after{border:none;content:"\00bb";top:1rem;margin-top:-1px;right:5px;line-height:1.2}.top-bar-section .dropdown{left:0;top:auto;background:transparent;min-width:100%}.top-bar-section .dropdown li a{color:#fff;line-height:45px;white-space:nowrap;padding:12px 15px;background:#333}.top-bar-section .dropdown li:not(.has-form):not(.active)>a:not(.button){color:#fff;background:#333}.top-bar-section .dropdown li:not(.has-form):not(.active):hover>a:not(.button){color:#fff;background-color:#555;background:#272727}.top-bar-section .dropdown li label{white-space:nowrap;background:#333}.top-bar-section .dropdown li .dropdown{left:100%;top:0}.top-bar-section>ul>.divider,.top-bar-section>ul>[role="separator"]{border-bottom:none;border-top:none;border-right:solid 1px #4e4e4e;clear:none;height:45px;width:0}.top-bar-section .has-form{background:#333;padding:0 15px;height:45px}.top-bar-section .right li .dropdown{left:auto;right:0}.top-bar-section .right li .dropdown li .dropdown{right:100%}.top-bar-section .left li .dropdown{right:auto;left:0}.top-bar-section .left li .dropdown li .dropdown{left:100%}.no-js .top-bar-section ul li:hover>a{background-color:#555;background:#272727;color:#fff}.no-js .top-bar-section ul li:active>a{background:#008cba;color:#fff}.no-js .top-bar-section .has-dropdown:hover>.dropdown{display:block;position:static !important;height:auto;width:auto;overflow:visible;clip:auto;position:absolute !important}.no-js .top-bar-section .has-dropdown>a:focus+.dropdown{display:block;position:static !important;height:auto;width:auto;overflow:visible;clip:auto;position:absolute !important}}.breadcrumbs{display:block;padding:0.5625rem 0.875rem 0.5625rem;overflow:hidden;margin-left:0;list-style:none;border-style:solid;border-width:1px;background-color:#f4f4f4;border-color:#dcdcdc;border-radius:3px}.breadcrumbs>*{margin:0;float:left;font-size:0.6875rem;line-height:0.6875rem;text-transform:uppercase;color:#008cba}.breadcrumbs>*:hover a,.breadcrumbs>*:focus a{text-decoration:underline}.breadcrumbs>* a{color:#008cba}.breadcrumbs>*.current{cursor:default;color:#333}.breadcrumbs>*.current a{cursor:default;color:#333}.breadcrumbs>*.current:hover,.breadcrumbs>*.current:hover a,.breadcrumbs>*.current:focus,.breadcrumbs>*.current:focus a{text-decoration:none}.breadcrumbs>*.unavailable{color:#999}.breadcrumbs>*.unavailable a{color:#999}.breadcrumbs>*.unavailable:hover,.breadcrumbs>*.unavailable:hover a,.breadcrumbs>*.unavailable:focus,.breadcrumbs>*.unavailable a:focus{text-decoration:none;color:#999;cursor:default}.breadcrumbs>*:before{content:"/";color:#aaa;margin:0 0.75rem;position:relative;top:1px}.breadcrumbs>*:first-child:before{content:" ";margin:0}[aria-label="breadcrumbs"] [aria-hidden="true"]:after{content:"/"}.alert-box{border-style:solid;border-width:1px;display:block;font-weight:normal;margin-bottom:1.25rem;position:relative;padding:0.875rem 1.5rem 0.875rem 0.875rem;font-size:0.8125rem;transition:opacity 300ms ease-out;background-color:#008cba;border-color:#0078a0;color:#fff}.alert-box .close{font-size:1.375rem;padding:9px 6px 4px;line-height:0;position:absolute;top:50%;margin-top:-0.6875rem;right:0.25rem;color:#333;opacity:0.3;background:inherit}.alert-box .close:hover,.alert-box .close:focus{opacity:0.5}.alert-box.radius{border-radius:3px}.alert-box.round{border-radius:1000px}.alert-box.success{background-color:#43ac6a;border-color:#3a945b;color:#fff}.alert-box.alert{background-color:#f04124;border-color:#de2d0f;color:#fff}.alert-box.secondary{background-color:#e7e7e7;border-color:#c7c7c7;color:#4f4f4f}.alert-box.warning{background-color:#f08a24;border-color:#de770f;color:#fff}.alert-box.info{background-color:#a0d3e8;border-color:#74bfdd;color:#4f4f4f}.alert-box.alert-close{opacity:0}.inline-list{margin:0 auto 1.0625rem auto;margin-left:-1.375rem;margin-right:0;padding:0;list-style:none;overflow:hidden}.inline-list>li{list-style:none;float:left;margin-left:1.375rem;display:block}.inline-list>li>*{display:block}.button-group{list-style:none;margin:0;left:0}.button-group:before,.button-group:after{content:" ";display:table}.button-group:after{clear:both}.button-group>li{margin:0 -2px;display:inline-block}.button-group>li>button,.button-group>li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group>li:first-child button,.button-group>li:first-child .button{border-left:0}.button-group.stack>li{margin:0 -2px;display:inline-block;display:block;margin:0;float:none}.button-group.stack>li>button,.button-group.stack>li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.stack>li:first-child button,.button-group.stack>li:first-child .button{border-left:0}.button-group.stack>li>button,.button-group.stack>li .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.stack>li:first-child button,.button-group.stack>li:first-child .button{border-top:0}.button-group.stack-for-small>li{margin:0 -2px;display:inline-block}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button{border-left:0}@media only screen and (max-width: 40em){.button-group.stack-for-small>li{margin:0 -2px;display:inline-block;display:block;margin:0}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button{border-left:0}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button{border-top:0}}.button-group.radius>*{margin:0 -2px;display:inline-block}.button-group.radius>*>button,.button-group.radius>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.radius>*:first-child button,.button-group.radius>*:first-child .button{border-left:0}.button-group.radius>*,.button-group.radius>*>a,.button-group.radius>*>button,.button-group.radius>*>.button{border-radius:0}.button-group.radius>*:first-child,.button-group.radius>*:first-child>a,.button-group.radius>*:first-child>button,.button-group.radius>*:first-child>.button{-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}.button-group.radius>*:last-child,.button-group.radius>*:last-child>a,.button-group.radius>*:last-child>button,.button-group.radius>*:last-child>.button{-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.button-group.radius.stack>*{margin:0 -2px;display:inline-block;display:block;margin:0}.button-group.radius.stack>*>button,.button-group.radius.stack>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.radius.stack>*:first-child button,.button-group.radius.stack>*:first-child .button{border-left:0}.button-group.radius.stack>*>button,.button-group.radius.stack>* .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.radius.stack>*:first-child button,.button-group.radius.stack>*:first-child .button{border-top:0}.button-group.radius.stack>*,.button-group.radius.stack>*>a,.button-group.radius.stack>*>button,.button-group.radius.stack>*>.button{border-radius:0}.button-group.radius.stack>*:first-child,.button-group.radius.stack>*:first-child>a,.button-group.radius.stack>*:first-child>button,.button-group.radius.stack>*:first-child>.button{-webkit-top-left-radius:3px;-webkit-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.button-group.radius.stack>*:last-child,.button-group.radius.stack>*:last-child>a,.button-group.radius.stack>*:last-child>button,.button-group.radius.stack>*:last-child>.button{-webkit-bottom-left-radius:3px;-webkit-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px}@media only screen and (min-width: 40.063em){.button-group.radius.stack-for-small>*{margin:0 -2px;display:inline-block}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button{border-left:0}.button-group.radius.stack-for-small>*,.button-group.radius.stack-for-small>*>a,.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>.button{border-radius:0}.button-group.radius.stack-for-small>*:first-child,.button-group.radius.stack-for-small>*:first-child>a,.button-group.radius.stack-for-small>*:first-child>button,.button-group.radius.stack-for-small>*:first-child>.button{-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}.button-group.radius.stack-for-small>*:last-child,.button-group.radius.stack-for-small>*:last-child>a,.button-group.radius.stack-for-small>*:last-child>button,.button-group.radius.stack-for-small>*:last-child>.button{-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}}@media only screen and (max-width: 40em){.button-group.radius.stack-for-small>*{margin:0 -2px;display:inline-block;display:block;margin:0}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button{border-left:0}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>* .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button{border-top:0}.button-group.radius.stack-for-small>*,.button-group.radius.stack-for-small>*>a,.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>.button{border-radius:0}.button-group.radius.stack-for-small>*:first-child,.button-group.radius.stack-for-small>*:first-child>a,.button-group.radius.stack-for-small>*:first-child>button,.button-group.radius.stack-for-small>*:first-child>.button{-webkit-top-left-radius:3px;-webkit-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.button-group.radius.stack-for-small>*:last-child,.button-group.radius.stack-for-small>*:last-child>a,.button-group.radius.stack-for-small>*:last-child>button,.button-group.radius.stack-for-small>*:last-child>.button{-webkit-bottom-left-radius:3px;-webkit-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px}}.button-group.round>*{margin:0 -2px;display:inline-block}.button-group.round>*>button,.button-group.round>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.round>*:first-child button,.button-group.round>*:first-child .button{border-left:0}.button-group.round>*,.button-group.round>*>a,.button-group.round>*>button,.button-group.round>*>.button{border-radius:0}.button-group.round>*:first-child,.button-group.round>*:first-child>a,.button-group.round>*:first-child>button,.button-group.round>*:first-child>.button{-webkit-border-bottom-left-radius:1000px;-webkit-border-top-left-radius:1000px;border-bottom-left-radius:1000px;border-top-left-radius:1000px}.button-group.round>*:last-child,.button-group.round>*:last-child>a,.button-group.round>*:last-child>button,.button-group.round>*:last-child>.button{-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}.button-group.round.stack>*{margin:0 -2px;display:inline-block;display:block;margin:0}.button-group.round.stack>*>button,.button-group.round.stack>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.round.stack>*:first-child button,.button-group.round.stack>*:first-child .button{border-left:0}.button-group.round.stack>*>button,.button-group.round.stack>* .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.round.stack>*:first-child button,.button-group.round.stack>*:first-child .button{border-top:0}.button-group.round.stack>*,.button-group.round.stack>*>a,.button-group.round.stack>*>button,.button-group.round.stack>*>.button{border-radius:0}.button-group.round.stack>*:first-child,.button-group.round.stack>*:first-child>a,.button-group.round.stack>*:first-child>button,.button-group.round.stack>*:first-child>.button{-webkit-top-left-radius:1rem;-webkit-top-right-radius:1rem;border-top-left-radius:1rem;border-top-right-radius:1rem}.button-group.round.stack>*:last-child,.button-group.round.stack>*:last-child>a,.button-group.round.stack>*:last-child>button,.button-group.round.stack>*:last-child>.button{-webkit-bottom-left-radius:1rem;-webkit-bottom-right-radius:1rem;border-bottom-left-radius:1rem;border-bottom-right-radius:1rem}@media only screen and (min-width: 40.063em){.button-group.round.stack-for-small>*{margin:0 -2px;display:inline-block}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button{border-left:0}.button-group.round.stack-for-small>*,.button-group.round.stack-for-small>*>a,.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>*>.button{border-radius:0}.button-group.round.stack-for-small>*:first-child,.button-group.round.stack-for-small>*:first-child>a,.button-group.round.stack-for-small>*:first-child>button,.button-group.round.stack-for-small>*:first-child>.button{-webkit-border-bottom-left-radius:1000px;-webkit-border-top-left-radius:1000px;border-bottom-left-radius:1000px;border-top-left-radius:1000px}.button-group.round.stack-for-small>*:last-child,.button-group.round.stack-for-small>*:last-child>a,.button-group.round.stack-for-small>*:last-child>button,.button-group.round.stack-for-small>*:last-child>.button{-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}}@media only screen and (max-width: 40em){.button-group.round.stack-for-small>*{margin:0 -2px;display:inline-block;display:block;margin:0}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button{border-left:0}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button{border-top:1px solid;border-color:rgba(255,255,255,0.5);border-left-width:0px;margin:0;display:block}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button{border-top:0}.button-group.round.stack-for-small>*,.button-group.round.stack-for-small>*>a,.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>*>.button{border-radius:0}.button-group.round.stack-for-small>*:first-child,.button-group.round.stack-for-small>*:first-child>a,.button-group.round.stack-for-small>*:first-child>button,.button-group.round.stack-for-small>*:first-child>.button{-webkit-top-left-radius:1rem;-webkit-top-right-radius:1rem;border-top-left-radius:1rem;border-top-right-radius:1rem}.button-group.round.stack-for-small>*:last-child,.button-group.round.stack-for-small>*:last-child>a,.button-group.round.stack-for-small>*:last-child>button,.button-group.round.stack-for-small>*:last-child>.button{-webkit-bottom-left-radius:1rem;-webkit-bottom-right-radius:1rem;border-bottom-left-radius:1rem;border-bottom-right-radius:1rem}}.button-group.even-2 li{margin:0 -2px;display:inline-block;width:50%}.button-group.even-2 li>button,.button-group.even-2 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-2 li:first-child button,.button-group.even-2 li:first-child .button{border-left:0}.button-group.even-2 li button,.button-group.even-2 li .button{width:100%}.button-group.even-3 li{margin:0 -2px;display:inline-block;width:33.33333%}.button-group.even-3 li>button,.button-group.even-3 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-3 li:first-child button,.button-group.even-3 li:first-child .button{border-left:0}.button-group.even-3 li button,.button-group.even-3 li .button{width:100%}.button-group.even-4 li{margin:0 -2px;display:inline-block;width:25%}.button-group.even-4 li>button,.button-group.even-4 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-4 li:first-child button,.button-group.even-4 li:first-child .button{border-left:0}.button-group.even-4 li button,.button-group.even-4 li .button{width:100%}.button-group.even-5 li{margin:0 -2px;display:inline-block;width:20%}.button-group.even-5 li>button,.button-group.even-5 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-5 li:first-child button,.button-group.even-5 li:first-child .button{border-left:0}.button-group.even-5 li button,.button-group.even-5 li .button{width:100%}.button-group.even-6 li{margin:0 -2px;display:inline-block;width:16.66667%}.button-group.even-6 li>button,.button-group.even-6 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-6 li:first-child button,.button-group.even-6 li:first-child .button{border-left:0}.button-group.even-6 li button,.button-group.even-6 li .button{width:100%}.button-group.even-7 li{margin:0 -2px;display:inline-block;width:14.28571%}.button-group.even-7 li>button,.button-group.even-7 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-7 li:first-child button,.button-group.even-7 li:first-child .button{border-left:0}.button-group.even-7 li button,.button-group.even-7 li .button{width:100%}.button-group.even-8 li{margin:0 -2px;display:inline-block;width:12.5%}.button-group.even-8 li>button,.button-group.even-8 li .button{border-left:1px solid;border-color:rgba(255,255,255,0.5)}.button-group.even-8 li:first-child button,.button-group.even-8 li:first-child .button{border-left:0}.button-group.even-8 li button,.button-group.even-8 li .button{width:100%}.button-bar:before,.button-bar:after{content:" ";display:table}.button-bar:after{clear:both}.button-bar .button-group{float:left;margin-right:0.625rem}.button-bar .button-group div{overflow:hidden}.panel{border-style:solid;border-width:1px;border-color:#d8d8d8;margin-bottom:1.25rem;padding:1.25rem;background:#f2f2f2;color:#333}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.panel h1,.panel h2,.panel h3,.panel h4,.panel h5,.panel h6,.panel p,.panel li,.panel dl{color:#333}.panel h1,.panel h2,.panel h3,.panel h4,.panel h5,.panel h6{line-height:1;margin-bottom:0.625rem}.panel h1.subheader,.panel h2.subheader,.panel h3.subheader,.panel h4.subheader,.panel h5.subheader,.panel h6.subheader{line-height:1.4}.panel.callout{border-style:solid;border-width:1px;border-color:#b6edff;margin-bottom:1.25rem;padding:1.25rem;background:#ecfaff;color:#333}.panel.callout>:first-child{margin-top:0}.panel.callout>:last-child{margin-bottom:0}.panel.callout h1,.panel.callout h2,.panel.callout h3,.panel.callout h4,.panel.callout h5,.panel.callout h6,.panel.callout p,.panel.callout li,.panel.callout dl{color:#333}.panel.callout h1,.panel.callout h2,.panel.callout h3,.panel.callout h4,.panel.callout h5,.panel.callout h6{line-height:1;margin-bottom:0.625rem}.panel.callout h1.subheader,.panel.callout h2.subheader,.panel.callout h3.subheader,.panel.callout h4.subheader,.panel.callout h5.subheader,.panel.callout h6.subheader{line-height:1.4}.panel.callout a:not(.button){color:#008cba}.panel.radius{border-radius:3px}.dropdown.button,button.dropdown{position:relative;outline:none;padding-right:3.5625rem}.dropdown.button::after,button.dropdown::after{position:absolute;content:"";width:0;height:0;display:block;border-style:solid;border-color:#fff transparent transparent transparent;top:50%}.dropdown.button::after,button.dropdown::after{border-width:0.375rem;right:1.40625rem;margin-top:-0.15625rem}.dropdown.button::after,button.dropdown::after{border-color:#fff transparent transparent transparent}.dropdown.button.tiny,button.dropdown.tiny{padding-right:2.625rem}.dropdown.button.tiny:after,button.dropdown.tiny:after{border-width:0.375rem;right:1.125rem;margin-top:-0.125rem}.dropdown.button.tiny::after,button.dropdown.tiny::after{border-color:#fff transparent transparent transparent}.dropdown.button.small,button.dropdown.small{padding-right:3.0625rem}.dropdown.button.small::after,button.dropdown.small::after{border-width:0.4375rem;right:1.3125rem;margin-top:-0.15625rem}.dropdown.button.small::after,button.dropdown.small::after{border-color:#fff transparent transparent transparent}.dropdown.button.large,button.dropdown.large{padding-right:3.625rem}.dropdown.button.large::after,button.dropdown.large::after{border-width:0.3125rem;right:1.71875rem;margin-top:-0.15625rem}.dropdown.button.large::after,button.dropdown.large::after{border-color:#fff transparent transparent transparent}.dropdown.button.secondary:after,button.dropdown.secondary:after{border-color:#333 transparent transparent transparent}.th{line-height:0;display:inline-block;border:solid 4px #fff;max-width:100%;box-shadow:0 0 0 1px rgba(0,0,0,0.2);transition:all 200ms ease-out}.th:hover,.th:focus{box-shadow:0 0 6px 1px rgba(0,140,186,0.5)}.th.radius{border-radius:3px}.toolbar{background:#333;width:100%;font-size:0;display:inline-block}.toolbar.label-bottom .tab .tab-content i,.toolbar.label-bottom .tab .tab-content img{margin-bottom:10px}.toolbar.label-right .tab .tab-content i,.toolbar.label-right .tab .tab-content img{margin-right:10px;display:inline-block}.toolbar.label-right .tab .tab-content label{display:inline-block}.toolbar.vertical.label-right .tab .tab-content{text-align:left}.toolbar.vertical{height:100%;width:auto}.toolbar.vertical .tab{width:auto;margin:auto;float:none}.toolbar .tab{text-align:center;width:25%;margin:0 auto;display:block;padding:20px;float:left}.toolbar .tab:hover{background:rgba(255,255,255,0.1)}.toolbar .tab-content{font-size:16px;text-align:center}.toolbar .tab-content label{color:#ccc}.toolbar .tab-content i{font-size:30px;display:block;margin:0 auto;color:#ccc;vertical-align:middle}.toolbar .tab-content img{width:30px;height:30px;display:block;margin:0 auto}.pricing-table{border:solid 1px #ddd;margin-left:0;margin-bottom:1.25rem}.pricing-table *{list-style:none;line-height:1}.pricing-table .title{background-color:#333;padding:0.9375rem 1.25rem;text-align:center;color:#eee;font-weight:normal;font-size:1rem;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif}.pricing-table .price{background-color:#f6f6f6;padding:0.9375rem 1.25rem;text-align:center;color:#333;font-weight:normal;font-size:2rem;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif}.pricing-table .description{background-color:#fff;padding:0.9375rem;text-align:center;color:#777;font-size:0.75rem;font-weight:normal;line-height:1.4;border-bottom:dotted 1px #ddd}.pricing-table .bullet-item{background-color:#fff;padding:0.9375rem;text-align:center;color:#333;font-size:0.875rem;font-weight:normal;border-bottom:dotted 1px #ddd}.pricing-table .cta-button{background-color:#fff;text-align:center;padding:1.25rem 1.25rem 0}@-webkit-keyframes rotate{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@-moz-keyframes rotate{from{-moz-transform:rotate(0deg)}to{-moz-transform:rotate(360deg)}}@-o-keyframes rotate{from{-o-transform:rotate(0deg)}to{-o-transform:rotate(360deg)}}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.slideshow-wrapper{position:relative}.slideshow-wrapper ul{list-style-type:none;margin:0}.slideshow-wrapper ul li,.slideshow-wrapper ul li .orbit-caption{display:none}.slideshow-wrapper ul li:first-child{display:block}.slideshow-wrapper .orbit-container{background-color:transparent}.slideshow-wrapper .orbit-container li{display:block}.slideshow-wrapper .orbit-container li .orbit-caption{display:block}.slideshow-wrapper .orbit-container .orbit-bullets li{display:inline-block}.slideshow-wrapper .preloader{display:block;width:40px;height:40px;position:absolute;top:50%;left:50%;margin-top:-20px;margin-left:-20px;border:solid 3px;border-color:#555 #fff;border-radius:1000px;animation-name:rotate;animation-duration:1.5s;animation-iteration-count:infinite;animation-timing-function:linear}.orbit-container{overflow:hidden;width:100%;position:relative;background:none}.orbit-container .orbit-slides-container{list-style:none;margin:0;padding:0;position:relative;-webkit-transform:translateZ(0)}.orbit-container .orbit-slides-container img{display:block;max-width:100%}.orbit-container .orbit-slides-container>*{position:absolute;top:0;width:100%;margin-left:100%}.orbit-container .orbit-slides-container>*:first-child{margin-left:0%}.orbit-container .orbit-slides-container>* .orbit-caption{position:absolute;bottom:0;background-color:rgba(51,51,51,0.8);color:#fff;width:100%;padding:0.625rem 0.875rem;font-size:0.875rem}.orbit-container .orbit-slide-number{position:absolute;top:10px;left:10px;font-size:12px;color:#fff;background:rgba(0,0,0,0);z-index:10}.orbit-container .orbit-slide-number span{font-weight:700;padding:0.3125rem}.orbit-container .orbit-timer{position:absolute;top:12px;right:10px;height:6px;width:100px;z-index:10}.orbit-container .orbit-timer .orbit-progress{height:3px;background-color:rgba(255,255,255,0.3);display:block;width:0%;position:relative;right:20px;top:5px}.orbit-container .orbit-timer>span{display:none;position:absolute;top:0px;right:0;width:11px;height:14px;border:solid 4px #fff;border-top:none;border-bottom:none}.orbit-container .orbit-timer.paused>span{right:-4px;top:0px;width:11px;height:14px;border:inset 8px;border-left-style:solid;border-color:transparent;border-left-color:#fff}.orbit-container .orbit-timer.paused>span.dark{border-left-color:#333}.orbit-container:hover .orbit-timer>span{display:block}.orbit-container .orbit-prev,.orbit-container .orbit-next{position:absolute;top:45%;margin-top:-25px;width:36px;height:60px;line-height:50px;color:white;background-color:transparent;text-indent:-9999px !important;z-index:10}.orbit-container .orbit-prev:hover,.orbit-container .orbit-next:hover{background-color:rgba(0,0,0,0.3)}.orbit-container .orbit-prev>span,.orbit-container .orbit-next>span{position:absolute;top:50%;margin-top:-10px;display:block;width:0;height:0;border:inset 10px}.orbit-container .orbit-prev{left:0}.orbit-container .orbit-prev>span{border-right-style:solid;border-color:transparent;border-right-color:#fff}.orbit-container .orbit-prev:hover>span{border-right-color:#fff}.orbit-container .orbit-next{right:0}.orbit-container .orbit-next>span{border-color:transparent;border-left-style:solid;border-left-color:#fff;left:50%;margin-left:-4px}.orbit-container .orbit-next:hover>span{border-left-color:#fff}.orbit-bullets-container{text-align:center}.orbit-bullets{margin:0 auto 30px auto;overflow:hidden;position:relative;top:10px;float:none;text-align:center;display:block}.orbit-bullets li{cursor:pointer;display:inline-block;width:0.5625rem;height:0.5625rem;background:#ccc;float:none;margin-right:6px;border-radius:1000px}.orbit-bullets li.active{background:#999}.orbit-bullets li:last-child{margin-right:0}.touch .orbit-container .orbit-prev,.touch .orbit-container .orbit-next{display:none}.touch .orbit-bullets{display:none}@media only screen and (min-width: 40.063em){.touch .orbit-container .orbit-prev,.touch .orbit-container .orbit-next{display:inherit}.touch .orbit-bullets{display:block}}@media only screen and (max-width: 40em){.orbit-stack-on-small .orbit-slides-container{height:auto !important}.orbit-stack-on-small .orbit-slides-container>*{position:relative;margin:0% !important;opacity:1 !important}.orbit-stack-on-small .orbit-slide-number{display:none}.orbit-timer{display:none}.orbit-next,.orbit-prev{display:none}.orbit-bullets{display:none}}[data-magellan-expedition],[data-magellan-expedition-clone]{background:#fff;z-index:50;min-width:100%;padding:10px}[data-magellan-expedition] .sub-nav,[data-magellan-expedition-clone] .sub-nav{margin-bottom:0}[data-magellan-expedition] .sub-nav dd,[data-magellan-expedition-clone] .sub-nav dd{margin-bottom:0}[data-magellan-expedition] .sub-nav a,[data-magellan-expedition-clone] .sub-nav a{line-height:1.8em}.icon-bar{width:100%;font-size:0;display:inline-block;background:#333}.icon-bar>*{text-align:center;font-size:1rem;width:25%;margin:0 auto;display:block;padding:1.25rem;float:left}.icon-bar>* i,.icon-bar>* img{display:block;margin:0 auto}.icon-bar>* i+label,.icon-bar>* img+label{margin-top:.0625rem}.icon-bar>* i{font-size:1.875rem;vertical-align:middle}.icon-bar>* img{width:1.875rem;height:1.875rem}.icon-bar.label-right>* i,.icon-bar.label-right>* img{margin:0 .0625rem 0 0;display:inline-block}.icon-bar.label-right>* i+label,.icon-bar.label-right>* img+label{margin-top:0}.icon-bar.label-right>* label{display:inline-block}.icon-bar.vertical.label-right>*{text-align:left}.icon-bar.vertical,.icon-bar.small-vertical{height:100%;width:auto}.icon-bar.vertical .item,.icon-bar.small-vertical .item{width:auto;margin:auto;float:none}@media only screen and (min-width: 40.063em){.icon-bar.medium-vertical{height:100%;width:auto}.icon-bar.medium-vertical .item{width:auto;margin:auto;float:none}}@media only screen and (min-width: 64.063em){.icon-bar.large-vertical{height:100%;width:auto}.icon-bar.large-vertical .item{width:auto;margin:auto;float:none}}.icon-bar>*{font-size:1rem;padding:1.25rem}.icon-bar>* i+label,.icon-bar>* img+label{margin-top:.0625rem}.icon-bar>* i{font-size:1.875rem}.icon-bar>* img{width:1.875rem;height:1.875rem}.icon-bar>*:hover{background:#008cba}.icon-bar>* label{color:#fff}.icon-bar>* i{color:#fff}.icon-bar.two-up .item{width:50%}.icon-bar.two-up.vertical .item,.icon-bar.two-up.small-vertical .item{width:auto}@media only screen and (min-width: 40.063em){.icon-bar.two-up.medium-vertical .item{width:auto}}@media only screen and (min-width: 64.063em){.icon-bar.two-up.large-vertical .item{width:auto}}.icon-bar.three-up .item{width:33.3333%}.icon-bar.three-up.vertical .item,.icon-bar.three-up.small-vertical .item{width:auto}@media only screen and (min-width: 40.063em){.icon-bar.three-up.medium-vertical .item{width:auto}}@media only screen and (min-width: 64.063em){.icon-bar.three-up.large-vertical .item{width:auto}}.icon-bar.four-up .item{width:25%}.icon-bar.four-up.vertical .item,.icon-bar.four-up.small-vertical .item{width:auto}@media only screen and (min-width: 40.063em){.icon-bar.four-up.medium-vertical .item{width:auto}}@media only screen and (min-width: 64.063em){.icon-bar.four-up.large-vertical .item{width:auto}}.icon-bar.five-up .item{width:20%}.icon-bar.five-up.vertical .item,.icon-bar.five-up.small-vertical .item{width:auto}@media only screen and (min-width: 40.063em){.icon-bar.five-up.medium-vertical .item{width:auto}}@media only screen and (min-width: 64.063em){.icon-bar.five-up.large-vertical .item{width:auto}}.icon-bar.six-up .item{width:16.66667%}.icon-bar.six-up.vertical .item,.icon-bar.six-up.small-vertical .item{width:auto}@media only screen and (min-width: 40.063em){.icon-bar.six-up.medium-vertical .item{width:auto}}@media only screen and (min-width: 64.063em){.icon-bar.six-up.large-vertical .item{width:auto}}.tabs{margin-bottom:0 !important;margin-left:0}.tabs:before,.tabs:after{content:" ";display:table}.tabs:after{clear:both}.tabs dd,.tabs .tab-title{position:relative;margin-bottom:0 !important;list-style:none;float:left}.tabs dd>a,.tabs .tab-title>a{outline:none;display:block;background-color:#efefef;color:#222;padding:1rem 2rem;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:1rem}.tabs dd>a:hover,.tabs .tab-title>a:hover{background-color:#e1e1e1}.tabs dd.active a,.tabs .tab-title.active a{background-color:#fff;color:#222}.tabs.radius dd:first-child a,.tabs.radius .tab:first-child a{-webkit-border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-bottom-left-radius:3px;border-top-left-radius:3px}.tabs.radius dd:last-child a,.tabs.radius .tab:last-child a{-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.tabs.vertical dd,.tabs.vertical .tab-title{position:inherit;float:none;display:block;top:auto}.tabs-content{margin-bottom:1.5rem;width:100%}.tabs-content:before,.tabs-content:after{content:" ";display:table}.tabs-content:after{clear:both}.tabs-content>.content{display:none;float:left;padding:0.9375rem 0;width:100%}.tabs-content>.content.active{display:block;float:none}.tabs-content>.content.contained{padding:0.9375rem}.tabs-content.vertical{display:block}.tabs-content.vertical>.content{padding:0 0.9375rem}@media only screen and (min-width: 40.063em){.tabs.vertical{width:20%;max-width:20%;float:left;margin:0 0 1.25rem}.tabs-content.vertical{width:80%;max-width:80%;float:left;margin-left:-1px;padding-left:1rem}}.no-js .tabs-content>.content{display:block;float:none}ul.pagination{display:block;min-height:1.5rem;margin-left:-0.3125rem}ul.pagination li{height:1.5rem;color:#222;font-size:0.875rem;margin-left:0.3125rem}ul.pagination li a,ul.pagination li button{display:block;padding:0.0625rem 0.625rem 0.0625rem;color:#999;background:none;border-radius:3px;font-weight:normal;font-size:1em;line-height:inherit;transition:background-color 300ms ease-out}ul.pagination li:hover a,ul.pagination li a:focus,ul.pagination li:hover button,ul.pagination li button:focus{background:#e6e6e6}ul.pagination li.unavailable a,ul.pagination li.unavailable button{cursor:default;color:#999}ul.pagination li.unavailable:hover a,ul.pagination li.unavailable a:focus,ul.pagination li.unavailable:hover button,ul.pagination li.unavailable button:focus{background:transparent}ul.pagination li.current a,ul.pagination li.current button{background:#008cba;color:#fff;font-weight:bold;cursor:default}ul.pagination li.current a:hover,ul.pagination li.current a:focus,ul.pagination li.current button:hover,ul.pagination li.current button:focus{background:#008cba}ul.pagination li{float:left;display:block}.pagination-centered{text-align:center}.pagination-centered ul.pagination li{float:none;display:inline-block}.side-nav{display:block;margin:0;padding:0.875rem 0;list-style-type:none;list-style-position:outside;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif}.side-nav li{margin:0 0 0.4375rem 0;font-size:0.875rem;font-weight:normal}.side-nav li a:not(.button){display:block;color:#008cba;margin:0;padding:0.4375rem 0.875rem}.side-nav li a:not(.button):hover,.side-nav li a:not(.button):focus{background:rgba(0,0,0,0.025);color:#1cc7ff}.side-nav li.active>a:first-child:not(.button){color:#1cc7ff;font-weight:normal;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif}.side-nav li.divider{border-top:1px solid;height:0;padding:0;list-style:none;border-top-color:#fff}.side-nav li.heading{color:#008cba;font-size:0.875rem;font-weight:bold;text-transform:uppercase}.accordion{margin-bottom:0}.accordion:before,.accordion:after{content:" ";display:table}.accordion:after{clear:both}.accordion .accordion-navigation,.accordion dd{display:block;margin-bottom:0 !important}.accordion .accordion-navigation.active>a,.accordion dd.active>a{background:#e8e8e8}.accordion .accordion-navigation>a,.accordion dd>a{background:#efefef;color:#222;padding:1rem;display:block;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:1rem}.accordion .accordion-navigation>a:hover,.accordion dd>a:hover{background:#e3e3e3}.accordion .accordion-navigation>.content,.accordion dd>.content{display:none;padding:0.9375rem}.accordion .accordion-navigation>.content.active,.accordion dd>.content.active{display:block;background:#fff}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}.text-justify{text-align:justify !important}@media only screen and (max-width: 40em){.small-only-text-left{text-align:left !important}.small-only-text-right{text-align:right !important}.small-only-text-center{text-align:center !important}.small-only-text-justify{text-align:justify !important}}@media only screen{.small-text-left{text-align:left !important}.small-text-right{text-align:right !important}.small-text-center{text-align:center !important}.small-text-justify{text-align:justify !important}}@media only screen and (min-width: 40.063em) and (max-width: 64em){.medium-only-text-left{text-align:left !important}.medium-only-text-right{text-align:right !important}.medium-only-text-center{text-align:center !important}.medium-only-text-justify{text-align:justify !important}}@media only screen and (min-width: 40.063em){.medium-text-left{text-align:left !important}.medium-text-right{text-align:right !important}.medium-text-center{text-align:center !important}.medium-text-justify{text-align:justify !important}}@media only screen and (min-width: 64.063em) and (max-width: 90em){.large-only-text-left{text-align:left !important}.large-only-text-right{text-align:right !important}.large-only-text-center{text-align:center !important}.large-only-text-justify{text-align:justify !important}}@media only screen and (min-width: 64.063em){.large-text-left{text-align:left !important}.large-text-right{text-align:right !important}.large-text-center{text-align:center !important}.large-text-justify{text-align:justify !important}}@media only screen and (min-width: 90.063em) and (max-width: 120em){.xlarge-only-text-left{text-align:left !important}.xlarge-only-text-right{text-align:right !important}.xlarge-only-text-center{text-align:center !important}.xlarge-only-text-justify{text-align:justify !important}}@media only screen and (min-width: 90.063em){.xlarge-text-left{text-align:left !important}.xlarge-text-right{text-align:right !important}.xlarge-text-center{text-align:center !important}.xlarge-text-justify{text-align:justify !important}}@media only screen and (min-width: 120.063em) and (max-width: 99999999em){.xxlarge-only-text-left{text-align:left !important}.xxlarge-only-text-right{text-align:right !important}.xxlarge-only-text-center{text-align:center !important}.xxlarge-only-text-justify{text-align:justify !important}}@media only screen and (min-width: 120.063em){.xxlarge-text-left{text-align:left !important}.xxlarge-text-right{text-align:right !important}.xxlarge-text-center{text-align:center !important}.xxlarge-text-justify{text-align:justify !important}}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}a{color:#008cba;text-decoration:none;line-height:inherit}a:hover,a:focus{color:#0078a0}a img{border:none}p{font-family:inherit;font-weight:normal;font-size:1rem;line-height:1.6;margin-bottom:1.25rem;text-rendering:optimizeLegibility}p.lead{font-size:1.21875rem;line-height:1.6}p aside{font-size:0.875rem;line-height:1.35;font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;font-style:normal;color:#222;text-rendering:optimizeLegibility;margin-top:0.2rem;margin-bottom:0.5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:60%;color:#6f6f6f;line-height:0}h1{font-size:2.125rem}h2{font-size:1.6875rem}h3{font-size:1.375rem}h4{font-size:1.125rem}h5{font-size:1.125rem}h6{font-size:1rem}.subheader{line-height:1.4;color:#6f6f6f;font-weight:normal;margin-top:0.2rem;margin-bottom:0.5rem}hr{border:solid #ddd;border-width:1px 0 0;clear:both;margin:1.25rem 0 1.1875rem;height:0}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:60%;line-height:inherit}code{font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#333;background-color:#f8f8f8;border-width:1px;border-style:solid;border-color:#dfdfdf;padding:0.125rem 0.3125rem 0.0625rem}ul,ol,dl{font-size:1rem;line-height:1.6;margin-bottom:1.25rem;list-style-position:outside;font-family:inherit}ul{margin-left:1.1rem}ul.no-bullet{margin-left:0}ul.no-bullet li ul,ul.no-bullet li ol{margin-left:1.25rem;margin-bottom:0;list-style:none}ul li ul,ul li ol{margin-left:1.25rem;margin-bottom:0}ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}ul.square{list-style-type:square;margin-left:1.1rem}ul.circle{list-style-type:circle;margin-left:1.1rem}ul.disc{list-style-type:disc;margin-left:1.1rem}ul.no-bullet{list-style:none}ol{margin-left:1.4rem}ol li ul,ol li ol{margin-left:1.25rem;margin-bottom:0}dl dt{margin-bottom:0.3rem;font-weight:bold}dl dd{margin-bottom:0.75rem}abbr,acronym{text-transform:uppercase;font-size:90%;color:#222;cursor:help}abbr{text-transform:none}abbr[title]{border-bottom:1px dotted #ddd}blockquote{margin:0 0 1.25rem;padding:0.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #ddd}blockquote cite{display:block;font-size:0.8125rem;color:#555}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:#555}blockquote,blockquote p{line-height:1.6;color:#6f6f6f}.vcard{display:inline-block;margin:0 0 1.25rem 0;border:1px solid #ddd;padding:0.625rem 0.75rem}.vcard li{margin:0;display:block}.vcard .fn{font-weight:bold;font-size:0.9375rem}.vevent .summary{font-weight:bold}.vevent abbr{cursor:default;text-decoration:none;font-weight:bold;border:none;padding:0 0.0625rem}@media only screen and (min-width: 40.063em){h1,h2,h3,h4,h5,h6{line-height:1.4}h1{font-size:2.75rem}h2{font-size:2.3125rem}h3{font-size:1.6875rem}h4{font-size:1.4375rem}h5{font-size:1.125rem}h6{font-size:1rem}}.print-only{display:none !important}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.hide-on-print{display:none !important}.print-only{display:block !important}.hide-for-print{display:none !important}.show-for-print{display:inherit !important}}.split.button{position:relative;padding-right:5.0625rem}.split.button span{display:block;height:100%;position:absolute;right:0;top:0;border-left:solid 1px}.split.button span:after{position:absolute;content:"";width:0;height:0;display:block;border-style:inset;top:50%;left:50%}.split.button span:active{background-color:rgba(0,0,0,0.1)}.split.button span{border-left-color:rgba(255,255,255,0.5)}.split.button span{width:3.09375rem}.split.button span:after{border-top-style:solid;border-width:0.375rem;top:48%;margin-left:-0.375rem}.split.button span:after{border-color:#fff transparent transparent transparent}.split.button.secondary span{border-left-color:rgba(255,255,255,0.5)}.split.button.secondary span:after{border-color:#fff transparent transparent transparent}.split.button.alert span{border-left-color:rgba(255,255,255,0.5)}.split.button.success span{border-left-color:rgba(255,255,255,0.5)}.split.button.tiny{padding-right:3.75rem}.split.button.tiny span{width:2.25rem}.split.button.tiny span:after{border-top-style:solid;border-width:0.375rem;top:48%;margin-left:-0.375rem}.split.button.small{padding-right:4.375rem}.split.button.small span{width:2.625rem}.split.button.small span:after{border-top-style:solid;border-width:0.4375rem;top:48%;margin-left:-0.375rem}.split.button.large{padding-right:5.5rem}.split.button.large span{width:3.4375rem}.split.button.large span:after{border-top-style:solid;border-width:0.3125rem;top:48%;margin-left:-0.375rem}.split.button.expand{padding-left:2rem}.split.button.secondary span:after{border-color:#333 transparent transparent transparent}.split.button.radius span{-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.split.button.round span{-webkit-border-bottom-right-radius:1000px;-webkit-border-top-right-radius:1000px;border-bottom-right-radius:1000px;border-top-right-radius:1000px}.reveal-modal-bg{position:fixed;top:0;bottom:0;left:0;right:0;background:#000;background:rgba(0,0,0,0.45);z-index:1004;display:none;left:0}.reveal-modal,dialog{visibility:hidden;display:none;position:absolute;z-index:1005;width:100vw;top:0;border-radius:3px;left:0;background-color:#fff;padding:1.25rem;border:solid 1px #666;box-shadow:0 0 10px rgba(0,0,0,0.4);padding:1.875rem}@media only screen and (max-width: 40em){.reveal-modal,dialog{min-height:100vh}}.reveal-modal .column,dialog .column,.reveal-modal .columns,dialog .columns{min-width:0}.reveal-modal>:first-child,dialog>:first-child{margin-top:0}.reveal-modal>:last-child,dialog>:last-child{margin-bottom:0}@media only screen and (min-width: 40.063em){.reveal-modal,dialog{width:80%;max-width:62.5rem;left:0;right:0;margin:0 auto}}@media only screen and (min-width: 40.063em){.reveal-modal,dialog{top:6.25rem}}.reveal-modal.radius,dialog.radius{border-radius:3px}.reveal-modal.round,dialog.round{border-radius:1000px}.reveal-modal.collapse,dialog.collapse{padding:0}@media only screen and (min-width: 40.063em){.reveal-modal.tiny,dialog.tiny{width:30%;max-width:62.5rem;left:0;right:0;margin:0 auto}}@media only screen and (min-width: 40.063em){.reveal-modal.small,dialog.small{width:40%;max-width:62.5rem;left:0;right:0;margin:0 auto}}@media only screen and (min-width: 40.063em){.reveal-modal.medium,dialog.medium{width:60%;max-width:62.5rem;left:0;right:0;margin:0 auto}}@media only screen and (min-width: 40.063em){.reveal-modal.large,dialog.large{width:70%;max-width:62.5rem;left:0;right:0;margin:0 auto}}@media only screen and (min-width: 40.063em){.reveal-modal.xlarge,dialog.xlarge{width:95%;max-width:62.5rem;left:0;right:0;margin:0 auto}}.reveal-modal.full,dialog.full{top:0;left:0;height:100%;height:100vh;min-height:100vh;max-width:none !important;margin-left:0 !important}@media only screen and (min-width: 40.063em){.reveal-modal.full,dialog.full{width:100vw;max-width:62.5rem;left:0;right:0;margin:0 auto}}.reveal-modal .close-reveal-modal,dialog .close-reveal-modal{font-size:2.5rem;line-height:1;position:absolute;top:0.5rem;right:0.6875rem;color:#aaa;font-weight:bold;cursor:pointer}dialog{display:none}dialog::backdrop,dialog+.backdrop{position:fixed;top:0;bottom:0;left:0;right:0;background:#000;background:rgba(0,0,0,0.45);z-index:auto;display:none;left:0}dialog[open]{display:block}@media print{dialog,.reveal-modal,dialog{display:none;background:#fff !important}}.has-tip{border-bottom:dotted 1px #ccc;cursor:help;font-weight:bold;color:#333}.has-tip:hover,.has-tip:focus{border-bottom:dotted 1px #003f54;color:#008cba}.has-tip.tip-left,.has-tip.tip-right{float:none !important}.tooltip{display:none;position:absolute;z-index:1006;font-weight:normal;font-size:0.875rem;line-height:1.3;padding:0.75rem;max-width:300px;left:50%;width:100%;color:#fff;background:#333}.tooltip>.nub{display:block;left:5px;position:absolute;width:0;height:0;border:solid 5px;border-color:transparent transparent #333 transparent;top:-10px;pointer-events:none}.tooltip>.nub.rtl{left:auto;right:5px}.tooltip.radius{border-radius:3px}.tooltip.round{border-radius:1000px}.tooltip.round>.nub{left:2rem}.tooltip.opened{color:#008cba !important;border-bottom:dotted 1px #003f54 !important}.tap-to-close{display:block;font-size:0.625rem;color:#777;font-weight:normal}@media only screen and (min-width: 40.063em){.tooltip>.nub{border-color:transparent transparent #333 transparent;top:-10px}.tooltip.tip-top>.nub{border-color:#333 transparent transparent transparent;top:auto;bottom:-10px}.tooltip.tip-left,.tooltip.tip-right{float:none !important}.tooltip.tip-left>.nub{border-color:transparent transparent transparent #333;right:-10px;left:auto;top:50%;margin-top:-5px}.tooltip.tip-right>.nub{border-color:transparent #333 transparent transparent;right:auto;left:-10px;top:50%;margin-top:-5px}}.clearing-thumbs,[data-clearing]{margin-bottom:0;margin-left:0;list-style:none}.clearing-thumbs:before,.clearing-thumbs:after,[data-clearing]:before,[data-clearing]:after{content:" ";display:table}.clearing-thumbs:after,[data-clearing]:after{clear:both}.clearing-thumbs li,[data-clearing] li{float:left;margin-right:10px}.clearing-thumbs[class*="block-grid-"] li,[data-clearing][class*="block-grid-"] li{margin-right:0}.clearing-blackout{background:#333;position:fixed;width:100%;height:100%;top:0;left:0;z-index:998}.clearing-blackout .clearing-close{display:block}.clearing-container{position:relative;z-index:998;height:100%;overflow:hidden;margin:0}.clearing-touch-label{position:absolute;top:50%;left:50%;color:#aaa;font-size:0.6em}.visible-img{height:95%;position:relative}.visible-img img{position:absolute;left:50%;top:50%;margin-left:-50%;max-height:100%;max-width:100%}.clearing-caption{color:#ccc;font-size:0.875em;line-height:1.3;margin-bottom:0;text-align:center;bottom:0;background:#333;width:100%;padding:10px 30px 20px;position:absolute;left:0}.clearing-close{z-index:999;padding-left:20px;padding-top:10px;font-size:30px;line-height:1;color:#ccc;display:none}.clearing-close:hover,.clearing-close:focus{color:#ccc}.clearing-assembled .clearing-container{height:100%}.clearing-assembled .clearing-container .carousel>ul{display:none}.clearing-feature li{display:none}.clearing-feature li.clearing-featured-img{display:block}@media only screen and (min-width: 40.063em){.clearing-main-prev,.clearing-main-next{position:absolute;height:100%;width:40px;top:0}.clearing-main-prev>span,.clearing-main-next>span{position:absolute;top:50%;display:block;width:0;height:0;border:solid 12px}.clearing-main-prev>span:hover,.clearing-main-next>span:hover{opacity:0.8}.clearing-main-prev{left:0}.clearing-main-prev>span{left:5px;border-color:transparent;border-right-color:#ccc}.clearing-main-next{right:0}.clearing-main-next>span{border-color:transparent;border-left-color:#ccc}.clearing-main-prev.disabled,.clearing-main-next.disabled{opacity:0.3}.clearing-assembled .clearing-container .carousel{background:rgba(51,51,51,0.8);height:120px;margin-top:10px;text-align:center}.clearing-assembled .clearing-container .carousel>ul{display:inline-block;z-index:999;height:100%;position:relative;float:none}.clearing-assembled .clearing-container .carousel>ul li{display:block;width:120px;min-height:inherit;float:left;overflow:hidden;margin-right:0;padding:0;position:relative;cursor:pointer;opacity:0.4;clear:none}.clearing-assembled .clearing-container .carousel>ul li.fix-height img{height:100%;max-width:none}.clearing-assembled .clearing-container .carousel>ul li a.th{border:none;box-shadow:none;display:block}.clearing-assembled .clearing-container .carousel>ul li img{cursor:pointer !important;width:100% !important}.clearing-assembled .clearing-container .carousel>ul li.visible{opacity:1}.clearing-assembled .clearing-container .carousel>ul li:hover{opacity:0.8}.clearing-assembled .clearing-container .visible-img{background:#333;overflow:hidden;height:85%}.clearing-close{position:absolute;top:10px;right:20px;padding-left:0;padding-top:0}}.progress{background-color:#f6f6f6;height:1.5625rem;border:1px solid #fff;padding:0.125rem;margin-bottom:0.625rem}.progress .meter{background:#008cba;height:100%;display:block}.progress.secondary .meter{background:#e7e7e7;height:100%;display:block}.progress.success .meter{background:#43ac6a;height:100%;display:block}.progress.alert .meter{background:#f04124;height:100%;display:block}.progress.radius{border-radius:3px}.progress.radius .meter{border-radius:2px}.progress.round{border-radius:1000px}.progress.round .meter{border-radius:999px}.sub-nav{display:block;width:auto;overflow:hidden;margin-bottom:-0.25rem 0 1.125rem;padding-top:0.25rem}.sub-nav dt{text-transform:uppercase}.sub-nav dt,.sub-nav dd,.sub-nav li{float:left;display:inline;margin-left:1rem;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;font-size:0.875rem;color:#999}.sub-nav dt a,.sub-nav dd a,.sub-nav li a{text-decoration:none;color:#999;padding:0.1875rem 1rem}.sub-nav dt a:hover,.sub-nav dd a:hover,.sub-nav li a:hover{color:#737373}.sub-nav dt.active a,.sub-nav dd.active a,.sub-nav li.active a{border-radius:3px;font-weight:normal;background:#008cba;padding:0.1875rem 1rem;cursor:default;color:#fff}.sub-nav dt.active a:hover,.sub-nav dd.active a:hover,.sub-nav li.active a:hover{background:#0078a0}.joyride-list{display:none}.joyride-tip-guide{display:none;position:absolute;background:#333;color:#fff;z-index:101;top:0;left:2.5%;font-family:inherit;font-weight:normal;width:95%}.lt-ie9 .joyride-tip-guide{max-width:800px;left:50%;margin-left:-400px}.joyride-content-wrapper{width:100%;padding:1.125rem 1.25rem 1.5rem}.joyride-content-wrapper .button{margin-bottom:0 !important}.joyride-content-wrapper .joyride-prev-tip{margin-right:10px}.joyride-tip-guide .joyride-nub{display:block;position:absolute;left:22px;width:0;height:0;border:10px solid #333}.joyride-tip-guide .joyride-nub.top{border-top-style:solid;border-color:#333;border-top-color:transparent !important;border-left-color:transparent !important;border-right-color:transparent !important;top:-20px}.joyride-tip-guide .joyride-nub.bottom{border-bottom-style:solid;border-color:#333 !important;border-bottom-color:transparent !important;border-left-color:transparent !important;border-right-color:transparent !important;bottom:-20px}.joyride-tip-guide .joyride-nub.right{right:-20px}.joyride-tip-guide .joyride-nub.left{left:-20px}.joyride-tip-guide h1,.joyride-tip-guide h2,.joyride-tip-guide h3,.joyride-tip-guide h4,.joyride-tip-guide h5,.joyride-tip-guide h6{line-height:1.25;margin:0;font-weight:bold;color:#fff}.joyride-tip-guide p{margin:0 0 1.125rem 0;font-size:0.875rem;line-height:1.3}.joyride-timer-indicator-wrap{width:50px;height:3px;border:solid 1px #555;position:absolute;right:1.0625rem;bottom:1rem}.joyride-timer-indicator{display:block;width:0;height:inherit;background:#666}.joyride-close-tip{position:absolute;right:12px;top:10px;color:#777 !important;text-decoration:none;font-size:24px;font-weight:normal;line-height:.5 !important}.joyride-close-tip:hover,.joyride-close-tip:focus{color:#eee !important}.joyride-modal-bg{position:fixed;height:100%;width:100%;background:transparent;background:rgba(0,0,0,0.5);z-index:100;display:none;top:0;left:0;cursor:pointer}.joyride-expose-wrapper{background-color:#fff;position:absolute;border-radius:3px;z-index:102;box-shadow:0 0 15px #fff}.joyride-expose-cover{background:transparent;border-radius:3px;position:absolute;z-index:9999;top:0;left:0}@media only screen and (min-width: 40.063em){.joyride-tip-guide{width:300px;left:inherit}.joyride-tip-guide .joyride-nub.bottom{border-color:#333 !important;border-bottom-color:transparent !important;border-left-color:transparent !important;border-right-color:transparent !important;bottom:-20px}.joyride-tip-guide .joyride-nub.right{border-color:#333 !important;border-top-color:transparent !important;border-right-color:transparent !important;border-bottom-color:transparent !important;top:22px;left:auto;right:-20px}.joyride-tip-guide .joyride-nub.left{border-color:#333 !important;border-top-color:transparent !important;border-left-color:transparent !important;border-bottom-color:transparent !important;top:22px;left:-20px;right:auto}}.label{font-weight:normal;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:0.25rem 0.5rem 0.25rem;font-size:0.6875rem;background-color:#008cba;color:#fff}.label.radius{border-radius:3px}.label.round{border-radius:1000px}.label.alert{background-color:#f04124;color:#fff}.label.warning{background-color:#f08a24;color:#fff}.label.success{background-color:#43ac6a;color:#fff}.label.secondary{background-color:#e7e7e7;color:#333}.label.info{background-color:#a0d3e8;color:#333}.off-canvas-wrap{-webkit-backface-visibility:hidden;position:relative;width:100%;overflow:hidden}.off-canvas-wrap.move-right,.off-canvas-wrap.move-left{min-height:100%;-webkit-overflow-scrolling:touch}.inner-wrap{-webkit-backface-visibility:hidden;position:relative;width:100%;-webkit-transition:-webkit-transform 500ms ease;-moz-transition:-moz-transform 500ms ease;-ms-transition:-ms-transform 500ms ease;-o-transition:-o-transform 500ms ease;transition:transform 500ms ease}.inner-wrap:before,.inner-wrap:after{content:" ";display:table}.inner-wrap:after{clear:both}.tab-bar{-webkit-backface-visibility:hidden;background:#333;color:#fff;height:2.8125rem;line-height:2.8125rem;position:relative}.tab-bar h1,.tab-bar h2,.tab-bar h3,.tab-bar h4,.tab-bar h5,.tab-bar h6{color:#fff;font-weight:bold;line-height:2.8125rem;margin:0}.tab-bar h1,.tab-bar h2,.tab-bar h3,.tab-bar h4{font-size:1.125rem}.left-small{width:2.8125rem;height:2.8125rem;position:absolute;top:0;border-right:solid 1px #1a1a1a;left:0}.right-small{width:2.8125rem;height:2.8125rem;position:absolute;top:0;border-left:solid 1px #1a1a1a;right:0}.tab-bar-section{padding:0 0.625rem;position:absolute;text-align:center;height:2.8125rem;top:0}@media only screen and (min-width: 40.063em){.tab-bar-section.left,.tab-bar-section.right{text-align:left}}.tab-bar-section.left{left:0;right:2.8125rem}.tab-bar-section.right{left:2.8125rem;right:0}.tab-bar-section.middle{left:2.8125rem;right:2.8125rem}.tab-bar .menu-icon{text-indent:2.1875rem;width:2.8125rem;height:2.8125rem;display:block;padding:0;color:#fff;position:relative;transform:translate3d(0, 0, 0)}.tab-bar .menu-icon span::after{content:"";position:absolute;display:block;height:0;top:50%;margin-top:-0.5rem;left:0.90625rem;box-shadow:0 0px 0 1px #fff,0 7px 0 1px #fff,0 14px 0 1px #fff;width:1rem}.tab-bar .menu-icon span:hover:after{box-shadow:0 0px 0 1px #b3b3b3,0 7px 0 1px #b3b3b3,0 14px 0 1px #b3b3b3}.left-off-canvas-menu{-webkit-backface-visibility:hidden;width:15.625rem;top:0;bottom:0;position:absolute;overflow-x:hidden;overflow-y:auto;background:#333;z-index:1001;box-sizing:content-box;transition:transform 500ms ease 0s;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;-ms-transform:translate(-100.5%, 0);-webkit-transform:translate3d(-100.5%, 0, 0);-moz-transform:translate3d(-100.5%, 0, 0);-ms-transform:translate3d(-100.5%, 0, 0);-o-transform:translate3d(-100.5%, 0, 0);transform:translate3d(-100.5%, 0, 0);left:0}.left-off-canvas-menu *{-webkit-backface-visibility:hidden}.right-off-canvas-menu{-webkit-backface-visibility:hidden;width:15.625rem;top:0;bottom:0;position:absolute;overflow-x:hidden;overflow-y:auto;background:#333;z-index:1001;box-sizing:content-box;transition:transform 500ms ease 0s;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;-ms-transform:translate(100.5%, 0);-webkit-transform:translate3d(100.5%, 0, 0);-moz-transform:translate3d(100.5%, 0, 0);-ms-transform:translate3d(100.5%, 0, 0);-o-transform:translate3d(100.5%, 0, 0);transform:translate3d(100.5%, 0, 0);right:0}.right-off-canvas-menu *{-webkit-backface-visibility:hidden}ul.off-canvas-list{list-style-type:none;padding:0;margin:0}ul.off-canvas-list li label{display:block;padding:0.3rem 0.9375rem;color:#999;text-transform:uppercase;font-size:0.75rem;font-weight:bold;background:#444;border-top:1px solid #5e5e5e;border-bottom:none;margin:0}ul.off-canvas-list li a{display:block;padding:0.66667rem;color:rgba(255,255,255,0.7);border-bottom:1px solid #262626;transition:background 300ms ease}ul.off-canvas-list li a:hover{background:#242424}.move-right>.inner-wrap{-ms-transform:translate(15.625rem, 0);-webkit-transform:translate3d(15.625rem, 0, 0);-moz-transform:translate3d(15.625rem, 0, 0);-ms-transform:translate3d(15.625rem, 0, 0);-o-transform:translate3d(15.625rem, 0, 0);transform:translate3d(15.625rem, 0, 0)}.move-right .exit-off-canvas{-webkit-backface-visibility:hidden;transition:background 300ms ease;cursor:pointer;box-shadow:-4px 0 4px rgba(0,0,0,0.5),4px 0 4px rgba(0,0,0,0.5);display:block;position:absolute;background:rgba(255,255,255,0.2);top:0;bottom:0;left:0;right:0;z-index:1002;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media only screen and (min-width: 40.063em){.move-right .exit-off-canvas:hover{background:rgba(255,255,255,0.05)}}.move-left>.inner-wrap{-ms-transform:translate(-15.625rem, 0);-webkit-transform:translate3d(-15.625rem, 0, 0);-moz-transform:translate3d(-15.625rem, 0, 0);-ms-transform:translate3d(-15.625rem, 0, 0);-o-transform:translate3d(-15.625rem, 0, 0);transform:translate3d(-15.625rem, 0, 0)}.move-left .exit-off-canvas{-webkit-backface-visibility:hidden;transition:background 300ms ease;cursor:pointer;box-shadow:-4px 0 4px rgba(0,0,0,0.5),4px 0 4px rgba(0,0,0,0.5);display:block;position:absolute;background:rgba(255,255,255,0.2);top:0;bottom:0;left:0;right:0;z-index:1002;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media only screen and (min-width: 40.063em){.move-left .exit-off-canvas:hover{background:rgba(255,255,255,0.05)}}.offcanvas-overlap .left-off-canvas-menu,.offcanvas-overlap .right-off-canvas-menu{-ms-transform:none;-webkit-transform:none;-moz-transform:none;-o-transform:none;transform:none;z-index:1003}.offcanvas-overlap .exit-off-canvas{-webkit-backface-visibility:hidden;transition:background 300ms ease;cursor:pointer;box-shadow:-4px 0 4px rgba(0,0,0,0.5),4px 0 4px rgba(0,0,0,0.5);display:block;position:absolute;background:rgba(255,255,255,0.2);top:0;bottom:0;left:0;right:0;z-index:1002;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media only screen and (min-width: 40.063em){.offcanvas-overlap .exit-off-canvas:hover{background:rgba(255,255,255,0.05)}}.offcanvas-overlap-left .right-off-canvas-menu{-ms-transform:none;-webkit-transform:none;-moz-transform:none;-o-transform:none;transform:none;z-index:1003}.offcanvas-overlap-left .exit-off-canvas{-webkit-backface-visibility:hidden;transition:background 300ms ease;cursor:pointer;box-shadow:-4px 0 4px rgba(0,0,0,0.5),4px 0 4px rgba(0,0,0,0.5);display:block;position:absolute;background:rgba(255,255,255,0.2);top:0;bottom:0;left:0;right:0;z-index:1002;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media only screen and (min-width: 40.063em){.offcanvas-overlap-left .exit-off-canvas:hover{background:rgba(255,255,255,0.05)}}.offcanvas-overlap-right .left-off-canvas-menu{-ms-transform:none;-webkit-transform:none;-moz-transform:none;-o-transform:none;transform:none;z-index:1003}.offcanvas-overlap-right .exit-off-canvas{-webkit-backface-visibility:hidden;transition:background 300ms ease;cursor:pointer;box-shadow:-4px 0 4px rgba(0,0,0,0.5),4px 0 4px rgba(0,0,0,0.5);display:block;position:absolute;background:rgba(255,255,255,0.2);top:0;bottom:0;left:0;right:0;z-index:1002;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media only screen and (min-width: 40.063em){.offcanvas-overlap-right .exit-off-canvas:hover{background:rgba(255,255,255,0.05)}}.no-csstransforms .left-off-canvas-menu{left:-15.625rem}.no-csstransforms .right-off-canvas-menu{right:-15.625rem}.no-csstransforms .move-left>.inner-wrap{right:15.625rem}.no-csstransforms .move-right>.inner-wrap{left:15.625rem}.left-submenu{-webkit-backface-visibility:hidden;width:15.625rem;top:0;bottom:0;position:absolute;margin:0;overflow-x:hidden;overflow-y:auto;background:#333;z-index:1002;box-sizing:content-box;-webkit-overflow-scrolling:touch;-ms-transform:translate(-100%, 0);-webkit-transform:translate3d(-100%, 0, 0);-moz-transform:translate3d(-100%, 0, 0);-ms-transform:translate3d(-100%, 0, 0);-o-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);left:0;-webkit-transition:-webkit-transform 500ms ease;-moz-transition:-moz-transform 500ms ease;-ms-transition:-ms-transform 500ms ease;-o-transition:-o-transform 500ms ease;transition:transform 500ms ease}.left-submenu *{-webkit-backface-visibility:hidden}.left-submenu .back>a{padding:0.3rem 0.9375rem;color:#999;text-transform:uppercase;font-weight:bold;background:#444;border-top:1px solid #5e5e5e;border-bottom:none;margin:0}.left-submenu .back>a:hover{background:#303030;border-top:1px solid #5e5e5e;border-bottom:none}.left-submenu .back>a:before{content:"\AB";margin-right:0.5rem;display:inline}.left-submenu.move-right{-ms-transform:translate(0%, 0);-webkit-transform:translate3d(0%, 0, 0);-moz-transform:translate3d(0%, 0, 0);-ms-transform:translate3d(0%, 0, 0);-o-transform:translate3d(0%, 0, 0);transform:translate3d(0%, 0, 0)}.right-submenu{-webkit-backface-visibility:hidden;width:15.625rem;top:0;bottom:0;position:absolute;margin:0;overflow-x:hidden;overflow-y:auto;background:#333;z-index:1002;box-sizing:content-box;-webkit-overflow-scrolling:touch;-ms-transform:translate(100%, 0);-webkit-transform:translate3d(100%, 0, 0);-moz-transform:translate3d(100%, 0, 0);-ms-transform:translate3d(100%, 0, 0);-o-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);right:0;-webkit-transition:-webkit-transform 500ms ease;-moz-transition:-moz-transform 500ms ease;-ms-transition:-ms-transform 500ms ease;-o-transition:-o-transform 500ms ease;transition:transform 500ms ease}.right-submenu *{-webkit-backface-visibility:hidden}.right-submenu .back>a{padding:0.3rem 0.9375rem;color:#999;text-transform:uppercase;font-weight:bold;background:#444;border-top:1px solid #5e5e5e;border-bottom:none;margin:0}.right-submenu .back>a:hover{background:#303030;border-top:1px solid #5e5e5e;border-bottom:none}.right-submenu .back>a:after{content:"\BB";margin-left:0.5rem;display:inline}.right-submenu.move-left{-ms-transform:translate(0%, 0);-webkit-transform:translate3d(0%, 0, 0);-moz-transform:translate3d(0%, 0, 0);-ms-transform:translate3d(0%, 0, 0);-o-transform:translate3d(0%, 0, 0);transform:translate3d(0%, 0, 0)}.left-off-canvas-menu ul.off-canvas-list li.has-submenu>a:after{content:"\BB";margin-left:0.5rem;display:inline}.right-off-canvas-menu ul.off-canvas-list li.has-submenu>a:before{content:"\AB";margin-right:0.5rem;display:inline}.f-dropdown{position:absolute;left:-9999px;list-style:none;margin-left:0;outline:none;width:100%;max-height:none;height:auto;background:#fff;border:solid 1px #ccc;font-size:0.875rem;z-index:89;margin-top:2px;max-width:200px}.f-dropdown>*:first-child{margin-top:0}.f-dropdown>*:last-child{margin-bottom:0}.f-dropdown:before{content:"";display:block;width:0;height:0;border:inset 6px;border-color:transparent transparent #fff transparent;border-bottom-style:solid;position:absolute;top:-12px;left:10px;z-index:89}.f-dropdown:after{content:"";display:block;width:0;height:0;border:inset 7px;border-color:transparent transparent #ccc transparent;border-bottom-style:solid;position:absolute;top:-14px;left:9px;z-index:88}.f-dropdown.right:before{left:auto;right:10px}.f-dropdown.right:after{left:auto;right:9px}.f-dropdown.drop-right{position:absolute;left:-9999px;list-style:none;margin-left:0;outline:none;width:100%;max-height:none;height:auto;background:#fff;border:solid 1px #ccc;font-size:0.875rem;z-index:89;margin-top:0;margin-left:2px;max-width:200px}.f-dropdown.drop-right>*:first-child{margin-top:0}.f-dropdown.drop-right>*:last-child{margin-bottom:0}.f-dropdown.drop-right:before{content:"";display:block;width:0;height:0;border:inset 6px;border-color:transparent #fff transparent transparent;border-right-style:solid;position:absolute;top:10px;left:-12px;z-index:89}.f-dropdown.drop-right:after{content:"";display:block;width:0;height:0;border:inset 7px;border-color:transparent #ccc transparent transparent;border-right-style:solid;position:absolute;top:9px;left:-14px;z-index:88}.f-dropdown.drop-left{position:absolute;left:-9999px;list-style:none;margin-left:0;outline:none;width:100%;max-height:none;height:auto;background:#fff;border:solid 1px #ccc;font-size:0.875rem;z-index:89;margin-top:0;margin-left:-2px;max-width:200px}.f-dropdown.drop-left>*:first-child{margin-top:0}.f-dropdown.drop-left>*:last-child{margin-bottom:0}.f-dropdown.drop-left:before{content:"";display:block;width:0;height:0;border:inset 6px;border-color:transparent transparent transparent #fff;border-left-style:solid;position:absolute;top:10px;right:-12px;left:auto;z-index:89}.f-dropdown.drop-left:after{content:"";display:block;width:0;height:0;border:inset 7px;border-color:transparent transparent transparent #ccc;border-left-style:solid;position:absolute;top:9px;right:-14px;left:auto;z-index:88}.f-dropdown.drop-top{position:absolute;left:-9999px;list-style:none;margin-left:0;outline:none;width:100%;max-height:none;height:auto;background:#fff;border:solid 1px #ccc;font-size:0.875rem;z-index:89;margin-top:-2px;margin-left:0;max-width:200px}.f-dropdown.drop-top>*:first-child{margin-top:0}.f-dropdown.drop-top>*:last-child{margin-bottom:0}.f-dropdown.drop-top:before{content:"";display:block;width:0;height:0;border:inset 6px;border-color:#fff transparent transparent transparent;border-top-style:solid;position:absolute;top:auto;bottom:-12px;left:10px;right:auto;z-index:89}.f-dropdown.drop-top:after{content:"";display:block;width:0;height:0;border:inset 7px;border-color:#ccc transparent transparent transparent;border-top-style:solid;position:absolute;top:auto;bottom:-14px;left:9px;right:auto;z-index:88}.f-dropdown li{font-size:0.875rem;cursor:pointer;line-height:1.125rem;margin:0}.f-dropdown li:hover,.f-dropdown li:focus{background:#eee}.f-dropdown li.radius{border-radius:3px}.f-dropdown li a{display:block;padding:0.5rem;color:#555}.f-dropdown.content{position:absolute;left:-9999px;list-style:none;margin-left:0;outline:none;padding:1.25rem;width:100%;height:auto;max-height:none;background:#fff;border:solid 1px #ccc;font-size:0.875rem;z-index:89;max-width:200px}.f-dropdown.content>*:first-child{margin-top:0}.f-dropdown.content>*:last-child{margin-bottom:0}.f-dropdown.tiny{max-width:200px}.f-dropdown.small{max-width:300px}.f-dropdown.medium{max-width:500px}.f-dropdown.large{max-width:800px}.f-dropdown.mega{width:100% !important;max-width:100% !important}.f-dropdown.mega.open{left:0 !important}table{background:#fff;margin-bottom:1.25rem;border:solid 1px #ddd;table-layout:auto}table caption{background:transparent;color:#222;font-size:1rem;font-weight:bold}table thead{background:#f5f5f5}table thead tr th,table thead tr td{padding:0.5rem 0.625rem 0.625rem;font-size:0.875rem;font-weight:bold;color:#222}table tfoot{background:#f5f5f5}table tfoot tr th,table tfoot tr td{padding:0.5rem 0.625rem 0.625rem;font-size:0.875rem;font-weight:bold;color:#222}table tr th,table tr td{padding:0.5625rem 0.625rem;font-size:0.875rem;color:#222;text-align:left}table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f9f9f9}table thead tr th,table tfoot tr th,table tfoot tr td,table tbody tr th,table tbody tr td,table tr td{display:table-cell;line-height:1.125rem}.range-slider{display:block;position:relative;width:100%;height:1rem;border:1px solid #ddd;margin:1.25rem 0;-ms-touch-action:none;touch-action:none;background:#fafafa}.range-slider.vertical-range{display:block;position:relative;width:100%;height:1rem;border:1px solid #ddd;margin:1.25rem 0;-ms-touch-action:none;touch-action:none;display:inline-block;width:1rem;height:12.5rem}.range-slider.vertical-range .range-slider-handle{margin-top:0;margin-left:-0.5rem;position:absolute;bottom:-10.5rem}.range-slider.vertical-range .range-slider-active-segment{width:0.875rem;height:auto;bottom:0}.range-slider.radius{background:#fafafa;border-radius:3px}.range-slider.radius .range-slider-handle{background:#008cba;border-radius:3px}.range-slider.radius .range-slider-handle:hover{background:#007ba4}.range-slider.round{background:#fafafa;border-radius:1000px}.range-slider.round .range-slider-handle{background:#008cba;border-radius:1000px}.range-slider.round .range-slider-handle:hover{background:#007ba4}.range-slider.disabled,.range-slider[disabled]{background:#fafafa;cursor:default;opacity:0.7}.range-slider.disabled .range-slider-handle,.range-slider[disabled] .range-slider-handle{background:#008cba;cursor:default;opacity:0.7}.range-slider.disabled .range-slider-handle:hover,.range-slider[disabled] .range-slider-handle:hover{background:#007ba4}.range-slider-active-segment{display:inline-block;position:absolute;height:0.875rem;background:#e5e5e5}.range-slider-handle{display:inline-block;position:absolute;z-index:1;top:-0.3125rem;width:2rem;height:1.375rem;border:1px solid none;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;background:#008cba}.range-slider-handle:hover{background:#007ba4}[class*="block-grid-"]{display:block;padding:0;margin:0 -0.625rem}[class*="block-grid-"]:before,[class*="block-grid-"]:after{content:" ";display:table}[class*="block-grid-"]:after{clear:both}[class*="block-grid-"]>li{display:block;height:auto;float:left;padding:0 0.625rem 1.25rem}@media only screen{.small-block-grid-1>li{width:100%;list-style:none}.small-block-grid-1>li:nth-of-type(1n){clear:none}.small-block-grid-1>li:nth-of-type(1n+1){clear:both}.small-block-grid-2>li{width:50%;list-style:none}.small-block-grid-2>li:nth-of-type(1n){clear:none}.small-block-grid-2>li:nth-of-type(2n+1){clear:both}.small-block-grid-3>li{width:33.33333%;list-style:none}.small-block-grid-3>li:nth-of-type(1n){clear:none}.small-block-grid-3>li:nth-of-type(3n+1){clear:both}.small-block-grid-4>li{width:25%;list-style:none}.small-block-grid-4>li:nth-of-type(1n){clear:none}.small-block-grid-4>li:nth-of-type(4n+1){clear:both}.small-block-grid-5>li{width:20%;list-style:none}.small-block-grid-5>li:nth-of-type(1n){clear:none}.small-block-grid-5>li:nth-of-type(5n+1){clear:both}.small-block-grid-6>li{width:16.66667%;list-style:none}.small-block-grid-6>li:nth-of-type(1n){clear:none}.small-block-grid-6>li:nth-of-type(6n+1){clear:both}.small-block-grid-7>li{width:14.28571%;list-style:none}.small-block-grid-7>li:nth-of-type(1n){clear:none}.small-block-grid-7>li:nth-of-type(7n+1){clear:both}.small-block-grid-8>li{width:12.5%;list-style:none}.small-block-grid-8>li:nth-of-type(1n){clear:none}.small-block-grid-8>li:nth-of-type(8n+1){clear:both}.small-block-grid-9>li{width:11.11111%;list-style:none}.small-block-grid-9>li:nth-of-type(1n){clear:none}.small-block-grid-9>li:nth-of-type(9n+1){clear:both}.small-block-grid-10>li{width:10%;list-style:none}.small-block-grid-10>li:nth-of-type(1n){clear:none}.small-block-grid-10>li:nth-of-type(10n+1){clear:both}.small-block-grid-11>li{width:9.09091%;list-style:none}.small-block-grid-11>li:nth-of-type(1n){clear:none}.small-block-grid-11>li:nth-of-type(11n+1){clear:both}.small-block-grid-12>li{width:8.33333%;list-style:none}.small-block-grid-12>li:nth-of-type(1n){clear:none}.small-block-grid-12>li:nth-of-type(12n+1){clear:both}}@media only screen and (min-width: 40.063em){.medium-block-grid-1>li{width:100%;list-style:none}.medium-block-grid-1>li:nth-of-type(1n){clear:none}.medium-block-grid-1>li:nth-of-type(1n+1){clear:both}.medium-block-grid-2>li{width:50%;list-style:none}.medium-block-grid-2>li:nth-of-type(1n){clear:none}.medium-block-grid-2>li:nth-of-type(2n+1){clear:both}.medium-block-grid-3>li{width:33.33333%;list-style:none}.medium-block-grid-3>li:nth-of-type(1n){clear:none}.medium-block-grid-3>li:nth-of-type(3n+1){clear:both}.medium-block-grid-4>li{width:25%;list-style:none}.medium-block-grid-4>li:nth-of-type(1n){clear:none}.medium-block-grid-4>li:nth-of-type(4n+1){clear:both}.medium-block-grid-5>li{width:20%;list-style:none}.medium-block-grid-5>li:nth-of-type(1n){clear:none}.medium-block-grid-5>li:nth-of-type(5n+1){clear:both}.medium-block-grid-6>li{width:16.66667%;list-style:none}.medium-block-grid-6>li:nth-of-type(1n){clear:none}.medium-block-grid-6>li:nth-of-type(6n+1){clear:both}.medium-block-grid-7>li{width:14.28571%;list-style:none}.medium-block-grid-7>li:nth-of-type(1n){clear:none}.medium-block-grid-7>li:nth-of-type(7n+1){clear:both}.medium-block-grid-8>li{width:12.5%;list-style:none}.medium-block-grid-8>li:nth-of-type(1n){clear:none}.medium-block-grid-8>li:nth-of-type(8n+1){clear:both}.medium-block-grid-9>li{width:11.11111%;list-style:none}.medium-block-grid-9>li:nth-of-type(1n){clear:none}.medium-block-grid-9>li:nth-of-type(9n+1){clear:both}.medium-block-grid-10>li{width:10%;list-style:none}.medium-block-grid-10>li:nth-of-type(1n){clear:none}.medium-block-grid-10>li:nth-of-type(10n+1){clear:both}.medium-block-grid-11>li{width:9.09091%;list-style:none}.medium-block-grid-11>li:nth-of-type(1n){clear:none}.medium-block-grid-11>li:nth-of-type(11n+1){clear:both}.medium-block-grid-12>li{width:8.33333%;list-style:none}.medium-block-grid-12>li:nth-of-type(1n){clear:none}.medium-block-grid-12>li:nth-of-type(12n+1){clear:both}}@media only screen and (min-width: 64.063em){.large-block-grid-1>li{width:100%;list-style:none}.large-block-grid-1>li:nth-of-type(1n){clear:none}.large-block-grid-1>li:nth-of-type(1n+1){clear:both}.large-block-grid-2>li{width:50%;list-style:none}.large-block-grid-2>li:nth-of-type(1n){clear:none}.large-block-grid-2>li:nth-of-type(2n+1){clear:both}.large-block-grid-3>li{width:33.33333%;list-style:none}.large-block-grid-3>li:nth-of-type(1n){clear:none}.large-block-grid-3>li:nth-of-type(3n+1){clear:both}.large-block-grid-4>li{width:25%;list-style:none}.large-block-grid-4>li:nth-of-type(1n){clear:none}.large-block-grid-4>li:nth-of-type(4n+1){clear:both}.large-block-grid-5>li{width:20%;list-style:none}.large-block-grid-5>li:nth-of-type(1n){clear:none}.large-block-grid-5>li:nth-of-type(5n+1){clear:both}.large-block-grid-6>li{width:16.66667%;list-style:none}.large-block-grid-6>li:nth-of-type(1n){clear:none}.large-block-grid-6>li:nth-of-type(6n+1){clear:both}.large-block-grid-7>li{width:14.28571%;list-style:none}.large-block-grid-7>li:nth-of-type(1n){clear:none}.large-block-grid-7>li:nth-of-type(7n+1){clear:both}.large-block-grid-8>li{width:12.5%;list-style:none}.large-block-grid-8>li:nth-of-type(1n){clear:none}.large-block-grid-8>li:nth-of-type(8n+1){clear:both}.large-block-grid-9>li{width:11.11111%;list-style:none}.large-block-grid-9>li:nth-of-type(1n){clear:none}.large-block-grid-9>li:nth-of-type(9n+1){clear:both}.large-block-grid-10>li{width:10%;list-style:none}.large-block-grid-10>li:nth-of-type(1n){clear:none}.large-block-grid-10>li:nth-of-type(10n+1){clear:both}.large-block-grid-11>li{width:9.09091%;list-style:none}.large-block-grid-11>li:nth-of-type(1n){clear:none}.large-block-grid-11>li:nth-of-type(11n+1){clear:both}.large-block-grid-12>li{width:8.33333%;list-style:none}.large-block-grid-12>li:nth-of-type(1n){clear:none}.large-block-grid-12>li:nth-of-type(12n+1){clear:both}}.flex-video{position:relative;padding-top:1.5625rem;padding-bottom:67.5%;height:0;margin-bottom:1rem;overflow:hidden}.flex-video.widescreen{padding-bottom:56.34%}.flex-video.vimeo{padding-top:0}.flex-video iframe,.flex-video object,.flex-video embed,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.keystroke,kbd{background-color:#ededed;border-color:#ddd;color:#222;border-style:solid;border-width:1px;margin:0;font-family:"Consolas","Menlo","Courier",monospace;font-size:inherit;padding:0.125rem 0.25rem 0;border-radius:3px}.switch{padding:0;border:none;position:relative;outline:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.switch label{display:block;margin-bottom:1rem;position:relative;color:transparent;background:#ddd;text-indent:100%;width:4rem;height:2rem;cursor:pointer;transition:left 0.15s ease-out}.switch input{opacity:0;position:absolute;top:9px;left:10px;padding:0}.switch input+label{margin-left:0;margin-right:0}.switch label:after{content:"";display:block;background:#fff;position:absolute;top:.25rem;left:.25rem;width:1.5rem;height:1.5rem;-webkit-transition:left 0.15s ease-out;-moz-transition:left 0.15s ease-out;transition:left 0.15s ease-out;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.switch input:checked+label{background:#008cba}.switch input:checked+label:after{left:2.25rem}.switch label{width:4rem;height:2rem}.switch label:after{width:1.5rem;height:1.5rem}.switch input:checked+label:after{left:2.25rem}.switch label{color:transparent;background:#ddd}.switch label:after{background:#fff}.switch input:checked+label{background:#008cba}.switch.large label{width:5rem;height:2.5rem}.switch.large label:after{width:2rem;height:2rem}.switch.large input:checked+label:after{left:2.75rem}.switch.small label{width:3.5rem;height:1.75rem}.switch.small label:after{width:1.25rem;height:1.25rem}.switch.small input:checked+label:after{left:2rem}.switch.tiny label{width:3rem;height:1.5rem}.switch.tiny label:after{width:1rem;height:1rem}.switch.tiny input:checked+label:after{left:1.75rem}.switch.radius label{border-radius:4px}.switch.radius label:after{border-radius:3px}.switch.round{border-radius:1000px}.switch.round label{border-radius:2rem}.switch.round label:after{border-radius:2rem}@media only screen{.show-for-small-only,.show-for-small-up,.show-for-small,.show-for-small-down,.hide-for-medium-only,.hide-for-medium-up,.hide-for-medium,.show-for-medium-down,.hide-for-large-only,.hide-for-large-up,.hide-for-large,.show-for-large-down,.hide-for-xlarge-only,.hide-for-xlarge-up,.hide-for-xxlarge-only,.hide-for-xxlarge-up{display:inherit !important}.hide-for-small-only,.hide-for-small-up,.hide-for-small,.hide-for-small-down,.show-for-medium-only,.show-for-medium-up,.show-for-medium,.hide-for-medium-down,.show-for-large-only,.show-for-large-up,.show-for-large,.hide-for-large-down,.show-for-xlarge-only,.show-for-xlarge-up,.show-for-xxlarge-only,.show-for-xxlarge-up{display:none !important}.visible-for-small-only,.visible-for-small-up,.visible-for-small,.visible-for-small-down,.hidden-for-medium-only,.hidden-for-medium-up,.hidden-for-medium,.visible-for-medium-down,.hidden-for-large-only,.hidden-for-large-up,.hidden-for-large,.visible-for-large-down,.hidden-for-xlarge-only,.hidden-for-xlarge-up,.hidden-for-xxlarge-only,.hidden-for-xxlarge-up{position:static !important;height:auto;width:auto;overflow:visible;clip:auto}.hidden-for-small-only,.hidden-for-small-up,.hidden-for-small,.hidden-for-small-down,.visible-for-medium-only,.visible-for-medium-up,.visible-for-medium,.hidden-for-medium-down,.visible-for-large-only,.visible-for-large-up,.visible-for-large,.hidden-for-large-down,.visible-for-xlarge-only,.visible-for-xlarge-up,.visible-for-xxlarge-only,.visible-for-xxlarge-up{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}table.show-for-small-only,table.show-for-small-up,table.show-for-small,table.show-for-small-down,table.hide-for-medium-only,table.hide-for-medium-up,table.hide-for-medium,table.show-for-medium-down,table.hide-for-large-only,table.hide-for-large-up,table.hide-for-large,table.show-for-large-down,table.hide-for-xlarge-only,table.hide-for-xlarge-up,table.hide-for-xxlarge-only,table.hide-for-xxlarge-up{display:table !important}thead.show-for-small-only,thead.show-for-small-up,thead.show-for-small,thead.show-for-small-down,thead.hide-for-medium-only,thead.hide-for-medium-up,thead.hide-for-medium,thead.show-for-medium-down,thead.hide-for-large-only,thead.hide-for-large-up,thead.hide-for-large,thead.show-for-large-down,thead.hide-for-xlarge-only,thead.hide-for-xlarge-up,thead.hide-for-xxlarge-only,thead.hide-for-xxlarge-up{display:table-header-group !important}tbody.show-for-small-only,tbody.show-for-small-up,tbody.show-for-small,tbody.show-for-small-down,tbody.hide-for-medium-only,tbody.hide-for-medium-up,tbody.hide-for-medium,tbody.show-for-medium-down,tbody.hide-for-large-only,tbody.hide-for-large-up,tbody.hide-for-large,tbody.show-for-large-down,tbody.hide-for-xlarge-only,tbody.hide-for-xlarge-up,tbody.hide-for-xxlarge-only,tbody.hide-for-xxlarge-up{display:table-row-group !important}tr.show-for-small-only,tr.show-for-small-up,tr.show-for-small,tr.show-for-small-down,tr.hide-for-medium-only,tr.hide-for-medium-up,tr.hide-for-medium,tr.show-for-medium-down,tr.hide-for-large-only,tr.hide-for-large-up,tr.hide-for-large,tr.show-for-large-down,tr.hide-for-xlarge-only,tr.hide-for-xlarge-up,tr.hide-for-xxlarge-only,tr.hide-for-xxlarge-up{display:table-row !important}th.show-for-small-only,td.show-for-small-only,th.show-for-small-up,td.show-for-small-up,th.show-for-small,td.show-for-small,th.show-for-small-down,td.show-for-small-down,th.hide-for-medium-only,td.hide-for-medium-only,th.hide-for-medium-up,td.hide-for-medium-up,th.hide-for-medium,td.hide-for-medium,th.show-for-medium-down,td.show-for-medium-down,th.hide-for-large-only,td.hide-for-large-only,th.hide-for-large-up,td.hide-for-large-up,th.hide-for-large,td.hide-for-large,th.show-for-large-down,td.show-for-large-down,th.hide-for-xlarge-only,td.hide-for-xlarge-only,th.hide-for-xlarge-up,td.hide-for-xlarge-up,th.hide-for-xxlarge-only,td.hide-for-xxlarge-only,th.hide-for-xxlarge-up,td.hide-for-xxlarge-up{display:table-cell !important}}@media only screen and (min-width: 40.063em){.hide-for-small-only,.show-for-small-up,.hide-for-small,.hide-for-small-down,.show-for-medium-only,.show-for-medium-up,.show-for-medium,.show-for-medium-down,.hide-for-large-only,.hide-for-large-up,.hide-for-large,.show-for-large-down,.hide-for-xlarge-only,.hide-for-xlarge-up,.hide-for-xxlarge-only,.hide-for-xxlarge-up{display:inherit !important}.show-for-small-only,.hide-for-small-up,.show-for-small,.show-for-small-down,.hide-for-medium-only,.hide-for-medium-up,.hide-for-medium,.hide-for-medium-down,.show-for-large-only,.show-for-large-up,.show-for-large,.hide-for-large-down,.show-for-xlarge-only,.show-for-xlarge-up,.show-for-xxlarge-only,.show-for-xxlarge-up{display:none !important}.hidden-for-small-only,.visible-for-small-up,.hidden-for-small,.hidden-for-small-down,.visible-for-medium-only,.visible-for-medium-up,.visible-for-medium,.visible-for-medium-down,.hidden-for-large-only,.hidden-for-large-up,.hidden-for-large,.visible-for-large-down,.hidden-for-xlarge-only,.hidden-for-xlarge-up,.hidden-for-xxlarge-only,.hidden-for-xxlarge-up{position:static !important;height:auto;width:auto;overflow:visible;clip:auto}.visible-for-small-only,.hidden-for-small-up,.visible-for-small,.visible-for-small-down,.hidden-for-medium-only,.hidden-for-medium-up,.hidden-for-medium,.hidden-for-medium-down,.visible-for-large-only,.visible-for-large-up,.visible-for-large,.hidden-for-large-down,.visible-for-xlarge-only,.visible-for-xlarge-up,.visible-for-xxlarge-only,.visible-for-xxlarge-up{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}table.hide-for-small-only,table.show-for-small-up,table.hide-for-small,table.hide-for-small-down,table.show-for-medium-only,table.show-for-medium-up,table.show-for-medium,table.show-for-medium-down,table.hide-for-large-only,table.hide-for-large-up,table.hide-for-large,table.show-for-large-down,table.hide-for-xlarge-only,table.hide-for-xlarge-up,table.hide-for-xxlarge-only,table.hide-for-xxlarge-up{display:table !important}thead.hide-for-small-only,thead.show-for-small-up,thead.hide-for-small,thead.hide-for-small-down,thead.show-for-medium-only,thead.show-for-medium-up,thead.show-for-medium,thead.show-for-medium-down,thead.hide-for-large-only,thead.hide-for-large-up,thead.hide-for-large,thead.show-for-large-down,thead.hide-for-xlarge-only,thead.hide-for-xlarge-up,thead.hide-for-xxlarge-only,thead.hide-for-xxlarge-up{display:table-header-group !important}tbody.hide-for-small-only,tbody.show-for-small-up,tbody.hide-for-small,tbody.hide-for-small-down,tbody.show-for-medium-only,tbody.show-for-medium-up,tbody.show-for-medium,tbody.show-for-medium-down,tbody.hide-for-large-only,tbody.hide-for-large-up,tbody.hide-for-large,tbody.show-for-large-down,tbody.hide-for-xlarge-only,tbody.hide-for-xlarge-up,tbody.hide-for-xxlarge-only,tbody.hide-for-xxlarge-up{display:table-row-group !important}tr.hide-for-small-only,tr.show-for-small-up,tr.hide-for-small,tr.hide-for-small-down,tr.show-for-medium-only,tr.show-for-medium-up,tr.show-for-medium,tr.show-for-medium-down,tr.hide-for-large-only,tr.hide-for-large-up,tr.hide-for-large,tr.show-for-large-down,tr.hide-for-xlarge-only,tr.hide-for-xlarge-up,tr.hide-for-xxlarge-only,tr.hide-for-xxlarge-up{display:table-row !important}th.hide-for-small-only,td.hide-for-small-only,th.show-for-small-up,td.show-for-small-up,th.hide-for-small,td.hide-for-small,th.hide-for-small-down,td.hide-for-small-down,th.show-for-medium-only,td.show-for-medium-only,th.show-for-medium-up,td.show-for-medium-up,th.show-for-medium,td.show-for-medium,th.show-for-medium-down,td.show-for-medium-down,th.hide-for-large-only,td.hide-for-large-only,th.hide-for-large-up,td.hide-for-large-up,th.hide-for-large,td.hide-for-large,th.show-for-large-down,td.show-for-large-down,th.hide-for-xlarge-only,td.hide-for-xlarge-only,th.hide-for-xlarge-up,td.hide-for-xlarge-up,th.hide-for-xxlarge-only,td.hide-for-xxlarge-only,th.hide-for-xxlarge-up,td.hide-for-xxlarge-up{display:table-cell !important}}@media only screen and (min-width: 64.063em){.hide-for-small-only,.show-for-small-up,.hide-for-small,.hide-for-small-down,.hide-for-medium-only,.show-for-medium-up,.hide-for-medium,.hide-for-medium-down,.show-for-large-only,.show-for-large-up,.show-for-large,.show-for-large-down,.hide-for-xlarge-only,.hide-for-xlarge-up,.hide-for-xxlarge-only,.hide-for-xxlarge-up{display:inherit !important}.show-for-small-only,.hide-for-small-up,.show-for-small,.show-for-small-down,.show-for-medium-only,.hide-for-medium-up,.show-for-medium,.show-for-medium-down,.hide-for-large-only,.hide-for-large-up,.hide-for-large,.hide-for-large-down,.show-for-xlarge-only,.show-for-xlarge-up,.show-for-xxlarge-only,.show-for-xxlarge-up{display:none !important}.hidden-for-small-only,.visible-for-small-up,.hidden-for-small,.hidden-for-small-down,.hidden-for-medium-only,.visible-for-medium-up,.hidden-for-medium,.hidden-for-medium-down,.visible-for-large-only,.visible-for-large-up,.visible-for-large,.visible-for-large-down,.hidden-for-xlarge-only,.hidden-for-xlarge-up,.hidden-for-xxlarge-only,.hidden-for-xxlarge-up{position:static !important;height:auto;width:auto;overflow:visible;clip:auto}.visible-for-small-only,.hidden-for-small-up,.visible-for-small,.visible-for-small-down,.visible-for-medium-only,.hidden-for-medium-up,.visible-for-medium,.visible-for-medium-down,.hidden-for-large-only,.hidden-for-large-up,.hidden-for-large,.hidden-for-large-down,.visible-for-xlarge-only,.visible-for-xlarge-up,.visible-for-xxlarge-only,.visible-for-xxlarge-up{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}table.hide-for-small-only,table.show-for-small-up,table.hide-for-small,table.hide-for-small-down,table.hide-for-medium-only,table.show-for-medium-up,table.hide-for-medium,table.hide-for-medium-down,table.show-for-large-only,table.show-for-large-up,table.show-for-large,table.show-for-large-down,table.hide-for-xlarge-only,table.hide-for-xlarge-up,table.hide-for-xxlarge-only,table.hide-for-xxlarge-up{display:table !important}thead.hide-for-small-only,thead.show-for-small-up,thead.hide-for-small,thead.hide-for-small-down,thead.hide-for-medium-only,thead.show-for-medium-up,thead.hide-for-medium,thead.hide-for-medium-down,thead.show-for-large-only,thead.show-for-large-up,thead.show-for-large,thead.show-for-large-down,thead.hide-for-xlarge-only,thead.hide-for-xlarge-up,thead.hide-for-xxlarge-only,thead.hide-for-xxlarge-up{display:table-header-group !important}tbody.hide-for-small-only,tbody.show-for-small-up,tbody.hide-for-small,tbody.hide-for-small-down,tbody.hide-for-medium-only,tbody.show-for-medium-up,tbody.hide-for-medium,tbody.hide-for-medium-down,tbody.show-for-large-only,tbody.show-for-large-up,tbody.show-for-large,tbody.show-for-large-down,tbody.hide-for-xlarge-only,tbody.hide-for-xlarge-up,tbody.hide-for-xxlarge-only,tbody.hide-for-xxlarge-up{display:table-row-group !important}tr.hide-for-small-only,tr.show-for-small-up,tr.hide-for-small,tr.hide-for-small-down,tr.hide-for-medium-only,tr.show-for-medium-up,tr.hide-for-medium,tr.hide-for-medium-down,tr.show-for-large-only,tr.show-for-large-up,tr.show-for-large,tr.show-for-large-down,tr.hide-for-xlarge-only,tr.hide-for-xlarge-up,tr.hide-for-xxlarge-only,tr.hide-for-xxlarge-up{display:table-row !important}th.hide-for-small-only,td.hide-for-small-only,th.show-for-small-up,td.show-for-small-up,th.hide-for-small,td.hide-for-small,th.hide-for-small-down,td.hide-for-small-down,th.hide-for-medium-only,td.hide-for-medium-only,th.show-for-medium-up,td.show-for-medium-up,th.hide-for-medium,td.hide-for-medium,th.hide-for-medium-down,td.hide-for-medium-down,th.show-for-large-only,td.show-for-large-only,th.show-for-large-up,td.show-for-large-up,th.show-for-large,td.show-for-large,th.show-for-large-down,td.show-for-large-down,th.hide-for-xlarge-only,td.hide-for-xlarge-only,th.hide-for-xlarge-up,td.hide-for-xlarge-up,th.hide-for-xxlarge-only,td.hide-for-xxlarge-only,th.hide-for-xxlarge-up,td.hide-for-xxlarge-up{display:table-cell !important}}@media only screen and (min-width: 90.063em){.hide-for-small-only,.show-for-small-up,.hide-for-small,.hide-for-small-down,.hide-for-medium-only,.show-for-medium-up,.hide-for-medium,.hide-for-medium-down,.hide-for-large-only,.show-for-large-up,.hide-for-large,.hide-for-large-down,.show-for-xlarge-only,.show-for-xlarge-up,.hide-for-xxlarge-only,.hide-for-xxlarge-up{display:inherit !important}.show-for-small-only,.hide-for-small-up,.show-for-small,.show-for-small-down,.show-for-medium-only,.hide-for-medium-up,.show-for-medium,.show-for-medium-down,.show-for-large-only,.hide-for-large-up,.show-for-large,.show-for-large-down,.hide-for-xlarge-only,.hide-for-xlarge-up,.show-for-xxlarge-only,.show-for-xxlarge-up{display:none !important}.hidden-for-small-only,.visible-for-small-up,.hidden-for-small,.hidden-for-small-down,.hidden-for-medium-only,.visible-for-medium-up,.hidden-for-medium,.hidden-for-medium-down,.hidden-for-large-only,.visible-for-large-up,.hidden-for-large,.hidden-for-large-down,.visible-for-xlarge-only,.visible-for-xlarge-up,.hidden-for-xxlarge-only,.hidden-for-xxlarge-up{position:static !important;height:auto;width:auto;overflow:visible;clip:auto}.visible-for-small-only,.hidden-for-small-up,.visible-for-small,.visible-for-small-down,.visible-for-medium-only,.hidden-for-medium-up,.visible-for-medium,.visible-for-medium-down,.visible-for-large-only,.hidden-for-large-up,.visible-for-large,.visible-for-large-down,.hidden-for-xlarge-only,.hidden-for-xlarge-up,.visible-for-xxlarge-only,.visible-for-xxlarge-up{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}table.hide-for-small-only,table.show-for-small-up,table.hide-for-small,table.hide-for-small-down,table.hide-for-medium-only,table.show-for-medium-up,table.hide-for-medium,table.hide-for-medium-down,table.hide-for-large-only,table.show-for-large-up,table.hide-for-large,table.hide-for-large-down,table.show-for-xlarge-only,table.show-for-xlarge-up,table.hide-for-xxlarge-only,table.hide-for-xxlarge-up{display:table !important}thead.hide-for-small-only,thead.show-for-small-up,thead.hide-for-small,thead.hide-for-small-down,thead.hide-for-medium-only,thead.show-for-medium-up,thead.hide-for-medium,thead.hide-for-medium-down,thead.hide-for-large-only,thead.show-for-large-up,thead.hide-for-large,thead.hide-for-large-down,thead.show-for-xlarge-only,thead.show-for-xlarge-up,thead.hide-for-xxlarge-only,thead.hide-for-xxlarge-up{display:table-header-group !important}tbody.hide-for-small-only,tbody.show-for-small-up,tbody.hide-for-small,tbody.hide-for-small-down,tbody.hide-for-medium-only,tbody.show-for-medium-up,tbody.hide-for-medium,tbody.hide-for-medium-down,tbody.hide-for-large-only,tbody.show-for-large-up,tbody.hide-for-large,tbody.hide-for-large-down,tbody.show-for-xlarge-only,tbody.show-for-xlarge-up,tbody.hide-for-xxlarge-only,tbody.hide-for-xxlarge-up{display:table-row-group !important}tr.hide-for-small-only,tr.show-for-small-up,tr.hide-for-small,tr.hide-for-small-down,tr.hide-for-medium-only,tr.show-for-medium-up,tr.hide-for-medium,tr.hide-for-medium-down,tr.hide-for-large-only,tr.show-for-large-up,tr.hide-for-large,tr.hide-for-large-down,tr.show-for-xlarge-only,tr.show-for-xlarge-up,tr.hide-for-xxlarge-only,tr.hide-for-xxlarge-up{display:table-row !important}th.hide-for-small-only,td.hide-for-small-only,th.show-for-small-up,td.show-for-small-up,th.hide-for-small,td.hide-for-small,th.hide-for-small-down,td.hide-for-small-down,th.hide-for-medium-only,td.hide-for-medium-only,th.show-for-medium-up,td.show-for-medium-up,th.hide-for-medium,td.hide-for-medium,th.hide-for-medium-down,td.hide-for-medium-down,th.hide-for-large-only,td.hide-for-large-only,th.show-for-large-up,td.show-for-large-up,th.hide-for-large,td.hide-for-large,th.hide-for-large-down,td.hide-for-large-down,th.show-for-xlarge-only,td.show-for-xlarge-only,th.show-for-xlarge-up,td.show-for-xlarge-up,th.hide-for-xxlarge-only,td.hide-for-xxlarge-only,th.hide-for-xxlarge-up,td.hide-for-xxlarge-up{display:table-cell !important}}@media only screen and (min-width: 120.063em){.hide-for-small-only,.show-for-small-up,.hide-for-small,.hide-for-small-down,.hide-for-medium-only,.show-for-medium-up,.hide-for-medium,.hide-for-medium-down,.hide-for-large-only,.show-for-large-up,.hide-for-large,.hide-for-large-down,.hide-for-xlarge-only,.show-for-xlarge-up,.show-for-xxlarge-only,.show-for-xxlarge-up{display:inherit !important}.show-for-small-only,.hide-for-small-up,.show-for-small,.show-for-small-down,.show-for-medium-only,.hide-for-medium-up,.show-for-medium,.show-for-medium-down,.show-for-large-only,.hide-for-large-up,.show-for-large,.show-for-large-down,.show-for-xlarge-only,.hide-for-xlarge-up,.hide-for-xxlarge-only,.hide-for-xxlarge-up{display:none !important}.hidden-for-small-only,.visible-for-small-up,.hidden-for-small,.hidden-for-small-down,.hidden-for-medium-only,.visible-for-medium-up,.hidden-for-medium,.hidden-for-medium-down,.hidden-for-large-only,.visible-for-large-up,.hidden-for-large,.hidden-for-large-down,.hidden-for-xlarge-only,.visible-for-xlarge-up,.visible-for-xxlarge-only,.visible-for-xxlarge-up{position:static !important;height:auto;width:auto;overflow:visible;clip:auto}.visible-for-small-only,.hidden-for-small-up,.visible-for-small,.visible-for-small-down,.visible-for-medium-only,.hidden-for-medium-up,.visible-for-medium,.visible-for-medium-down,.visible-for-large-only,.hidden-for-large-up,.visible-for-large,.visible-for-large-down,.visible-for-xlarge-only,.hidden-for-xlarge-up,.hidden-for-xxlarge-only,.hidden-for-xxlarge-up{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px)}table.hide-for-small-only,table.show-for-small-up,table.hide-for-small,table.hide-for-small-down,table.hide-for-medium-only,table.show-for-medium-up,table.hide-for-medium,table.hide-for-medium-down,table.hide-for-large-only,table.show-for-large-up,table.hide-for-large,table.hide-for-large-down,table.hide-for-xlarge-only,table.show-for-xlarge-up,table.show-for-xxlarge-only,table.show-for-xxlarge-up{display:table !important}thead.hide-for-small-only,thead.show-for-small-up,thead.hide-for-small,thead.hide-for-small-down,thead.hide-for-medium-only,thead.show-for-medium-up,thead.hide-for-medium,thead.hide-for-medium-down,thead.hide-for-large-only,thead.show-for-large-up,thead.hide-for-large,thead.hide-for-large-down,thead.hide-for-xlarge-only,thead.show-for-xlarge-up,thead.show-for-xxlarge-only,thead.show-for-xxlarge-up{display:table-header-group !important}tbody.hide-for-small-only,tbody.show-for-small-up,tbody.hide-for-small,tbody.hide-for-small-down,tbody.hide-for-medium-only,tbody.show-for-medium-up,tbody.hide-for-medium,tbody.hide-for-medium-down,tbody.hide-for-large-only,tbody.show-for-large-up,tbody.hide-for-large,tbody.hide-for-large-down,tbody.hide-for-xlarge-only,tbody.show-for-xlarge-up,tbody.show-for-xxlarge-only,tbody.show-for-xxlarge-up{display:table-row-group !important}tr.hide-for-small-only,tr.show-for-small-up,tr.hide-for-small,tr.hide-for-small-down,tr.hide-for-medium-only,tr.show-for-medium-up,tr.hide-for-medium,tr.hide-for-medium-down,tr.hide-for-large-only,tr.show-for-large-up,tr.hide-for-large,tr.hide-for-large-down,tr.hide-for-xlarge-only,tr.show-for-xlarge-up,tr.show-for-xxlarge-only,tr.show-for-xxlarge-up{display:table-row !important}th.hide-for-small-only,td.hide-for-small-only,th.show-for-small-up,td.show-for-small-up,th.hide-for-small,td.hide-for-small,th.hide-for-small-down,td.hide-for-small-down,th.hide-for-medium-only,td.hide-for-medium-only,th.show-for-medium-up,td.show-for-medium-up,th.hide-for-medium,td.hide-for-medium,th.hide-for-medium-down,td.hide-for-medium-down,th.hide-for-large-only,td.hide-for-large-only,th.show-for-large-up,td.show-for-large-up,th.hide-for-large,td.hide-for-large,th.hide-for-large-down,td.hide-for-large-down,th.hide-for-xlarge-only,td.hide-for-xlarge-only,th.show-for-xlarge-up,td.show-for-xlarge-up,th.show-for-xxlarge-only,td.show-for-xxlarge-only,th.show-for-xxlarge-up,td.show-for-xxlarge-up{display:table-cell !important}}.show-for-landscape,.hide-for-portrait{display:inherit !important}.hide-for-landscape,.show-for-portrait{display:none !important}table.hide-for-landscape,table.show-for-portrait{display:table !important}thead.hide-for-landscape,thead.show-for-portrait{display:table-header-group !important}tbody.hide-for-landscape,tbody.show-for-portrait{display:table-row-group !important}tr.hide-for-landscape,tr.show-for-portrait{display:table-row !important}td.hide-for-landscape,td.show-for-portrait,th.hide-for-landscape,th.show-for-portrait{display:table-cell !important}@media only screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:inherit !important}.hide-for-landscape,.show-for-portrait{display:none !important}table.show-for-landscape,table.hide-for-portrait{display:table !important}thead.show-for-landscape,thead.hide-for-portrait{display:table-header-group !important}tbody.show-for-landscape,tbody.hide-for-portrait{display:table-row-group !important}tr.show-for-landscape,tr.hide-for-portrait{display:table-row !important}td.show-for-landscape,td.hide-for-portrait,th.show-for-landscape,th.hide-for-portrait{display:table-cell !important}}@media only screen and (orientation: portrait){.show-for-portrait,.hide-for-landscape{display:inherit !important}.hide-for-portrait,.show-for-landscape{display:none !important}table.show-for-portrait,table.hide-for-landscape{display:table !important}thead.show-for-portrait,thead.hide-for-landscape{display:table-header-group !important}tbody.show-for-portrait,tbody.hide-for-landscape{display:table-row-group !important}tr.show-for-portrait,tr.hide-for-landscape{display:table-row !important}td.show-for-portrait,td.hide-for-landscape,th.show-for-portrait,th.hide-for-landscape{display:table-cell !important}}.show-for-touch{display:none !important}.hide-for-touch{display:inherit !important}.touch .show-for-touch{display:inherit !important}.touch .hide-for-touch{display:none !important}table.hide-for-touch{display:table !important}.touch table.show-for-touch{display:table !important}thead.hide-for-touch{display:table-header-group !important}.touch thead.show-for-touch{display:table-header-group !important}tbody.hide-for-touch{display:table-row-group !important}.touch tbody.show-for-touch{display:table-row-group !important}tr.hide-for-touch{display:table-row !important}.touch tr.show-for-touch{display:table-row !important}td.hide-for-touch{display:table-cell !important}.touch td.show-for-touch{display:table-cell !important}th.hide-for-touch{display:table-cell !important}.touch th.show-for-touch{display:table-cell !important}@media print{.show-for-print{display:block}.hide-for-print{display:none}table.show-for-print{display:table !important}thead.show-for-print{display:table-header-group !important}tbody.show-for-print{display:table-row-group !important}tr.show-for-print{display:table-row !important}td.show-for-print{display:table-cell !important}th.show-for-print{display:table-cell !important}} diff --git a/resources/foundation/css/normalize.css b/resources/foundation/css/normalize.css new file mode 100644 index 0000000..458eea1 --- /dev/null +++ b/resources/foundation/css/normalize.css @@ -0,0 +1,427 @@ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ + +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-family: sans-serif; /* 1 */ + -ms-text-size-adjust: 100%; /* 2 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/** + * Remove default margin. + */ + +body { + margin: 0; +} + +/* HTML5 display definitions + ========================================================================== */ + +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 + * and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ + +audio, +canvas, +progress, +video { + display: inline-block; /* 1 */ + vertical-align: baseline; /* 2 */ +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ + +[hidden], +template { + display: none; +} + +/* Links + ========================================================================== */ + +/** + * Remove the gray background color from active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ + +abbr[title] { + border-bottom: 1px dotted; +} + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ + +b, +strong { + font-weight: bold; +} + +/** + * Address styling not present in Safari and Chrome. + */ + +dfn { + font-style: italic; +} + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/** + * Address styling not present in IE 8/9. + */ + +mark { + background: #ff0; + color: #000; +} + +/** + * Address inconsistent and variable font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove border when inside `a` element in IE 8/9/10. + */ + +img { + border: 0; +} + +/** + * Correct overflow not hidden in IE 9/10/11. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* Grouping content + ========================================================================== */ + +/** + * Address margin not present in IE 8/9 and Safari. + */ + +figure { + margin: 1em 40px; +} + +/** + * Address differences between Firefox and other browsers. + */ + +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} + +/** + * Contain overflow in all browsers. + */ + +pre { + overflow: auto; +} + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} + +/* Forms + ========================================================================== */ + +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ + +/** + * 1. Correct color not being inherited. + * Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ + +button, +input, +optgroup, +select, +textarea { + color: inherit; /* 1 */ + font: inherit; /* 2 */ + margin: 0; /* 3 */ +} + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ + +button { + overflow: visible; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ + +button, +select { + text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], +html input[disabled] { + cursor: default; +} + +/** + * Remove inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +input { + line-height: normal; +} + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ + +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { + border: 0; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ + +textarea { + overflow: auto; +} + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ + +optgroup { + font-weight: bold; +} + +/* Tables + ========================================================================== */ + +/** + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, +th { + padding: 0; +} diff --git a/resources/foundation/humans.txt b/resources/foundation/humans.txt new file mode 100644 index 0000000..4e06829 --- /dev/null +++ b/resources/foundation/humans.txt @@ -0,0 +1,8 @@ +/* Foundation was made by ZURB, an interaction design and design strategy firm in Campbell, CA */ +/* zurb.com */ +/* humanstxt.org */ + +/* SITE */ + Standards: HTML5, CSS3 + Components: jQuery, Orbit, Reveal + Software: Sublime, Git, Sass diff --git a/resources/foundation/img/.gitkeep b/resources/foundation/img/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/resources/foundation/img/.gitkeep @@ -0,0 +1 @@ + diff --git a/resources/foundation/index.html b/resources/foundation/index.html new file mode 100644 index 0000000..e6b8827 --- /dev/null +++ b/resources/foundation/index.html @@ -0,0 +1,166 @@ +<!doctype html> +<html class="no-js" lang="en"> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Foundation | Welcome</title> + <link rel="stylesheet" href="css/foundation.css" /> + <script src="js/vendor/modernizr.js"></script> + </head> + <body> + + <div class="row"> + <div class="large-12 columns"> + <h1>Welcome to Foundation</h1> + </div> + </div> + + <div class="row"> + <div class="large-12 columns"> + <div class="panel"> + <h3>We’re stoked you want to try Foundation! </h3> + <p>To get going, this file (index.html) includes some basic styles you can modify, play around with, or totally destroy to get going.</p> + <p>Once you've exhausted the fun in this document, you should check out:</p> + <div class="row"> + <div class="large-4 medium-4 columns"> + <p><a href="http://foundation.zurb.com/docs">Foundation Documentation</a><br />Everything you need to know about using the framework.</p> + </div> + <div class="large-4 medium-4 columns"> + <p><a href="http://github.com/zurb/foundation">Foundation on Github</a><br />Latest code, issue reports, feature requests and more.</p> + </div> + <div class="large-4 medium-4 columns"> + <p><a href="http://twitter.com/foundationzurb">@foundationzurb</a><br />Ping us on Twitter if you have questions. If you build something with this we'd love to see it (and send you a totally boss sticker).</p> + </div> + </div> + </div> + </div> + </div> + + <div class="row"> + <div class="large-8 medium-8 columns"> + <h5>Here’s your basic grid:</h5> + <!-- Grid Example --> + + <div class="row"> + <div class="large-12 columns"> + <div class="callout panel"> + <p><strong>This is a twelve column section in a row.</strong> Each of these includes a div.panel element so you can see where the columns are - it's not required at all for the grid.</p> + </div> + </div> + </div> + <div class="row"> + <div class="large-6 medium-6 columns"> + <div class="callout panel"> + <p>Six columns</p> + </div> + </div> + <div class="large-6 medium-6 columns"> + <div class="callout panel"> + <p>Six columns</p> + </div> + </div> + </div> + <div class="row"> + <div class="large-4 medium-4 small-4 columns"> + <div class="callout panel"> + <p>Four columns</p> + </div> + </div> + <div class="large-4 medium-4 small-4 columns"> + <div class="callout panel"> + <p>Four columns</p> + </div> + </div> + <div class="large-4 medium-4 small-4 columns"> + <div class="callout panel"> + <p>Four columns</p> + </div> + </div> + </div> + + <hr /> + + <h5>We bet you’ll need a form somewhere:</h5> + <form> + <div class="row"> + <div class="large-12 columns"> + <label>Input Label</label> + <input type="text" placeholder="large-12.columns" /> + </div> + </div> + <div class="row"> + <div class="large-4 medium-4 columns"> + <label>Input Label</label> + <input type="text" placeholder="large-4.columns" /> + </div> + <div class="large-4 medium-4 columns"> + <label>Input Label</label> + <input type="text" placeholder="large-4.columns" /> + </div> + <div class="large-4 medium-4 columns"> + <div class="row collapse"> + <label>Input Label</label> + <div class="small-9 columns"> + <input type="text" placeholder="small-9.columns" /> + </div> + <div class="small-3 columns"> + <span class="postfix">.com</span> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="large-12 columns"> + <label>Select Box</label> + <select> + <option value="husker">Husker</option> + <option value="starbuck">Starbuck</option> + <option value="hotdog">Hot Dog</option> + <option value="apollo">Apollo</option> + </select> + </div> + </div> + <div class="row"> + <div class="large-6 medium-6 columns"> + <label>Choose Your Favorite</label> + <input type="radio" name="pokemon" value="Red" id="pokemonRed"><label for="pokemonRed">Radio 1</label> + <input type="radio" name="pokemon" value="Blue" id="pokemonBlue"><label for="pokemonBlue">Radio 2</label> + </div> + <div class="large-6 medium-6 columns"> + <label>Check these out</label> + <input id="checkbox1" type="checkbox"><label for="checkbox1">Checkbox 1</label> + <input id="checkbox2" type="checkbox"><label for="checkbox2">Checkbox 2</label> + </div> + </div> + <div class="row"> + <div class="large-12 columns"> + <label>Textarea Label</label> + <textarea placeholder="small-12.columns"></textarea> + </div> + </div> + </form> + </div> + + <div class="large-4 medium-4 columns"> + <h5>Try one of these buttons:</h5> + <p><a href="#" class="small button">Simple Button</a><br/> + <a href="#" class="small radius button">Radius Button</a><br/> + <a href="#" class="small round button">Round Button</a><br/> + <a href="#" class="medium success button">Success Btn</a><br/> + <a href="#" class="medium alert button">Alert Btn</a><br/> + <a href="#" class="medium secondary button">Secondary Btn</a></p> + <div class="panel"> + <h5>So many components, girl!</h5> + <p>A whole kitchen sink of goodies comes with Foundation. Checkout the docs to see them all, along with details on making them your own.</p> + <a href="http://foundation.zurb.com/docs/" class="small button">Go to Foundation Docs</a> + </div> + </div> + </div> + + <script src="js/vendor/jquery.js"></script> + <script src="js/foundation.min.js"></script> + <script> + $(document).foundation(); + </script> + </body> +</html> diff --git a/resources/foundation/js/foundation.min.js b/resources/foundation/js/foundation.min.js new file mode 100644 index 0000000..3db8f43 --- /dev/null +++ b/resources/foundation/js/foundation.min.js @@ -0,0 +1,5725 @@ +/* + * Foundation Responsive Library + * http://foundation.zurb.com + * Copyright 2014, ZURB + * Free to use under the MIT license. + * http://www.opensource.org/licenses/mit-license.php +*/ + +(function ($, window, document, undefined) { + 'use strict'; + + var header_helpers = function (class_array) { + var i = class_array.length; + var head = $('head'); + + while (i--) { + if(head.has('.' + class_array[i]).length === 0) { + head.append('<meta class="' + class_array[i] + '" />'); + } + } + }; + + header_helpers([ + 'foundation-mq-small', + 'foundation-mq-medium', + 'foundation-mq-large', + 'foundation-mq-xlarge', + 'foundation-mq-xxlarge', + 'foundation-data-attribute-namespace']); + + // Enable FastClick if present + + $(function() { + if (typeof FastClick !== 'undefined') { + // Don't attach to body if undefined + if (typeof document.body !== 'undefined') { + FastClick.attach(document.body); + } + } + }); + + // private Fast Selector wrapper, + // returns jQuery object. Only use where + // getElementById is not available. + var S = function (selector, context) { + if (typeof selector === 'string') { + if (context) { + var cont; + if (context.jquery) { + cont = context[0]; + if (!cont) return context; + } else { + cont = context; + } + return $(cont.querySelectorAll(selector)); + } + + return $(document.querySelectorAll(selector)); + } + + return $(selector, context); + }; + + // Namespace functions. + + var attr_name = function (init) { + var arr = []; + if (!init) arr.push('data'); + if (this.namespace.length > 0) arr.push(this.namespace); + arr.push(this.name); + + return arr.join('-'); + }; + + var add_namespace = function (str) { + var parts = str.split('-'), + i = parts.length, + arr = []; + + while (i--) { + if (i !== 0) { + arr.push(parts[i]); + } else { + if (this.namespace.length > 0) { + arr.push(this.namespace, parts[i]); + } else { + arr.push(parts[i]); + } + } + } + + return arr.reverse().join('-'); + }; + + // Event binding and data-options updating. + + var bindings = function (method, options) { + var self = this, + should_bind_events = !S(this).data(this.attr_name(true)); + + + if (S(this.scope).is('[' + this.attr_name() +']')) { + S(this.scope).data(this.attr_name(true) + '-init', $.extend({}, this.settings, (options || method), this.data_options(S(this.scope)))); + + if (should_bind_events) { + this.events(this.scope); + } + + } else { + S('[' + this.attr_name() +']', this.scope).each(function () { + var should_bind_events = !S(this).data(self.attr_name(true) + '-init'); + S(this).data(self.attr_name(true) + '-init', $.extend({}, self.settings, (options || method), self.data_options(S(this)))); + + if (should_bind_events) { + self.events(this); + } + }); + } + // # Patch to fix #5043 to move this *after* the if/else clause in order for Backbone and similar frameworks to have improved control over event binding and data-options updating. + if (typeof method === 'string') { + return this[method].call(this, options); + } + + }; + + var single_image_loaded = function (image, callback) { + function loaded () { + callback(image[0]); + } + + function bindLoad () { + this.one('load', loaded); + + if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) { + var src = this.attr( 'src' ), + param = src.match( /\?/ ) ? '&' : '?'; + + param += 'random=' + (new Date()).getTime(); + this.attr('src', src + param); + } + } + + if (!image.attr('src')) { + loaded(); + return; + } + + if (image[0].complete || image[0].readyState === 4) { + loaded(); + } else { + bindLoad.call(image); + } + }; + + /* + https://github.com/paulirish/matchMedia.js + */ + + window.matchMedia = window.matchMedia || (function( doc ) { + + "use strict"; + + var bool, + docElem = doc.documentElement, + refNode = docElem.firstElementChild || docElem.firstChild, + // fakeBody required for <FF4 when executed in <head> + fakeBody = doc.createElement( "body" ), + div = doc.createElement( "div" ); + + div.id = "mq-test-1"; + div.style.cssText = "position:absolute;top:-100em"; + fakeBody.style.background = "none"; + fakeBody.appendChild(div); + + return function (q) { + + div.innerHTML = "­<style media=\"" + q + "\"> #mq-test-1 { width: 42px; }</style>"; + + docElem.insertBefore( fakeBody, refNode ); + bool = div.offsetWidth === 42; + docElem.removeChild( fakeBody ); + + return { + matches: bool, + media: q + }; + + }; + + }( document )); + + /* + * jquery.requestAnimationFrame + * https://github.com/gnarf37/jquery-requestAnimationFrame + * Requires jQuery 1.8+ + * + * Copyright (c) 2012 Corey Frang + * Licensed under the MIT license. + */ + + (function($) { + + // requestAnimationFrame polyfill adapted from Erik Möller + // fixes from Paul Irish and Tino Zijdel + // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ + // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating + + var animating, + lastTime = 0, + vendors = ['webkit', 'moz'], + requestAnimationFrame = window.requestAnimationFrame, + cancelAnimationFrame = window.cancelAnimationFrame, + jqueryFxAvailable = 'undefined' !== typeof jQuery.fx; + + for (; lastTime < vendors.length && !requestAnimationFrame; lastTime++) { + requestAnimationFrame = window[ vendors[lastTime] + "RequestAnimationFrame" ]; + cancelAnimationFrame = cancelAnimationFrame || + window[ vendors[lastTime] + "CancelAnimationFrame" ] || + window[ vendors[lastTime] + "CancelRequestAnimationFrame" ]; + } + + function raf() { + if (animating) { + requestAnimationFrame(raf); + + if (jqueryFxAvailable) { + jQuery.fx.tick(); + } + } + } + + if (requestAnimationFrame) { + // use rAF + window.requestAnimationFrame = requestAnimationFrame; + window.cancelAnimationFrame = cancelAnimationFrame; + + if (jqueryFxAvailable) { + jQuery.fx.timer = function (timer) { + if (timer() && jQuery.timers.push(timer) && !animating) { + animating = true; + raf(); + } + }; + + jQuery.fx.stop = function () { + animating = false; + }; + } + } else { + // polyfill + window.requestAnimationFrame = function (callback) { + var currTime = new Date().getTime(), + timeToCall = Math.max(0, 16 - (currTime - lastTime)), + id = window.setTimeout(function () { + callback(currTime + timeToCall); + }, timeToCall); + lastTime = currTime + timeToCall; + return id; + }; + + window.cancelAnimationFrame = function (id) { + clearTimeout(id); + }; + + } + + }( jQuery )); + + + function removeQuotes (string) { + if (typeof string === 'string' || string instanceof String) { + string = string.replace(/^['\\/"]+|(;\s?})+|['\\/"]+$/g, ''); + } + + return string; + } + + window.Foundation = { + name : 'Foundation', + + version : '5.4.7', + + media_queries : { + small : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + medium : S('.foundation-mq-medium').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + large : S('.foundation-mq-large').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + xlarge: S('.foundation-mq-xlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + xxlarge: S('.foundation-mq-xxlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, '') + }, + + stylesheet : $('<style></style>').appendTo('head')[0].sheet, + + global: { + namespace: undefined + }, + + init : function (scope, libraries, method, options, response) { + var args = [scope, method, options, response], + responses = []; + + // check RTL + this.rtl = /rtl/i.test(S('html').attr('dir')); + + // set foundation global scope + this.scope = scope || this.scope; + + this.set_namespace(); + + if (libraries && typeof libraries === 'string' && !/reflow/i.test(libraries)) { + if (this.libs.hasOwnProperty(libraries)) { + responses.push(this.init_lib(libraries, args)); + } + } else { + for (var lib in this.libs) { + responses.push(this.init_lib(lib, libraries)); + } + } + + S(window).load(function(){ + S(window) + .trigger('resize.fndtn.clearing') + .trigger('resize.fndtn.dropdown') + .trigger('resize.fndtn.equalizer') + .trigger('resize.fndtn.interchange') + .trigger('resize.fndtn.joyride') + .trigger('resize.fndtn.magellan') + .trigger('resize.fndtn.topbar') + .trigger('resize.fndtn.slider'); + }); + + return scope; + }, + + init_lib : function (lib, args) { + if (this.libs.hasOwnProperty(lib)) { + this.patch(this.libs[lib]); + + if (args && args.hasOwnProperty(lib)) { + if (typeof this.libs[lib].settings !== 'undefined') { + $.extend(true, this.libs[lib].settings, args[lib]); + } + else if (typeof this.libs[lib].defaults !== 'undefined') { + $.extend(true, this.libs[lib].defaults, args[lib]); + } + return this.libs[lib].init.apply(this.libs[lib], [this.scope, args[lib]]); + } + + args = args instanceof Array ? args : new Array(args); // PATCH: added this line + return this.libs[lib].init.apply(this.libs[lib], args); + } + + return function () {}; + }, + + patch : function (lib) { + lib.scope = this.scope; + lib.namespace = this.global.namespace; + lib.rtl = this.rtl; + lib['data_options'] = this.utils.data_options; + lib['attr_name'] = attr_name; + lib['add_namespace'] = add_namespace; + lib['bindings'] = bindings; + lib['S'] = this.utils.S; + }, + + inherit : function (scope, methods) { + var methods_arr = methods.split(' '), + i = methods_arr.length; + + while (i--) { + if (this.utils.hasOwnProperty(methods_arr[i])) { + scope[methods_arr[i]] = this.utils[methods_arr[i]]; + } + } + }, + + set_namespace: function () { + + // Description: + // Don't bother reading the namespace out of the meta tag + // if the namespace has been set globally in javascript + // + // Example: + // Foundation.global.namespace = 'my-namespace'; + // or make it an empty string: + // Foundation.global.namespace = ''; + // + // + + // If the namespace has not been set (is undefined), try to read it out of the meta element. + // Otherwise use the globally defined namespace, even if it's empty ('') + var namespace = ( this.global.namespace === undefined ) ? $('.foundation-data-attribute-namespace').css('font-family') : this.global.namespace; + + // Finally, if the namsepace is either undefined or false, set it to an empty string. + // Otherwise use the namespace value. + this.global.namespace = ( namespace === undefined || /false/i.test(namespace) ) ? '' : namespace; + }, + + libs : {}, + + // methods that can be inherited in libraries + utils : { + + // Description: + // Fast Selector wrapper returns jQuery object. Only use where getElementById + // is not available. + // + // Arguments: + // Selector (String): CSS selector describing the element(s) to be + // returned as a jQuery object. + // + // Scope (String): CSS selector describing the area to be searched. Default + // is document. + // + // Returns: + // Element (jQuery Object): jQuery object containing elements matching the + // selector within the scope. + S : S, + + // Description: + // Executes a function a max of once every n milliseconds + // + // Arguments: + // Func (Function): Function to be throttled. + // + // Delay (Integer): Function execution threshold in milliseconds. + // + // Returns: + // Lazy_function (Function): Function with throttling applied. + 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); + } + }; + }, + + // Description: + // Executes a function when it stops being invoked for n seconds + // Modified version of _.debounce() http://underscorejs.org + // + // Arguments: + // Func (Function): Function to be debounced. + // + // Delay (Integer): Function execution threshold in milliseconds. + // + // Immediate (Bool): Whether the function should be called at the beginning + // of the delay instead of the end. Default is false. + // + // Returns: + // Lazy_function (Function): Function with debouncing applied. + debounce : function (func, delay, immediate) { + var timeout, result; + return function () { + var context = this, args = arguments; + var later = function () { + timeout = null; + if (!immediate) result = func.apply(context, args); + }; + var callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, delay); + if (callNow) result = func.apply(context, args); + return result; + }; + }, + + // Description: + // Parses data-options attribute + // + // Arguments: + // El (jQuery Object): Element to be parsed. + // + // Returns: + // Options (Javascript Object): Contents of the element's data-options + // attribute. + data_options : function (el, data_attr_name) { + data_attr_name = data_attr_name || 'options'; + var opts = {}, ii, p, opts_arr, + data_options = function (el) { + var namespace = Foundation.global.namespace; + + if (namespace.length > 0) { + return el.data(namespace + '-' + data_attr_name); + } + + return el.data(data_attr_name); + }; + + var cached_options = data_options(el); + + if (typeof cached_options === 'object') { + return cached_options; + } + + opts_arr = (cached_options || ':').split(';'); + ii = opts_arr.length; + + function isNumber (o) { + return ! isNaN (o-0) && o !== null && o !== "" && o !== false && o !== true; + } + + function trim (str) { + if (typeof str === 'string') return $.trim(str); + return str; + } + + while (ii--) { + p = opts_arr[ii].split(':'); + p = [p[0], p.slice(1).join(':')]; + + if (/true/i.test(p[1])) p[1] = true; + if (/false/i.test(p[1])) p[1] = false; + if (isNumber(p[1])) { + if (p[1].indexOf('.') === -1) { + p[1] = parseInt(p[1], 10); + } else { + p[1] = parseFloat(p[1]); + } + } + + if (p.length === 2 && p[0].length > 0) { + opts[trim(p[0])] = trim(p[1]); + } + } + + return opts; + }, + + // Description: + // Adds JS-recognizable media queries + // + // Arguments: + // Media (String): Key string for the media query to be stored as in + // Foundation.media_queries + // + // Class (String): Class name for the generated <meta> tag + register_media : function (media, media_class) { + if(Foundation.media_queries[media] === undefined) { + $('head').append('<meta class="' + media_class + '"/>'); + Foundation.media_queries[media] = removeQuotes($('.' + media_class).css('font-family')); + } + }, + + // Description: + // Add custom CSS within a JS-defined media query + // + // Arguments: + // Rule (String): CSS rule to be appended to the document. + // + // Media (String): Optional media query string for the CSS rule to be + // nested under. + add_custom_rule : function (rule, media) { + if (media === undefined && Foundation.stylesheet) { + Foundation.stylesheet.insertRule(rule, Foundation.stylesheet.cssRules.length); + } else { + var query = Foundation.media_queries[media]; + + if (query !== undefined) { + Foundation.stylesheet.insertRule('@media ' + + Foundation.media_queries[media] + '{ ' + rule + ' }'); + } + } + }, + + // Description: + // Performs a callback function when an image is fully loaded + // + // Arguments: + // Image (jQuery Object): Image(s) to check if loaded. + // + // Callback (Function): Function to execute when image is fully loaded. + image_loaded : function (images, callback) { + var self = this, + unloaded = images.length; + + if (unloaded === 0) { + callback(images); + } + + images.each(function () { + single_image_loaded(self.S(this), function () { + unloaded -= 1; + if (unloaded === 0) { + callback(images); + } + }); + }); + }, + + // Description: + // Returns a random, alphanumeric string + // + // Arguments: + // Length (Integer): Length of string to be generated. Defaults to random + // integer. + // + // Returns: + // Rand (String): Pseudo-random, alphanumeric string. + random_str : function () { + if (!this.fidx) this.fidx = 0; + this.prefix = this.prefix || [(this.name || 'F'), (+new Date).toString(36)].join('-'); + + return this.prefix + (this.fidx++).toString(36); + } + } + }; + + $.fn.foundation = function () { + var args = Array.prototype.slice.call(arguments, 0); + + return this.each(function () { + Foundation.init.apply(Foundation, [this].concat(args)); + return this; + }); + }; + +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.slider = { + name : 'slider', + + version : '5.4.7', + + settings: { + start: 0, + end: 100, + step: 1, + initial: null, + display_selector: '', + vertical: false, + on_change: function(){} + }, + + cache : {}, + + init : function (scope, method, options) { + Foundation.inherit(this,'throttle'); + this.bindings(method, options); + this.reflow(); + }, + + events : function() { + var self = this; + + $(this.scope) + .off('.slider') + .on('mousedown.fndtn.slider touchstart.fndtn.slider pointerdown.fndtn.slider', + '[' + self.attr_name() + ']:not(.disabled, [disabled]) .range-slider-handle', function(e) { + if (!self.cache.active) { + e.preventDefault(); + self.set_active_slider($(e.target)); + } + }) + .on('mousemove.fndtn.slider touchmove.fndtn.slider pointermove.fndtn.slider', function(e) { + if (!!self.cache.active) { + e.preventDefault(); + if ($.data(self.cache.active[0], 'settings').vertical) { + var scroll_offset = 0; + if (!e.pageY) { + scroll_offset = window.scrollY; + } + self.calculate_position(self.cache.active, (e.pageY || + e.originalEvent.clientY || + e.originalEvent.touches[0].clientY || + e.currentPoint.y) + + scroll_offset); + } else { + self.calculate_position(self.cache.active, e.pageX || + e.originalEvent.clientX || + e.originalEvent.touches[0].clientX || + e.currentPoint.x); + } + } + }) + .on('mouseup.fndtn.slider touchend.fndtn.slider pointerup.fndtn.slider', function(e) { + self.remove_active_slider(); + }) + .on('change.fndtn.slider', function(e) { + self.settings.on_change(); + }); + + self.S(window) + .on('resize.fndtn.slider', self.throttle(function(e) { + self.reflow(); + }, 300)); + }, + + set_active_slider : function($handle) { + this.cache.active = $handle; + }, + + remove_active_slider : function() { + this.cache.active = null; + }, + + calculate_position : function($handle, cursor_x) { + var self = this, + settings = $.data($handle[0], 'settings'), + handle_l = $.data($handle[0], 'handle_l'), + handle_o = $.data($handle[0], 'handle_o'), + bar_l = $.data($handle[0], 'bar_l'), + bar_o = $.data($handle[0], 'bar_o'); + + requestAnimationFrame(function(){ + var pct; + + if (Foundation.rtl && !settings.vertical) { + pct = self.limit_to(((bar_o+bar_l-cursor_x)/bar_l),0,1); + } else { + pct = self.limit_to(((cursor_x-bar_o)/bar_l),0,1); + } + + pct = settings.vertical ? 1-pct : pct; + + var norm = self.normalized_value(pct, settings.start, settings.end, settings.step); + + self.set_ui($handle, norm); + }); + }, + + set_ui : function($handle, value) { + var settings = $.data($handle[0], 'settings'), + handle_l = $.data($handle[0], 'handle_l'), + bar_l = $.data($handle[0], 'bar_l'), + norm_pct = this.normalized_percentage(value, settings.start, settings.end), + handle_offset = norm_pct*(bar_l-handle_l)-1, + progress_bar_length = norm_pct*100; + + if (Foundation.rtl && !settings.vertical) { + handle_offset = -handle_offset; + } + + handle_offset = settings.vertical ? -handle_offset + bar_l - handle_l + 1 : handle_offset; + this.set_translate($handle, handle_offset, settings.vertical); + + if (settings.vertical) { + $handle.siblings('.range-slider-active-segment').css('height', progress_bar_length + '%'); + } else { + $handle.siblings('.range-slider-active-segment').css('width', progress_bar_length + '%'); + } + + $handle.parent().attr(this.attr_name(), value).trigger('change').trigger('change.fndtn.slider'); + + $handle.parent().children('input[type=hidden]').val(value); + + if (!$handle[0].hasAttribute('aria-valuemin')) { + $handle.attr({ + 'aria-valuemin': settings.start, + 'aria-valuemax': settings.end, + }); + } + $handle.attr('aria-valuenow', value); + + if (settings.display_selector != '') { + $(settings.display_selector).each(function(){ + if (this.hasOwnProperty('value')) { + $(this).val(value); + } else { + $(this).text(value); + } + }); + } + + }, + + normalized_percentage : function(val, start, end) { + return Math.min(1, (val - start)/(end - start)); + }, + + normalized_value : function(val, start, end, step) { + var range = end - start, + point = val*range, + mod = (point-(point%step)) / step, + rem = point % step, + round = ( rem >= step*0.5 ? step : 0); + return (mod*step + round) + start; + }, + + set_translate : function(ele, offset, vertical) { + if (vertical) { + $(ele) + .css('-webkit-transform', 'translateY('+offset+'px)') + .css('-moz-transform', 'translateY('+offset+'px)') + .css('-ms-transform', 'translateY('+offset+'px)') + .css('-o-transform', 'translateY('+offset+'px)') + .css('transform', 'translateY('+offset+'px)'); + } else { + $(ele) + .css('-webkit-transform', 'translateX('+offset+'px)') + .css('-moz-transform', 'translateX('+offset+'px)') + .css('-ms-transform', 'translateX('+offset+'px)') + .css('-o-transform', 'translateX('+offset+'px)') + .css('transform', 'translateX('+offset+'px)'); + } + }, + + limit_to : function(val, min, max) { + return Math.min(Math.max(val, min), max); + }, + + initialize_settings : function(handle) { + var settings = $.extend({}, this.settings, this.data_options($(handle).parent())); + + if (settings.vertical) { + $.data(handle, 'bar_o', $(handle).parent().offset().top); + $.data(handle, 'bar_l', $(handle).parent().outerHeight()); + $.data(handle, 'handle_o', $(handle).offset().top); + $.data(handle, 'handle_l', $(handle).outerHeight()); + } else { + $.data(handle, 'bar_o', $(handle).parent().offset().left); + $.data(handle, 'bar_l', $(handle).parent().outerWidth()); + $.data(handle, 'handle_o', $(handle).offset().left); + $.data(handle, 'handle_l', $(handle).outerWidth()); + } + + $.data(handle, 'bar', $(handle).parent()); + $.data(handle, 'settings', settings); + }, + + set_initial_position : function($ele) { + var settings = $.data($ele.children('.range-slider-handle')[0], 'settings'), + initial = (!!settings.initial ? settings.initial : Math.floor((settings.end-settings.start)*0.5/settings.step)*settings.step+settings.start), + $handle = $ele.children('.range-slider-handle'); + this.set_ui($handle, initial); + }, + + set_value : function(value) { + var self = this; + $('[' + self.attr_name() + ']', this.scope).each(function(){ + $(this).attr(self.attr_name(), value); + }); + if (!!$(this.scope).attr(self.attr_name())) { + $(this.scope).attr(self.attr_name(), value); + } + self.reflow(); + }, + + reflow : function() { + var self = this; + self.S('[' + this.attr_name() + ']').each(function() { + var handle = $(this).children('.range-slider-handle')[0], + val = $(this).attr(self.attr_name()); + self.initialize_settings(handle); + + if (val) { + self.set_ui($(handle), parseFloat(val)); + } else { + self.set_initial_position($(this)); + } + }); + } + }; + +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + var Modernizr = Modernizr || false; + + Foundation.libs.joyride = { + name : 'joyride', + + version : '5.4.7', + + defaults : { + expose : false, // turn on or off the expose feature + modal : true, // Whether to cover page with modal during the tour + keyboard : true, // enable left, right and esc keystrokes + tip_location : 'bottom', // 'top' or 'bottom' in relation to parent + nub_position : 'auto', // override on a per tooltip bases + scroll_speed : 1500, // Page scrolling speed in milliseconds, 0 = no scroll animation + scroll_animation : 'linear', // supports 'swing' and 'linear', extend with jQuery UI. + timer : 0, // 0 = no timer , all other numbers = timer in milliseconds + start_timer_on_click : true, // true or false - true requires clicking the first button start the timer + start_offset : 0, // the index of the tooltip you want to start on (index of the li) + next_button : true, // true or false to control whether a next button is used + prev_button : true, // true or false to control whether a prev button is used + tip_animation : 'fade', // 'pop' or 'fade' in each tip + pause_after : [], // array of indexes where to pause the tour after + exposed : [], // array of expose elements + tip_animation_fade_speed : 300, // when tipAnimation = 'fade' this is speed in milliseconds for the transition + cookie_monster : false, // true or false to control whether cookies are used + cookie_name : 'joyride', // Name the cookie you'll use + cookie_domain : false, // Will this cookie be attached to a domain, ie. '.notableapp.com' + cookie_expires : 365, // set when you would like the cookie to expire. + tip_container : 'body', // Where will the tip be attached + abort_on_close : true, // When true, the close event will not fire any callback + tip_location_patterns : { + top: ['bottom'], + bottom: [], // bottom should not need to be repositioned + left: ['right', 'top', 'bottom'], + right: ['left', 'top', 'bottom'] + }, + post_ride_callback : function (){}, // A method to call once the tour closes (canceled or complete) + post_step_callback : function (){}, // A method to call after each step + pre_step_callback : function (){}, // A method to call before each step + pre_ride_callback : function (){}, // A method to call before the tour starts (passed index, tip, and cloned exposed element) + post_expose_callback : function (){}, // A method to call after an element has been exposed + template : { // HTML segments for tip layout + link : '<a href="#close" class="joyride-close-tip">×</a>', + timer : '<div class="joyride-timer-indicator-wrap"><span class="joyride-timer-indicator"></span></div>', + tip : '<div class="joyride-tip-guide"><span class="joyride-nub"></span></div>', + wrapper : '<div class="joyride-content-wrapper"></div>', + button : '<a href="#" class="small button joyride-next-tip"></a>', + prev_button : '<a href="#" class="small button joyride-prev-tip"></a>', + modal : '<div class="joyride-modal-bg"></div>', + expose : '<div class="joyride-expose-wrapper"></div>', + expose_cover : '<div class="joyride-expose-cover"></div>' + }, + expose_add_class : '' // One or more space-separated class names to be added to exposed element + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle random_str'); + + this.settings = this.settings || $.extend({}, this.defaults, (options || method)); + + this.bindings(method, options) + }, + + go_next : function() { + if (this.settings.$li.next().length < 1) { + this.end(); + } else if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + this.hide(); + this.show(); + this.startTimer(); + } else { + this.hide(); + this.show(); + } + }, + + go_prev : function() { + if (this.settings.$li.prev().length < 1) { + // Do nothing if there are no prev element + } else if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + this.hide(); + this.show(null, true); + this.startTimer(); + } else { + this.hide(); + this.show(null, true); + } + }, + + events : function () { + var self = this; + + $(this.scope) + .off('.joyride') + .on('click.fndtn.joyride', '.joyride-next-tip, .joyride-modal-bg', function (e) { + e.preventDefault(); + this.go_next() + }.bind(this)) + .on('click.fndtn.joyride', '.joyride-prev-tip', function (e) { + e.preventDefault(); + this.go_prev(); + }.bind(this)) + + .on('click.fndtn.joyride', '.joyride-close-tip', function (e) { + e.preventDefault(); + this.end(this.settings.abort_on_close); + }.bind(this)) + + .on("keyup.fndtn.joyride", function(e) { + // Don't do anything if keystrokes are disabled + // or if the joyride is not being shown + if (!this.settings.keyboard || !this.settings.riding) return; + + switch (e.which) { + case 39: // right arrow + e.preventDefault(); + this.go_next(); + break; + case 37: // left arrow + e.preventDefault(); + this.go_prev(); + break; + case 27: // escape + e.preventDefault(); + this.end(this.settings.abort_on_close); + } + }.bind(this)); + + $(window) + .off('.joyride') + .on('resize.fndtn.joyride', self.throttle(function () { + if ($('[' + self.attr_name() + ']').length > 0 && self.settings.$next_tip && self.settings.riding) { + if (self.settings.exposed.length > 0) { + var $els = $(self.settings.exposed); + + $els.each(function () { + var $this = $(this); + self.un_expose($this); + self.expose($this); + }); + } + + if (self.is_phone()) { + self.pos_phone(); + } else { + self.pos_default(false); + } + } + }, 100)); + }, + + start : function () { + var self = this, + $this = $('[' + this.attr_name() + ']', this.scope), + integer_settings = ['timer', 'scrollSpeed', 'startOffset', 'tipAnimationFadeSpeed', 'cookieExpires'], + int_settings_count = integer_settings.length; + + if (!$this.length > 0) return; + + if (!this.settings.init) this.events(); + + this.settings = $this.data(this.attr_name(true) + '-init'); + + // non configureable settings + this.settings.$content_el = $this; + this.settings.$body = $(this.settings.tip_container); + this.settings.body_offset = $(this.settings.tip_container).position(); + this.settings.$tip_content = this.settings.$content_el.find('> li'); + this.settings.paused = false; + this.settings.attempts = 0; + this.settings.riding = true; + + // can we create cookies? + if (typeof $.cookie !== 'function') { + this.settings.cookie_monster = false; + } + + // generate the tips and insert into dom. + if (!this.settings.cookie_monster || this.settings.cookie_monster && !$.cookie(this.settings.cookie_name)) { + this.settings.$tip_content.each(function (index) { + var $this = $(this); + this.settings = $.extend({}, self.defaults, self.data_options($this)); + + // Make sure that settings parsed from data_options are integers where necessary + var i = int_settings_count; + while (i--) { + self.settings[integer_settings[i]] = parseInt(self.settings[integer_settings[i]], 10); + } + self.create({$li : $this, index : index}); + }); + + // show first tip + if (!this.settings.start_timer_on_click && this.settings.timer > 0) { + this.show('init'); + this.startTimer(); + } else { + this.show('init'); + } + + } + }, + + resume : function () { + this.set_li(); + this.show(); + }, + + tip_template : function (opts) { + var $blank, content; + + opts.tip_class = opts.tip_class || ''; + + $blank = $(this.settings.template.tip).addClass(opts.tip_class); + content = $.trim($(opts.li).html()) + + this.prev_button_text(opts.prev_button_text, opts.index) + + this.button_text(opts.button_text) + + this.settings.template.link + + this.timer_instance(opts.index); + + $blank.append($(this.settings.template.wrapper)); + $blank.first().attr(this.add_namespace('data-index'), opts.index); + $('.joyride-content-wrapper', $blank).append(content); + + return $blank[0]; + }, + + timer_instance : function (index) { + var txt; + + if ((index === 0 && this.settings.start_timer_on_click && this.settings.timer > 0) || this.settings.timer === 0) { + txt = ''; + } else { + txt = $(this.settings.template.timer)[0].outerHTML; + } + return txt; + }, + + button_text : function (txt) { + if (this.settings.tip_settings.next_button) { + txt = $.trim(txt) || 'Next'; + txt = $(this.settings.template.button).append(txt)[0].outerHTML; + } else { + txt = ''; + } + return txt; + }, + + prev_button_text : function (txt, idx) { + if (this.settings.tip_settings.prev_button) { + txt = $.trim(txt) || 'Previous'; + + // Add the disabled class to the button if it's the first element + if (idx == 0) + txt = $(this.settings.template.prev_button).append(txt).addClass('disabled')[0].outerHTML; + else + txt = $(this.settings.template.prev_button).append(txt)[0].outerHTML; + } else { + txt = ''; + } + return txt; + }, + + create : function (opts) { + this.settings.tip_settings = $.extend({}, this.settings, this.data_options(opts.$li)); + var buttonText = opts.$li.attr(this.add_namespace('data-button')) + || opts.$li.attr(this.add_namespace('data-text')), + prevButtonText = opts.$li.attr(this.add_namespace('data-button-prev')) + || opts.$li.attr(this.add_namespace('data-prev-text')), + tipClass = opts.$li.attr('class'), + $tip_content = $(this.tip_template({ + tip_class : tipClass, + index : opts.index, + button_text : buttonText, + prev_button_text : prevButtonText, + li : opts.$li + })); + + $(this.settings.tip_container).append($tip_content); + }, + + show : function (init, is_prev) { + var $timer = null; + + // are we paused? + if (this.settings.$li === undefined + || ($.inArray(this.settings.$li.index(), this.settings.pause_after) === -1)) { + + // don't go to the next li if the tour was paused + if (this.settings.paused) { + this.settings.paused = false; + } else { + this.set_li(init, is_prev); + } + + this.settings.attempts = 0; + + if (this.settings.$li.length && this.settings.$target.length > 0) { + if (init) { //run when we first start + this.settings.pre_ride_callback(this.settings.$li.index(), this.settings.$next_tip); + if (this.settings.modal) { + this.show_modal(); + } + } + + this.settings.pre_step_callback(this.settings.$li.index(), this.settings.$next_tip); + + if (this.settings.modal && this.settings.expose) { + this.expose(); + } + + this.settings.tip_settings = $.extend({}, this.settings, this.data_options(this.settings.$li)); + + this.settings.timer = parseInt(this.settings.timer, 10); + + this.settings.tip_settings.tip_location_pattern = this.settings.tip_location_patterns[this.settings.tip_settings.tip_location]; + + // scroll if not modal + if (!/body/i.test(this.settings.$target.selector)) { + this.scroll_to(); + } + + if (this.is_phone()) { + this.pos_phone(true); + } else { + this.pos_default(true); + } + + $timer = this.settings.$next_tip.find('.joyride-timer-indicator'); + + if (/pop/i.test(this.settings.tip_animation)) { + + $timer.width(0); + + if (this.settings.timer > 0) { + + this.settings.$next_tip.show(); + + setTimeout(function () { + $timer.animate({ + width: $timer.parent().width() + }, this.settings.timer, 'linear'); + }.bind(this), this.settings.tip_animation_fade_speed); + + } else { + this.settings.$next_tip.show(); + + } + + + } else if (/fade/i.test(this.settings.tip_animation)) { + + $timer.width(0); + + if (this.settings.timer > 0) { + + this.settings.$next_tip + .fadeIn(this.settings.tip_animation_fade_speed) + .show(); + + setTimeout(function () { + $timer.animate({ + width: $timer.parent().width() + }, this.settings.timer, 'linear'); + }.bind(this), this.settings.tip_animation_fade_speed); + + } else { + this.settings.$next_tip.fadeIn(this.settings.tip_animation_fade_speed); + } + } + + this.settings.$current_tip = this.settings.$next_tip; + + // skip non-existant targets + } else if (this.settings.$li && this.settings.$target.length < 1) { + + this.show(init, is_prev); + + } else { + + this.end(); + + } + } else { + + this.settings.paused = true; + + } + + }, + + is_phone : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + hide : function () { + if (this.settings.modal && this.settings.expose) { + this.un_expose(); + } + + if (!this.settings.modal) { + $('.joyride-modal-bg').hide(); + } + + // Prevent scroll bouncing...wait to remove from layout + this.settings.$current_tip.css('visibility', 'hidden'); + setTimeout($.proxy(function() { + this.hide(); + this.css('visibility', 'visible'); + }, this.settings.$current_tip), 0); + this.settings.post_step_callback(this.settings.$li.index(), + this.settings.$current_tip); + }, + + set_li : function (init, is_prev) { + if (init) { + this.settings.$li = this.settings.$tip_content.eq(this.settings.start_offset); + this.set_next_tip(); + this.settings.$current_tip = this.settings.$next_tip; + } else { + if (is_prev) + this.settings.$li = this.settings.$li.prev(); + else + this.settings.$li = this.settings.$li.next(); + this.set_next_tip(); + } + + this.set_target(); + }, + + set_next_tip : function () { + this.settings.$next_tip = $(".joyride-tip-guide").eq(this.settings.$li.index()); + this.settings.$next_tip.data('closed', ''); + }, + + set_target : function () { + var cl = this.settings.$li.attr(this.add_namespace('data-class')), + id = this.settings.$li.attr(this.add_namespace('data-id')), + $sel = function () { + if (id) { + return $(document.getElementById(id)); + } else if (cl) { + return $('.' + cl).first(); + } else { + return $('body'); + } + }; + + this.settings.$target = $sel(); + }, + + scroll_to : function () { + var window_half, tipOffset; + + window_half = $(window).height() / 2; + tipOffset = Math.ceil(this.settings.$target.offset().top - window_half + this.settings.$next_tip.outerHeight()); + + if (tipOffset != 0) { + $('html, body').stop().animate({ + scrollTop: tipOffset + }, this.settings.scroll_speed, 'swing'); + } + }, + + paused : function () { + return ($.inArray((this.settings.$li.index() + 1), this.settings.pause_after) === -1); + }, + + restart : function () { + this.hide(); + this.settings.$li = undefined; + this.show('init'); + }, + + pos_default : function (init) { + var $nub = this.settings.$next_tip.find('.joyride-nub'), + nub_width = Math.ceil($nub.outerWidth() / 2), + nub_height = Math.ceil($nub.outerHeight() / 2), + toggle = init || false; + + // tip must not be "display: none" to calculate position + if (toggle) { + this.settings.$next_tip.css('visibility', 'hidden'); + this.settings.$next_tip.show(); + } + + if (!/body/i.test(this.settings.$target.selector)) { + var topAdjustment = this.settings.tip_settings.tipAdjustmentY ? parseInt(this.settings.tip_settings.tipAdjustmentY) : 0, + leftAdjustment = this.settings.tip_settings.tipAdjustmentX ? parseInt(this.settings.tip_settings.tipAdjustmentX) : 0; + + if (this.bottom()) { + if (this.rtl) { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment), + left: this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth() + leftAdjustment}); + } else { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment), + left: this.settings.$target.offset().left + leftAdjustment}); + } + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'top'); + + } else if (this.top()) { + if (this.rtl) { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment), + left: this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth()}); + } else { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment), + left: this.settings.$target.offset().left + leftAdjustment}); + } + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'bottom'); + + } else if (this.right()) { + + this.settings.$next_tip.css({ + top: this.settings.$target.offset().top + topAdjustment, + left: (this.settings.$target.outerWidth() + this.settings.$target.offset().left + nub_width + leftAdjustment)}); + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'left'); + + } else if (this.left()) { + + this.settings.$next_tip.css({ + top: this.settings.$target.offset().top + topAdjustment, + left: (this.settings.$target.offset().left - this.settings.$next_tip.outerWidth() - nub_width + leftAdjustment)}); + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'right'); + + } + + if (!this.visible(this.corners(this.settings.$next_tip)) && this.settings.attempts < this.settings.tip_settings.tip_location_pattern.length) { + + $nub.removeClass('bottom') + .removeClass('top') + .removeClass('right') + .removeClass('left'); + + this.settings.tip_settings.tip_location = this.settings.tip_settings.tip_location_pattern[this.settings.attempts]; + + this.settings.attempts++; + + this.pos_default(); + + } + + } else if (this.settings.$li.length) { + + this.pos_modal($nub); + + } + + if (toggle) { + this.settings.$next_tip.hide(); + this.settings.$next_tip.css('visibility', 'visible'); + } + + }, + + pos_phone : function (init) { + var tip_height = this.settings.$next_tip.outerHeight(), + tip_offset = this.settings.$next_tip.offset(), + target_height = this.settings.$target.outerHeight(), + $nub = $('.joyride-nub', this.settings.$next_tip), + nub_height = Math.ceil($nub.outerHeight() / 2), + toggle = init || false; + + $nub.removeClass('bottom') + .removeClass('top') + .removeClass('right') + .removeClass('left'); + + if (toggle) { + this.settings.$next_tip.css('visibility', 'hidden'); + this.settings.$next_tip.show(); + } + + if (!/body/i.test(this.settings.$target.selector)) { + + if (this.top()) { + + this.settings.$next_tip.offset({top: this.settings.$target.offset().top - tip_height - nub_height}); + $nub.addClass('bottom'); + + } else { + + this.settings.$next_tip.offset({top: this.settings.$target.offset().top + target_height + nub_height}); + $nub.addClass('top'); + + } + + } else if (this.settings.$li.length) { + this.pos_modal($nub); + } + + if (toggle) { + this.settings.$next_tip.hide(); + this.settings.$next_tip.css('visibility', 'visible'); + } + }, + + pos_modal : function ($nub) { + this.center(); + $nub.hide(); + + this.show_modal(); + }, + + show_modal : function () { + if (!this.settings.$next_tip.data('closed')) { + var joyridemodalbg = $('.joyride-modal-bg'); + if (joyridemodalbg.length < 1) { + $('body').append(this.settings.template.modal).show(); + } + + if (/pop/i.test(this.settings.tip_animation)) { + joyridemodalbg.show(); + } else { + joyridemodalbg.fadeIn(this.settings.tip_animation_fade_speed); + } + } + }, + + expose : function () { + var expose, + exposeCover, + el, + origCSS, + origClasses, + randId = 'expose-' + this.random_str(6); + + if (arguments.length > 0 && arguments[0] instanceof $) { + el = arguments[0]; + } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){ + el = this.settings.$target; + } else { + return false; + } + + if(el.length < 1){ + if(window.console){ + console.error('element not valid', el); + } + return false; + } + + expose = $(this.settings.template.expose); + this.settings.$body.append(expose); + expose.css({ + top: el.offset().top, + left: el.offset().left, + width: el.outerWidth(true), + height: el.outerHeight(true) + }); + + exposeCover = $(this.settings.template.expose_cover); + + origCSS = { + zIndex: el.css('z-index'), + position: el.css('position') + }; + + origClasses = el.attr('class') == null ? '' : el.attr('class'); + + el.css('z-index',parseInt(expose.css('z-index'))+1); + + if (origCSS.position == 'static') { + el.css('position','relative'); + } + + el.data('expose-css',origCSS); + el.data('orig-class', origClasses); + el.attr('class', origClasses + ' ' + this.settings.expose_add_class); + + exposeCover.css({ + top: el.offset().top, + left: el.offset().left, + width: el.outerWidth(true), + height: el.outerHeight(true) + }); + + if (this.settings.modal) this.show_modal(); + + this.settings.$body.append(exposeCover); + expose.addClass(randId); + exposeCover.addClass(randId); + el.data('expose', randId); + this.settings.post_expose_callback(this.settings.$li.index(), this.settings.$next_tip, el); + this.add_exposed(el); + }, + + un_expose : function () { + var exposeId, + el, + expose , + origCSS, + origClasses, + clearAll = false; + + if (arguments.length > 0 && arguments[0] instanceof $) { + el = arguments[0]; + } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){ + el = this.settings.$target; + } else { + return false; + } + + if(el.length < 1){ + if (window.console) { + console.error('element not valid', el); + } + return false; + } + + exposeId = el.data('expose'); + expose = $('.' + exposeId); + + if (arguments.length > 1) { + clearAll = arguments[1]; + } + + if (clearAll === true) { + $('.joyride-expose-wrapper,.joyride-expose-cover').remove(); + } else { + expose.remove(); + } + + origCSS = el.data('expose-css'); + + if (origCSS.zIndex == 'auto') { + el.css('z-index', ''); + } else { + el.css('z-index', origCSS.zIndex); + } + + if (origCSS.position != el.css('position')) { + if(origCSS.position == 'static') {// this is default, no need to set it. + el.css('position', ''); + } else { + el.css('position', origCSS.position); + } + } + + origClasses = el.data('orig-class'); + el.attr('class', origClasses); + el.removeData('orig-classes'); + + el.removeData('expose'); + el.removeData('expose-z-index'); + this.remove_exposed(el); + }, + + add_exposed: function(el){ + this.settings.exposed = this.settings.exposed || []; + if (el instanceof $ || typeof el === 'object') { + this.settings.exposed.push(el[0]); + } else if (typeof el == 'string') { + this.settings.exposed.push(el); + } + }, + + remove_exposed: function(el){ + var search, i; + if (el instanceof $) { + search = el[0] + } else if (typeof el == 'string'){ + search = el; + } + + this.settings.exposed = this.settings.exposed || []; + i = this.settings.exposed.length; + + while (i--) { + if (this.settings.exposed[i] == search) { + this.settings.exposed.splice(i, 1); + return; + } + } + }, + + center : function () { + var $w = $(window); + + this.settings.$next_tip.css({ + top : ((($w.height() - this.settings.$next_tip.outerHeight()) / 2) + $w.scrollTop()), + left : ((($w.width() - this.settings.$next_tip.outerWidth()) / 2) + $w.scrollLeft()) + }); + + return true; + }, + + bottom : function () { + return /bottom/i.test(this.settings.tip_settings.tip_location); + }, + + top : function () { + return /top/i.test(this.settings.tip_settings.tip_location); + }, + + right : function () { + return /right/i.test(this.settings.tip_settings.tip_location); + }, + + left : function () { + return /left/i.test(this.settings.tip_settings.tip_location); + }, + + corners : function (el) { + var w = $(window), + window_half = w.height() / 2, + //using this to calculate since scroll may not have finished yet. + tipOffset = Math.ceil(this.settings.$target.offset().top - window_half + this.settings.$next_tip.outerHeight()), + right = w.width() + w.scrollLeft(), + offsetBottom = w.height() + tipOffset, + bottom = w.height() + w.scrollTop(), + top = w.scrollTop(); + + if (tipOffset < top) { + if (tipOffset < 0) { + top = 0; + } else { + top = tipOffset; + } + } + + if (offsetBottom > bottom) { + bottom = offsetBottom; + } + + return [ + el.offset().top < top, + right < el.offset().left + el.outerWidth(), + bottom < el.offset().top + el.outerHeight(), + w.scrollLeft() > el.offset().left + ]; + }, + + visible : function (hidden_corners) { + var i = hidden_corners.length; + + while (i--) { + if (hidden_corners[i]) return false; + } + + return true; + }, + + nub_position : function (nub, pos, def) { + if (pos === 'auto') { + nub.addClass(def); + } else { + nub.addClass(pos); + } + }, + + startTimer : function () { + if (this.settings.$li.length) { + this.settings.automate = setTimeout(function () { + this.hide(); + this.show(); + this.startTimer(); + }.bind(this), this.settings.timer); + } else { + clearTimeout(this.settings.automate); + } + }, + + end : function (abort) { + if (this.settings.cookie_monster) { + $.cookie(this.settings.cookie_name, 'ridden', { expires: this.settings.cookie_expires, domain: this.settings.cookie_domain }); + } + + if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + } + + if (this.settings.modal && this.settings.expose) { + this.un_expose(); + } + + // Unplug keystrokes listener + $(this.scope).off('keyup.joyride') + + this.settings.$next_tip.data('closed', true); + this.settings.riding = false; + + $('.joyride-modal-bg').hide(); + this.settings.$current_tip.hide(); + + if (typeof abort === 'undefined' || abort === false) { + this.settings.post_step_callback(this.settings.$li.index(), this.settings.$current_tip); + this.settings.post_ride_callback(this.settings.$li.index(), this.settings.$current_tip); + } + + $('.joyride-tip-guide').remove(); + }, + + off : function () { + $(this.scope).off('.joyride'); + $(window).off('.joyride'); + $('.joyride-close-tip, .joyride-next-tip, .joyride-modal-bg').off('.joyride'); + $('.joyride-tip-guide, .joyride-modal-bg').remove(); + clearTimeout(this.settings.automate); + this.settings = {}; + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.equalizer = { + name : 'equalizer', + + version : '5.4.7', + + settings : { + use_tallest: true, + before_height_change: $.noop, + after_height_change: $.noop, + equalize_on_stack: false + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'image_loaded'); + this.bindings(method, options); + this.reflow(); + }, + + events : function () { + this.S(window).off('.equalizer').on('resize.fndtn.equalizer', function(e){ + this.reflow(); + }.bind(this)); + }, + + equalize: function(equalizer) { + var isStacked = false, + vals = equalizer.find('[' + this.attr_name() + '-watch]:visible'), + settings = equalizer.data(this.attr_name(true)+'-init'); + + if (vals.length === 0) return; + var firstTopOffset = vals.first().offset().top; + settings.before_height_change(); + equalizer.trigger('before-height-change').trigger('before-height-change.fndth.equalizer'); + vals.height('inherit'); + vals.each(function(){ + var el = $(this); + if (el.offset().top !== firstTopOffset) { + isStacked = true; + } + }); + + if (settings.equalize_on_stack === false) { + if (isStacked) return; + }; + + var heights = vals.map(function(){ return $(this).outerHeight(false) }).get(); + + if (settings.use_tallest) { + var max = Math.max.apply(null, heights); + vals.css('height', max); + } else { + var min = Math.min.apply(null, heights); + vals.css('height', min); + } + settings.after_height_change(); + equalizer.trigger('after-height-change').trigger('after-height-change.fndtn.equalizer'); + }, + + reflow : function () { + var self = this; + + this.S('[' + this.attr_name() + ']', this.scope).each(function(){ + var $eq_target = $(this); + self.image_loaded(self.S('img', this), function(){ + self.equalize($eq_target) + }); + }); + } + }; +})(jQuery, window, window.document); + +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.dropdown = { + name : 'dropdown', + + version : '5.4.7', + + settings : { + active_class: 'open', + disabled_class: 'disabled', + mega_class: 'mega', + align: 'bottom', + is_hover: false, + opened: function(){}, + closed: function(){} + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle'); + + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .off('.dropdown') + .on('click.fndtn.dropdown', '[' + this.attr_name() + ']', function (e) { + var settings = S(this).data(self.attr_name(true) + '-init') || self.settings; + if (!settings.is_hover || Modernizr.touch) { + e.preventDefault(); + self.toggle($(this)); + } + }) + .on('mouseenter.fndtn.dropdown', '[' + this.attr_name() + '], [' + this.attr_name() + '-content]', function (e) { + var $this = S(this), + dropdown, + target; + + clearTimeout(self.timeout); + + if ($this.data(self.data_attr())) { + dropdown = S('#' + $this.data(self.data_attr())); + target = $this; + } else { + dropdown = $this; + target = S("[" + self.attr_name() + "='" + dropdown.attr('id') + "']"); + } + + var settings = target.data(self.attr_name(true) + '-init') || self.settings; + + if(S(e.target).data(self.data_attr()) && settings.is_hover) { + self.closeall.call(self); + } + + if (settings.is_hover) self.open.apply(self, [dropdown, target]); + }) + .on('mouseleave.fndtn.dropdown', '[' + this.attr_name() + '], [' + this.attr_name() + '-content]', function (e) { + var $this = S(this); + self.timeout = setTimeout(function () { + if ($this.data(self.data_attr())) { + var settings = $this.data(self.data_attr(true) + '-init') || self.settings; + if (settings.is_hover) self.close.call(self, S('#' + $this.data(self.data_attr()))); + } else { + var target = S('[' + self.attr_name() + '="' + S(this).attr('id') + '"]'), + settings = target.data(self.attr_name(true) + '-init') || self.settings; + if (settings.is_hover) self.close.call(self, $this); + } + }.bind(this), 150); + }) + .on('click.fndtn.dropdown', function (e) { + var parent = S(e.target).closest('[' + self.attr_name() + '-content]'); + + if (S(e.target).closest('[' + self.attr_name() + ']').length > 0) { + return; + } + if (!(S(e.target).data('revealId')) && + (parent.length > 0 && (S(e.target).is('[' + self.attr_name() + '-content]') || + $.contains(parent.first()[0], e.target)))) { + e.stopPropagation(); + return; + } + + self.close.call(self, S('[' + self.attr_name() + '-content]')); + }) + .on('opened.fndtn.dropdown', '[' + self.attr_name() + '-content]', function () { + self.settings.opened.call(this); + }) + .on('closed.fndtn.dropdown', '[' + self.attr_name() + '-content]', function () { + self.settings.closed.call(this); + }); + + S(window) + .off('.dropdown') + .on('resize.fndtn.dropdown', self.throttle(function () { + self.resize.call(self); + }, 50)); + + this.resize(); + }, + + close: function (dropdown) { + var self = this; + dropdown.each(function () { + var original_target = $('[' + self.attr_name() + '=' + dropdown[0].id + ']') || $('aria-controls=' + dropdown[0].id+ ']'); + original_target.attr('aria-expanded', "false"); + if (self.S(this).hasClass(self.settings.active_class)) { + self.S(this) + .css(Foundation.rtl ? 'right':'left', '-99999px') + .attr('aria-hidden', "true") + .removeClass(self.settings.active_class) + .prev('[' + self.attr_name() + ']') + .removeClass(self.settings.active_class) + .removeData('target'); + + self.S(this).trigger('closed').trigger('closed.fndtn.dropdown', [dropdown]); + } + }); + }, + + closeall: function() { + var self = this; + $.each(self.S('[' + this.attr_name() + '-content]'), function() { + self.close.call(self, self.S(this)); + }); + }, + + open: function (dropdown, target) { + this + .css(dropdown + .addClass(this.settings.active_class), target); + dropdown.prev('[' + this.attr_name() + ']').addClass(this.settings.active_class); + dropdown.data('target', target.get(0)).trigger('opened').trigger('opened.fndtn.dropdown', [dropdown, target]); + dropdown.attr('aria-hidden', 'false'); + target.attr('aria-expanded', 'true'); + dropdown.focus(); + }, + + data_attr: function () { + if (this.namespace.length > 0) { + return this.namespace + '-' + this.name; + } + + return this.name; + }, + + toggle : function (target) { + if (target.hasClass(this.settings.disabled_class)) { + return; + } + var dropdown = this.S('#' + target.data(this.data_attr())); + if (dropdown.length === 0) { + // No dropdown found, not continuing + return; + } + + this.close.call(this, this.S('[' + this.attr_name() + '-content]').not(dropdown)); + + if (dropdown.hasClass(this.settings.active_class)) { + this.close.call(this, dropdown); + if (dropdown.data('target') !== target.get(0)) + this.open.call(this, dropdown, target); + } else { + this.open.call(this, dropdown, target); + } + }, + + resize : function () { + var dropdown = this.S('[' + this.attr_name() + '-content].open'), + target = this.S("[" + this.attr_name() + "='" + dropdown.attr('id') + "']"); + + if (dropdown.length && target.length) { + this.css(dropdown, target); + } + }, + + css : function (dropdown, target) { + var left_offset = Math.max((target.width() - dropdown.width()) / 2, 8), + settings = target.data(this.attr_name(true) + '-init') || this.settings; + + this.clear_idx(); + + if (this.small()) { + var p = this.dirs.bottom.call(dropdown, target, settings); + + dropdown.attr('style', '').removeClass('drop-left drop-right drop-top').css({ + position : 'absolute', + width: '95%', + 'max-width': 'none', + top: p.top + }); + + dropdown.css(Foundation.rtl ? 'right':'left', left_offset); + } else { + + this.style(dropdown, target, settings); + } + + return dropdown; + }, + + style : function (dropdown, target, settings) { + var css = $.extend({position: 'absolute'}, + this.dirs[settings.align].call(dropdown, target, settings)); + + dropdown.attr('style', '').css(css); + }, + + // return CSS property object + // `this` is the dropdown + dirs : { + // Calculate target offset + _base : function (t) { + var o_p = this.offsetParent(), + o = o_p.offset(), + p = t.offset(); + + p.top -= o.top; + p.left -= o.left; + + return p; + }, + top: function (t, s) { + var self = Foundation.libs.dropdown, + p = self.dirs._base.call(this, t); + + this.addClass('drop-top'); + + if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) { + self.adjust_pip(this,t,s,p); + } + + if (Foundation.rtl) { + return {left: p.left - this.outerWidth() + t.outerWidth(), + top: p.top - this.outerHeight()}; + } + + return {left: p.left, top: p.top - this.outerHeight()}; + }, + bottom: function (t,s) { + var self = Foundation.libs.dropdown, + p = self.dirs._base.call(this, t); + + if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) { + self.adjust_pip(this,t,s,p); + } + + if (self.rtl) { + return {left: p.left - this.outerWidth() + t.outerWidth(), top: p.top + t.outerHeight()}; + } + + return {left: p.left, top: p.top + t.outerHeight()}; + }, + left: function (t, s) { + var p = Foundation.libs.dropdown.dirs._base.call(this, t); + + this.addClass('drop-left'); + + return {left: p.left - this.outerWidth(), top: p.top}; + }, + right: function (t, s) { + var p = Foundation.libs.dropdown.dirs._base.call(this, t); + + this.addClass('drop-right'); + + return {left: p.left + t.outerWidth(), top: p.top}; + } + }, + + // Insert rule to style psuedo elements + adjust_pip : function (dropdown,target,settings,position) { + var sheet = Foundation.stylesheet, + pip_offset_base = 8; + + if (dropdown.hasClass(settings.mega_class)) { + pip_offset_base = position.left + (target.outerWidth()/2) - 8; + } + else if (this.small()) { + pip_offset_base += position.left - 8; + } + + this.rule_idx = sheet.cssRules.length; + + var sel_before = '.f-dropdown.open:before', + sel_after = '.f-dropdown.open:after', + css_before = 'left: ' + pip_offset_base + 'px;', + css_after = 'left: ' + (pip_offset_base - 1) + 'px;'; + + if (sheet.insertRule) { + sheet.insertRule([sel_before, '{', css_before, '}'].join(' '), this.rule_idx); + sheet.insertRule([sel_after, '{', css_after, '}'].join(' '), this.rule_idx + 1); + } else { + sheet.addRule(sel_before, css_before, this.rule_idx); + sheet.addRule(sel_after, css_after, this.rule_idx + 1); + } + }, + + // Remove old dropdown rule index + clear_idx : function () { + var sheet = Foundation.stylesheet; + + if (typeof this.rule_idx !== 'undefined') { + sheet.deleteRule(this.rule_idx); + sheet.deleteRule(this.rule_idx); + delete this.rule_idx; + } + }, + + small : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + off: function () { + this.S(this.scope).off('.fndtn.dropdown'); + this.S('html, body').off('.fndtn.dropdown'); + this.S(window).off('.fndtn.dropdown'); + this.S('[data-dropdown-content]').off('.fndtn.dropdown'); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.clearing = { + name : 'clearing', + + version: '5.4.7', + + settings : { + templates : { + viewing : '<a href="#" class="clearing-close">×</a>' + + '<div class="visible-img" style="display: none"><div class="clearing-touch-label"></div><img src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs%3D" alt="" />' + + '<p class="clearing-caption"></p><a href="#" class="clearing-main-prev"><span></span></a>' + + '<a href="#" class="clearing-main-next"><span></span></a></div>' + }, + + // comma delimited list of selectors that, on click, will close clearing, + // add 'div.clearing-blackout, div.visible-img' to close on background click + close_selectors : '.clearing-close, div.clearing-blackout', + + // Default to the entire li element. + open_selectors : '', + + // Image will be skipped in carousel. + skip_selector : '', + + touch_label : '', + + // event initializers and locks + init : false, + locked : false + }, + + init : function (scope, method, options) { + var self = this; + Foundation.inherit(this, 'throttle image_loaded'); + + this.bindings(method, options); + + if (self.S(this.scope).is('[' + this.attr_name() + ']')) { + this.assemble(self.S('li', this.scope)); + } else { + self.S('[' + this.attr_name() + ']', this.scope).each(function () { + self.assemble(self.S('li', this)); + }); + } + }, + + events : function (scope) { + var self = this, + S = self.S, + $scroll_container = $('.scroll-container'); + + if ($scroll_container.length > 0) { + this.scope = $scroll_container; + } + + S(this.scope) + .off('.clearing') + .on('click.fndtn.clearing', 'ul[' + this.attr_name() + '] li ' + this.settings.open_selectors, + function (e, current, target) { + var current = current || S(this), + target = target || current, + next = current.next('li'), + settings = current.closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init'), + image = S(e.target); + + e.preventDefault(); + + if (!settings) { + self.init(); + settings = current.closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init'); + } + + // if clearing is open and the current image is + // clicked, go to the next image in sequence + if (target.hasClass('visible') && + current[0] === target[0] && + next.length > 0 && self.is_open(current)) { + target = next; + image = S('img', target); + } + + // set current and target to the clicked li if not otherwise defined. + self.open(image, current, target); + self.update_paddles(target); + }) + + .on('click.fndtn.clearing', '.clearing-main-next', + function (e) { self.nav(e, 'next') }) + .on('click.fndtn.clearing', '.clearing-main-prev', + function (e) { self.nav(e, 'prev') }) + .on('click.fndtn.clearing', this.settings.close_selectors, + function (e) { Foundation.libs.clearing.close(e, this) }); + + $(document).on('keydown.fndtn.clearing', + function (e) { self.keydown(e) }); + + S(window).off('.clearing').on('resize.fndtn.clearing', + function () { self.resize() }); + + this.swipe_events(scope); + }, + + swipe_events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .on('touchstart.fndtn.clearing', '.visible-img', function(e) { + if (!e.touches) { e = e.originalEvent; } + var data = { + start_page_x: e.touches[0].pageX, + start_page_y: e.touches[0].pageY, + start_time: (new Date()).getTime(), + delta_x: 0, + is_scrolling: undefined + }; + + S(this).data('swipe-transition', data); + e.stopPropagation(); + }) + .on('touchmove.fndtn.clearing', '.visible-img', function(e) { + if (!e.touches) { e = e.originalEvent; } + // Ignore pinch/zoom events + if(e.touches.length > 1 || e.scale && e.scale !== 1) return; + + var data = S(this).data('swipe-transition'); + + if (typeof data === 'undefined') { + data = {}; + } + + data.delta_x = e.touches[0].pageX - data.start_page_x; + + if (Foundation.rtl) { + data.delta_x = -data.delta_x; + } + + if (typeof data.is_scrolling === 'undefined') { + data.is_scrolling = !!( data.is_scrolling || Math.abs(data.delta_x) < Math.abs(e.touches[0].pageY - data.start_page_y) ); + } + + if (!data.is_scrolling && !data.active) { + e.preventDefault(); + var direction = (data.delta_x < 0) ? 'next' : 'prev'; + data.active = true; + self.nav(e, direction); + } + }) + .on('touchend.fndtn.clearing', '.visible-img', function(e) { + S(this).data('swipe-transition', {}); + e.stopPropagation(); + }); + }, + + assemble : function ($li) { + var $el = $li.parent(); + + if ($el.parent().hasClass('carousel')) { + return; + } + + $el.after('<div id="foundationClearingHolder"></div>'); + + var grid = $el.detach(), + grid_outerHTML = ''; + + if (grid[0] == null) { + return; + } else { + grid_outerHTML = grid[0].outerHTML; + } + + var holder = this.S('#foundationClearingHolder'), + settings = $el.data(this.attr_name(true) + '-init'), + data = { + grid: '<div class="carousel">' + grid_outerHTML + '</div>', + viewing: settings.templates.viewing + }, + wrapper = '<div class="clearing-assembled"><div>' + data.viewing + + data.grid + '</div></div>', + touch_label = this.settings.touch_label; + + if (Modernizr.touch) { + wrapper = $(wrapper).find('.clearing-touch-label').html(touch_label).end(); + } + + holder.after(wrapper).remove(); + }, + + open : function ($image, current, target) { + var self = this, + body = $(document.body), + root = target.closest('.clearing-assembled'), + container = self.S('div', root).first(), + visible_image = self.S('.visible-img', container), + image = self.S('img', visible_image).not($image), + label = self.S('.clearing-touch-label', container), + error = false; + + // Event to disable scrolling on touch devices when Clearing is activated + $('body').on('touchmove',function(e){ + e.preventDefault(); + }); + + image.error(function () { + error = true; + }); + + function startLoad() { + setTimeout(function () { + this.image_loaded(image, function () { + if (image.outerWidth() === 1 && !error) { + startLoad.call(this); + } else { + cb.call(this, image); + } + }.bind(this)); + }.bind(this), 100); + } + + function cb (image) { + var $image = $(image); + $image.css('visibility', 'visible'); + // toggle the gallery + body.css('overflow', 'hidden'); + root.addClass('clearing-blackout'); + container.addClass('clearing-container'); + visible_image.show(); + this.fix_height(target) + .caption(self.S('.clearing-caption', visible_image), self.S('img', target)) + .center_and_label(image, label) + .shift(current, target, function () { + target.closest('li').siblings().removeClass('visible'); + target.closest('li').addClass('visible'); + }); + visible_image.trigger('opened.fndtn.clearing') + } + + if (!this.locked()) { + visible_image.trigger('open.fndtn.clearing'); + // set the image to the selected thumbnail + image + .attr('src', this.load($image)) + .css('visibility', 'hidden'); + + startLoad.call(this); + } + }, + + close : function (e, el) { + e.preventDefault(); + + var root = (function (target) { + if (/blackout/.test(target.selector)) { + return target; + } else { + return target.closest('.clearing-blackout'); + } + }($(el))), + body = $(document.body), container, visible_image; + + if (el === e.target && root) { + body.css('overflow', ''); + container = $('div', root).first(); + visible_image = $('.visible-img', container); + visible_image.trigger('close.fndtn.clearing'); + this.settings.prev_index = 0; + $('ul[' + this.attr_name() + ']', root) + .attr('style', '').closest('.clearing-blackout') + .removeClass('clearing-blackout'); + container.removeClass('clearing-container'); + visible_image.hide(); + visible_image.trigger('closed.fndtn.clearing'); + } + + // Event to re-enable scrolling on touch devices + $('body').off('touchmove'); + + return false; + }, + + is_open : function (current) { + return current.parent().prop('style').length > 0; + }, + + keydown : function (e) { + var clearing = $('.clearing-blackout ul[' + this.attr_name() + ']'), + NEXT_KEY = this.rtl ? 37 : 39, + PREV_KEY = this.rtl ? 39 : 37, + ESC_KEY = 27; + + if (e.which === NEXT_KEY) this.go(clearing, 'next'); + if (e.which === PREV_KEY) this.go(clearing, 'prev'); + if (e.which === ESC_KEY) this.S('a.clearing-close').trigger('click').trigger('click.fndtn.clearing'); + }, + + nav : function (e, direction) { + var clearing = $('ul[' + this.attr_name() + ']', '.clearing-blackout'); + + e.preventDefault(); + this.go(clearing, direction); + }, + + resize : function () { + var image = $('img', '.clearing-blackout .visible-img'), + label = $('.clearing-touch-label', '.clearing-blackout'); + + if (image.length) { + this.center_and_label(image, label); + image.trigger('resized.fndtn.clearing') + } + }, + + // visual adjustments + fix_height : function (target) { + var lis = target.parent().children(), + self = this; + + lis.each(function () { + var li = self.S(this), + image = li.find('img'); + + if (li.height() > image.outerHeight()) { + li.addClass('fix-height'); + } + }) + .closest('ul') + .width(lis.length * 100 + '%'); + + return this; + }, + + update_paddles : function (target) { + target = target.closest('li'); + var visible_image = target + .closest('.carousel') + .siblings('.visible-img'); + + if (target.next().length > 0) { + this.S('.clearing-main-next', visible_image).removeClass('disabled'); + } else { + this.S('.clearing-main-next', visible_image).addClass('disabled'); + } + + if (target.prev().length > 0) { + this.S('.clearing-main-prev', visible_image).removeClass('disabled'); + } else { + this.S('.clearing-main-prev', visible_image).addClass('disabled'); + } + }, + + center_and_label : function (target, label) { + if (!this.rtl) { + target.css({ + marginLeft : -(target.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2) + }); + + if (label.length > 0) { + label.css({ + marginLeft : -(label.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2)-label.outerHeight()-10 + }); + } + } else { + target.css({ + marginRight : -(target.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2), + left: 'auto', + right: '50%' + }); + + if (label.length > 0) { + label.css({ + marginRight : -(label.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2)-label.outerHeight()-10, + left: 'auto', + right: '50%' + }); + } + } + return this; + }, + + // image loading and preloading + + load : function ($image) { + var href; + + if ($image[0].nodeName === "A") { + href = $image.attr('href'); + } else { + href = $image.parent().attr('href'); + } + + this.preload($image); + + if (href) return href; + return $image.attr('src'); + }, + + preload : function ($image) { + this + .img($image.closest('li').next()) + .img($image.closest('li').prev()); + }, + + img : function (img) { + if (img.length) { + var new_img = new Image(), + new_a = this.S('a', img); + + if (new_a.length) { + new_img.src = new_a.attr('href'); + } else { + new_img.src = this.S('img', img).attr('src'); + } + } + return this; + }, + + // image caption + + caption : function (container, $image) { + var caption = $image.attr('data-caption'); + + if (caption) { + container + .html(caption) + .show(); + } else { + container + .text('') + .hide(); + } + return this; + }, + + // directional methods + + go : function ($ul, direction) { + var current = this.S('.visible', $ul), + target = current[direction](); + + // Check for skip selector. + if (this.settings.skip_selector && target.find(this.settings.skip_selector).length != 0) { + target = target[direction](); + } + + if (target.length) { + this.S('img', target) + .trigger('click', [current, target]).trigger('click.fndtn.clearing', [current, target]) + .trigger('change.fndtn.clearing'); + } + }, + + shift : function (current, target, callback) { + var clearing = target.parent(), + old_index = this.settings.prev_index || target.index(), + direction = this.direction(clearing, current, target), + dir = this.rtl ? 'right' : 'left', + left = parseInt(clearing.css('left'), 10), + width = target.outerWidth(), + skip_shift; + + var dir_obj = {}; + + // we use jQuery animate instead of CSS transitions because we + // need a callback to unlock the next animation + // needs support for RTL ** + if (target.index() !== old_index && !/skip/.test(direction)){ + if (/left/.test(direction)) { + this.lock(); + dir_obj[dir] = left + width; + clearing.animate(dir_obj, 300, this.unlock()); + } else if (/right/.test(direction)) { + this.lock(); + dir_obj[dir] = left - width; + clearing.animate(dir_obj, 300, this.unlock()); + } + } else if (/skip/.test(direction)) { + // the target image is not adjacent to the current image, so + // do we scroll right or not + skip_shift = target.index() - this.settings.up_count; + this.lock(); + + if (skip_shift > 0) { + dir_obj[dir] = -(skip_shift * width); + clearing.animate(dir_obj, 300, this.unlock()); + } else { + dir_obj[dir] = 0; + clearing.animate(dir_obj, 300, this.unlock()); + } + } + + callback(); + }, + + direction : function ($el, current, target) { + var lis = this.S('li', $el), + li_width = lis.outerWidth() + (lis.outerWidth() / 4), + up_count = Math.floor(this.S('.clearing-container').outerWidth() / li_width) - 1, + target_index = lis.index(target), + response; + + this.settings.up_count = up_count; + + if (this.adjacent(this.settings.prev_index, target_index)) { + if ((target_index > up_count) && target_index > this.settings.prev_index) { + response = 'right'; + } else if ((target_index > up_count - 1) && target_index <= this.settings.prev_index) { + response = 'left'; + } else { + response = false; + } + } else { + response = 'skip'; + } + + this.settings.prev_index = target_index; + + return response; + }, + + adjacent : function (current_index, target_index) { + for (var i = target_index + 1; i >= target_index - 1; i--) { + if (i === current_index) return true; + } + return false; + }, + + // lock management + + lock : function () { + this.settings.locked = true; + }, + + unlock : function () { + this.settings.locked = false; + }, + + locked : function () { + return this.settings.locked; + }, + + off : function () { + this.S(this.scope).off('.fndtn.clearing'); + this.S(window).off('.fndtn.clearing'); + }, + + reflow : function () { + this.init(); + } + }; + +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + var noop = function() {}; + + var Orbit = function(el, settings) { + // Don't reinitialize plugin + if (el.hasClass(settings.slides_container_class)) { + return this; + } + + var self = this, + container, + slides_container = el, + number_container, + bullets_container, + timer_container, + idx = 0, + animate, + timer, + locked = false, + adjust_height_after = false; + + + self.slides = function() { + return slides_container.children(settings.slide_selector); + }; + + self.slides().first().addClass(settings.active_slide_class); + + self.update_slide_number = function(index) { + if (settings.slide_number) { + number_container.find('span:first').text(parseInt(index)+1); + number_container.find('span:last').text(self.slides().length); + } + if (settings.bullets) { + bullets_container.children().removeClass(settings.bullets_active_class); + $(bullets_container.children().get(index)).addClass(settings.bullets_active_class); + } + }; + + self.update_active_link = function(index) { + var link = $('[data-orbit-link="'+self.slides().eq(index).attr('data-orbit-slide')+'"]'); + link.siblings().removeClass(settings.bullets_active_class); + link.addClass(settings.bullets_active_class); + }; + + self.build_markup = function() { + slides_container.wrap('<div class="'+settings.container_class+'"></div>'); + container = slides_container.parent(); + slides_container.addClass(settings.slides_container_class); + + if (settings.stack_on_small) { + container.addClass(settings.stack_on_small_class); + } + + if (settings.navigation_arrows) { + container.append($('<a href="#"><span></span></a>').addClass(settings.prev_class)); + container.append($('<a href="#"><span></span></a>').addClass(settings.next_class)); + } + + if (settings.timer) { + timer_container = $('<div>').addClass(settings.timer_container_class); + timer_container.append('<span>'); + timer_container.append($('<div>').addClass(settings.timer_progress_class)); + timer_container.addClass(settings.timer_paused_class); + container.append(timer_container); + } + + if (settings.slide_number) { + number_container = $('<div>').addClass(settings.slide_number_class); + number_container.append('<span></span> ' + settings.slide_number_text + ' <span></span>'); + container.append(number_container); + } + + if (settings.bullets) { + bullets_container = $('<ol>').addClass(settings.bullets_container_class); + container.append(bullets_container); + bullets_container.wrap('<div class="orbit-bullets-container"></div>'); + self.slides().each(function(idx, el) { + var bullet = $('<li>').attr('data-orbit-slide', idx).on('click', self.link_bullet);; + bullets_container.append(bullet); + }); + } + + }; + + self._goto = function(next_idx, start_timer) { + // if (locked) {return false;} + if (next_idx === idx) {return false;} + if (typeof timer === 'object') {timer.restart();} + var slides = self.slides(); + + var dir = 'next'; + locked = true; + if (next_idx < idx) {dir = 'prev';} + if (next_idx >= slides.length) { + if (!settings.circular) return false; + next_idx = 0; + } else if (next_idx < 0) { + if (!settings.circular) return false; + next_idx = slides.length - 1; + } + + var current = $(slides.get(idx)); + var next = $(slides.get(next_idx)); + + current.css('zIndex', 2); + current.removeClass(settings.active_slide_class); + next.css('zIndex', 4).addClass(settings.active_slide_class); + + slides_container.trigger('before-slide-change.fndtn.orbit'); + settings.before_slide_change(); + self.update_active_link(next_idx); + + var callback = function() { + var unlock = function() { + idx = next_idx; + locked = false; + if (start_timer === true) {timer = self.create_timer(); timer.start();} + self.update_slide_number(idx); + slides_container.trigger('after-slide-change.fndtn.orbit',[{slide_number: idx, total_slides: slides.length}]); + settings.after_slide_change(idx, slides.length); + }; + if (slides_container.height() != next.height() && settings.variable_height) { + slides_container.animate({'height': next.height()}, 250, 'linear', unlock); + } else { + unlock(); + } + }; + + if (slides.length === 1) {callback(); return false;} + + var start_animation = function() { + if (dir === 'next') {animate.next(current, next, callback);} + if (dir === 'prev') {animate.prev(current, next, callback);} + }; + + if (next.height() > slides_container.height() && settings.variable_height) { + slides_container.animate({'height': next.height()}, 250, 'linear', start_animation); + } else { + start_animation(); + } + }; + + self.next = function(e) { + e.stopImmediatePropagation(); + e.preventDefault(); + self._goto(idx + 1); + }; + + self.prev = function(e) { + e.stopImmediatePropagation(); + e.preventDefault(); + self._goto(idx - 1); + }; + + self.link_custom = function(e) { + e.preventDefault(); + var link = $(this).attr('data-orbit-link'); + if ((typeof link === 'string') && (link = $.trim(link)) != "") { + var slide = container.find('[data-orbit-slide='+link+']'); + if (slide.index() != -1) {self._goto(slide.index());} + } + }; + + self.link_bullet = function(e) { + var index = $(this).attr('data-orbit-slide'); + if ((typeof index === 'string') && (index = $.trim(index)) != "") { + if(isNaN(parseInt(index))) + { + var slide = container.find('[data-orbit-slide='+index+']'); + if (slide.index() != -1) {self._goto(slide.index() + 1);} + } + else + { + self._goto(parseInt(index)); + } + } + + } + + self.timer_callback = function() { + self._goto(idx + 1, true); + } + + self.compute_dimensions = function() { + var current = $(self.slides().get(idx)); + var h = current.height(); + if (!settings.variable_height) { + self.slides().each(function(){ + if ($(this).height() > h) { h = $(this).height(); } + }); + } + slides_container.height(h); + }; + + self.create_timer = function() { + var t = new Timer( + container.find('.'+settings.timer_container_class), + settings, + self.timer_callback + ); + return t; + }; + + self.stop_timer = function() { + if (typeof timer === 'object') timer.stop(); + }; + + self.toggle_timer = function() { + var t = container.find('.'+settings.timer_container_class); + if (t.hasClass(settings.timer_paused_class)) { + if (typeof timer === 'undefined') {timer = self.create_timer();} + timer.start(); + } + else { + if (typeof timer === 'object') {timer.stop();} + } + }; + + self.init = function() { + self.build_markup(); + if (settings.timer) { + timer = self.create_timer(); + Foundation.utils.image_loaded(this.slides().children('img'), timer.start); + } + animate = new FadeAnimation(settings, slides_container); + if (settings.animation === 'slide') + animate = new SlideAnimation(settings, slides_container); + + container.on('click', '.'+settings.next_class, self.next); + container.on('click', '.'+settings.prev_class, self.prev); + + if (settings.next_on_click) { + container.on('click', '.'+settings.slides_container_class+' [data-orbit-slide]', self.link_bullet); + } + + container.on('click', self.toggle_timer); + if (settings.swipe) { + container.on('touchstart.fndtn.orbit', function(e) { + if (!e.touches) {e = e.originalEvent;} + var data = { + start_page_x: e.touches[0].pageX, + start_page_y: e.touches[0].pageY, + start_time: (new Date()).getTime(), + delta_x: 0, + is_scrolling: undefined + }; + container.data('swipe-transition', data); + e.stopPropagation(); + }) + .on('touchmove.fndtn.orbit', function(e) { + if (!e.touches) { e = e.originalEvent; } + // Ignore pinch/zoom events + if(e.touches.length > 1 || e.scale && e.scale !== 1) return; + + var data = container.data('swipe-transition'); + if (typeof data === 'undefined') {data = {};} + + data.delta_x = e.touches[0].pageX - data.start_page_x; + + if ( typeof data.is_scrolling === 'undefined') { + data.is_scrolling = !!( data.is_scrolling || Math.abs(data.delta_x) < Math.abs(e.touches[0].pageY - data.start_page_y) ); + } + + if (!data.is_scrolling && !data.active) { + e.preventDefault(); + var direction = (data.delta_x < 0) ? (idx+1) : (idx-1); + data.active = true; + self._goto(direction); + } + }) + .on('touchend.fndtn.orbit', function(e) { + container.data('swipe-transition', {}); + e.stopPropagation(); + }) + } + container.on('mouseenter.fndtn.orbit', function(e) { + if (settings.timer && settings.pause_on_hover) { + self.stop_timer(); + } + }) + .on('mouseleave.fndtn.orbit', function(e) { + if (settings.timer && settings.resume_on_mouseout) { + timer.start(); + } + }); + + $(document).on('click', '[data-orbit-link]', self.link_custom); + $(window).on('load resize', self.compute_dimensions); + Foundation.utils.image_loaded(this.slides().children('img'), self.compute_dimensions); + Foundation.utils.image_loaded(this.slides().children('img'), function() { + container.prev('.'+settings.preloader_class).css('display', 'none'); + self.update_slide_number(0); + self.update_active_link(0); + slides_container.trigger('ready.fndtn.orbit'); + }); + }; + + self.init(); + }; + + var Timer = function(el, settings, callback) { + var self = this, + duration = settings.timer_speed, + progress = el.find('.'+settings.timer_progress_class), + start, + timeout, + left = -1; + + this.update_progress = function(w) { + var new_progress = progress.clone(); + new_progress.attr('style', ''); + new_progress.css('width', w+'%'); + progress.replaceWith(new_progress); + progress = new_progress; + }; + + this.restart = function() { + clearTimeout(timeout); + el.addClass(settings.timer_paused_class); + left = -1; + self.update_progress(0); + }; + + this.start = function() { + if (!el.hasClass(settings.timer_paused_class)) {return true;} + left = (left === -1) ? duration : left; + el.removeClass(settings.timer_paused_class); + start = new Date().getTime(); + progress.animate({'width': '100%'}, left, 'linear'); + timeout = setTimeout(function() { + self.restart(); + callback(); + }, left); + el.trigger('timer-started.fndtn.orbit') + }; + + this.stop = function() { + if (el.hasClass(settings.timer_paused_class)) {return true;} + clearTimeout(timeout); + el.addClass(settings.timer_paused_class); + var end = new Date().getTime(); + left = left - (end - start); + var w = 100 - ((left / duration) * 100); + self.update_progress(w); + el.trigger('timer-stopped.fndtn.orbit'); + }; + }; + + var SlideAnimation = function(settings, container) { + var duration = settings.animation_speed; + var is_rtl = ($('html[dir=rtl]').length === 1); + var margin = is_rtl ? 'marginRight' : 'marginLeft'; + var animMargin = {}; + animMargin[margin] = '0%'; + + this.next = function(current, next, callback) { + current.animate({marginLeft:'-100%'}, duration); + next.animate(animMargin, duration, function() { + current.css(margin, '100%'); + callback(); + }); + }; + + this.prev = function(current, prev, callback) { + current.animate({marginLeft:'100%'}, duration); + prev.css(margin, '-100%'); + prev.animate(animMargin, duration, function() { + current.css(margin, '100%'); + callback(); + }); + }; + }; + + var FadeAnimation = function(settings, container) { + var duration = settings.animation_speed; + var is_rtl = ($('html[dir=rtl]').length === 1); + var margin = is_rtl ? 'marginRight' : 'marginLeft'; + + this.next = function(current, next, callback) { + next.css({'margin':'0%', 'opacity':'0.01'}); + next.animate({'opacity':'1'}, duration, 'linear', function() { + current.css('margin', '100%'); + callback(); + }); + }; + + this.prev = function(current, prev, callback) { + prev.css({'margin':'0%', 'opacity':'0.01'}); + prev.animate({'opacity':'1'}, duration, 'linear', function() { + current.css('margin', '100%'); + callback(); + }); + }; + }; + + + Foundation.libs = Foundation.libs || {}; + + Foundation.libs.orbit = { + name: 'orbit', + + version: '5.4.7', + + settings: { + animation: 'slide', + timer_speed: 10000, + pause_on_hover: true, + resume_on_mouseout: false, + next_on_click: true, + animation_speed: 500, + stack_on_small: false, + navigation_arrows: true, + slide_number: true, + slide_number_text: 'of', + container_class: 'orbit-container', + stack_on_small_class: 'orbit-stack-on-small', + next_class: 'orbit-next', + prev_class: 'orbit-prev', + timer_container_class: 'orbit-timer', + timer_paused_class: 'paused', + timer_progress_class: 'orbit-progress', + slides_container_class: 'orbit-slides-container', + preloader_class: 'preloader', + slide_selector: '*', + bullets_container_class: 'orbit-bullets', + bullets_active_class: 'active', + slide_number_class: 'orbit-slide-number', + caption_class: 'orbit-caption', + active_slide_class: 'active', + orbit_transition_class: 'orbit-transitioning', + bullets: true, + circular: true, + timer: true, + variable_height: false, + swipe: true, + before_slide_change: noop, + after_slide_change: noop + }, + + init : function (scope, method, options) { + var self = this; + this.bindings(method, options); + }, + + events : function (instance) { + var orbit_instance = new Orbit(this.S(instance), this.S(instance).data('orbit-init')); + this.S(instance).data(this.name + '-instance', orbit_instance); + }, + + reflow : function () { + var self = this; + + if (self.S(self.scope).is('[data-orbit]')) { + var $el = self.S(self.scope); + var instance = $el.data(self.name + '-instance'); + instance.compute_dimensions(); + } else { + self.S('[data-orbit]', self.scope).each(function(idx, el) { + var $el = self.S(el); + var opts = self.data_options($el); + var instance = $el.data(self.name + '-instance'); + instance.compute_dimensions(); + }); + } + } + }; + + +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.offcanvas = { + name : 'offcanvas', + + version : '5.4.7', + + settings : { + open_method: 'move', + close_on_click: false + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = self.S, + move_class = '', + right_postfix = '', + left_postfix = ''; + + if (this.settings.open_method === 'move') { + move_class = 'move-'; + right_postfix = 'right'; + left_postfix = 'left'; + } else if (this.settings.open_method === 'overlap_single') { + move_class = 'offcanvas-overlap-'; + right_postfix = 'right'; + left_postfix = 'left'; + } else if (this.settings.open_method === 'overlap') { + move_class = 'offcanvas-overlap'; + } + + S(this.scope).off('.offcanvas') + .on('click.fndtn.offcanvas', '.left-off-canvas-toggle', function (e) { + self.click_toggle_class(e, move_class + right_postfix); + if (self.settings.open_method !== 'overlap'){ + S(".left-submenu").removeClass(move_class + right_postfix); + } + $('.left-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.left-off-canvas-menu a', function (e) { + var settings = self.get_settings(e); + var parent = S(this).parent(); + + if(settings.close_on_click && !parent.hasClass("has-submenu") && !parent.hasClass("back")){ + self.hide.call(self, move_class + right_postfix, self.get_wrapper(e)); + parent.parent().removeClass(move_class + right_postfix); + }else if(S(this).parent().hasClass("has-submenu")){ + e.preventDefault(); + S(this).siblings(".left-submenu").toggleClass(move_class + right_postfix); + }else if(parent.hasClass("back")){ + e.preventDefault(); + parent.parent().removeClass(move_class + right_postfix); + } + $('.left-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) { + self.click_toggle_class(e, move_class + left_postfix); + if (self.settings.open_method !== 'overlap'){ + S(".right-submenu").removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.right-off-canvas-menu a', function (e) { + var settings = self.get_settings(e); + var parent = S(this).parent(); + + if(settings.close_on_click && !parent.hasClass("has-submenu") && !parent.hasClass("back")){ + self.hide.call(self, move_class + left_postfix, self.get_wrapper(e)); + parent.parent().removeClass(move_class + left_postfix); + }else if(S(this).parent().hasClass("has-submenu")){ + e.preventDefault(); + S(this).siblings(".right-submenu").toggleClass(move_class + left_postfix); + }else if(parent.hasClass("back")){ + e.preventDefault(); + parent.parent().removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) { + self.click_remove_class(e, move_class + left_postfix); + S(".right-submenu").removeClass(move_class + left_postfix); + if (right_postfix){ + self.click_remove_class(e, move_class + right_postfix); + S(".left-submenu").removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) { + self.click_remove_class(e, move_class + left_postfix); + $('.left-off-canvas-toggle').attr('aria-expanded', 'false'); + if (right_postfix) { + self.click_remove_class(e, move_class + right_postfix); + $('.right-off-canvas-toggle').attr('aria-expanded', "false"); + } + }); + }, + + toggle: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + if ($off_canvas.is('.' + class_name)) { + this.hide(class_name, $off_canvas); + } else { + this.show(class_name, $off_canvas); + } + }, + + show: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + $off_canvas.trigger('open').trigger('open.fndtn.offcanvas'); + $off_canvas.addClass(class_name); + }, + + hide: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + $off_canvas.trigger('close').trigger('close.fndtn.offcanvas'); + $off_canvas.removeClass(class_name); + }, + + click_toggle_class: function(e, class_name) { + e.preventDefault(); + var $off_canvas = this.get_wrapper(e); + this.toggle(class_name, $off_canvas); + }, + + click_remove_class: function(e, class_name) { + e.preventDefault(); + var $off_canvas = this.get_wrapper(e); + this.hide(class_name, $off_canvas); + }, + + get_settings: function(e) { + var offcanvas = this.S(e.target).closest('[' + this.attr_name() + ']'); + return offcanvas.data(this.attr_name(true) + '-init') || this.settings; + }, + + get_wrapper: function(e) { + var $off_canvas = this.S(e ? e.target : this.scope).closest('.off-canvas-wrap'); + + if ($off_canvas.length === 0) { + $off_canvas = this.S('.off-canvas-wrap'); + } + return $off_canvas; + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.alert = { + name : 'alert', + + version : '5.4.7', + + settings : { + callback: function (){} + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = this.S; + + $(this.scope).off('.alert').on('click.fndtn.alert', '[' + this.attr_name() + '] .close', function (e) { + var alertBox = S(this).closest('[' + self.attr_name() + ']'), + settings = alertBox.data(self.attr_name(true) + '-init') || self.settings; + + e.preventDefault(); + if (Modernizr.csstransitions) { + alertBox.addClass("alert-close"); + alertBox.on('transitionend webkitTransitionEnd oTransitionEnd', function(e) { + S(this).trigger('close').trigger('close.fndtn.alert').remove(); + settings.callback(); + }); + } else { + alertBox.fadeOut(300, function () { + S(this).trigger('close').trigger('close.fndtn.alert').remove(); + settings.callback(); + }); + } + }); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.reveal = { + name : 'reveal', + + version : '5.4.7', + + locked : false, + + settings : { + animation: 'fadeAndPop', + animation_speed: 250, + close_on_background_click: true, + close_on_esc: true, + dismiss_modal_class: 'close-reveal-modal', + bg_class: 'reveal-modal-bg', + root_element: 'body', + open: function(){}, + opened: function(){}, + close: function(){}, + closed: function(){}, + bg : $('.reveal-modal-bg'), + css : { + open : { + 'opacity': 0, + 'visibility': 'visible', + 'display' : 'block' + }, + close : { + 'opacity': 1, + 'visibility': 'hidden', + 'display': 'none' + } + } + }, + + init : function (scope, method, options) { + $.extend(true, this.settings, method, options); + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .off('.reveal') + .on('click.fndtn.reveal', '[' + this.add_namespace('data-reveal-id') + ']:not([disabled])', function (e) { + e.preventDefault(); + + if (!self.locked) { + var element = S(this), + ajax = element.data(self.data_attr('reveal-ajax')); + + self.locked = true; + + if (typeof ajax === 'undefined') { + self.open.call(self, element); + } else { + var url = ajax === true ? element.attr('href') : ajax; + + self.open.call(self, element, {url: url}); + } + } + }); + + S(document) + .on('click.fndtn.reveal', this.close_targets(), function (e) { + + e.preventDefault(); + + if (!self.locked) { + var settings = S('[' + self.attr_name() + '].open').data(self.attr_name(true) + '-init') || self.settings, + bg_clicked = S(e.target)[0] === S('.' + settings.bg_class)[0]; + + if (bg_clicked) { + if (settings.close_on_background_click) { + e.stopPropagation(); + } else { + return; + } + } + + self.locked = true; + self.close.call(self, bg_clicked ? S('[' + self.attr_name() + '].open') : S(this).closest('[' + self.attr_name() + ']')); + } + }); + + if(S('[' + self.attr_name() + ']', this.scope).length > 0) { + S(this.scope) + // .off('.reveal') + .on('open.fndtn.reveal', this.settings.open) + .on('opened.fndtn.reveal', this.settings.opened) + .on('opened.fndtn.reveal', this.open_video) + .on('close.fndtn.reveal', this.settings.close) + .on('closed.fndtn.reveal', this.settings.closed) + .on('closed.fndtn.reveal', this.close_video); + } else { + S(this.scope) + // .off('.reveal') + .on('open.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.open) + .on('opened.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.opened) + .on('opened.fndtn.reveal', '[' + self.attr_name() + ']', this.open_video) + .on('close.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.close) + .on('closed.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.closed) + .on('closed.fndtn.reveal', '[' + self.attr_name() + ']', this.close_video); + } + + return true; + }, + + // PATCH #3: turning on key up capture only when a reveal window is open + key_up_on : function (scope) { + var self = this; + + // PATCH #1: fixing multiple keyup event trigger from single key press + self.S('body').off('keyup.fndtn.reveal').on('keyup.fndtn.reveal', function ( event ) { + var open_modal = self.S('[' + self.attr_name() + '].open'), + settings = open_modal.data(self.attr_name(true) + '-init') || self.settings ; + // PATCH #2: making sure that the close event can be called only while unlocked, + // so that multiple keyup.fndtn.reveal events don't prevent clean closing of the reveal window. + if ( settings && event.which === 27 && settings.close_on_esc && !self.locked) { // 27 is the keycode for the Escape key + self.close.call(self, open_modal); + } + }); + + return true; + }, + + // PATCH #3: turning on key up capture only when a reveal window is open + key_up_off : function (scope) { + this.S('body').off('keyup.fndtn.reveal'); + return true; + }, + + + open : function (target, ajax_settings) { + var self = this, + modal; + + if (target) { + if (typeof target.selector !== 'undefined') { + // Find the named node; only use the first one found, since the rest of the code assumes there's only one node + modal = self.S('#' + target.data(self.data_attr('reveal-id'))).first(); + } else { + modal = self.S(this.scope); + + ajax_settings = target; + } + } else { + modal = self.S(this.scope); + } + + var settings = modal.data(self.attr_name(true) + '-init'); + settings = settings || this.settings; + + + if (modal.hasClass('open') && target.attr('data-reveal-id') == modal.attr('id')) { + return self.close(modal); + } + + if (!modal.hasClass('open')) { + var open_modal = self.S('[' + self.attr_name() + '].open'); + + if (typeof modal.data('css-top') === 'undefined') { + modal.data('css-top', parseInt(modal.css('top'), 10)) + .data('offset', this.cache_offset(modal)); + } + + this.key_up_on(modal); // PATCH #3: turning on key up capture only when a reveal window is open + modal.trigger('open').trigger('open.fndtn.reveal'); + + if (open_modal.length < 1) { + this.toggle_bg(modal, true); + } + + if (typeof ajax_settings === 'string') { + ajax_settings = { + url: ajax_settings + }; + } + + if (typeof ajax_settings === 'undefined' || !ajax_settings.url) { + if (open_modal.length > 0) { + this.hide(open_modal, settings.css.close); + } + + this.show(modal, settings.css.open); + } else { + var old_success = typeof ajax_settings.success !== 'undefined' ? ajax_settings.success : null; + + $.extend(ajax_settings, { + success: function (data, textStatus, jqXHR) { + if ( $.isFunction(old_success) ) { + old_success(data, textStatus, jqXHR); + } + + modal.html(data); + self.S(modal).foundation('section', 'reflow'); + self.S(modal).children().foundation(); + + if (open_modal.length > 0) { + self.hide(open_modal, settings.css.close); + } + self.show(modal, settings.css.open); + } + }); + + $.ajax(ajax_settings); + } + } + self.S(window).trigger('resize'); + }, + + close : function (modal) { + var modal = modal && modal.length ? modal : this.S(this.scope), + open_modals = this.S('[' + this.attr_name() + '].open'), + settings = modal.data(this.attr_name(true) + '-init') || this.settings; + + if (open_modals.length > 0) { + this.locked = true; + this.key_up_off(modal); // PATCH #3: turning on key up capture only when a reveal window is open + modal.trigger('close').trigger('close.fndtn.reveal'); + this.toggle_bg(modal, false); + this.hide(open_modals, settings.css.close, settings); + } + }, + + close_targets : function () { + var base = '.' + this.settings.dismiss_modal_class; + + if (this.settings.close_on_background_click) { + return base + ', .' + this.settings.bg_class; + } + + return base; + }, + + toggle_bg : function (modal, state) { + if (this.S('.' + this.settings.bg_class).length === 0) { + this.settings.bg = $('<div />', {'class': this.settings.bg_class}) + .appendTo('body').hide(); + } + + var visible = this.settings.bg.filter(':visible').length > 0; + if ( state != visible ) { + if ( state == undefined ? visible : !state ) { + this.hide(this.settings.bg); + } else { + this.show(this.settings.bg); + } + } + }, + + show : function (el, css) { + // is modal + if (css) { + var settings = el.data(this.attr_name(true) + '-init') || this.settings, + root_element = settings.root_element; + + if (el.parent(root_element).length === 0) { + var placeholder = el.wrap('<div style="display: none;" />').parent(); + + el.on('closed.fndtn.reveal.wrapped', function() { + el.detach().appendTo(placeholder); + el.unwrap().unbind('closed.fndtn.reveal.wrapped'); + }); + + el.detach().appendTo(root_element); + } + + var animData = getAnimationData(settings.animation); + if (!animData.animate) { + this.locked = false; + } + if (animData.pop) { + css.top = $(window).scrollTop() - el.data('offset') + 'px'; + var end_css = { + top: $(window).scrollTop() + el.data('css-top') + 'px', + opacity: 1 + }; + + return setTimeout(function () { + return el + .css(css) + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.trigger('opened').trigger('opened.fndtn.reveal'); + }.bind(this)) + .addClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + if (animData.fade) { + css.top = $(window).scrollTop() + el.data('css-top') + 'px'; + var end_css = {opacity: 1}; + + return setTimeout(function () { + return el + .css(css) + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.trigger('opened').trigger('opened.fndtn.reveal'); + }.bind(this)) + .addClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + return el.css(css).show().css({opacity: 1}).addClass('open').trigger('opened').trigger('opened.fndtn.reveal'); + } + + var settings = this.settings; + + // should we animate the background? + if (getAnimationData(settings.animation).fade) { + return el.fadeIn(settings.animation_speed / 2); + } + + this.locked = false; + + return el.show(); + }, + + hide : function (el, css) { + // is modal + if (css) { + var settings = el.data(this.attr_name(true) + '-init'); + settings = settings || this.settings; + + var animData = getAnimationData(settings.animation); + if (!animData.animate) { + this.locked = false; + } + if (animData.pop) { + var end_css = { + top: - $(window).scrollTop() - el.data('offset') + 'px', + opacity: 0 + }; + + return setTimeout(function () { + return el + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.css(css).trigger('closed').trigger('closed.fndtn.reveal'); + }.bind(this)) + .removeClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + if (animData.fade) { + var end_css = {opacity: 0}; + + return setTimeout(function () { + return el + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.css(css).trigger('closed').trigger('closed.fndtn.reveal'); + }.bind(this)) + .removeClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + return el.hide().css(css).removeClass('open').trigger('closed').trigger('closed.fndtn.reveal'); + } + + var settings = this.settings; + + // should we animate the background? + if (getAnimationData(settings.animation).fade) { + return el.fadeOut(settings.animation_speed / 2); + } + + return el.hide(); + }, + + close_video : function (e) { + var video = $('.flex-video', e.target), + iframe = $('iframe', video); + + if (iframe.length > 0) { + iframe.attr('data-src', iframe[0].src); + iframe.attr('src', iframe.attr('src')); + video.hide(); + } + }, + + open_video : function (e) { + var video = $('.flex-video', e.target), + iframe = video.find('iframe'); + + if (iframe.length > 0) { + var data_src = iframe.attr('data-src'); + if (typeof data_src === 'string') { + iframe[0].src = iframe.attr('data-src'); + } else { + var src = iframe[0].src; + iframe[0].src = undefined; + iframe[0].src = src; + } + video.show(); + } + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + cache_offset : function (modal) { + var offset = modal.show().height() + parseInt(modal.css('top'), 10); + + modal.hide(); + + return offset; + }, + + off : function () { + $(this.scope).off('.fndtn.reveal'); + }, + + reflow : function () {} + }; + + /* + * getAnimationData('popAndFade') // {animate: true, pop: true, fade: true} + * getAnimationData('fade') // {animate: true, pop: false, fade: true} + * getAnimationData('pop') // {animate: true, pop: true, fade: false} + * getAnimationData('foo') // {animate: false, pop: false, fade: false} + * getAnimationData(null) // {animate: false, pop: false, fade: false} + */ + function getAnimationData(str) { + var fade = /fade/i.test(str); + var pop = /pop/i.test(str); + return { + animate: fade || pop, + pop: pop, + fade: fade + }; + } +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.interchange = { + name : 'interchange', + + version : '5.4.7', + + cache : {}, + + images_loaded : false, + nodes_loaded : false, + + settings : { + load_attr : 'interchange', + + named_queries : { + 'default' : 'only screen', + small : Foundation.media_queries.small, + medium : Foundation.media_queries.medium, + large : Foundation.media_queries.large, + xlarge : Foundation.media_queries.xlarge, + xxlarge: Foundation.media_queries.xxlarge, + 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)' + }, + + directives : { + replace: function (el, path, trigger) { + // The trigger argument, if called within the directive, fires + // an event named after the directive on the element, passing + // any parameters along to the event that you pass to trigger. + // + // ex. trigger(), trigger([a, b, c]), or trigger(a, b, c) + // + // This allows you to bind a callback like so: + // $('#interchangeContainer').on('replace', function (e, a, b, c) { + // console.log($(this).html(), a, b, c); + // }); + + if (/IMG/.test(el[0].nodeName)) { + var orig_path = el[0].src; + + if (new RegExp(path, 'i').test(orig_path)) return; + + el[0].src = path; + + return trigger(el[0].src); + } + var last_path = el.data(this.data_attr + '-last-path'), + self = this; + + if (last_path == path) return; + + if (/\.(gif|jpg|jpeg|tiff|png)([?#].*)?/i.test(path)) { + $(el).css('background-image', 'url('+path+')'); + el.data('interchange-last-path', path); + return trigger(path); + } + + return $.get(path, function (response) { + el.html(response); + el.data(self.data_attr + '-last-path', path); + trigger(); + }); + + } + } + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle random_str'); + + this.data_attr = this.set_data_attr(); + $.extend(true, this.settings, method, options); + this.bindings(method, options); + this.load('images'); + this.load('nodes'); + }, + + get_media_hash : function() { + var mediaHash=''; + for (var queryName in this.settings.named_queries ) { + mediaHash += matchMedia(this.settings.named_queries[queryName]).matches.toString(); + } + return mediaHash; + }, + + events : function () { + var self = this, prevMediaHash; + + $(window) + .off('.interchange') + .on('resize.fndtn.interchange', self.throttle(function () { + var currMediaHash = self.get_media_hash(); + if (currMediaHash !== prevMediaHash) { + self.resize(); + } + prevMediaHash = currMediaHash; + }, 50)); + + return this; + }, + + resize : function () { + var cache = this.cache; + + if(!this.images_loaded || !this.nodes_loaded) { + setTimeout($.proxy(this.resize, this), 50); + return; + } + + for (var uuid in cache) { + if (cache.hasOwnProperty(uuid)) { + var passed = this.results(uuid, cache[uuid]); + + if (passed) { + this.settings.directives[passed + .scenario[1]].call(this, passed.el, passed.scenario[0], function () { + if (arguments[0] instanceof Array) { + var args = arguments[0]; + } else { + var args = Array.prototype.slice.call(arguments, 0); + } + + passed.el.trigger(passed.scenario[1], args); + }); + } + } + } + + }, + + results : function (uuid, scenarios) { + var count = scenarios.length; + + if (count > 0) { + var el = this.S('[' + this.add_namespace('data-uuid') + '="' + uuid + '"]'); + + while (count--) { + var mq, rule = scenarios[count][2]; + if (this.settings.named_queries.hasOwnProperty(rule)) { + mq = matchMedia(this.settings.named_queries[rule]); + } else { + mq = matchMedia(rule); + } + if (mq.matches) { + return {el: el, scenario: scenarios[count]}; + } + } + } + + return false; + }, + + load : function (type, force_update) { + if (typeof this['cached_' + type] === 'undefined' || force_update) { + this['update_' + type](); + } + + return this['cached_' + type]; + }, + + update_images : function () { + var images = this.S('img[' + this.data_attr + ']'), + count = images.length, + i = count, + loaded_count = 0, + data_attr = this.data_attr; + + this.cache = {}; + this.cached_images = []; + this.images_loaded = (count === 0); + + while (i--) { + loaded_count++; + if (images[i]) { + var str = images[i].getAttribute(data_attr) || ''; + + if (str.length > 0) { + this.cached_images.push(images[i]); + } + } + + if (loaded_count === count) { + this.images_loaded = true; + this.enhance('images'); + } + } + + return this; + }, + + update_nodes : function () { + var nodes = this.S('[' + this.data_attr + ']').not('img'), + count = nodes.length, + i = count, + loaded_count = 0, + data_attr = this.data_attr; + + this.cached_nodes = []; + this.nodes_loaded = (count === 0); + + + while (i--) { + loaded_count++; + var str = nodes[i].getAttribute(data_attr) || ''; + + if (str.length > 0) { + this.cached_nodes.push(nodes[i]); + } + + if(loaded_count === count) { + this.nodes_loaded = true; + this.enhance('nodes'); + } + } + + return this; + }, + + enhance : function (type) { + var i = this['cached_' + type].length; + + while (i--) { + this.object($(this['cached_' + type][i])); + } + + return $(window).trigger('resize').trigger('resize.fndtn.interchange'); + }, + + convert_directive : function (directive) { + + var trimmed = this.trim(directive); + + if (trimmed.length > 0) { + return trimmed; + } + + return 'replace'; + }, + + parse_scenario : function (scenario) { + // This logic had to be made more complex since some users were using commas in the url path + // So we cannot simply just split on a comma + var directive_match = scenario[0].match(/(.+),\s*(\w+)\s*$/), + media_query = scenario[1]; + + if (directive_match) { + var path = directive_match[1], + directive = directive_match[2]; + } + else { + var cached_split = scenario[0].split(/,\s*$/), + path = cached_split[0], + directive = ''; + } + + return [this.trim(path), this.convert_directive(directive), this.trim(media_query)]; + }, + + object : function(el) { + var raw_arr = this.parse_data_attr(el), + scenarios = [], + i = raw_arr.length; + + if (i > 0) { + while (i--) { + var split = raw_arr[i].split(/\((.*?)(\))$/); + + if (split.length > 1) { + var params = this.parse_scenario(split); + scenarios.push(params); + } + } + } + + return this.store(el, scenarios); + }, + + store : function (el, scenarios) { + var uuid = this.random_str(), + current_uuid = el.data(this.add_namespace('uuid', true)); + + if (this.cache[current_uuid]) return this.cache[current_uuid]; + + el.attr(this.add_namespace('data-uuid'), uuid); + + return this.cache[uuid] = scenarios; + }, + + trim : function(str) { + + if (typeof str === 'string') { + return $.trim(str); + } + + return str; + }, + + set_data_attr: function (init) { + if (init) { + if (this.namespace.length > 0) { + return this.namespace + '-' + this.settings.load_attr; + } + + return this.settings.load_attr; + } + + if (this.namespace.length > 0) { + return 'data-' + this.namespace + '-' + this.settings.load_attr; + } + + return 'data-' + this.settings.load_attr; + }, + + parse_data_attr : function (el) { + var raw = el.attr(this.attr_name()).split(/\[(.*?)\]/), + i = raw.length, + output = []; + + while (i--) { + if (raw[i].replace(/[\W\d]+/, '').length > 4) { + output.push(raw[i]); + } + } + + return output; + }, + + reflow : function () { + this.load('images', true); + this.load('nodes', true); + } + + }; + +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs['magellan-expedition'] = { + name : 'magellan-expedition', + + version : '5.4.7', + + settings : { + active_class: 'active', + threshold: 0, // pixels from the top of the expedition for it to become fixes + destination_threshold: 20, // pixels from the top of destination for it to be considered active + throttle_delay: 30, // calculation throttling to increase framerate + fixed_top: 0 // top distance in pixels assigend to the fixed element on scroll + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle'); + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = self.S, + settings = self.settings; + + // initialize expedition offset + self.set_expedition_position(); + + S(self.scope) + .off('.magellan') + .on('click.fndtn.magellan', '[' + self.add_namespace('data-magellan-arrival') + '] a[href^="#"]', function (e) { + e.preventDefault(); + var expedition = $(this).closest('[' + self.attr_name() + ']'), + settings = expedition.data('magellan-expedition-init'), + hash = this.hash.split('#').join(''), + target = $("a[name='"+hash+"']"); + + if (target.length === 0) { + target = $('#'+hash); + + } + + + // Account for expedition height if fixed position + var scroll_top = target.offset().top - settings.destination_threshold + 1; + scroll_top = scroll_top - expedition.outerHeight(); + + $('html, body').stop().animate({ + 'scrollTop': scroll_top + }, 700, 'swing', function () { + if(history.pushState) { + history.pushState(null, null, '#'+hash); + } + else { + location.hash = '#'+hash; + } + }); + }) + .on('scroll.fndtn.magellan', self.throttle(this.check_for_arrivals.bind(this), settings.throttle_delay)); + + $(window) + .on('resize.fndtn.magellan', self.throttle(this.set_expedition_position.bind(this), settings.throttle_delay)); + }, + + check_for_arrivals : function() { + var self = this; + self.update_arrivals(); + self.update_expedition_positions(); + }, + + set_expedition_position : function() { + var self = this; + $('[' + this.attr_name() + '=fixed]', self.scope).each(function(idx, el) { + var expedition = $(this), + settings = expedition.data('magellan-expedition-init'), + styles = expedition.attr('styles'), // save styles + top_offset, fixed_top; + + expedition.attr('style', ''); + top_offset = expedition.offset().top + settings.threshold; + + //set fixed-top by attribute + fixed_top = parseInt(expedition.data('magellan-fixed-top')); + if(!isNaN(fixed_top)) + self.settings.fixed_top = fixed_top; + + expedition.data(self.data_attr('magellan-top-offset'), top_offset); + expedition.attr('style', styles); + }); + }, + + update_expedition_positions : function() { + var self = this, + window_top_offset = $(window).scrollTop(); + + $('[' + this.attr_name() + '=fixed]', self.scope).each(function() { + var expedition = $(this), + settings = expedition.data('magellan-expedition-init'), + styles = expedition.attr('style'), // save styles + top_offset = expedition.data('magellan-top-offset'); + + //scroll to the top distance + if (window_top_offset+self.settings.fixed_top >= top_offset) { + // Placeholder allows height calculations to be consistent even when + // appearing to switch between fixed/non-fixed placement + var placeholder = expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']'); + if (placeholder.length === 0) { + placeholder = expedition.clone(); + placeholder.removeAttr(self.attr_name()); + placeholder.attr(self.add_namespace('data-magellan-expedition-clone'),''); + expedition.before(placeholder); + } + expedition.css({position:'fixed', top: settings.fixed_top}).addClass('fixed'); + } else { + expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']').remove(); + expedition.attr('style',styles).css('position','').css('top','').removeClass('fixed'); + } + }); + }, + + update_arrivals : function() { + var self = this, + window_top_offset = $(window).scrollTop(); + + $('[' + this.attr_name() + ']', self.scope).each(function() { + var expedition = $(this), + settings = expedition.data(self.attr_name(true) + '-init'), + offsets = self.offsets(expedition, window_top_offset), + arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']'), + active_item = false; + offsets.each(function(idx, item) { + if (item.viewport_offset >= item.top_offset) { + var arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']'); + arrivals.not(item.arrival).removeClass(settings.active_class); + item.arrival.addClass(settings.active_class); + active_item = true; + return true; + } + }); + + if (!active_item) arrivals.removeClass(settings.active_class); + }); + }, + + offsets : function(expedition, window_offset) { + var self = this, + settings = expedition.data(self.attr_name(true) + '-init'), + viewport_offset = window_offset; + + return expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']').map(function(idx, el) { + var name = $(this).data(self.data_attr('magellan-arrival')), + dest = $('[' + self.add_namespace('data-magellan-destination') + '=' + name + ']'); + if (dest.length > 0) { + var top_offset = Math.floor(dest.offset().top - settings.destination_threshold - expedition.outerHeight()); + return { + destination : dest, + arrival : $(this), + top_offset : top_offset, + viewport_offset : viewport_offset + } + } + }).sort(function(a, b) { + if (a.top_offset < b.top_offset) return -1; + if (a.top_offset > b.top_offset) return 1; + return 0; + }); + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + off : function () { + this.S(this.scope).off('.magellan'); + this.S(window).off('.magellan'); + }, + + reflow : function () { + var self = this; + // remove placeholder expeditions used for height calculation purposes + $('[' + self.add_namespace('data-magellan-expedition-clone') + ']', self.scope).remove(); + } + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.accordion = { + name : 'accordion', + + version : '5.4.7', + + settings : { + content_class: 'content', + active_class: 'active', + multi_expand: false, + toggleable: true, + callback : function () {} + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this; + var S = this.S; + S(this.scope) + .off('.fndtn.accordion') + .on('click.fndtn.accordion', '[' + this.attr_name() + '] > dd > a', function (e) { + var accordion = S(this).closest('[' + self.attr_name() + ']'), + groupSelector = self.attr_name() + '=' + accordion.attr(self.attr_name()), + settings = accordion.data(self.attr_name(true) + '-init'), + target = S('#' + this.href.split('#')[1]), + aunts = $('> dd', accordion), + siblings = aunts.children('.'+settings.content_class), + active_content = siblings.filter('.' + settings.active_class); + e.preventDefault(); + + if (accordion.attr(self.attr_name())) { + siblings = siblings.add('[' + groupSelector + '] dd > .'+settings.content_class); + aunts = aunts.add('[' + groupSelector + '] dd'); + } + + if (settings.toggleable && target.is(active_content)) { + target.parent('dd').toggleClass(settings.active_class, false); + target.toggleClass(settings.active_class, false); + settings.callback(target); + target.triggerHandler('toggled', [accordion]); + accordion.triggerHandler('toggled', [target]); + return; + } + + if (!settings.multi_expand) { + siblings.removeClass(settings.active_class); + aunts.removeClass(settings.active_class); + } + + target.addClass(settings.active_class).parent().addClass(settings.active_class); + settings.callback(target); + target.triggerHandler('toggled', [accordion]); + accordion.triggerHandler('toggled', [target]); + }); + }, + + off : function () {}, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.topbar = { + name : 'topbar', + + version: '5.4.7', + + settings : { + index : 0, + sticky_class : 'sticky', + custom_back_text: true, + back_text: 'Back', + mobile_show_parent_link: true, + is_hover: true, + scrolltop : true, // jump to top when sticky nav menu toggle is clicked + sticky_on : 'all' + }, + + init : function (section, method, options) { + Foundation.inherit(this, 'add_custom_rule register_media throttle'); + var self = this; + + self.register_media('topbar', 'foundation-mq-topbar'); + + this.bindings(method, options); + + self.S('[' + this.attr_name() + ']', this.scope).each(function () { + var topbar = $(this), + settings = topbar.data(self.attr_name(true) + '-init'), + section = self.S('section, .top-bar-section', this); + topbar.data('index', 0); + var topbarContainer = topbar.parent(); + if (topbarContainer.hasClass('fixed') || self.is_sticky(topbar, topbarContainer, settings) ) { + self.settings.sticky_class = settings.sticky_class; + self.settings.sticky_topbar = topbar; + topbar.data('height', topbarContainer.outerHeight()); + topbar.data('stickyoffset', topbarContainer.offset().top); + } else { + topbar.data('height', topbar.outerHeight()); + } + + if (!settings.assembled) { + self.assemble(topbar); + } + + if (settings.is_hover) { + self.S('.has-dropdown', topbar).addClass('not-click'); + } else { + self.S('.has-dropdown', topbar).removeClass('not-click'); + } + + // Pad body when sticky (scrolled) or fixed. + self.add_custom_rule('.f-topbar-fixed { padding-top: ' + topbar.data('height') + 'px }'); + + if (topbarContainer.hasClass('fixed')) { + self.S('body').addClass('f-topbar-fixed'); + } + }); + + }, + + is_sticky: function (topbar, topbarContainer, settings) { + var sticky = topbarContainer.hasClass(settings.sticky_class); + + if (sticky && settings.sticky_on === 'all') { + return true; + } else if (sticky && this.small() && settings.sticky_on === 'small') { + return (matchMedia(Foundation.media_queries.small).matches && !matchMedia(Foundation.media_queries.medium).matches && + !matchMedia(Foundation.media_queries.large).matches); + //return true; + } else if (sticky && this.medium() && settings.sticky_on === 'medium') { + return (matchMedia(Foundation.media_queries.small).matches && matchMedia(Foundation.media_queries.medium).matches && + !matchMedia(Foundation.media_queries.large).matches); + //return true; + } else if(sticky && this.large() && settings.sticky_on === 'large') { + return (matchMedia(Foundation.media_queries.small).matches && matchMedia(Foundation.media_queries.medium).matches && + matchMedia(Foundation.media_queries.large).matches); + //return true; + } + + return false; + }, + + toggle: function (toggleEl) { + var self = this, + topbar; + + if (toggleEl) { + topbar = self.S(toggleEl).closest('[' + this.attr_name() + ']'); + } else { + topbar = self.S('[' + this.attr_name() + ']'); + } + + var settings = topbar.data(this.attr_name(true) + '-init'); + + var section = self.S('section, .top-bar-section', topbar); + + if (self.breakpoint()) { + if (!self.rtl) { + section.css({left: '0%'}); + $('>.name', section).css({left: '100%'}); + } else { + section.css({right: '0%'}); + $('>.name', section).css({right: '100%'}); + } + + self.S('li.moved', section).removeClass('moved'); + topbar.data('index', 0); + + topbar + .toggleClass('expanded') + .css('height', ''); + } + + if (settings.scrolltop) { + if (!topbar.hasClass('expanded')) { + if (topbar.hasClass('fixed')) { + topbar.parent().addClass('fixed'); + topbar.removeClass('fixed'); + self.S('body').addClass('f-topbar-fixed'); + } + } else if (topbar.parent().hasClass('fixed')) { + if (settings.scrolltop) { + topbar.parent().removeClass('fixed'); + topbar.addClass('fixed'); + self.S('body').removeClass('f-topbar-fixed'); + + window.scrollTo(0,0); + } else { + topbar.parent().removeClass('expanded'); + } + } + } else { + if (self.is_sticky(topbar, topbar.parent(), settings)) { + topbar.parent().addClass('fixed'); + } + + if (topbar.parent().hasClass('fixed')) { + if (!topbar.hasClass('expanded')) { + topbar.removeClass('fixed'); + topbar.parent().removeClass('expanded'); + self.update_sticky_positioning(); + } else { + topbar.addClass('fixed'); + topbar.parent().addClass('expanded'); + self.S('body').addClass('f-topbar-fixed'); + } + } + } + }, + + timer : null, + + events : function (bar) { + var self = this, + S = this.S; + + S(this.scope) + .off('.topbar') + .on('click.fndtn.topbar', '[' + this.attr_name() + '] .toggle-topbar', function (e) { + e.preventDefault(); + self.toggle(this); + }) + .on('click.fndtn.topbar','.top-bar .top-bar-section li a[href^="#"],[' + this.attr_name() + '] .top-bar-section li a[href^="#"]',function (e) { + var li = $(this).closest('li'); + if(self.breakpoint() && !li.hasClass('back') && !li.hasClass('has-dropdown')) + { + self.toggle(); + } + }) + .on('click.fndtn.topbar', '[' + this.attr_name() + '] li.has-dropdown', function (e) { + var li = S(this), + target = S(e.target), + topbar = li.closest('[' + self.attr_name() + ']'), + settings = topbar.data(self.attr_name(true) + '-init'); + + if(target.data('revealId')) { + self.toggle(); + return; + } + + if (self.breakpoint()) return; + if (settings.is_hover && !Modernizr.touch) return; + + e.stopImmediatePropagation(); + + if (li.hasClass('hover')) { + li + .removeClass('hover') + .find('li') + .removeClass('hover'); + + li.parents('li.hover') + .removeClass('hover'); + } else { + li.addClass('hover'); + + $(li).siblings().removeClass('hover'); + + if (target[0].nodeName === 'A' && target.parent().hasClass('has-dropdown')) { + e.preventDefault(); + } + } + }) + .on('click.fndtn.topbar', '[' + this.attr_name() + '] .has-dropdown>a', function (e) { + if (self.breakpoint()) { + + e.preventDefault(); + + var $this = S(this), + topbar = $this.closest('[' + self.attr_name() + ']'), + section = topbar.find('section, .top-bar-section'), + dropdownHeight = $this.next('.dropdown').outerHeight(), + $selectedLi = $this.closest('li'); + + topbar.data('index', topbar.data('index') + 1); + $selectedLi.addClass('moved'); + + if (!self.rtl) { + section.css({left: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({left: 100 * topbar.data('index') + '%'}); + } else { + section.css({right: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({right: 100 * topbar.data('index') + '%'}); + } + + topbar.css('height', $this.siblings('ul').outerHeight(true) + topbar.data('height')); + } + }); + + S(window).off(".topbar").on("resize.fndtn.topbar", self.throttle(function() { + self.resize.call(self); + }, 50)).trigger("resize").trigger("resize.fndtn.topbar").load(function(){ + // Ensure that the offset is calculated after all of the pages resources have loaded + S(this).trigger("resize.fndtn.topbar"); + }); + + S('body').off('.topbar').on('click.fndtn.topbar', function (e) { + var parent = S(e.target).closest('li').closest('li.hover'); + + if (parent.length > 0) { + return; + } + + S('[' + self.attr_name() + '] li.hover').removeClass('hover'); + }); + + // Go up a level on Click + S(this.scope).on('click.fndtn.topbar', '[' + this.attr_name() + '] .has-dropdown .back', function (e) { + e.preventDefault(); + + var $this = S(this), + topbar = $this.closest('[' + self.attr_name() + ']'), + section = topbar.find('section, .top-bar-section'), + settings = topbar.data(self.attr_name(true) + '-init'), + $movedLi = $this.closest('li.moved'), + $previousLevelUl = $movedLi.parent(); + + topbar.data('index', topbar.data('index') - 1); + + if (!self.rtl) { + section.css({left: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({left: 100 * topbar.data('index') + '%'}); + } else { + section.css({right: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({right: 100 * topbar.data('index') + '%'}); + } + + if (topbar.data('index') === 0) { + topbar.css('height', ''); + } else { + topbar.css('height', $previousLevelUl.outerHeight(true) + topbar.data('height')); + } + + setTimeout(function () { + $movedLi.removeClass('moved'); + }, 300); + }); + + // Show dropdown menus when their items are focused + S(this.scope).find('.dropdown a') + .focus(function() { + $(this).parents('.has-dropdown').addClass('hover'); + }) + .blur(function() { + $(this).parents('.has-dropdown').removeClass('hover'); + }); + }, + + resize : function () { + var self = this; + self.S('[' + this.attr_name() + ']').each(function () { + var topbar = self.S(this), + settings = topbar.data(self.attr_name(true) + '-init'); + + var stickyContainer = topbar.parent('.' + self.settings.sticky_class); + var stickyOffset; + + if (!self.breakpoint()) { + var doToggle = topbar.hasClass('expanded'); + topbar + .css('height', '') + .removeClass('expanded') + .find('li') + .removeClass('hover'); + + if(doToggle) { + self.toggle(topbar); + } + } + + if(self.is_sticky(topbar, stickyContainer, settings)) { + if(stickyContainer.hasClass('fixed')) { + // Remove the fixed to allow for correct calculation of the offset. + stickyContainer.removeClass('fixed'); + + stickyOffset = stickyContainer.offset().top; + if(self.S(document.body).hasClass('f-topbar-fixed')) { + stickyOffset -= topbar.data('height'); + } + + topbar.data('stickyoffset', stickyOffset); + stickyContainer.addClass('fixed'); + } else { + stickyOffset = stickyContainer.offset().top; + topbar.data('stickyoffset', stickyOffset); + } + } + + }); + }, + + breakpoint : function () { + return !matchMedia(Foundation.media_queries['topbar']).matches; + }, + + small : function () { + return matchMedia(Foundation.media_queries['small']).matches; + }, + + medium : function () { + return matchMedia(Foundation.media_queries['medium']).matches; + }, + + large : function () { + return matchMedia(Foundation.media_queries['large']).matches; + }, + + assemble : function (topbar) { + var self = this, + settings = topbar.data(this.attr_name(true) + '-init'), + section = self.S('section, .top-bar-section', topbar); + + // Pull element out of the DOM for manipulation + section.detach(); + + self.S('.has-dropdown>a', section).each(function () { + var $link = self.S(this), + $dropdown = $link.siblings('.dropdown'), + url = $link.attr('href'), + $titleLi; + + + if (!$dropdown.find('.title.back').length) { + + if (settings.mobile_show_parent_link == true && url) { + $titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5></li><li class="parent-link show-for-small"><a class="parent-link js-generated" href="' + url + '">' + $link.html() +'</a></li>'); + } else { + $titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5>'); + } + + // Copy link to subnav + if (settings.custom_back_text == true) { + $('h5>a', $titleLi).html(settings.back_text); + } else { + $('h5>a', $titleLi).html('« ' + $link.html()); + } + $dropdown.prepend($titleLi); + } + }); + + // Put element back in the DOM + section.appendTo(topbar); + + // check for sticky + this.sticky(); + + this.assembled(topbar); + }, + + assembled : function (topbar) { + topbar.data(this.attr_name(true), $.extend({}, topbar.data(this.attr_name(true)), {assembled: true})); + }, + + height : function (ul) { + var total = 0, + self = this; + + $('> li', ul).each(function () { + total += self.S(this).outerHeight(true); + }); + + return total; + }, + + sticky : function () { + var self = this; + + this.S(window).on('scroll', function() { + self.update_sticky_positioning(); + }); + }, + + update_sticky_positioning: function() { + var klass = '.' + this.settings.sticky_class, + $window = this.S(window), + self = this; + + if (self.settings.sticky_topbar && self.is_sticky(this.settings.sticky_topbar,this.settings.sticky_topbar.parent(), this.settings)) { + var distance = this.settings.sticky_topbar.data('stickyoffset'); + if (!self.S(klass).hasClass('expanded')) { + if ($window.scrollTop() > (distance)) { + if (!self.S(klass).hasClass('fixed')) { + self.S(klass).addClass('fixed'); + self.S('body').addClass('f-topbar-fixed'); + } + } else if ($window.scrollTop() <= distance) { + if (self.S(klass).hasClass('fixed')) { + self.S(klass).removeClass('fixed'); + self.S('body').removeClass('f-topbar-fixed'); + } + } + } + } + }, + + off : function () { + this.S(this.scope).off('.fndtn.topbar'); + this.S(window).off('.fndtn.topbar'); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.tab = { + name : 'tab', + + version : '5.4.7', + + settings : { + active_class: 'active', + callback : function () {}, + deep_linking: false, + scroll_to_content: true, + is_hover: false + }, + + default_tab_hashes: [], + + init : function (scope, method, options) { + var self = this, + S = this.S; + + this.bindings(method, options); + this.handle_location_hash_change(); + + // Store the default active tabs which will be referenced when the + // location hash is absent, as in the case of navigating the tabs and + // returning to the first viewing via the browser Back button. + S('[' + this.attr_name() + '] > .active > a', this.scope).each(function () { + self.default_tab_hashes.push(this.hash); + }); + }, + + events : function () { + var self = this, + S = this.S; + + var usual_tab_behavior = function (e) { + var settings = S(this).closest('[' + self.attr_name() +']').data(self.attr_name(true) + '-init'); + if (!settings.is_hover || Modernizr.touch) { + e.preventDefault(); + e.stopPropagation(); + self.toggle_active_tab(S(this).parent()); + } + }; + + S(this.scope) + .off('.tab') + // Click event: tab title + .on('focus.fndtn.tab', '[' + this.attr_name() + '] > * > a', usual_tab_behavior ) + .on('click.fndtn.tab', '[' + this.attr_name() + '] > * > a', usual_tab_behavior ) + // Hover event: tab title + .on('mouseenter.fndtn.tab', '[' + this.attr_name() + '] > * > a', function (e) { + var settings = S(this).closest('[' + self.attr_name() +']').data(self.attr_name(true) + '-init'); + if (settings.is_hover) self.toggle_active_tab(S(this).parent()); + }); + + // Location hash change event + S(window).on('hashchange.fndtn.tab', function (e) { + e.preventDefault(); + self.handle_location_hash_change(); + }); + }, + + handle_location_hash_change : function () { + + var self = this, + S = this.S; + + S('[' + this.attr_name() + ']', this.scope).each(function () { + var settings = S(this).data(self.attr_name(true) + '-init'); + if (settings.deep_linking) { + // Match the location hash to a label + var hash; + if (settings.scroll_to_content) { + hash = self.scope.location.hash; + } else { + // prefix the hash to prevent anchor scrolling + hash = self.scope.location.hash.replace('fndtn-', ''); + } + if (hash != '') { + // Check whether the location hash references a tab content div or + // another element on the page (inside or outside the tab content div) + var hash_element = S(hash); + if (hash_element.hasClass('content') && hash_element.parent().hasClass('tabs-content')) { + // Tab content div + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + hash + ']').parent()); + } else { + // Not the tab content div. If inside the tab content, find the + // containing tab and toggle it as active. + var hash_tab_container_id = hash_element.closest('.content').attr('id'); + if (hash_tab_container_id != undefined) { + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=#' + hash_tab_container_id + ']').parent(), hash); + } + } + } else { + // Reference the default tab hashes which were initialized in the init function + for (var ind = 0; ind < self.default_tab_hashes.length; ind++) { + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + self.default_tab_hashes[ind] + ']').parent()); + } + } + } + }); + }, + + toggle_active_tab: function (tab, location_hash) { + var S = this.S, + tabs = tab.closest('[' + this.attr_name() + ']'), + tab_link = tab.find('a'), + anchor = tab.children('a').first(), + target_hash = '#' + anchor.attr('href').split('#')[1], + target = S(target_hash), + siblings = tab.siblings(), + settings = tabs.data(this.attr_name(true) + '-init'), + interpret_keyup_action = function(e) { + // Light modification of Heydon Pickering's Practical ARIA Examples: http://heydonworks.com/practical_aria_examples/js/a11y.js + + // define current, previous and next (possible) tabs + + var $original = $(this); + var $prev = $(this).parents('li').prev().children('[role="tab"]'); + var $next = $(this).parents('li').next().children('[role="tab"]'); + var $target; + + // find the direction (prev or next) + + switch (e.keyCode) { + case 37: + $target = $prev; + break; + case 39: + $target = $next; + break; + default: + $target = false + break; + } + + if ($target.length) { + $original.attr({ + 'tabindex' : '-1', + 'aria-selected' : null + }); + $target.attr({ + 'tabindex' : '0', + 'aria-selected' : true + }).focus(); + } + + // Hide panels + + $('[role="tabpanel"]') + .attr('aria-hidden', 'true'); + + // Show panel which corresponds to target + + $('#' + $(document.activeElement).attr('href').substring(1)) + .attr('aria-hidden', null); + + }; + + // allow usage of data-tab-content attribute instead of href + if (S(this).data(this.data_attr('tab-content'))) { + target_hash = '#' + S(this).data(this.data_attr('tab-content')).split('#')[1]; + target = S(target_hash); + } + + if (settings.deep_linking) { + + if (settings.scroll_to_content) { + // retain current hash to scroll to content + window.location.hash = location_hash || target_hash; + if (location_hash == undefined || location_hash == target_hash) { + tab.parent()[0].scrollIntoView(); + } else { + S(target_hash)[0].scrollIntoView(); + } + } else { + // prefix the hashes so that the browser doesn't scroll down + if (location_hash != undefined) { + window.location.hash = 'fndtn-' + location_hash.replace('#', ''); + } else { + window.location.hash = 'fndtn-' + target_hash.replace('#', ''); + } + } + } + + // WARNING: The activation and deactivation of the tab content must + // occur after the deep linking in order to properly refresh the browser + // window (notably in Chrome). + // Clean up multiple attr instances to done once + tab.addClass(settings.active_class).triggerHandler('opened'); + tab_link.attr({"aria-selected": "true", tabindex: 0}); + siblings.removeClass(settings.active_class) + siblings.find('a').attr({"aria-selected": "false", tabindex: -1}); + target.siblings().removeClass(settings.active_class).attr({"aria-hidden": "true", tabindex: -1}); + target.addClass(settings.active_class).attr('aria-hidden', 'false').removeAttr("tabindex"); + settings.callback(tab); + target.triggerHandler('toggled', [tab]); + tabs.triggerHandler('toggled', [target]); + + tab_link.off('keydown').on('keydown', interpret_keyup_action ); + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + off : function () {}, + + reflow : function () {} + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.abide = { + name : 'abide', + + version : '5.4.7', + + settings : { + live_validate : true, + focus_on_invalid : true, + error_labels: true, // labels with a for="inputId" will recieve an `error` class + error_class: 'error', + timeout : 1000, + 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,6}$/, + + 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})$/ + }, + validators : { + equalTo: function(el, required, parent) { + var from = document.getElementById(el.getAttribute(this.add_namespace('data-equalto'))).value, + to = el.value, + valid = (from === to); + + return valid; + } + } + }, + + timer : null, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + form = self.S(scope).attr('novalidate', 'novalidate'), + settings = form.data(this.attr_name(true) + '-init') || {}; + + this.invalid_attr = this.add_namespace('data-invalid'); + + form + .off('.abide') + .on('submit.fndtn.abide validate.fndtn.abide', function (e) { + var is_ajax = /ajax/i.test(self.S(this).attr(self.attr_name())); + return self.validate(self.S(this).find('input, textarea, select').get(), e, is_ajax); + }) + .on('reset', function() { + return self.reset($(this)); + }) + .find('input, textarea, select') + .off('.abide') + .on('blur.fndtn.abide change.fndtn.abide', function (e) { + self.validate([this], e); + }) + .on('keydown.fndtn.abide', function (e) { + if (settings.live_validate === true) { + clearTimeout(self.timer); + self.timer = setTimeout(function () { + self.validate([this], e); + }.bind(this), settings.timeout); + } + }); + }, + + reset : function (form) { + form.removeAttr(this.invalid_attr); + $(this.invalid_attr, form).removeAttr(this.invalid_attr); + $('.' + this.settings.error_class, form).not('small').removeClass(this.settings.error_class); + }, + + validate : function (els, e, is_ajax) { + var validations = this.parse_patterns(els), + validation_count = validations.length, + form = this.S(els[0]).closest('form'), + submit_event = /submit/.test(e.type); + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < validation_count; i++) { + if (!validations[i] && (submit_event || is_ajax)) { + if (this.settings.focus_on_invalid) els[i].focus(); + form.trigger('invalid'); + this.S(els[i]).closest('form').attr(this.invalid_attr, ''); + return false; + } + } + + if (submit_event || is_ajax) { + form.trigger('valid'); + } + + form.removeAttr(this.invalid_attr); + + if (is_ajax) return false; + + return true; + }, + + parse_patterns : function (els) { + var i = els.length, + el_patterns = []; + + while (i--) { + el_patterns.push(this.pattern(els[i])); + } + + return this.check_validation_and_apply_styles(el_patterns); + }, + + pattern : function (el) { + var type = el.getAttribute('type'), + required = typeof el.getAttribute('required') === 'string'; + + var pattern = el.getAttribute('pattern') || ''; + + if (this.settings.patterns.hasOwnProperty(pattern) && pattern.length > 0) { + return [el, this.settings.patterns[pattern], required]; + } else if (pattern.length > 0) { + return [el, new RegExp(pattern), required]; + } + + if (this.settings.patterns.hasOwnProperty(type)) { + return [el, this.settings.patterns[type], required]; + } + + pattern = /.*/; + + return [el, pattern, required]; + }, + + check_validation_and_apply_styles : function (el_patterns) { + var i = el_patterns.length, + validations = [], + form = this.S(el_patterns[0][0]).closest('[data-' + this.attr_name(true) + ']'), + settings = form.data(this.attr_name(true) + '-init') || {}; + while (i--) { + var el = el_patterns[i][0], + required = el_patterns[i][2], + value = el.value.trim(), + direct_parent = this.S(el).parent(), + validator = el.getAttribute(this.add_namespace('data-abide-validator')), + is_radio = el.type === "radio", + is_checkbox = el.type === "checkbox", + label = this.S('label[for="' + el.getAttribute('id') + '"]'), + valid_length = (required) ? (el.value.length > 0) : true, + el_validations = []; + + var parent, valid; + + // support old way to do equalTo validations + if(el.getAttribute(this.add_namespace('data-equalto'))) { validator = "equalTo" } + + if (!direct_parent.is('label')) { + parent = direct_parent; + } else { + parent = direct_parent.parent(); + } + + if (validator) { + valid = this.settings.validators[validator].apply(this, [el, required, parent]); + el_validations.push(valid); + } + + if (is_radio && required) { + el_validations.push(this.valid_radio(el, required)); + } else if (is_checkbox && required) { + el_validations.push(this.valid_checkbox(el, required)); + } else { + + if (el_patterns[i][1].test(value) && valid_length || + !required && el.value.length < 1 || $(el).attr('disabled')) { + el_validations.push(true); + } else { + el_validations.push(false); + } + + el_validations = [el_validations.every(function(valid){return valid;})]; + + if(el_validations[0]){ + this.S(el).removeAttr(this.invalid_attr); + el.setAttribute('aria-invalid', 'false'); + el.removeAttribute('aria-describedby'); + parent.removeClass(this.settings.error_class); + if (label.length > 0 && this.settings.error_labels) { + label.removeClass(this.settings.error_class).removeAttr('role'); + } + $(el).triggerHandler('valid'); + } else { + this.S(el).attr(this.invalid_attr, ''); + el.setAttribute('aria-invalid', 'true'); + + // Try to find the error associated with the input + var errorElem = parent.find('small.'+this.settings.error_class, 'span.'+this.settings.error_class); + var errorID = errorElem.length > 0 ? errorElem[0].id : ""; + if (errorID.length > 0) el.setAttribute('aria-describedby', errorID); + + // el.setAttribute('aria-describedby', $(el).find('.error')[0].id); + parent.addClass(this.settings.error_class); + if (label.length > 0 && this.settings.error_labels) { + label.addClass(this.settings.error_class).attr('role', 'alert'); + } + $(el).triggerHandler('invalid'); + } + } + validations.push(el_validations[0]); + } + validations = [validations.every(function(valid){return valid;})]; + return validations; + }, + + valid_checkbox : function(el, required) { + var el = this.S(el), + valid = (el.is(':checked') || !required); + + if (valid) { + el.removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + el.attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + + return valid; + }, + + valid_radio : function (el, required) { + var name = el.getAttribute('name'), + group = this.S(el).closest('[data-' + this.attr_name(true) + ']').find("[name='"+name+"']"), + count = group.length, + valid = false; + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < count; i++) { + if (group[i].checked) valid = true; + } + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < count; i++) { + if (valid) { + this.S(group[i]).removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + this.S(group[i]).attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + } + + return valid; + }, + + valid_equal: function(el, required, parent) { + var from = document.getElementById(el.getAttribute(this.add_namespace('data-equalto'))).value, + to = el.value, + valid = (from === to); + + if (valid) { + this.S(el).removeAttr(this.invalid_attr); + parent.removeClass(this.settings.error_class); + if (label.length > 0 && settings.error_labels) label.removeClass(this.settings.error_class); + } else { + this.S(el).attr(this.invalid_attr, ''); + parent.addClass(this.settings.error_class); + if (label.length > 0 && settings.error_labels) label.addClass(this.settings.error_class); + } + + return valid; + }, + + valid_oneof: function(el, required, parent, doNotValidateOthers) { + var el = this.S(el), + others = this.S('[' + this.add_namespace('data-oneof') + ']'), + valid = others.filter(':checked').length > 0; + + if (valid) { + el.removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + el.attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + + if (!doNotValidateOthers) { + var _this = this; + others.each(function() { + _this.valid_oneof.call(_this, this, null, null, true); + }); + } + + return valid; + } + }; +}(jQuery, window, window.document)); +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.tooltip = { + name : 'tooltip', + + version : '5.4.7', + + settings : { + additional_inheritable_classes : [], + tooltip_class : '.tooltip', + append_to: 'body', + touch_close_text: 'Tap To Close', + disable_for_touch: false, + hover_delay: 200, + show_on : 'all', + tip_template : function (selector, content) { + return '<span data-selector="' + selector + '" id="' + selector + '" class="' + + Foundation.libs.tooltip.settings.tooltip_class.substring(1) + + '" role="tooltip">' + content + '<span class="nub"></span></span>'; + } + }, + + cache : {}, + + init : function (scope, method, options) { + Foundation.inherit(this, 'random_str'); + this.bindings(method, options); + }, + + should_show: function (target, tip) { + var settings = $.extend({}, this.settings, this.data_options(target)); + + if (settings.show_on === 'all') { + return true; + } else if (this.small() && settings.show_on === 'small') { + return true; + } else if (this.medium() && settings.show_on === 'medium') { + return true; + } else if (this.large() && settings.show_on === 'large') { + return true; + } + return false; + }, + + medium : function () { + return matchMedia(Foundation.media_queries['medium']).matches; + }, + + large : function () { + return matchMedia(Foundation.media_queries['large']).matches; + }, + + events : function (instance) { + var self = this, + S = self.S; + + self.create(this.S(instance)); + + $(this.scope) + .off('.tooltip') + .on('mouseenter.fndtn.tooltip mouseleave.fndtn.tooltip touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', + '[' + this.attr_name() + ']', function (e) { + var $this = S(this), + settings = $.extend({}, self.settings, self.data_options($this)), + is_touch = false; + + if (Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type) && S(e.target).is('a')) { + return false; + } + + if (/mouse/i.test(e.type) && self.ie_touch(e)) return false; + + if ($this.hasClass('open')) { + if (Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) e.preventDefault(); + self.hide($this); + } else { + if (settings.disable_for_touch && Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) { + return; + } else if(!settings.disable_for_touch && Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) { + e.preventDefault(); + S(settings.tooltip_class + '.open').hide(); + is_touch = true; + } + + if (/enter|over/i.test(e.type)) { + this.timer = setTimeout(function () { + var tip = self.showTip($this); + }.bind(this), self.settings.hover_delay); + } else if (e.type === 'mouseout' || e.type === 'mouseleave') { + clearTimeout(this.timer); + self.hide($this); + } else { + self.showTip($this); + } + } + }) + .on('mouseleave.fndtn.tooltip touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', '[' + this.attr_name() + '].open', function (e) { + if (/mouse/i.test(e.type) && self.ie_touch(e)) return false; + + if($(this).data('tooltip-open-event-type') == 'touch' && e.type == 'mouseleave') { + return; + } + else if($(this).data('tooltip-open-event-type') == 'mouse' && /MSPointerDown|touchstart/i.test(e.type)) { + self.convert_to_touch($(this)); + } else { + self.hide($(this)); + } + }) + .on('DOMNodeRemoved DOMAttrModified', '[' + this.attr_name() + ']:not(a)', function (e) { + self.hide(S(this)); + }); + }, + + ie_touch : function (e) { + // How do I distinguish between IE11 and Windows Phone 8????? + return false; + }, + + showTip : function ($target) { + var $tip = this.getTip($target); + if (this.should_show($target, $tip)){ + return this.show($target); + } + return; + }, + + getTip : function ($target) { + var selector = this.selector($target), + settings = $.extend({}, this.settings, this.data_options($target)), + tip = null; + + if (selector) { + tip = this.S('span[data-selector="' + selector + '"]' + settings.tooltip_class); + } + + return (typeof tip === 'object') ? tip : false; + }, + + selector : function ($target) { + var id = $target.attr('id'), + dataSelector = $target.attr(this.attr_name()) || $target.attr('data-selector'); + + if ((id && id.length < 1 || !id) && typeof dataSelector != 'string') { + dataSelector = this.random_str(6); + $target + .attr('data-selector', dataSelector) + .attr('aria-describedby', dataSelector); + } + + return (id && id.length > 0) ? id : dataSelector; + }, + + create : function ($target) { + var self = this, + settings = $.extend({}, this.settings, this.data_options($target)), + tip_template = this.settings.tip_template; + + if (typeof settings.tip_template === 'string' && window.hasOwnProperty(settings.tip_template)) { + tip_template = window[settings.tip_template]; + } + + var $tip = $(tip_template(this.selector($target), $('<div></div>').html($target.attr('title')).html())), + classes = this.inheritable_classes($target); + + $tip.addClass(classes).appendTo(settings.append_to); + + if (Modernizr.touch) { + $tip.append('<span class="tap-to-close">'+settings.touch_close_text+'</span>'); + $tip.on('touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', function(e) { + self.hide($target); + }); + } + + $target.removeAttr('title').attr('title',''); + }, + + reposition : function (target, tip, classes) { + var width, nub, nubHeight, nubWidth, column, objPos; + + tip.css('visibility', 'hidden').show(); + + width = target.data('width'); + nub = tip.children('.nub'); + nubHeight = nub.outerHeight(); + nubWidth = nub.outerHeight(); + + if (this.small()) { + tip.css({'width' : '100%' }); + } else { + tip.css({'width' : (width) ? width : 'auto'}); + } + + objPos = function (obj, top, right, bottom, left, width) { + return obj.css({ + 'top' : (top) ? top : 'auto', + 'bottom' : (bottom) ? bottom : 'auto', + 'left' : (left) ? left : 'auto', + 'right' : (right) ? right : 'auto' + }).end(); + }; + + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', target.offset().left); + + if (this.small()) { + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', 12.5, $(this.scope).width()); + tip.addClass('tip-override'); + objPos(nub, -nubHeight, 'auto', 'auto', target.offset().left); + } else { + var left = target.offset().left; + if (Foundation.rtl) { + nub.addClass('rtl'); + left = target.offset().left + target.outerWidth() - tip.outerWidth(); + } + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', left); + tip.removeClass('tip-override'); + if (classes && classes.indexOf('tip-top') > -1) { + if (Foundation.rtl) nub.addClass('rtl'); + objPos(tip, (target.offset().top - tip.outerHeight()), 'auto', 'auto', left) + .removeClass('tip-override'); + } else if (classes && classes.indexOf('tip-left') > -1) { + objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left - tip.outerWidth() - nubHeight)) + .removeClass('tip-override'); + nub.removeClass('rtl'); + } else if (classes && classes.indexOf('tip-right') > -1) { + objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left + target.outerWidth() + nubHeight)) + .removeClass('tip-override'); + nub.removeClass('rtl'); + } + } + + tip.css('visibility', 'visible').hide(); + }, + + small : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + inheritable_classes : function ($target) { + var settings = $.extend({}, this.settings, this.data_options($target)), + inheritables = ['tip-top', 'tip-left', 'tip-bottom', 'tip-right', 'radius', 'round'].concat(settings.additional_inheritable_classes), + classes = $target.attr('class'), + filtered = classes ? $.map(classes.split(' '), function (el, i) { + if ($.inArray(el, inheritables) !== -1) { + return el; + } + }).join(' ') : ''; + + return $.trim(filtered); + }, + + convert_to_touch : function($target) { + var self = this, + $tip = self.getTip($target), + settings = $.extend({}, self.settings, self.data_options($target)); + + if ($tip.find('.tap-to-close').length === 0) { + $tip.append('<span class="tap-to-close">'+settings.touch_close_text+'</span>'); + $tip.on('click.fndtn.tooltip.tapclose touchstart.fndtn.tooltip.tapclose MSPointerDown.fndtn.tooltip.tapclose', function(e) { + self.hide($target); + }); + } + + $target.data('tooltip-open-event-type', 'touch'); + }, + + show : function ($target) { + var $tip = this.getTip($target); + + if ($target.data('tooltip-open-event-type') == 'touch') { + this.convert_to_touch($target); + } + + this.reposition($target, $tip, $target.attr('class')); + $target.addClass('open'); + $tip.fadeIn(150); + }, + + hide : function ($target) { + var $tip = this.getTip($target); + + $tip.fadeOut(150, function() { + $tip.find('.tap-to-close').remove(); + $tip.off('click.fndtn.tooltip.tapclose MSPointerDown.fndtn.tapclose'); + $target.removeClass('open'); + }); + }, + + off : function () { + var self = this; + this.S(this.scope).off('.fndtn.tooltip'); + this.S(this.settings.tooltip_class).each(function (i) { + $('[' + self.attr_name() + ']').eq(i).attr('title', $(this).text()); + }).remove(); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.abide.js b/resources/foundation/js/foundation/foundation.abide.js new file mode 100644 index 0000000..6737721 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.abide.js @@ -0,0 +1,314 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.abide = { + name : 'abide', + + version : '5.4.7', + + settings : { + live_validate : true, + focus_on_invalid : true, + error_labels: true, // labels with a for="inputId" will recieve an `error` class + error_class: 'error', + timeout : 1000, + 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,6}$/, + + 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})$/ + }, + validators : { + equalTo: function(el, required, parent) { + var from = document.getElementById(el.getAttribute(this.add_namespace('data-equalto'))).value, + to = el.value, + valid = (from === to); + + return valid; + } + } + }, + + timer : null, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + form = self.S(scope).attr('novalidate', 'novalidate'), + settings = form.data(this.attr_name(true) + '-init') || {}; + + this.invalid_attr = this.add_namespace('data-invalid'); + + form + .off('.abide') + .on('submit.fndtn.abide validate.fndtn.abide', function (e) { + var is_ajax = /ajax/i.test(self.S(this).attr(self.attr_name())); + return self.validate(self.S(this).find('input, textarea, select').get(), e, is_ajax); + }) + .on('reset', function() { + return self.reset($(this)); + }) + .find('input, textarea, select') + .off('.abide') + .on('blur.fndtn.abide change.fndtn.abide', function (e) { + self.validate([this], e); + }) + .on('keydown.fndtn.abide', function (e) { + if (settings.live_validate === true) { + clearTimeout(self.timer); + self.timer = setTimeout(function () { + self.validate([this], e); + }.bind(this), settings.timeout); + } + }); + }, + + reset : function (form) { + form.removeAttr(this.invalid_attr); + $(this.invalid_attr, form).removeAttr(this.invalid_attr); + $('.' + this.settings.error_class, form).not('small').removeClass(this.settings.error_class); + }, + + validate : function (els, e, is_ajax) { + var validations = this.parse_patterns(els), + validation_count = validations.length, + form = this.S(els[0]).closest('form'), + submit_event = /submit/.test(e.type); + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < validation_count; i++) { + if (!validations[i] && (submit_event || is_ajax)) { + if (this.settings.focus_on_invalid) els[i].focus(); + form.trigger('invalid'); + this.S(els[i]).closest('form').attr(this.invalid_attr, ''); + return false; + } + } + + if (submit_event || is_ajax) { + form.trigger('valid'); + } + + form.removeAttr(this.invalid_attr); + + if (is_ajax) return false; + + return true; + }, + + parse_patterns : function (els) { + var i = els.length, + el_patterns = []; + + while (i--) { + el_patterns.push(this.pattern(els[i])); + } + + return this.check_validation_and_apply_styles(el_patterns); + }, + + pattern : function (el) { + var type = el.getAttribute('type'), + required = typeof el.getAttribute('required') === 'string'; + + var pattern = el.getAttribute('pattern') || ''; + + if (this.settings.patterns.hasOwnProperty(pattern) && pattern.length > 0) { + return [el, this.settings.patterns[pattern], required]; + } else if (pattern.length > 0) { + return [el, new RegExp(pattern), required]; + } + + if (this.settings.patterns.hasOwnProperty(type)) { + return [el, this.settings.patterns[type], required]; + } + + pattern = /.*/; + + return [el, pattern, required]; + }, + + check_validation_and_apply_styles : function (el_patterns) { + var i = el_patterns.length, + validations = [], + form = this.S(el_patterns[0][0]).closest('[data-' + this.attr_name(true) + ']'), + settings = form.data(this.attr_name(true) + '-init') || {}; + while (i--) { + var el = el_patterns[i][0], + required = el_patterns[i][2], + value = el.value.trim(), + direct_parent = this.S(el).parent(), + validator = el.getAttribute(this.add_namespace('data-abide-validator')), + is_radio = el.type === "radio", + is_checkbox = el.type === "checkbox", + label = this.S('label[for="' + el.getAttribute('id') + '"]'), + valid_length = (required) ? (el.value.length > 0) : true, + el_validations = []; + + var parent, valid; + + // support old way to do equalTo validations + if(el.getAttribute(this.add_namespace('data-equalto'))) { validator = "equalTo" } + + if (!direct_parent.is('label')) { + parent = direct_parent; + } else { + parent = direct_parent.parent(); + } + + if (validator) { + valid = this.settings.validators[validator].apply(this, [el, required, parent]); + el_validations.push(valid); + } + + if (is_radio && required) { + el_validations.push(this.valid_radio(el, required)); + } else if (is_checkbox && required) { + el_validations.push(this.valid_checkbox(el, required)); + } else { + + if (el_patterns[i][1].test(value) && valid_length || + !required && el.value.length < 1 || $(el).attr('disabled')) { + el_validations.push(true); + } else { + el_validations.push(false); + } + + el_validations = [el_validations.every(function(valid){return valid;})]; + + if(el_validations[0]){ + this.S(el).removeAttr(this.invalid_attr); + el.setAttribute('aria-invalid', 'false'); + el.removeAttribute('aria-describedby'); + parent.removeClass(this.settings.error_class); + if (label.length > 0 && this.settings.error_labels) { + label.removeClass(this.settings.error_class).removeAttr('role'); + } + $(el).triggerHandler('valid'); + } else { + this.S(el).attr(this.invalid_attr, ''); + el.setAttribute('aria-invalid', 'true'); + + // Try to find the error associated with the input + var errorElem = parent.find('small.'+this.settings.error_class, 'span.'+this.settings.error_class); + var errorID = errorElem.length > 0 ? errorElem[0].id : ""; + if (errorID.length > 0) el.setAttribute('aria-describedby', errorID); + + // el.setAttribute('aria-describedby', $(el).find('.error')[0].id); + parent.addClass(this.settings.error_class); + if (label.length > 0 && this.settings.error_labels) { + label.addClass(this.settings.error_class).attr('role', 'alert'); + } + $(el).triggerHandler('invalid'); + } + } + validations.push(el_validations[0]); + } + validations = [validations.every(function(valid){return valid;})]; + return validations; + }, + + valid_checkbox : function(el, required) { + var el = this.S(el), + valid = (el.is(':checked') || !required); + + if (valid) { + el.removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + el.attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + + return valid; + }, + + valid_radio : function (el, required) { + var name = el.getAttribute('name'), + group = this.S(el).closest('[data-' + this.attr_name(true) + ']').find("[name='"+name+"']"), + count = group.length, + valid = false; + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < count; i++) { + if (group[i].checked) valid = true; + } + + // Has to count up to make sure the focus gets applied to the top error + for (var i=0; i < count; i++) { + if (valid) { + this.S(group[i]).removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + this.S(group[i]).attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + } + + return valid; + }, + + valid_equal: function(el, required, parent) { + var from = document.getElementById(el.getAttribute(this.add_namespace('data-equalto'))).value, + to = el.value, + valid = (from === to); + + if (valid) { + this.S(el).removeAttr(this.invalid_attr); + parent.removeClass(this.settings.error_class); + if (label.length > 0 && settings.error_labels) label.removeClass(this.settings.error_class); + } else { + this.S(el).attr(this.invalid_attr, ''); + parent.addClass(this.settings.error_class); + if (label.length > 0 && settings.error_labels) label.addClass(this.settings.error_class); + } + + return valid; + }, + + valid_oneof: function(el, required, parent, doNotValidateOthers) { + var el = this.S(el), + others = this.S('[' + this.add_namespace('data-oneof') + ']'), + valid = others.filter(':checked').length > 0; + + if (valid) { + el.removeAttr(this.invalid_attr).parent().removeClass(this.settings.error_class); + } else { + el.attr(this.invalid_attr, '').parent().addClass(this.settings.error_class); + } + + if (!doNotValidateOthers) { + var _this = this; + others.each(function() { + _this.valid_oneof.call(_this, this, null, null, true); + }); + } + + return valid; + } + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.accordion.js b/resources/foundation/js/foundation/foundation.accordion.js new file mode 100644 index 0000000..b20e6a3 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.accordion.js @@ -0,0 +1,66 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.accordion = { + name : 'accordion', + + version : '5.4.7', + + settings : { + content_class: 'content', + active_class: 'active', + multi_expand: false, + toggleable: true, + callback : function () {} + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this; + var S = this.S; + S(this.scope) + .off('.fndtn.accordion') + .on('click.fndtn.accordion', '[' + this.attr_name() + '] > dd > a', function (e) { + var accordion = S(this).closest('[' + self.attr_name() + ']'), + groupSelector = self.attr_name() + '=' + accordion.attr(self.attr_name()), + settings = accordion.data(self.attr_name(true) + '-init'), + target = S('#' + this.href.split('#')[1]), + aunts = $('> dd', accordion), + siblings = aunts.children('.'+settings.content_class), + active_content = siblings.filter('.' + settings.active_class); + e.preventDefault(); + + if (accordion.attr(self.attr_name())) { + siblings = siblings.add('[' + groupSelector + '] dd > .'+settings.content_class); + aunts = aunts.add('[' + groupSelector + '] dd'); + } + + if (settings.toggleable && target.is(active_content)) { + target.parent('dd').toggleClass(settings.active_class, false); + target.toggleClass(settings.active_class, false); + settings.callback(target); + target.triggerHandler('toggled', [accordion]); + accordion.triggerHandler('toggled', [target]); + return; + } + + if (!settings.multi_expand) { + siblings.removeClass(settings.active_class); + aunts.removeClass(settings.active_class); + } + + target.addClass(settings.active_class).parent().addClass(settings.active_class); + settings.callback(target); + target.triggerHandler('toggled', [accordion]); + accordion.triggerHandler('toggled', [target]); + }); + }, + + off : function () {}, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.alert.js b/resources/foundation/js/foundation/foundation.alert.js new file mode 100644 index 0000000..26d2dd1 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.alert.js @@ -0,0 +1,43 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.alert = { + name : 'alert', + + version : '5.4.7', + + settings : { + callback: function (){} + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = this.S; + + $(this.scope).off('.alert').on('click.fndtn.alert', '[' + this.attr_name() + '] .close', function (e) { + var alertBox = S(this).closest('[' + self.attr_name() + ']'), + settings = alertBox.data(self.attr_name(true) + '-init') || self.settings; + + e.preventDefault(); + if (Modernizr.csstransitions) { + alertBox.addClass("alert-close"); + alertBox.on('transitionend webkitTransitionEnd oTransitionEnd', function(e) { + S(this).trigger('close').trigger('close.fndtn.alert').remove(); + settings.callback(); + }); + } else { + alertBox.fadeOut(300, function () { + S(this).trigger('close').trigger('close.fndtn.alert').remove(); + settings.callback(); + }); + } + }); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.clearing.js b/resources/foundation/js/foundation/foundation.clearing.js new file mode 100644 index 0000000..1339c6a --- /dev/null +++ b/resources/foundation/js/foundation/foundation.clearing.js @@ -0,0 +1,558 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.clearing = { + name : 'clearing', + + version: '5.4.7', + + settings : { + templates : { + viewing : '<a href="#" class="clearing-close">×</a>' + + '<div class="visible-img" style="display: none"><div class="clearing-touch-label"></div><img src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs%3D" alt="" />' + + '<p class="clearing-caption"></p><a href="#" class="clearing-main-prev"><span></span></a>' + + '<a href="#" class="clearing-main-next"><span></span></a></div>' + }, + + // comma delimited list of selectors that, on click, will close clearing, + // add 'div.clearing-blackout, div.visible-img' to close on background click + close_selectors : '.clearing-close, div.clearing-blackout', + + // Default to the entire li element. + open_selectors : '', + + // Image will be skipped in carousel. + skip_selector : '', + + touch_label : '', + + // event initializers and locks + init : false, + locked : false + }, + + init : function (scope, method, options) { + var self = this; + Foundation.inherit(this, 'throttle image_loaded'); + + this.bindings(method, options); + + if (self.S(this.scope).is('[' + this.attr_name() + ']')) { + this.assemble(self.S('li', this.scope)); + } else { + self.S('[' + this.attr_name() + ']', this.scope).each(function () { + self.assemble(self.S('li', this)); + }); + } + }, + + events : function (scope) { + var self = this, + S = self.S, + $scroll_container = $('.scroll-container'); + + if ($scroll_container.length > 0) { + this.scope = $scroll_container; + } + + S(this.scope) + .off('.clearing') + .on('click.fndtn.clearing', 'ul[' + this.attr_name() + '] li ' + this.settings.open_selectors, + function (e, current, target) { + var current = current || S(this), + target = target || current, + next = current.next('li'), + settings = current.closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init'), + image = S(e.target); + + e.preventDefault(); + + if (!settings) { + self.init(); + settings = current.closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init'); + } + + // if clearing is open and the current image is + // clicked, go to the next image in sequence + if (target.hasClass('visible') && + current[0] === target[0] && + next.length > 0 && self.is_open(current)) { + target = next; + image = S('img', target); + } + + // set current and target to the clicked li if not otherwise defined. + self.open(image, current, target); + self.update_paddles(target); + }) + + .on('click.fndtn.clearing', '.clearing-main-next', + function (e) { self.nav(e, 'next') }) + .on('click.fndtn.clearing', '.clearing-main-prev', + function (e) { self.nav(e, 'prev') }) + .on('click.fndtn.clearing', this.settings.close_selectors, + function (e) { Foundation.libs.clearing.close(e, this) }); + + $(document).on('keydown.fndtn.clearing', + function (e) { self.keydown(e) }); + + S(window).off('.clearing').on('resize.fndtn.clearing', + function () { self.resize() }); + + this.swipe_events(scope); + }, + + swipe_events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .on('touchstart.fndtn.clearing', '.visible-img', function(e) { + if (!e.touches) { e = e.originalEvent; } + var data = { + start_page_x: e.touches[0].pageX, + start_page_y: e.touches[0].pageY, + start_time: (new Date()).getTime(), + delta_x: 0, + is_scrolling: undefined + }; + + S(this).data('swipe-transition', data); + e.stopPropagation(); + }) + .on('touchmove.fndtn.clearing', '.visible-img', function(e) { + if (!e.touches) { e = e.originalEvent; } + // Ignore pinch/zoom events + if(e.touches.length > 1 || e.scale && e.scale !== 1) return; + + var data = S(this).data('swipe-transition'); + + if (typeof data === 'undefined') { + data = {}; + } + + data.delta_x = e.touches[0].pageX - data.start_page_x; + + if (Foundation.rtl) { + data.delta_x = -data.delta_x; + } + + if (typeof data.is_scrolling === 'undefined') { + data.is_scrolling = !!( data.is_scrolling || Math.abs(data.delta_x) < Math.abs(e.touches[0].pageY - data.start_page_y) ); + } + + if (!data.is_scrolling && !data.active) { + e.preventDefault(); + var direction = (data.delta_x < 0) ? 'next' : 'prev'; + data.active = true; + self.nav(e, direction); + } + }) + .on('touchend.fndtn.clearing', '.visible-img', function(e) { + S(this).data('swipe-transition', {}); + e.stopPropagation(); + }); + }, + + assemble : function ($li) { + var $el = $li.parent(); + + if ($el.parent().hasClass('carousel')) { + return; + } + + $el.after('<div id="foundationClearingHolder"></div>'); + + var grid = $el.detach(), + grid_outerHTML = ''; + + if (grid[0] == null) { + return; + } else { + grid_outerHTML = grid[0].outerHTML; + } + + var holder = this.S('#foundationClearingHolder'), + settings = $el.data(this.attr_name(true) + '-init'), + data = { + grid: '<div class="carousel">' + grid_outerHTML + '</div>', + viewing: settings.templates.viewing + }, + wrapper = '<div class="clearing-assembled"><div>' + data.viewing + + data.grid + '</div></div>', + touch_label = this.settings.touch_label; + + if (Modernizr.touch) { + wrapper = $(wrapper).find('.clearing-touch-label').html(touch_label).end(); + } + + holder.after(wrapper).remove(); + }, + + open : function ($image, current, target) { + var self = this, + body = $(document.body), + root = target.closest('.clearing-assembled'), + container = self.S('div', root).first(), + visible_image = self.S('.visible-img', container), + image = self.S('img', visible_image).not($image), + label = self.S('.clearing-touch-label', container), + error = false; + + // Event to disable scrolling on touch devices when Clearing is activated + $('body').on('touchmove',function(e){ + e.preventDefault(); + }); + + image.error(function () { + error = true; + }); + + function startLoad() { + setTimeout(function () { + this.image_loaded(image, function () { + if (image.outerWidth() === 1 && !error) { + startLoad.call(this); + } else { + cb.call(this, image); + } + }.bind(this)); + }.bind(this), 100); + } + + function cb (image) { + var $image = $(image); + $image.css('visibility', 'visible'); + // toggle the gallery + body.css('overflow', 'hidden'); + root.addClass('clearing-blackout'); + container.addClass('clearing-container'); + visible_image.show(); + this.fix_height(target) + .caption(self.S('.clearing-caption', visible_image), self.S('img', target)) + .center_and_label(image, label) + .shift(current, target, function () { + target.closest('li').siblings().removeClass('visible'); + target.closest('li').addClass('visible'); + }); + visible_image.trigger('opened.fndtn.clearing') + } + + if (!this.locked()) { + visible_image.trigger('open.fndtn.clearing'); + // set the image to the selected thumbnail + image + .attr('src', this.load($image)) + .css('visibility', 'hidden'); + + startLoad.call(this); + } + }, + + close : function (e, el) { + e.preventDefault(); + + var root = (function (target) { + if (/blackout/.test(target.selector)) { + return target; + } else { + return target.closest('.clearing-blackout'); + } + }($(el))), + body = $(document.body), container, visible_image; + + if (el === e.target && root) { + body.css('overflow', ''); + container = $('div', root).first(); + visible_image = $('.visible-img', container); + visible_image.trigger('close.fndtn.clearing'); + this.settings.prev_index = 0; + $('ul[' + this.attr_name() + ']', root) + .attr('style', '').closest('.clearing-blackout') + .removeClass('clearing-blackout'); + container.removeClass('clearing-container'); + visible_image.hide(); + visible_image.trigger('closed.fndtn.clearing'); + } + + // Event to re-enable scrolling on touch devices + $('body').off('touchmove'); + + return false; + }, + + is_open : function (current) { + return current.parent().prop('style').length > 0; + }, + + keydown : function (e) { + var clearing = $('.clearing-blackout ul[' + this.attr_name() + ']'), + NEXT_KEY = this.rtl ? 37 : 39, + PREV_KEY = this.rtl ? 39 : 37, + ESC_KEY = 27; + + if (e.which === NEXT_KEY) this.go(clearing, 'next'); + if (e.which === PREV_KEY) this.go(clearing, 'prev'); + if (e.which === ESC_KEY) this.S('a.clearing-close').trigger('click').trigger('click.fndtn.clearing'); + }, + + nav : function (e, direction) { + var clearing = $('ul[' + this.attr_name() + ']', '.clearing-blackout'); + + e.preventDefault(); + this.go(clearing, direction); + }, + + resize : function () { + var image = $('img', '.clearing-blackout .visible-img'), + label = $('.clearing-touch-label', '.clearing-blackout'); + + if (image.length) { + this.center_and_label(image, label); + image.trigger('resized.fndtn.clearing') + } + }, + + // visual adjustments + fix_height : function (target) { + var lis = target.parent().children(), + self = this; + + lis.each(function () { + var li = self.S(this), + image = li.find('img'); + + if (li.height() > image.outerHeight()) { + li.addClass('fix-height'); + } + }) + .closest('ul') + .width(lis.length * 100 + '%'); + + return this; + }, + + update_paddles : function (target) { + target = target.closest('li'); + var visible_image = target + .closest('.carousel') + .siblings('.visible-img'); + + if (target.next().length > 0) { + this.S('.clearing-main-next', visible_image).removeClass('disabled'); + } else { + this.S('.clearing-main-next', visible_image).addClass('disabled'); + } + + if (target.prev().length > 0) { + this.S('.clearing-main-prev', visible_image).removeClass('disabled'); + } else { + this.S('.clearing-main-prev', visible_image).addClass('disabled'); + } + }, + + center_and_label : function (target, label) { + if (!this.rtl) { + target.css({ + marginLeft : -(target.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2) + }); + + if (label.length > 0) { + label.css({ + marginLeft : -(label.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2)-label.outerHeight()-10 + }); + } + } else { + target.css({ + marginRight : -(target.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2), + left: 'auto', + right: '50%' + }); + + if (label.length > 0) { + label.css({ + marginRight : -(label.outerWidth() / 2), + marginTop : -(target.outerHeight() / 2)-label.outerHeight()-10, + left: 'auto', + right: '50%' + }); + } + } + return this; + }, + + // image loading and preloading + + load : function ($image) { + var href; + + if ($image[0].nodeName === "A") { + href = $image.attr('href'); + } else { + href = $image.parent().attr('href'); + } + + this.preload($image); + + if (href) return href; + return $image.attr('src'); + }, + + preload : function ($image) { + this + .img($image.closest('li').next()) + .img($image.closest('li').prev()); + }, + + img : function (img) { + if (img.length) { + var new_img = new Image(), + new_a = this.S('a', img); + + if (new_a.length) { + new_img.src = new_a.attr('href'); + } else { + new_img.src = this.S('img', img).attr('src'); + } + } + return this; + }, + + // image caption + + caption : function (container, $image) { + var caption = $image.attr('data-caption'); + + if (caption) { + container + .html(caption) + .show(); + } else { + container + .text('') + .hide(); + } + return this; + }, + + // directional methods + + go : function ($ul, direction) { + var current = this.S('.visible', $ul), + target = current[direction](); + + // Check for skip selector. + if (this.settings.skip_selector && target.find(this.settings.skip_selector).length != 0) { + target = target[direction](); + } + + if (target.length) { + this.S('img', target) + .trigger('click', [current, target]).trigger('click.fndtn.clearing', [current, target]) + .trigger('change.fndtn.clearing'); + } + }, + + shift : function (current, target, callback) { + var clearing = target.parent(), + old_index = this.settings.prev_index || target.index(), + direction = this.direction(clearing, current, target), + dir = this.rtl ? 'right' : 'left', + left = parseInt(clearing.css('left'), 10), + width = target.outerWidth(), + skip_shift; + + var dir_obj = {}; + + // we use jQuery animate instead of CSS transitions because we + // need a callback to unlock the next animation + // needs support for RTL ** + if (target.index() !== old_index && !/skip/.test(direction)){ + if (/left/.test(direction)) { + this.lock(); + dir_obj[dir] = left + width; + clearing.animate(dir_obj, 300, this.unlock()); + } else if (/right/.test(direction)) { + this.lock(); + dir_obj[dir] = left - width; + clearing.animate(dir_obj, 300, this.unlock()); + } + } else if (/skip/.test(direction)) { + // the target image is not adjacent to the current image, so + // do we scroll right or not + skip_shift = target.index() - this.settings.up_count; + this.lock(); + + if (skip_shift > 0) { + dir_obj[dir] = -(skip_shift * width); + clearing.animate(dir_obj, 300, this.unlock()); + } else { + dir_obj[dir] = 0; + clearing.animate(dir_obj, 300, this.unlock()); + } + } + + callback(); + }, + + direction : function ($el, current, target) { + var lis = this.S('li', $el), + li_width = lis.outerWidth() + (lis.outerWidth() / 4), + up_count = Math.floor(this.S('.clearing-container').outerWidth() / li_width) - 1, + target_index = lis.index(target), + response; + + this.settings.up_count = up_count; + + if (this.adjacent(this.settings.prev_index, target_index)) { + if ((target_index > up_count) && target_index > this.settings.prev_index) { + response = 'right'; + } else if ((target_index > up_count - 1) && target_index <= this.settings.prev_index) { + response = 'left'; + } else { + response = false; + } + } else { + response = 'skip'; + } + + this.settings.prev_index = target_index; + + return response; + }, + + adjacent : function (current_index, target_index) { + for (var i = target_index + 1; i >= target_index - 1; i--) { + if (i === current_index) return true; + } + return false; + }, + + // lock management + + lock : function () { + this.settings.locked = true; + }, + + unlock : function () { + this.settings.locked = false; + }, + + locked : function () { + return this.settings.locked; + }, + + off : function () { + this.S(this.scope).off('.fndtn.clearing'); + this.S(window).off('.fndtn.clearing'); + }, + + reflow : function () { + this.init(); + } + }; + +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.dropdown.js b/resources/foundation/js/foundation/foundation.dropdown.js new file mode 100644 index 0000000..6a4bf6e --- /dev/null +++ b/resources/foundation/js/foundation/foundation.dropdown.js @@ -0,0 +1,326 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.dropdown = { + name : 'dropdown', + + version : '5.4.7', + + settings : { + active_class: 'open', + disabled_class: 'disabled', + mega_class: 'mega', + align: 'bottom', + is_hover: false, + opened: function(){}, + closed: function(){} + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle'); + + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .off('.dropdown') + .on('click.fndtn.dropdown', '[' + this.attr_name() + ']', function (e) { + var settings = S(this).data(self.attr_name(true) + '-init') || self.settings; + if (!settings.is_hover || Modernizr.touch) { + e.preventDefault(); + self.toggle($(this)); + } + }) + .on('mouseenter.fndtn.dropdown', '[' + this.attr_name() + '], [' + this.attr_name() + '-content]', function (e) { + var $this = S(this), + dropdown, + target; + + clearTimeout(self.timeout); + + if ($this.data(self.data_attr())) { + dropdown = S('#' + $this.data(self.data_attr())); + target = $this; + } else { + dropdown = $this; + target = S("[" + self.attr_name() + "='" + dropdown.attr('id') + "']"); + } + + var settings = target.data(self.attr_name(true) + '-init') || self.settings; + + if(S(e.target).data(self.data_attr()) && settings.is_hover) { + self.closeall.call(self); + } + + if (settings.is_hover) self.open.apply(self, [dropdown, target]); + }) + .on('mouseleave.fndtn.dropdown', '[' + this.attr_name() + '], [' + this.attr_name() + '-content]', function (e) { + var $this = S(this); + self.timeout = setTimeout(function () { + if ($this.data(self.data_attr())) { + var settings = $this.data(self.data_attr(true) + '-init') || self.settings; + if (settings.is_hover) self.close.call(self, S('#' + $this.data(self.data_attr()))); + } else { + var target = S('[' + self.attr_name() + '="' + S(this).attr('id') + '"]'), + settings = target.data(self.attr_name(true) + '-init') || self.settings; + if (settings.is_hover) self.close.call(self, $this); + } + }.bind(this), 150); + }) + .on('click.fndtn.dropdown', function (e) { + var parent = S(e.target).closest('[' + self.attr_name() + '-content]'); + + if (S(e.target).closest('[' + self.attr_name() + ']').length > 0) { + return; + } + if (!(S(e.target).data('revealId')) && + (parent.length > 0 && (S(e.target).is('[' + self.attr_name() + '-content]') || + $.contains(parent.first()[0], e.target)))) { + e.stopPropagation(); + return; + } + + self.close.call(self, S('[' + self.attr_name() + '-content]')); + }) + .on('opened.fndtn.dropdown', '[' + self.attr_name() + '-content]', function () { + self.settings.opened.call(this); + }) + .on('closed.fndtn.dropdown', '[' + self.attr_name() + '-content]', function () { + self.settings.closed.call(this); + }); + + S(window) + .off('.dropdown') + .on('resize.fndtn.dropdown', self.throttle(function () { + self.resize.call(self); + }, 50)); + + this.resize(); + }, + + close: function (dropdown) { + var self = this; + dropdown.each(function () { + var original_target = $('[' + self.attr_name() + '=' + dropdown[0].id + ']') || $('aria-controls=' + dropdown[0].id+ ']'); + original_target.attr('aria-expanded', "false"); + if (self.S(this).hasClass(self.settings.active_class)) { + self.S(this) + .css(Foundation.rtl ? 'right':'left', '-99999px') + .attr('aria-hidden', "true") + .removeClass(self.settings.active_class) + .prev('[' + self.attr_name() + ']') + .removeClass(self.settings.active_class) + .removeData('target'); + + self.S(this).trigger('closed').trigger('closed.fndtn.dropdown', [dropdown]); + } + }); + }, + + closeall: function() { + var self = this; + $.each(self.S('[' + this.attr_name() + '-content]'), function() { + self.close.call(self, self.S(this)); + }); + }, + + open: function (dropdown, target) { + this + .css(dropdown + .addClass(this.settings.active_class), target); + dropdown.prev('[' + this.attr_name() + ']').addClass(this.settings.active_class); + dropdown.data('target', target.get(0)).trigger('opened').trigger('opened.fndtn.dropdown', [dropdown, target]); + dropdown.attr('aria-hidden', 'false'); + target.attr('aria-expanded', 'true'); + dropdown.focus(); + }, + + data_attr: function () { + if (this.namespace.length > 0) { + return this.namespace + '-' + this.name; + } + + return this.name; + }, + + toggle : function (target) { + if (target.hasClass(this.settings.disabled_class)) { + return; + } + var dropdown = this.S('#' + target.data(this.data_attr())); + if (dropdown.length === 0) { + // No dropdown found, not continuing + return; + } + + this.close.call(this, this.S('[' + this.attr_name() + '-content]').not(dropdown)); + + if (dropdown.hasClass(this.settings.active_class)) { + this.close.call(this, dropdown); + if (dropdown.data('target') !== target.get(0)) + this.open.call(this, dropdown, target); + } else { + this.open.call(this, dropdown, target); + } + }, + + resize : function () { + var dropdown = this.S('[' + this.attr_name() + '-content].open'), + target = this.S("[" + this.attr_name() + "='" + dropdown.attr('id') + "']"); + + if (dropdown.length && target.length) { + this.css(dropdown, target); + } + }, + + css : function (dropdown, target) { + var left_offset = Math.max((target.width() - dropdown.width()) / 2, 8), + settings = target.data(this.attr_name(true) + '-init') || this.settings; + + this.clear_idx(); + + if (this.small()) { + var p = this.dirs.bottom.call(dropdown, target, settings); + + dropdown.attr('style', '').removeClass('drop-left drop-right drop-top').css({ + position : 'absolute', + width: '95%', + 'max-width': 'none', + top: p.top + }); + + dropdown.css(Foundation.rtl ? 'right':'left', left_offset); + } else { + + this.style(dropdown, target, settings); + } + + return dropdown; + }, + + style : function (dropdown, target, settings) { + var css = $.extend({position: 'absolute'}, + this.dirs[settings.align].call(dropdown, target, settings)); + + dropdown.attr('style', '').css(css); + }, + + // return CSS property object + // `this` is the dropdown + dirs : { + // Calculate target offset + _base : function (t) { + var o_p = this.offsetParent(), + o = o_p.offset(), + p = t.offset(); + + p.top -= o.top; + p.left -= o.left; + + return p; + }, + top: function (t, s) { + var self = Foundation.libs.dropdown, + p = self.dirs._base.call(this, t); + + this.addClass('drop-top'); + + if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) { + self.adjust_pip(this,t,s,p); + } + + if (Foundation.rtl) { + return {left: p.left - this.outerWidth() + t.outerWidth(), + top: p.top - this.outerHeight()}; + } + + return {left: p.left, top: p.top - this.outerHeight()}; + }, + bottom: function (t,s) { + var self = Foundation.libs.dropdown, + p = self.dirs._base.call(this, t); + + if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) { + self.adjust_pip(this,t,s,p); + } + + if (self.rtl) { + return {left: p.left - this.outerWidth() + t.outerWidth(), top: p.top + t.outerHeight()}; + } + + return {left: p.left, top: p.top + t.outerHeight()}; + }, + left: function (t, s) { + var p = Foundation.libs.dropdown.dirs._base.call(this, t); + + this.addClass('drop-left'); + + return {left: p.left - this.outerWidth(), top: p.top}; + }, + right: function (t, s) { + var p = Foundation.libs.dropdown.dirs._base.call(this, t); + + this.addClass('drop-right'); + + return {left: p.left + t.outerWidth(), top: p.top}; + } + }, + + // Insert rule to style psuedo elements + adjust_pip : function (dropdown,target,settings,position) { + var sheet = Foundation.stylesheet, + pip_offset_base = 8; + + if (dropdown.hasClass(settings.mega_class)) { + pip_offset_base = position.left + (target.outerWidth()/2) - 8; + } + else if (this.small()) { + pip_offset_base += position.left - 8; + } + + this.rule_idx = sheet.cssRules.length; + + var sel_before = '.f-dropdown.open:before', + sel_after = '.f-dropdown.open:after', + css_before = 'left: ' + pip_offset_base + 'px;', + css_after = 'left: ' + (pip_offset_base - 1) + 'px;'; + + if (sheet.insertRule) { + sheet.insertRule([sel_before, '{', css_before, '}'].join(' '), this.rule_idx); + sheet.insertRule([sel_after, '{', css_after, '}'].join(' '), this.rule_idx + 1); + } else { + sheet.addRule(sel_before, css_before, this.rule_idx); + sheet.addRule(sel_after, css_after, this.rule_idx + 1); + } + }, + + // Remove old dropdown rule index + clear_idx : function () { + var sheet = Foundation.stylesheet; + + if (typeof this.rule_idx !== 'undefined') { + sheet.deleteRule(this.rule_idx); + sheet.deleteRule(this.rule_idx); + delete this.rule_idx; + } + }, + + small : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + off: function () { + this.S(this.scope).off('.fndtn.dropdown'); + this.S('html, body').off('.fndtn.dropdown'); + this.S(window).off('.fndtn.dropdown'); + this.S('[data-dropdown-content]').off('.fndtn.dropdown'); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.equalizer.js b/resources/foundation/js/foundation/foundation.equalizer.js new file mode 100644 index 0000000..6995a29 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.equalizer.js @@ -0,0 +1,74 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.equalizer = { + name : 'equalizer', + + version : '5.4.7', + + settings : { + use_tallest: true, + before_height_change: $.noop, + after_height_change: $.noop, + equalize_on_stack: false + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'image_loaded'); + this.bindings(method, options); + this.reflow(); + }, + + events : function () { + this.S(window).off('.equalizer').on('resize.fndtn.equalizer', function(e){ + this.reflow(); + }.bind(this)); + }, + + equalize: function(equalizer) { + var isStacked = false, + vals = equalizer.find('[' + this.attr_name() + '-watch]:visible'), + settings = equalizer.data(this.attr_name(true)+'-init'); + + if (vals.length === 0) return; + var firstTopOffset = vals.first().offset().top; + settings.before_height_change(); + equalizer.trigger('before-height-change').trigger('before-height-change.fndth.equalizer'); + vals.height('inherit'); + vals.each(function(){ + var el = $(this); + if (el.offset().top !== firstTopOffset) { + isStacked = true; + } + }); + + if (settings.equalize_on_stack === false) { + if (isStacked) return; + }; + + var heights = vals.map(function(){ return $(this).outerHeight(false) }).get(); + + if (settings.use_tallest) { + var max = Math.max.apply(null, heights); + vals.css('height', max); + } else { + var min = Math.min.apply(null, heights); + vals.css('height', min); + } + settings.after_height_change(); + equalizer.trigger('after-height-change').trigger('after-height-change.fndtn.equalizer'); + }, + + reflow : function () { + var self = this; + + this.S('[' + this.attr_name() + ']', this.scope).each(function(){ + var $eq_target = $(this); + self.image_loaded(self.S('img', this), function(){ + self.equalize($eq_target) + }); + }); + } + }; +})(jQuery, window, window.document); + diff --git a/resources/foundation/js/foundation/foundation.interchange.js b/resources/foundation/js/foundation/foundation.interchange.js new file mode 100644 index 0000000..a5a1f48 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.interchange.js @@ -0,0 +1,344 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.interchange = { + name : 'interchange', + + version : '5.4.7', + + cache : {}, + + images_loaded : false, + nodes_loaded : false, + + settings : { + load_attr : 'interchange', + + named_queries : { + 'default' : 'only screen', + small : Foundation.media_queries.small, + medium : Foundation.media_queries.medium, + large : Foundation.media_queries.large, + xlarge : Foundation.media_queries.xlarge, + xxlarge: Foundation.media_queries.xxlarge, + 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)' + }, + + directives : { + replace: function (el, path, trigger) { + // The trigger argument, if called within the directive, fires + // an event named after the directive on the element, passing + // any parameters along to the event that you pass to trigger. + // + // ex. trigger(), trigger([a, b, c]), or trigger(a, b, c) + // + // This allows you to bind a callback like so: + // $('#interchangeContainer').on('replace', function (e, a, b, c) { + // console.log($(this).html(), a, b, c); + // }); + + if (/IMG/.test(el[0].nodeName)) { + var orig_path = el[0].src; + + if (new RegExp(path, 'i').test(orig_path)) return; + + el[0].src = path; + + return trigger(el[0].src); + } + var last_path = el.data(this.data_attr + '-last-path'), + self = this; + + if (last_path == path) return; + + if (/\.(gif|jpg|jpeg|tiff|png)([?#].*)?/i.test(path)) { + $(el).css('background-image', 'url('+path+')'); + el.data('interchange-last-path', path); + return trigger(path); + } + + return $.get(path, function (response) { + el.html(response); + el.data(self.data_attr + '-last-path', path); + trigger(); + }); + + } + } + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle random_str'); + + this.data_attr = this.set_data_attr(); + $.extend(true, this.settings, method, options); + this.bindings(method, options); + this.load('images'); + this.load('nodes'); + }, + + get_media_hash : function() { + var mediaHash=''; + for (var queryName in this.settings.named_queries ) { + mediaHash += matchMedia(this.settings.named_queries[queryName]).matches.toString(); + } + return mediaHash; + }, + + events : function () { + var self = this, prevMediaHash; + + $(window) + .off('.interchange') + .on('resize.fndtn.interchange', self.throttle(function () { + var currMediaHash = self.get_media_hash(); + if (currMediaHash !== prevMediaHash) { + self.resize(); + } + prevMediaHash = currMediaHash; + }, 50)); + + return this; + }, + + resize : function () { + var cache = this.cache; + + if(!this.images_loaded || !this.nodes_loaded) { + setTimeout($.proxy(this.resize, this), 50); + return; + } + + for (var uuid in cache) { + if (cache.hasOwnProperty(uuid)) { + var passed = this.results(uuid, cache[uuid]); + + if (passed) { + this.settings.directives[passed + .scenario[1]].call(this, passed.el, passed.scenario[0], function () { + if (arguments[0] instanceof Array) { + var args = arguments[0]; + } else { + var args = Array.prototype.slice.call(arguments, 0); + } + + passed.el.trigger(passed.scenario[1], args); + }); + } + } + } + + }, + + results : function (uuid, scenarios) { + var count = scenarios.length; + + if (count > 0) { + var el = this.S('[' + this.add_namespace('data-uuid') + '="' + uuid + '"]'); + + while (count--) { + var mq, rule = scenarios[count][2]; + if (this.settings.named_queries.hasOwnProperty(rule)) { + mq = matchMedia(this.settings.named_queries[rule]); + } else { + mq = matchMedia(rule); + } + if (mq.matches) { + return {el: el, scenario: scenarios[count]}; + } + } + } + + return false; + }, + + load : function (type, force_update) { + if (typeof this['cached_' + type] === 'undefined' || force_update) { + this['update_' + type](); + } + + return this['cached_' + type]; + }, + + update_images : function () { + var images = this.S('img[' + this.data_attr + ']'), + count = images.length, + i = count, + loaded_count = 0, + data_attr = this.data_attr; + + this.cache = {}; + this.cached_images = []; + this.images_loaded = (count === 0); + + while (i--) { + loaded_count++; + if (images[i]) { + var str = images[i].getAttribute(data_attr) || ''; + + if (str.length > 0) { + this.cached_images.push(images[i]); + } + } + + if (loaded_count === count) { + this.images_loaded = true; + this.enhance('images'); + } + } + + return this; + }, + + update_nodes : function () { + var nodes = this.S('[' + this.data_attr + ']').not('img'), + count = nodes.length, + i = count, + loaded_count = 0, + data_attr = this.data_attr; + + this.cached_nodes = []; + this.nodes_loaded = (count === 0); + + + while (i--) { + loaded_count++; + var str = nodes[i].getAttribute(data_attr) || ''; + + if (str.length > 0) { + this.cached_nodes.push(nodes[i]); + } + + if(loaded_count === count) { + this.nodes_loaded = true; + this.enhance('nodes'); + } + } + + return this; + }, + + enhance : function (type) { + var i = this['cached_' + type].length; + + while (i--) { + this.object($(this['cached_' + type][i])); + } + + return $(window).trigger('resize').trigger('resize.fndtn.interchange'); + }, + + convert_directive : function (directive) { + + var trimmed = this.trim(directive); + + if (trimmed.length > 0) { + return trimmed; + } + + return 'replace'; + }, + + parse_scenario : function (scenario) { + // This logic had to be made more complex since some users were using commas in the url path + // So we cannot simply just split on a comma + var directive_match = scenario[0].match(/(.+),\s*(\w+)\s*$/), + media_query = scenario[1]; + + if (directive_match) { + var path = directive_match[1], + directive = directive_match[2]; + } + else { + var cached_split = scenario[0].split(/,\s*$/), + path = cached_split[0], + directive = ''; + } + + return [this.trim(path), this.convert_directive(directive), this.trim(media_query)]; + }, + + object : function(el) { + var raw_arr = this.parse_data_attr(el), + scenarios = [], + i = raw_arr.length; + + if (i > 0) { + while (i--) { + var split = raw_arr[i].split(/\((.*?)(\))$/); + + if (split.length > 1) { + var params = this.parse_scenario(split); + scenarios.push(params); + } + } + } + + return this.store(el, scenarios); + }, + + store : function (el, scenarios) { + var uuid = this.random_str(), + current_uuid = el.data(this.add_namespace('uuid', true)); + + if (this.cache[current_uuid]) return this.cache[current_uuid]; + + el.attr(this.add_namespace('data-uuid'), uuid); + + return this.cache[uuid] = scenarios; + }, + + trim : function(str) { + + if (typeof str === 'string') { + return $.trim(str); + } + + return str; + }, + + set_data_attr: function (init) { + if (init) { + if (this.namespace.length > 0) { + return this.namespace + '-' + this.settings.load_attr; + } + + return this.settings.load_attr; + } + + if (this.namespace.length > 0) { + return 'data-' + this.namespace + '-' + this.settings.load_attr; + } + + return 'data-' + this.settings.load_attr; + }, + + parse_data_attr : function (el) { + var raw = el.attr(this.attr_name()).split(/\[(.*?)\]/), + i = raw.length, + output = []; + + while (i--) { + if (raw[i].replace(/[\W\d]+/, '').length > 4) { + output.push(raw[i]); + } + } + + return output; + }, + + reflow : function () { + this.load('images', true); + this.load('nodes', true); + } + + }; + +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.joyride.js b/resources/foundation/js/foundation/foundation.joyride.js new file mode 100644 index 0000000..b778b64 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.joyride.js @@ -0,0 +1,917 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + var Modernizr = Modernizr || false; + + Foundation.libs.joyride = { + name : 'joyride', + + version : '5.4.7', + + defaults : { + expose : false, // turn on or off the expose feature + modal : true, // Whether to cover page with modal during the tour + keyboard : true, // enable left, right and esc keystrokes + tip_location : 'bottom', // 'top' or 'bottom' in relation to parent + nub_position : 'auto', // override on a per tooltip bases + scroll_speed : 1500, // Page scrolling speed in milliseconds, 0 = no scroll animation + scroll_animation : 'linear', // supports 'swing' and 'linear', extend with jQuery UI. + timer : 0, // 0 = no timer , all other numbers = timer in milliseconds + start_timer_on_click : true, // true or false - true requires clicking the first button start the timer + start_offset : 0, // the index of the tooltip you want to start on (index of the li) + next_button : true, // true or false to control whether a next button is used + prev_button : true, // true or false to control whether a prev button is used + tip_animation : 'fade', // 'pop' or 'fade' in each tip + pause_after : [], // array of indexes where to pause the tour after + exposed : [], // array of expose elements + tip_animation_fade_speed : 300, // when tipAnimation = 'fade' this is speed in milliseconds for the transition + cookie_monster : false, // true or false to control whether cookies are used + cookie_name : 'joyride', // Name the cookie you'll use + cookie_domain : false, // Will this cookie be attached to a domain, ie. '.notableapp.com' + cookie_expires : 365, // set when you would like the cookie to expire. + tip_container : 'body', // Where will the tip be attached + abort_on_close : true, // When true, the close event will not fire any callback + tip_location_patterns : { + top: ['bottom'], + bottom: [], // bottom should not need to be repositioned + left: ['right', 'top', 'bottom'], + right: ['left', 'top', 'bottom'] + }, + post_ride_callback : function (){}, // A method to call once the tour closes (canceled or complete) + post_step_callback : function (){}, // A method to call after each step + pre_step_callback : function (){}, // A method to call before each step + pre_ride_callback : function (){}, // A method to call before the tour starts (passed index, tip, and cloned exposed element) + post_expose_callback : function (){}, // A method to call after an element has been exposed + template : { // HTML segments for tip layout + link : '<a href="#close" class="joyride-close-tip">×</a>', + timer : '<div class="joyride-timer-indicator-wrap"><span class="joyride-timer-indicator"></span></div>', + tip : '<div class="joyride-tip-guide"><span class="joyride-nub"></span></div>', + wrapper : '<div class="joyride-content-wrapper"></div>', + button : '<a href="#" class="small button joyride-next-tip"></a>', + prev_button : '<a href="#" class="small button joyride-prev-tip"></a>', + modal : '<div class="joyride-modal-bg"></div>', + expose : '<div class="joyride-expose-wrapper"></div>', + expose_cover : '<div class="joyride-expose-cover"></div>' + }, + expose_add_class : '' // One or more space-separated class names to be added to exposed element + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle random_str'); + + this.settings = this.settings || $.extend({}, this.defaults, (options || method)); + + this.bindings(method, options) + }, + + go_next : function() { + if (this.settings.$li.next().length < 1) { + this.end(); + } else if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + this.hide(); + this.show(); + this.startTimer(); + } else { + this.hide(); + this.show(); + } + }, + + go_prev : function() { + if (this.settings.$li.prev().length < 1) { + // Do nothing if there are no prev element + } else if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + this.hide(); + this.show(null, true); + this.startTimer(); + } else { + this.hide(); + this.show(null, true); + } + }, + + events : function () { + var self = this; + + $(this.scope) + .off('.joyride') + .on('click.fndtn.joyride', '.joyride-next-tip, .joyride-modal-bg', function (e) { + e.preventDefault(); + this.go_next() + }.bind(this)) + .on('click.fndtn.joyride', '.joyride-prev-tip', function (e) { + e.preventDefault(); + this.go_prev(); + }.bind(this)) + + .on('click.fndtn.joyride', '.joyride-close-tip', function (e) { + e.preventDefault(); + this.end(this.settings.abort_on_close); + }.bind(this)) + + .on("keyup.fndtn.joyride", function(e) { + // Don't do anything if keystrokes are disabled + // or if the joyride is not being shown + if (!this.settings.keyboard || !this.settings.riding) return; + + switch (e.which) { + case 39: // right arrow + e.preventDefault(); + this.go_next(); + break; + case 37: // left arrow + e.preventDefault(); + this.go_prev(); + break; + case 27: // escape + e.preventDefault(); + this.end(this.settings.abort_on_close); + } + }.bind(this)); + + $(window) + .off('.joyride') + .on('resize.fndtn.joyride', self.throttle(function () { + if ($('[' + self.attr_name() + ']').length > 0 && self.settings.$next_tip && self.settings.riding) { + if (self.settings.exposed.length > 0) { + var $els = $(self.settings.exposed); + + $els.each(function () { + var $this = $(this); + self.un_expose($this); + self.expose($this); + }); + } + + if (self.is_phone()) { + self.pos_phone(); + } else { + self.pos_default(false); + } + } + }, 100)); + }, + + start : function () { + var self = this, + $this = $('[' + this.attr_name() + ']', this.scope), + integer_settings = ['timer', 'scrollSpeed', 'startOffset', 'tipAnimationFadeSpeed', 'cookieExpires'], + int_settings_count = integer_settings.length; + + if (!$this.length > 0) return; + + if (!this.settings.init) this.events(); + + this.settings = $this.data(this.attr_name(true) + '-init'); + + // non configureable settings + this.settings.$content_el = $this; + this.settings.$body = $(this.settings.tip_container); + this.settings.body_offset = $(this.settings.tip_container).position(); + this.settings.$tip_content = this.settings.$content_el.find('> li'); + this.settings.paused = false; + this.settings.attempts = 0; + this.settings.riding = true; + + // can we create cookies? + if (typeof $.cookie !== 'function') { + this.settings.cookie_monster = false; + } + + // generate the tips and insert into dom. + if (!this.settings.cookie_monster || this.settings.cookie_monster && !$.cookie(this.settings.cookie_name)) { + this.settings.$tip_content.each(function (index) { + var $this = $(this); + this.settings = $.extend({}, self.defaults, self.data_options($this)); + + // Make sure that settings parsed from data_options are integers where necessary + var i = int_settings_count; + while (i--) { + self.settings[integer_settings[i]] = parseInt(self.settings[integer_settings[i]], 10); + } + self.create({$li : $this, index : index}); + }); + + // show first tip + if (!this.settings.start_timer_on_click && this.settings.timer > 0) { + this.show('init'); + this.startTimer(); + } else { + this.show('init'); + } + + } + }, + + resume : function () { + this.set_li(); + this.show(); + }, + + tip_template : function (opts) { + var $blank, content; + + opts.tip_class = opts.tip_class || ''; + + $blank = $(this.settings.template.tip).addClass(opts.tip_class); + content = $.trim($(opts.li).html()) + + this.prev_button_text(opts.prev_button_text, opts.index) + + this.button_text(opts.button_text) + + this.settings.template.link + + this.timer_instance(opts.index); + + $blank.append($(this.settings.template.wrapper)); + $blank.first().attr(this.add_namespace('data-index'), opts.index); + $('.joyride-content-wrapper', $blank).append(content); + + return $blank[0]; + }, + + timer_instance : function (index) { + var txt; + + if ((index === 0 && this.settings.start_timer_on_click && this.settings.timer > 0) || this.settings.timer === 0) { + txt = ''; + } else { + txt = $(this.settings.template.timer)[0].outerHTML; + } + return txt; + }, + + button_text : function (txt) { + if (this.settings.tip_settings.next_button) { + txt = $.trim(txt) || 'Next'; + txt = $(this.settings.template.button).append(txt)[0].outerHTML; + } else { + txt = ''; + } + return txt; + }, + + prev_button_text : function (txt, idx) { + if (this.settings.tip_settings.prev_button) { + txt = $.trim(txt) || 'Previous'; + + // Add the disabled class to the button if it's the first element + if (idx == 0) + txt = $(this.settings.template.prev_button).append(txt).addClass('disabled')[0].outerHTML; + else + txt = $(this.settings.template.prev_button).append(txt)[0].outerHTML; + } else { + txt = ''; + } + return txt; + }, + + create : function (opts) { + this.settings.tip_settings = $.extend({}, this.settings, this.data_options(opts.$li)); + var buttonText = opts.$li.attr(this.add_namespace('data-button')) + || opts.$li.attr(this.add_namespace('data-text')), + prevButtonText = opts.$li.attr(this.add_namespace('data-button-prev')) + || opts.$li.attr(this.add_namespace('data-prev-text')), + tipClass = opts.$li.attr('class'), + $tip_content = $(this.tip_template({ + tip_class : tipClass, + index : opts.index, + button_text : buttonText, + prev_button_text : prevButtonText, + li : opts.$li + })); + + $(this.settings.tip_container).append($tip_content); + }, + + show : function (init, is_prev) { + var $timer = null; + + // are we paused? + if (this.settings.$li === undefined + || ($.inArray(this.settings.$li.index(), this.settings.pause_after) === -1)) { + + // don't go to the next li if the tour was paused + if (this.settings.paused) { + this.settings.paused = false; + } else { + this.set_li(init, is_prev); + } + + this.settings.attempts = 0; + + if (this.settings.$li.length && this.settings.$target.length > 0) { + if (init) { //run when we first start + this.settings.pre_ride_callback(this.settings.$li.index(), this.settings.$next_tip); + if (this.settings.modal) { + this.show_modal(); + } + } + + this.settings.pre_step_callback(this.settings.$li.index(), this.settings.$next_tip); + + if (this.settings.modal && this.settings.expose) { + this.expose(); + } + + this.settings.tip_settings = $.extend({}, this.settings, this.data_options(this.settings.$li)); + + this.settings.timer = parseInt(this.settings.timer, 10); + + this.settings.tip_settings.tip_location_pattern = this.settings.tip_location_patterns[this.settings.tip_settings.tip_location]; + + // scroll if not modal + if (!/body/i.test(this.settings.$target.selector)) { + this.scroll_to(); + } + + if (this.is_phone()) { + this.pos_phone(true); + } else { + this.pos_default(true); + } + + $timer = this.settings.$next_tip.find('.joyride-timer-indicator'); + + if (/pop/i.test(this.settings.tip_animation)) { + + $timer.width(0); + + if (this.settings.timer > 0) { + + this.settings.$next_tip.show(); + + setTimeout(function () { + $timer.animate({ + width: $timer.parent().width() + }, this.settings.timer, 'linear'); + }.bind(this), this.settings.tip_animation_fade_speed); + + } else { + this.settings.$next_tip.show(); + + } + + + } else if (/fade/i.test(this.settings.tip_animation)) { + + $timer.width(0); + + if (this.settings.timer > 0) { + + this.settings.$next_tip + .fadeIn(this.settings.tip_animation_fade_speed) + .show(); + + setTimeout(function () { + $timer.animate({ + width: $timer.parent().width() + }, this.settings.timer, 'linear'); + }.bind(this), this.settings.tip_animation_fade_speed); + + } else { + this.settings.$next_tip.fadeIn(this.settings.tip_animation_fade_speed); + } + } + + this.settings.$current_tip = this.settings.$next_tip; + + // skip non-existant targets + } else if (this.settings.$li && this.settings.$target.length < 1) { + + this.show(init, is_prev); + + } else { + + this.end(); + + } + } else { + + this.settings.paused = true; + + } + + }, + + is_phone : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + hide : function () { + if (this.settings.modal && this.settings.expose) { + this.un_expose(); + } + + if (!this.settings.modal) { + $('.joyride-modal-bg').hide(); + } + + // Prevent scroll bouncing...wait to remove from layout + this.settings.$current_tip.css('visibility', 'hidden'); + setTimeout($.proxy(function() { + this.hide(); + this.css('visibility', 'visible'); + }, this.settings.$current_tip), 0); + this.settings.post_step_callback(this.settings.$li.index(), + this.settings.$current_tip); + }, + + set_li : function (init, is_prev) { + if (init) { + this.settings.$li = this.settings.$tip_content.eq(this.settings.start_offset); + this.set_next_tip(); + this.settings.$current_tip = this.settings.$next_tip; + } else { + if (is_prev) + this.settings.$li = this.settings.$li.prev(); + else + this.settings.$li = this.settings.$li.next(); + this.set_next_tip(); + } + + this.set_target(); + }, + + set_next_tip : function () { + this.settings.$next_tip = $(".joyride-tip-guide").eq(this.settings.$li.index()); + this.settings.$next_tip.data('closed', ''); + }, + + set_target : function () { + var cl = this.settings.$li.attr(this.add_namespace('data-class')), + id = this.settings.$li.attr(this.add_namespace('data-id')), + $sel = function () { + if (id) { + return $(document.getElementById(id)); + } else if (cl) { + return $('.' + cl).first(); + } else { + return $('body'); + } + }; + + this.settings.$target = $sel(); + }, + + scroll_to : function () { + var window_half, tipOffset; + + window_half = $(window).height() / 2; + tipOffset = Math.ceil(this.settings.$target.offset().top - window_half + this.settings.$next_tip.outerHeight()); + + if (tipOffset != 0) { + $('html, body').stop().animate({ + scrollTop: tipOffset + }, this.settings.scroll_speed, 'swing'); + } + }, + + paused : function () { + return ($.inArray((this.settings.$li.index() + 1), this.settings.pause_after) === -1); + }, + + restart : function () { + this.hide(); + this.settings.$li = undefined; + this.show('init'); + }, + + pos_default : function (init) { + var $nub = this.settings.$next_tip.find('.joyride-nub'), + nub_width = Math.ceil($nub.outerWidth() / 2), + nub_height = Math.ceil($nub.outerHeight() / 2), + toggle = init || false; + + // tip must not be "display: none" to calculate position + if (toggle) { + this.settings.$next_tip.css('visibility', 'hidden'); + this.settings.$next_tip.show(); + } + + if (!/body/i.test(this.settings.$target.selector)) { + var topAdjustment = this.settings.tip_settings.tipAdjustmentY ? parseInt(this.settings.tip_settings.tipAdjustmentY) : 0, + leftAdjustment = this.settings.tip_settings.tipAdjustmentX ? parseInt(this.settings.tip_settings.tipAdjustmentX) : 0; + + if (this.bottom()) { + if (this.rtl) { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment), + left: this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth() + leftAdjustment}); + } else { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment), + left: this.settings.$target.offset().left + leftAdjustment}); + } + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'top'); + + } else if (this.top()) { + if (this.rtl) { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment), + left: this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth()}); + } else { + this.settings.$next_tip.css({ + top: (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment), + left: this.settings.$target.offset().left + leftAdjustment}); + } + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'bottom'); + + } else if (this.right()) { + + this.settings.$next_tip.css({ + top: this.settings.$target.offset().top + topAdjustment, + left: (this.settings.$target.outerWidth() + this.settings.$target.offset().left + nub_width + leftAdjustment)}); + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'left'); + + } else if (this.left()) { + + this.settings.$next_tip.css({ + top: this.settings.$target.offset().top + topAdjustment, + left: (this.settings.$target.offset().left - this.settings.$next_tip.outerWidth() - nub_width + leftAdjustment)}); + + this.nub_position($nub, this.settings.tip_settings.nub_position, 'right'); + + } + + if (!this.visible(this.corners(this.settings.$next_tip)) && this.settings.attempts < this.settings.tip_settings.tip_location_pattern.length) { + + $nub.removeClass('bottom') + .removeClass('top') + .removeClass('right') + .removeClass('left'); + + this.settings.tip_settings.tip_location = this.settings.tip_settings.tip_location_pattern[this.settings.attempts]; + + this.settings.attempts++; + + this.pos_default(); + + } + + } else if (this.settings.$li.length) { + + this.pos_modal($nub); + + } + + if (toggle) { + this.settings.$next_tip.hide(); + this.settings.$next_tip.css('visibility', 'visible'); + } + + }, + + pos_phone : function (init) { + var tip_height = this.settings.$next_tip.outerHeight(), + tip_offset = this.settings.$next_tip.offset(), + target_height = this.settings.$target.outerHeight(), + $nub = $('.joyride-nub', this.settings.$next_tip), + nub_height = Math.ceil($nub.outerHeight() / 2), + toggle = init || false; + + $nub.removeClass('bottom') + .removeClass('top') + .removeClass('right') + .removeClass('left'); + + if (toggle) { + this.settings.$next_tip.css('visibility', 'hidden'); + this.settings.$next_tip.show(); + } + + if (!/body/i.test(this.settings.$target.selector)) { + + if (this.top()) { + + this.settings.$next_tip.offset({top: this.settings.$target.offset().top - tip_height - nub_height}); + $nub.addClass('bottom'); + + } else { + + this.settings.$next_tip.offset({top: this.settings.$target.offset().top + target_height + nub_height}); + $nub.addClass('top'); + + } + + } else if (this.settings.$li.length) { + this.pos_modal($nub); + } + + if (toggle) { + this.settings.$next_tip.hide(); + this.settings.$next_tip.css('visibility', 'visible'); + } + }, + + pos_modal : function ($nub) { + this.center(); + $nub.hide(); + + this.show_modal(); + }, + + show_modal : function () { + if (!this.settings.$next_tip.data('closed')) { + var joyridemodalbg = $('.joyride-modal-bg'); + if (joyridemodalbg.length < 1) { + $('body').append(this.settings.template.modal).show(); + } + + if (/pop/i.test(this.settings.tip_animation)) { + joyridemodalbg.show(); + } else { + joyridemodalbg.fadeIn(this.settings.tip_animation_fade_speed); + } + } + }, + + expose : function () { + var expose, + exposeCover, + el, + origCSS, + origClasses, + randId = 'expose-' + this.random_str(6); + + if (arguments.length > 0 && arguments[0] instanceof $) { + el = arguments[0]; + } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){ + el = this.settings.$target; + } else { + return false; + } + + if(el.length < 1){ + if(window.console){ + console.error('element not valid', el); + } + return false; + } + + expose = $(this.settings.template.expose); + this.settings.$body.append(expose); + expose.css({ + top: el.offset().top, + left: el.offset().left, + width: el.outerWidth(true), + height: el.outerHeight(true) + }); + + exposeCover = $(this.settings.template.expose_cover); + + origCSS = { + zIndex: el.css('z-index'), + position: el.css('position') + }; + + origClasses = el.attr('class') == null ? '' : el.attr('class'); + + el.css('z-index',parseInt(expose.css('z-index'))+1); + + if (origCSS.position == 'static') { + el.css('position','relative'); + } + + el.data('expose-css',origCSS); + el.data('orig-class', origClasses); + el.attr('class', origClasses + ' ' + this.settings.expose_add_class); + + exposeCover.css({ + top: el.offset().top, + left: el.offset().left, + width: el.outerWidth(true), + height: el.outerHeight(true) + }); + + if (this.settings.modal) this.show_modal(); + + this.settings.$body.append(exposeCover); + expose.addClass(randId); + exposeCover.addClass(randId); + el.data('expose', randId); + this.settings.post_expose_callback(this.settings.$li.index(), this.settings.$next_tip, el); + this.add_exposed(el); + }, + + un_expose : function () { + var exposeId, + el, + expose , + origCSS, + origClasses, + clearAll = false; + + if (arguments.length > 0 && arguments[0] instanceof $) { + el = arguments[0]; + } else if(this.settings.$target && !/body/i.test(this.settings.$target.selector)){ + el = this.settings.$target; + } else { + return false; + } + + if(el.length < 1){ + if (window.console) { + console.error('element not valid', el); + } + return false; + } + + exposeId = el.data('expose'); + expose = $('.' + exposeId); + + if (arguments.length > 1) { + clearAll = arguments[1]; + } + + if (clearAll === true) { + $('.joyride-expose-wrapper,.joyride-expose-cover').remove(); + } else { + expose.remove(); + } + + origCSS = el.data('expose-css'); + + if (origCSS.zIndex == 'auto') { + el.css('z-index', ''); + } else { + el.css('z-index', origCSS.zIndex); + } + + if (origCSS.position != el.css('position')) { + if(origCSS.position == 'static') {// this is default, no need to set it. + el.css('position', ''); + } else { + el.css('position', origCSS.position); + } + } + + origClasses = el.data('orig-class'); + el.attr('class', origClasses); + el.removeData('orig-classes'); + + el.removeData('expose'); + el.removeData('expose-z-index'); + this.remove_exposed(el); + }, + + add_exposed: function(el){ + this.settings.exposed = this.settings.exposed || []; + if (el instanceof $ || typeof el === 'object') { + this.settings.exposed.push(el[0]); + } else if (typeof el == 'string') { + this.settings.exposed.push(el); + } + }, + + remove_exposed: function(el){ + var search, i; + if (el instanceof $) { + search = el[0] + } else if (typeof el == 'string'){ + search = el; + } + + this.settings.exposed = this.settings.exposed || []; + i = this.settings.exposed.length; + + while (i--) { + if (this.settings.exposed[i] == search) { + this.settings.exposed.splice(i, 1); + return; + } + } + }, + + center : function () { + var $w = $(window); + + this.settings.$next_tip.css({ + top : ((($w.height() - this.settings.$next_tip.outerHeight()) / 2) + $w.scrollTop()), + left : ((($w.width() - this.settings.$next_tip.outerWidth()) / 2) + $w.scrollLeft()) + }); + + return true; + }, + + bottom : function () { + return /bottom/i.test(this.settings.tip_settings.tip_location); + }, + + top : function () { + return /top/i.test(this.settings.tip_settings.tip_location); + }, + + right : function () { + return /right/i.test(this.settings.tip_settings.tip_location); + }, + + left : function () { + return /left/i.test(this.settings.tip_settings.tip_location); + }, + + corners : function (el) { + var w = $(window), + window_half = w.height() / 2, + //using this to calculate since scroll may not have finished yet. + tipOffset = Math.ceil(this.settings.$target.offset().top - window_half + this.settings.$next_tip.outerHeight()), + right = w.width() + w.scrollLeft(), + offsetBottom = w.height() + tipOffset, + bottom = w.height() + w.scrollTop(), + top = w.scrollTop(); + + if (tipOffset < top) { + if (tipOffset < 0) { + top = 0; + } else { + top = tipOffset; + } + } + + if (offsetBottom > bottom) { + bottom = offsetBottom; + } + + return [ + el.offset().top < top, + right < el.offset().left + el.outerWidth(), + bottom < el.offset().top + el.outerHeight(), + w.scrollLeft() > el.offset().left + ]; + }, + + visible : function (hidden_corners) { + var i = hidden_corners.length; + + while (i--) { + if (hidden_corners[i]) return false; + } + + return true; + }, + + nub_position : function (nub, pos, def) { + if (pos === 'auto') { + nub.addClass(def); + } else { + nub.addClass(pos); + } + }, + + startTimer : function () { + if (this.settings.$li.length) { + this.settings.automate = setTimeout(function () { + this.hide(); + this.show(); + this.startTimer(); + }.bind(this), this.settings.timer); + } else { + clearTimeout(this.settings.automate); + } + }, + + end : function (abort) { + if (this.settings.cookie_monster) { + $.cookie(this.settings.cookie_name, 'ridden', { expires: this.settings.cookie_expires, domain: this.settings.cookie_domain }); + } + + if (this.settings.timer > 0) { + clearTimeout(this.settings.automate); + } + + if (this.settings.modal && this.settings.expose) { + this.un_expose(); + } + + // Unplug keystrokes listener + $(this.scope).off('keyup.joyride') + + this.settings.$next_tip.data('closed', true); + this.settings.riding = false; + + $('.joyride-modal-bg').hide(); + this.settings.$current_tip.hide(); + + if (typeof abort === 'undefined' || abort === false) { + this.settings.post_step_callback(this.settings.$li.index(), this.settings.$current_tip); + this.settings.post_ride_callback(this.settings.$li.index(), this.settings.$current_tip); + } + + $('.joyride-tip-guide').remove(); + }, + + off : function () { + $(this.scope).off('.joyride'); + $(window).off('.joyride'); + $('.joyride-close-tip, .joyride-next-tip, .joyride-modal-bg').off('.joyride'); + $('.joyride-tip-guide, .joyride-modal-bg').remove(); + clearTimeout(this.settings.automate); + this.settings = {}; + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.js b/resources/foundation/js/foundation/foundation.js new file mode 100644 index 0000000..57f911b --- /dev/null +++ b/resources/foundation/js/foundation/foundation.js @@ -0,0 +1,625 @@ +/* + * Foundation Responsive Library + * http://foundation.zurb.com + * Copyright 2014, ZURB + * Free to use under the MIT license. + * http://www.opensource.org/licenses/mit-license.php +*/ + +(function ($, window, document, undefined) { + 'use strict'; + + var header_helpers = function (class_array) { + var i = class_array.length; + var head = $('head'); + + while (i--) { + if(head.has('.' + class_array[i]).length === 0) { + head.append('<meta class="' + class_array[i] + '" />'); + } + } + }; + + header_helpers([ + 'foundation-mq-small', + 'foundation-mq-medium', + 'foundation-mq-large', + 'foundation-mq-xlarge', + 'foundation-mq-xxlarge', + 'foundation-data-attribute-namespace']); + + // Enable FastClick if present + + $(function() { + if (typeof FastClick !== 'undefined') { + // Don't attach to body if undefined + if (typeof document.body !== 'undefined') { + FastClick.attach(document.body); + } + } + }); + + // private Fast Selector wrapper, + // returns jQuery object. Only use where + // getElementById is not available. + var S = function (selector, context) { + if (typeof selector === 'string') { + if (context) { + var cont; + if (context.jquery) { + cont = context[0]; + if (!cont) return context; + } else { + cont = context; + } + return $(cont.querySelectorAll(selector)); + } + + return $(document.querySelectorAll(selector)); + } + + return $(selector, context); + }; + + // Namespace functions. + + var attr_name = function (init) { + var arr = []; + if (!init) arr.push('data'); + if (this.namespace.length > 0) arr.push(this.namespace); + arr.push(this.name); + + return arr.join('-'); + }; + + var add_namespace = function (str) { + var parts = str.split('-'), + i = parts.length, + arr = []; + + while (i--) { + if (i !== 0) { + arr.push(parts[i]); + } else { + if (this.namespace.length > 0) { + arr.push(this.namespace, parts[i]); + } else { + arr.push(parts[i]); + } + } + } + + return arr.reverse().join('-'); + }; + + // Event binding and data-options updating. + + var bindings = function (method, options) { + var self = this, + should_bind_events = !S(this).data(this.attr_name(true)); + + + if (S(this.scope).is('[' + this.attr_name() +']')) { + S(this.scope).data(this.attr_name(true) + '-init', $.extend({}, this.settings, (options || method), this.data_options(S(this.scope)))); + + if (should_bind_events) { + this.events(this.scope); + } + + } else { + S('[' + this.attr_name() +']', this.scope).each(function () { + var should_bind_events = !S(this).data(self.attr_name(true) + '-init'); + S(this).data(self.attr_name(true) + '-init', $.extend({}, self.settings, (options || method), self.data_options(S(this)))); + + if (should_bind_events) { + self.events(this); + } + }); + } + // # Patch to fix #5043 to move this *after* the if/else clause in order for Backbone and similar frameworks to have improved control over event binding and data-options updating. + if (typeof method === 'string') { + return this[method].call(this, options); + } + + }; + + var single_image_loaded = function (image, callback) { + function loaded () { + callback(image[0]); + } + + function bindLoad () { + this.one('load', loaded); + + if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) { + var src = this.attr( 'src' ), + param = src.match( /\?/ ) ? '&' : '?'; + + param += 'random=' + (new Date()).getTime(); + this.attr('src', src + param); + } + } + + if (!image.attr('src')) { + loaded(); + return; + } + + if (image[0].complete || image[0].readyState === 4) { + loaded(); + } else { + bindLoad.call(image); + } + }; + + /* + https://github.com/paulirish/matchMedia.js + */ + + window.matchMedia = window.matchMedia || (function( doc ) { + + "use strict"; + + var bool, + docElem = doc.documentElement, + refNode = docElem.firstElementChild || docElem.firstChild, + // fakeBody required for <FF4 when executed in <head> + fakeBody = doc.createElement( "body" ), + div = doc.createElement( "div" ); + + div.id = "mq-test-1"; + div.style.cssText = "position:absolute;top:-100em"; + fakeBody.style.background = "none"; + fakeBody.appendChild(div); + + return function (q) { + + div.innerHTML = "­<style media=\"" + q + "\"> #mq-test-1 { width: 42px; }</style>"; + + docElem.insertBefore( fakeBody, refNode ); + bool = div.offsetWidth === 42; + docElem.removeChild( fakeBody ); + + return { + matches: bool, + media: q + }; + + }; + + }( document )); + + /* + * jquery.requestAnimationFrame + * https://github.com/gnarf37/jquery-requestAnimationFrame + * Requires jQuery 1.8+ + * + * Copyright (c) 2012 Corey Frang + * Licensed under the MIT license. + */ + + (function($) { + + // requestAnimationFrame polyfill adapted from Erik Möller + // fixes from Paul Irish and Tino Zijdel + // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ + // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating + + var animating, + lastTime = 0, + vendors = ['webkit', 'moz'], + requestAnimationFrame = window.requestAnimationFrame, + cancelAnimationFrame = window.cancelAnimationFrame, + jqueryFxAvailable = 'undefined' !== typeof jQuery.fx; + + for (; lastTime < vendors.length && !requestAnimationFrame; lastTime++) { + requestAnimationFrame = window[ vendors[lastTime] + "RequestAnimationFrame" ]; + cancelAnimationFrame = cancelAnimationFrame || + window[ vendors[lastTime] + "CancelAnimationFrame" ] || + window[ vendors[lastTime] + "CancelRequestAnimationFrame" ]; + } + + function raf() { + if (animating) { + requestAnimationFrame(raf); + + if (jqueryFxAvailable) { + jQuery.fx.tick(); + } + } + } + + if (requestAnimationFrame) { + // use rAF + window.requestAnimationFrame = requestAnimationFrame; + window.cancelAnimationFrame = cancelAnimationFrame; + + if (jqueryFxAvailable) { + jQuery.fx.timer = function (timer) { + if (timer() && jQuery.timers.push(timer) && !animating) { + animating = true; + raf(); + } + }; + + jQuery.fx.stop = function () { + animating = false; + }; + } + } else { + // polyfill + window.requestAnimationFrame = function (callback) { + var currTime = new Date().getTime(), + timeToCall = Math.max(0, 16 - (currTime - lastTime)), + id = window.setTimeout(function () { + callback(currTime + timeToCall); + }, timeToCall); + lastTime = currTime + timeToCall; + return id; + }; + + window.cancelAnimationFrame = function (id) { + clearTimeout(id); + }; + + } + + }( jQuery )); + + + function removeQuotes (string) { + if (typeof string === 'string' || string instanceof String) { + string = string.replace(/^['\\/"]+|(;\s?})+|['\\/"]+$/g, ''); + } + + return string; + } + + window.Foundation = { + name : 'Foundation', + + version : '5.4.7', + + media_queries : { + small : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + medium : S('.foundation-mq-medium').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + large : S('.foundation-mq-large').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + xlarge: S('.foundation-mq-xlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), + xxlarge: S('.foundation-mq-xxlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, '') + }, + + stylesheet : $('<style></style>').appendTo('head')[0].sheet, + + global: { + namespace: undefined + }, + + init : function (scope, libraries, method, options, response) { + var args = [scope, method, options, response], + responses = []; + + // check RTL + this.rtl = /rtl/i.test(S('html').attr('dir')); + + // set foundation global scope + this.scope = scope || this.scope; + + this.set_namespace(); + + if (libraries && typeof libraries === 'string' && !/reflow/i.test(libraries)) { + if (this.libs.hasOwnProperty(libraries)) { + responses.push(this.init_lib(libraries, args)); + } + } else { + for (var lib in this.libs) { + responses.push(this.init_lib(lib, libraries)); + } + } + + S(window).load(function(){ + S(window) + .trigger('resize.fndtn.clearing') + .trigger('resize.fndtn.dropdown') + .trigger('resize.fndtn.equalizer') + .trigger('resize.fndtn.interchange') + .trigger('resize.fndtn.joyride') + .trigger('resize.fndtn.magellan') + .trigger('resize.fndtn.topbar') + .trigger('resize.fndtn.slider'); + }); + + return scope; + }, + + init_lib : function (lib, args) { + if (this.libs.hasOwnProperty(lib)) { + this.patch(this.libs[lib]); + + if (args && args.hasOwnProperty(lib)) { + if (typeof this.libs[lib].settings !== 'undefined') { + $.extend(true, this.libs[lib].settings, args[lib]); + } + else if (typeof this.libs[lib].defaults !== 'undefined') { + $.extend(true, this.libs[lib].defaults, args[lib]); + } + return this.libs[lib].init.apply(this.libs[lib], [this.scope, args[lib]]); + } + + args = args instanceof Array ? args : new Array(args); // PATCH: added this line + return this.libs[lib].init.apply(this.libs[lib], args); + } + + return function () {}; + }, + + patch : function (lib) { + lib.scope = this.scope; + lib.namespace = this.global.namespace; + lib.rtl = this.rtl; + lib['data_options'] = this.utils.data_options; + lib['attr_name'] = attr_name; + lib['add_namespace'] = add_namespace; + lib['bindings'] = bindings; + lib['S'] = this.utils.S; + }, + + inherit : function (scope, methods) { + var methods_arr = methods.split(' '), + i = methods_arr.length; + + while (i--) { + if (this.utils.hasOwnProperty(methods_arr[i])) { + scope[methods_arr[i]] = this.utils[methods_arr[i]]; + } + } + }, + + set_namespace: function () { + + // Description: + // Don't bother reading the namespace out of the meta tag + // if the namespace has been set globally in javascript + // + // Example: + // Foundation.global.namespace = 'my-namespace'; + // or make it an empty string: + // Foundation.global.namespace = ''; + // + // + + // If the namespace has not been set (is undefined), try to read it out of the meta element. + // Otherwise use the globally defined namespace, even if it's empty ('') + var namespace = ( this.global.namespace === undefined ) ? $('.foundation-data-attribute-namespace').css('font-family') : this.global.namespace; + + // Finally, if the namsepace is either undefined or false, set it to an empty string. + // Otherwise use the namespace value. + this.global.namespace = ( namespace === undefined || /false/i.test(namespace) ) ? '' : namespace; + }, + + libs : {}, + + // methods that can be inherited in libraries + utils : { + + // Description: + // Fast Selector wrapper returns jQuery object. Only use where getElementById + // is not available. + // + // Arguments: + // Selector (String): CSS selector describing the element(s) to be + // returned as a jQuery object. + // + // Scope (String): CSS selector describing the area to be searched. Default + // is document. + // + // Returns: + // Element (jQuery Object): jQuery object containing elements matching the + // selector within the scope. + S : S, + + // Description: + // Executes a function a max of once every n milliseconds + // + // Arguments: + // Func (Function): Function to be throttled. + // + // Delay (Integer): Function execution threshold in milliseconds. + // + // Returns: + // Lazy_function (Function): Function with throttling applied. + 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); + } + }; + }, + + // Description: + // Executes a function when it stops being invoked for n seconds + // Modified version of _.debounce() http://underscorejs.org + // + // Arguments: + // Func (Function): Function to be debounced. + // + // Delay (Integer): Function execution threshold in milliseconds. + // + // Immediate (Bool): Whether the function should be called at the beginning + // of the delay instead of the end. Default is false. + // + // Returns: + // Lazy_function (Function): Function with debouncing applied. + debounce : function (func, delay, immediate) { + var timeout, result; + return function () { + var context = this, args = arguments; + var later = function () { + timeout = null; + if (!immediate) result = func.apply(context, args); + }; + var callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, delay); + if (callNow) result = func.apply(context, args); + return result; + }; + }, + + // Description: + // Parses data-options attribute + // + // Arguments: + // El (jQuery Object): Element to be parsed. + // + // Returns: + // Options (Javascript Object): Contents of the element's data-options + // attribute. + data_options : function (el, data_attr_name) { + data_attr_name = data_attr_name || 'options'; + var opts = {}, ii, p, opts_arr, + data_options = function (el) { + var namespace = Foundation.global.namespace; + + if (namespace.length > 0) { + return el.data(namespace + '-' + data_attr_name); + } + + return el.data(data_attr_name); + }; + + var cached_options = data_options(el); + + if (typeof cached_options === 'object') { + return cached_options; + } + + opts_arr = (cached_options || ':').split(';'); + ii = opts_arr.length; + + function isNumber (o) { + return ! isNaN (o-0) && o !== null && o !== "" && o !== false && o !== true; + } + + function trim (str) { + if (typeof str === 'string') return $.trim(str); + return str; + } + + while (ii--) { + p = opts_arr[ii].split(':'); + p = [p[0], p.slice(1).join(':')]; + + if (/true/i.test(p[1])) p[1] = true; + if (/false/i.test(p[1])) p[1] = false; + if (isNumber(p[1])) { + if (p[1].indexOf('.') === -1) { + p[1] = parseInt(p[1], 10); + } else { + p[1] = parseFloat(p[1]); + } + } + + if (p.length === 2 && p[0].length > 0) { + opts[trim(p[0])] = trim(p[1]); + } + } + + return opts; + }, + + // Description: + // Adds JS-recognizable media queries + // + // Arguments: + // Media (String): Key string for the media query to be stored as in + // Foundation.media_queries + // + // Class (String): Class name for the generated <meta> tag + register_media : function (media, media_class) { + if(Foundation.media_queries[media] === undefined) { + $('head').append('<meta class="' + media_class + '"/>'); + Foundation.media_queries[media] = removeQuotes($('.' + media_class).css('font-family')); + } + }, + + // Description: + // Add custom CSS within a JS-defined media query + // + // Arguments: + // Rule (String): CSS rule to be appended to the document. + // + // Media (String): Optional media query string for the CSS rule to be + // nested under. + add_custom_rule : function (rule, media) { + if (media === undefined && Foundation.stylesheet) { + Foundation.stylesheet.insertRule(rule, Foundation.stylesheet.cssRules.length); + } else { + var query = Foundation.media_queries[media]; + + if (query !== undefined) { + Foundation.stylesheet.insertRule('@media ' + + Foundation.media_queries[media] + '{ ' + rule + ' }'); + } + } + }, + + // Description: + // Performs a callback function when an image is fully loaded + // + // Arguments: + // Image (jQuery Object): Image(s) to check if loaded. + // + // Callback (Function): Function to execute when image is fully loaded. + image_loaded : function (images, callback) { + var self = this, + unloaded = images.length; + + if (unloaded === 0) { + callback(images); + } + + images.each(function () { + single_image_loaded(self.S(this), function () { + unloaded -= 1; + if (unloaded === 0) { + callback(images); + } + }); + }); + }, + + // Description: + // Returns a random, alphanumeric string + // + // Arguments: + // Length (Integer): Length of string to be generated. Defaults to random + // integer. + // + // Returns: + // Rand (String): Pseudo-random, alphanumeric string. + random_str : function () { + if (!this.fidx) this.fidx = 0; + this.prefix = this.prefix || [(this.name || 'F'), (+new Date).toString(36)].join('-'); + + return this.prefix + (this.fidx++).toString(36); + } + } + }; + + $.fn.foundation = function () { + var args = Array.prototype.slice.call(arguments, 0); + + return this.each(function () { + Foundation.init.apply(Foundation, [this].concat(args)); + return this; + }); + }; + +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.magellan.js b/resources/foundation/js/foundation/foundation.magellan.js new file mode 100644 index 0000000..3173d18 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.magellan.js @@ -0,0 +1,189 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs['magellan-expedition'] = { + name : 'magellan-expedition', + + version : '5.4.7', + + settings : { + active_class: 'active', + threshold: 0, // pixels from the top of the expedition for it to become fixes + destination_threshold: 20, // pixels from the top of destination for it to be considered active + throttle_delay: 30, // calculation throttling to increase framerate + fixed_top: 0 // top distance in pixels assigend to the fixed element on scroll + }, + + init : function (scope, method, options) { + Foundation.inherit(this, 'throttle'); + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = self.S, + settings = self.settings; + + // initialize expedition offset + self.set_expedition_position(); + + S(self.scope) + .off('.magellan') + .on('click.fndtn.magellan', '[' + self.add_namespace('data-magellan-arrival') + '] a[href^="#"]', function (e) { + e.preventDefault(); + var expedition = $(this).closest('[' + self.attr_name() + ']'), + settings = expedition.data('magellan-expedition-init'), + hash = this.hash.split('#').join(''), + target = $("a[name='"+hash+"']"); + + if (target.length === 0) { + target = $('#'+hash); + + } + + + // Account for expedition height if fixed position + var scroll_top = target.offset().top - settings.destination_threshold + 1; + scroll_top = scroll_top - expedition.outerHeight(); + + $('html, body').stop().animate({ + 'scrollTop': scroll_top + }, 700, 'swing', function () { + if(history.pushState) { + history.pushState(null, null, '#'+hash); + } + else { + location.hash = '#'+hash; + } + }); + }) + .on('scroll.fndtn.magellan', self.throttle(this.check_for_arrivals.bind(this), settings.throttle_delay)); + + $(window) + .on('resize.fndtn.magellan', self.throttle(this.set_expedition_position.bind(this), settings.throttle_delay)); + }, + + check_for_arrivals : function() { + var self = this; + self.update_arrivals(); + self.update_expedition_positions(); + }, + + set_expedition_position : function() { + var self = this; + $('[' + this.attr_name() + '=fixed]', self.scope).each(function(idx, el) { + var expedition = $(this), + settings = expedition.data('magellan-expedition-init'), + styles = expedition.attr('styles'), // save styles + top_offset, fixed_top; + + expedition.attr('style', ''); + top_offset = expedition.offset().top + settings.threshold; + + //set fixed-top by attribute + fixed_top = parseInt(expedition.data('magellan-fixed-top')); + if(!isNaN(fixed_top)) + self.settings.fixed_top = fixed_top; + + expedition.data(self.data_attr('magellan-top-offset'), top_offset); + expedition.attr('style', styles); + }); + }, + + update_expedition_positions : function() { + var self = this, + window_top_offset = $(window).scrollTop(); + + $('[' + this.attr_name() + '=fixed]', self.scope).each(function() { + var expedition = $(this), + settings = expedition.data('magellan-expedition-init'), + styles = expedition.attr('style'), // save styles + top_offset = expedition.data('magellan-top-offset'); + + //scroll to the top distance + if (window_top_offset+self.settings.fixed_top >= top_offset) { + // Placeholder allows height calculations to be consistent even when + // appearing to switch between fixed/non-fixed placement + var placeholder = expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']'); + if (placeholder.length === 0) { + placeholder = expedition.clone(); + placeholder.removeAttr(self.attr_name()); + placeholder.attr(self.add_namespace('data-magellan-expedition-clone'),''); + expedition.before(placeholder); + } + expedition.css({position:'fixed', top: settings.fixed_top}).addClass('fixed'); + } else { + expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']').remove(); + expedition.attr('style',styles).css('position','').css('top','').removeClass('fixed'); + } + }); + }, + + update_arrivals : function() { + var self = this, + window_top_offset = $(window).scrollTop(); + + $('[' + this.attr_name() + ']', self.scope).each(function() { + var expedition = $(this), + settings = expedition.data(self.attr_name(true) + '-init'), + offsets = self.offsets(expedition, window_top_offset), + arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']'), + active_item = false; + offsets.each(function(idx, item) { + if (item.viewport_offset >= item.top_offset) { + var arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']'); + arrivals.not(item.arrival).removeClass(settings.active_class); + item.arrival.addClass(settings.active_class); + active_item = true; + return true; + } + }); + + if (!active_item) arrivals.removeClass(settings.active_class); + }); + }, + + offsets : function(expedition, window_offset) { + var self = this, + settings = expedition.data(self.attr_name(true) + '-init'), + viewport_offset = window_offset; + + return expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']').map(function(idx, el) { + var name = $(this).data(self.data_attr('magellan-arrival')), + dest = $('[' + self.add_namespace('data-magellan-destination') + '=' + name + ']'); + if (dest.length > 0) { + var top_offset = Math.floor(dest.offset().top - settings.destination_threshold - expedition.outerHeight()); + return { + destination : dest, + arrival : $(this), + top_offset : top_offset, + viewport_offset : viewport_offset + } + } + }).sort(function(a, b) { + if (a.top_offset < b.top_offset) return -1; + if (a.top_offset > b.top_offset) return 1; + return 0; + }); + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + off : function () { + this.S(this.scope).off('.magellan'); + this.S(window).off('.magellan'); + }, + + reflow : function () { + var self = this; + // remove placeholder expeditions used for height calculation purposes + $('[' + self.add_namespace('data-magellan-expedition-clone') + ']', self.scope).remove(); + } + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.offcanvas.js b/resources/foundation/js/foundation/foundation.offcanvas.js new file mode 100644 index 0000000..5da9276 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.offcanvas.js @@ -0,0 +1,152 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.offcanvas = { + name : 'offcanvas', + + version : '5.4.7', + + settings : { + open_method: 'move', + close_on_click: false + }, + + init : function (scope, method, options) { + this.bindings(method, options); + }, + + events : function () { + var self = this, + S = self.S, + move_class = '', + right_postfix = '', + left_postfix = ''; + + if (this.settings.open_method === 'move') { + move_class = 'move-'; + right_postfix = 'right'; + left_postfix = 'left'; + } else if (this.settings.open_method === 'overlap_single') { + move_class = 'offcanvas-overlap-'; + right_postfix = 'right'; + left_postfix = 'left'; + } else if (this.settings.open_method === 'overlap') { + move_class = 'offcanvas-overlap'; + } + + S(this.scope).off('.offcanvas') + .on('click.fndtn.offcanvas', '.left-off-canvas-toggle', function (e) { + self.click_toggle_class(e, move_class + right_postfix); + if (self.settings.open_method !== 'overlap'){ + S(".left-submenu").removeClass(move_class + right_postfix); + } + $('.left-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.left-off-canvas-menu a', function (e) { + var settings = self.get_settings(e); + var parent = S(this).parent(); + + if(settings.close_on_click && !parent.hasClass("has-submenu") && !parent.hasClass("back")){ + self.hide.call(self, move_class + right_postfix, self.get_wrapper(e)); + parent.parent().removeClass(move_class + right_postfix); + }else if(S(this).parent().hasClass("has-submenu")){ + e.preventDefault(); + S(this).siblings(".left-submenu").toggleClass(move_class + right_postfix); + }else if(parent.hasClass("back")){ + e.preventDefault(); + parent.parent().removeClass(move_class + right_postfix); + } + $('.left-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) { + self.click_toggle_class(e, move_class + left_postfix); + if (self.settings.open_method !== 'overlap'){ + S(".right-submenu").removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.right-off-canvas-menu a', function (e) { + var settings = self.get_settings(e); + var parent = S(this).parent(); + + if(settings.close_on_click && !parent.hasClass("has-submenu") && !parent.hasClass("back")){ + self.hide.call(self, move_class + left_postfix, self.get_wrapper(e)); + parent.parent().removeClass(move_class + left_postfix); + }else if(S(this).parent().hasClass("has-submenu")){ + e.preventDefault(); + S(this).siblings(".right-submenu").toggleClass(move_class + left_postfix); + }else if(parent.hasClass("back")){ + e.preventDefault(); + parent.parent().removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) { + self.click_remove_class(e, move_class + left_postfix); + S(".right-submenu").removeClass(move_class + left_postfix); + if (right_postfix){ + self.click_remove_class(e, move_class + right_postfix); + S(".left-submenu").removeClass(move_class + left_postfix); + } + $('.right-off-canvas-toggle').attr('aria-expanded', 'true'); + }) + .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) { + self.click_remove_class(e, move_class + left_postfix); + $('.left-off-canvas-toggle').attr('aria-expanded', 'false'); + if (right_postfix) { + self.click_remove_class(e, move_class + right_postfix); + $('.right-off-canvas-toggle').attr('aria-expanded', "false"); + } + }); + }, + + toggle: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + if ($off_canvas.is('.' + class_name)) { + this.hide(class_name, $off_canvas); + } else { + this.show(class_name, $off_canvas); + } + }, + + show: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + $off_canvas.trigger('open').trigger('open.fndtn.offcanvas'); + $off_canvas.addClass(class_name); + }, + + hide: function(class_name, $off_canvas) { + $off_canvas = $off_canvas || this.get_wrapper(); + $off_canvas.trigger('close').trigger('close.fndtn.offcanvas'); + $off_canvas.removeClass(class_name); + }, + + click_toggle_class: function(e, class_name) { + e.preventDefault(); + var $off_canvas = this.get_wrapper(e); + this.toggle(class_name, $off_canvas); + }, + + click_remove_class: function(e, class_name) { + e.preventDefault(); + var $off_canvas = this.get_wrapper(e); + this.hide(class_name, $off_canvas); + }, + + get_settings: function(e) { + var offcanvas = this.S(e.target).closest('[' + this.attr_name() + ']'); + return offcanvas.data(this.attr_name(true) + '-init') || this.settings; + }, + + get_wrapper: function(e) { + var $off_canvas = this.S(e ? e.target : this.scope).closest('.off-canvas-wrap'); + + if ($off_canvas.length === 0) { + $off_canvas = this.S('.off-canvas-wrap'); + } + return $off_canvas; + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.orbit.js b/resources/foundation/js/foundation/foundation.orbit.js new file mode 100644 index 0000000..a900a16 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.orbit.js @@ -0,0 +1,472 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + var noop = function() {}; + + var Orbit = function(el, settings) { + // Don't reinitialize plugin + if (el.hasClass(settings.slides_container_class)) { + return this; + } + + var self = this, + container, + slides_container = el, + number_container, + bullets_container, + timer_container, + idx = 0, + animate, + timer, + locked = false, + adjust_height_after = false; + + + self.slides = function() { + return slides_container.children(settings.slide_selector); + }; + + self.slides().first().addClass(settings.active_slide_class); + + self.update_slide_number = function(index) { + if (settings.slide_number) { + number_container.find('span:first').text(parseInt(index)+1); + number_container.find('span:last').text(self.slides().length); + } + if (settings.bullets) { + bullets_container.children().removeClass(settings.bullets_active_class); + $(bullets_container.children().get(index)).addClass(settings.bullets_active_class); + } + }; + + self.update_active_link = function(index) { + var link = $('[data-orbit-link="'+self.slides().eq(index).attr('data-orbit-slide')+'"]'); + link.siblings().removeClass(settings.bullets_active_class); + link.addClass(settings.bullets_active_class); + }; + + self.build_markup = function() { + slides_container.wrap('<div class="'+settings.container_class+'"></div>'); + container = slides_container.parent(); + slides_container.addClass(settings.slides_container_class); + + if (settings.stack_on_small) { + container.addClass(settings.stack_on_small_class); + } + + if (settings.navigation_arrows) { + container.append($('<a href="#"><span></span></a>').addClass(settings.prev_class)); + container.append($('<a href="#"><span></span></a>').addClass(settings.next_class)); + } + + if (settings.timer) { + timer_container = $('<div>').addClass(settings.timer_container_class); + timer_container.append('<span>'); + timer_container.append($('<div>').addClass(settings.timer_progress_class)); + timer_container.addClass(settings.timer_paused_class); + container.append(timer_container); + } + + if (settings.slide_number) { + number_container = $('<div>').addClass(settings.slide_number_class); + number_container.append('<span></span> ' + settings.slide_number_text + ' <span></span>'); + container.append(number_container); + } + + if (settings.bullets) { + bullets_container = $('<ol>').addClass(settings.bullets_container_class); + container.append(bullets_container); + bullets_container.wrap('<div class="orbit-bullets-container"></div>'); + self.slides().each(function(idx, el) { + var bullet = $('<li>').attr('data-orbit-slide', idx).on('click', self.link_bullet);; + bullets_container.append(bullet); + }); + } + + }; + + self._goto = function(next_idx, start_timer) { + // if (locked) {return false;} + if (next_idx === idx) {return false;} + if (typeof timer === 'object') {timer.restart();} + var slides = self.slides(); + + var dir = 'next'; + locked = true; + if (next_idx < idx) {dir = 'prev';} + if (next_idx >= slides.length) { + if (!settings.circular) return false; + next_idx = 0; + } else if (next_idx < 0) { + if (!settings.circular) return false; + next_idx = slides.length - 1; + } + + var current = $(slides.get(idx)); + var next = $(slides.get(next_idx)); + + current.css('zIndex', 2); + current.removeClass(settings.active_slide_class); + next.css('zIndex', 4).addClass(settings.active_slide_class); + + slides_container.trigger('before-slide-change.fndtn.orbit'); + settings.before_slide_change(); + self.update_active_link(next_idx); + + var callback = function() { + var unlock = function() { + idx = next_idx; + locked = false; + if (start_timer === true) {timer = self.create_timer(); timer.start();} + self.update_slide_number(idx); + slides_container.trigger('after-slide-change.fndtn.orbit',[{slide_number: idx, total_slides: slides.length}]); + settings.after_slide_change(idx, slides.length); + }; + if (slides_container.height() != next.height() && settings.variable_height) { + slides_container.animate({'height': next.height()}, 250, 'linear', unlock); + } else { + unlock(); + } + }; + + if (slides.length === 1) {callback(); return false;} + + var start_animation = function() { + if (dir === 'next') {animate.next(current, next, callback);} + if (dir === 'prev') {animate.prev(current, next, callback);} + }; + + if (next.height() > slides_container.height() && settings.variable_height) { + slides_container.animate({'height': next.height()}, 250, 'linear', start_animation); + } else { + start_animation(); + } + }; + + self.next = function(e) { + e.stopImmediatePropagation(); + e.preventDefault(); + self._goto(idx + 1); + }; + + self.prev = function(e) { + e.stopImmediatePropagation(); + e.preventDefault(); + self._goto(idx - 1); + }; + + self.link_custom = function(e) { + e.preventDefault(); + var link = $(this).attr('data-orbit-link'); + if ((typeof link === 'string') && (link = $.trim(link)) != "") { + var slide = container.find('[data-orbit-slide='+link+']'); + if (slide.index() != -1) {self._goto(slide.index());} + } + }; + + self.link_bullet = function(e) { + var index = $(this).attr('data-orbit-slide'); + if ((typeof index === 'string') && (index = $.trim(index)) != "") { + if(isNaN(parseInt(index))) + { + var slide = container.find('[data-orbit-slide='+index+']'); + if (slide.index() != -1) {self._goto(slide.index() + 1);} + } + else + { + self._goto(parseInt(index)); + } + } + + } + + self.timer_callback = function() { + self._goto(idx + 1, true); + } + + self.compute_dimensions = function() { + var current = $(self.slides().get(idx)); + var h = current.height(); + if (!settings.variable_height) { + self.slides().each(function(){ + if ($(this).height() > h) { h = $(this).height(); } + }); + } + slides_container.height(h); + }; + + self.create_timer = function() { + var t = new Timer( + container.find('.'+settings.timer_container_class), + settings, + self.timer_callback + ); + return t; + }; + + self.stop_timer = function() { + if (typeof timer === 'object') timer.stop(); + }; + + self.toggle_timer = function() { + var t = container.find('.'+settings.timer_container_class); + if (t.hasClass(settings.timer_paused_class)) { + if (typeof timer === 'undefined') {timer = self.create_timer();} + timer.start(); + } + else { + if (typeof timer === 'object') {timer.stop();} + } + }; + + self.init = function() { + self.build_markup(); + if (settings.timer) { + timer = self.create_timer(); + Foundation.utils.image_loaded(this.slides().children('img'), timer.start); + } + animate = new FadeAnimation(settings, slides_container); + if (settings.animation === 'slide') + animate = new SlideAnimation(settings, slides_container); + + container.on('click', '.'+settings.next_class, self.next); + container.on('click', '.'+settings.prev_class, self.prev); + + if (settings.next_on_click) { + container.on('click', '.'+settings.slides_container_class+' [data-orbit-slide]', self.link_bullet); + } + + container.on('click', self.toggle_timer); + if (settings.swipe) { + container.on('touchstart.fndtn.orbit', function(e) { + if (!e.touches) {e = e.originalEvent;} + var data = { + start_page_x: e.touches[0].pageX, + start_page_y: e.touches[0].pageY, + start_time: (new Date()).getTime(), + delta_x: 0, + is_scrolling: undefined + }; + container.data('swipe-transition', data); + e.stopPropagation(); + }) + .on('touchmove.fndtn.orbit', function(e) { + if (!e.touches) { e = e.originalEvent; } + // Ignore pinch/zoom events + if(e.touches.length > 1 || e.scale && e.scale !== 1) return; + + var data = container.data('swipe-transition'); + if (typeof data === 'undefined') {data = {};} + + data.delta_x = e.touches[0].pageX - data.start_page_x; + + if ( typeof data.is_scrolling === 'undefined') { + data.is_scrolling = !!( data.is_scrolling || Math.abs(data.delta_x) < Math.abs(e.touches[0].pageY - data.start_page_y) ); + } + + if (!data.is_scrolling && !data.active) { + e.preventDefault(); + var direction = (data.delta_x < 0) ? (idx+1) : (idx-1); + data.active = true; + self._goto(direction); + } + }) + .on('touchend.fndtn.orbit', function(e) { + container.data('swipe-transition', {}); + e.stopPropagation(); + }) + } + container.on('mouseenter.fndtn.orbit', function(e) { + if (settings.timer && settings.pause_on_hover) { + self.stop_timer(); + } + }) + .on('mouseleave.fndtn.orbit', function(e) { + if (settings.timer && settings.resume_on_mouseout) { + timer.start(); + } + }); + + $(document).on('click', '[data-orbit-link]', self.link_custom); + $(window).on('load resize', self.compute_dimensions); + Foundation.utils.image_loaded(this.slides().children('img'), self.compute_dimensions); + Foundation.utils.image_loaded(this.slides().children('img'), function() { + container.prev('.'+settings.preloader_class).css('display', 'none'); + self.update_slide_number(0); + self.update_active_link(0); + slides_container.trigger('ready.fndtn.orbit'); + }); + }; + + self.init(); + }; + + var Timer = function(el, settings, callback) { + var self = this, + duration = settings.timer_speed, + progress = el.find('.'+settings.timer_progress_class), + start, + timeout, + left = -1; + + this.update_progress = function(w) { + var new_progress = progress.clone(); + new_progress.attr('style', ''); + new_progress.css('width', w+'%'); + progress.replaceWith(new_progress); + progress = new_progress; + }; + + this.restart = function() { + clearTimeout(timeout); + el.addClass(settings.timer_paused_class); + left = -1; + self.update_progress(0); + }; + + this.start = function() { + if (!el.hasClass(settings.timer_paused_class)) {return true;} + left = (left === -1) ? duration : left; + el.removeClass(settings.timer_paused_class); + start = new Date().getTime(); + progress.animate({'width': '100%'}, left, 'linear'); + timeout = setTimeout(function() { + self.restart(); + callback(); + }, left); + el.trigger('timer-started.fndtn.orbit') + }; + + this.stop = function() { + if (el.hasClass(settings.timer_paused_class)) {return true;} + clearTimeout(timeout); + el.addClass(settings.timer_paused_class); + var end = new Date().getTime(); + left = left - (end - start); + var w = 100 - ((left / duration) * 100); + self.update_progress(w); + el.trigger('timer-stopped.fndtn.orbit'); + }; + }; + + var SlideAnimation = function(settings, container) { + var duration = settings.animation_speed; + var is_rtl = ($('html[dir=rtl]').length === 1); + var margin = is_rtl ? 'marginRight' : 'marginLeft'; + var animMargin = {}; + animMargin[margin] = '0%'; + + this.next = function(current, next, callback) { + current.animate({marginLeft:'-100%'}, duration); + next.animate(animMargin, duration, function() { + current.css(margin, '100%'); + callback(); + }); + }; + + this.prev = function(current, prev, callback) { + current.animate({marginLeft:'100%'}, duration); + prev.css(margin, '-100%'); + prev.animate(animMargin, duration, function() { + current.css(margin, '100%'); + callback(); + }); + }; + }; + + var FadeAnimation = function(settings, container) { + var duration = settings.animation_speed; + var is_rtl = ($('html[dir=rtl]').length === 1); + var margin = is_rtl ? 'marginRight' : 'marginLeft'; + + this.next = function(current, next, callback) { + next.css({'margin':'0%', 'opacity':'0.01'}); + next.animate({'opacity':'1'}, duration, 'linear', function() { + current.css('margin', '100%'); + callback(); + }); + }; + + this.prev = function(current, prev, callback) { + prev.css({'margin':'0%', 'opacity':'0.01'}); + prev.animate({'opacity':'1'}, duration, 'linear', function() { + current.css('margin', '100%'); + callback(); + }); + }; + }; + + + Foundation.libs = Foundation.libs || {}; + + Foundation.libs.orbit = { + name: 'orbit', + + version: '5.4.7', + + settings: { + animation: 'slide', + timer_speed: 10000, + pause_on_hover: true, + resume_on_mouseout: false, + next_on_click: true, + animation_speed: 500, + stack_on_small: false, + navigation_arrows: true, + slide_number: true, + slide_number_text: 'of', + container_class: 'orbit-container', + stack_on_small_class: 'orbit-stack-on-small', + next_class: 'orbit-next', + prev_class: 'orbit-prev', + timer_container_class: 'orbit-timer', + timer_paused_class: 'paused', + timer_progress_class: 'orbit-progress', + slides_container_class: 'orbit-slides-container', + preloader_class: 'preloader', + slide_selector: '*', + bullets_container_class: 'orbit-bullets', + bullets_active_class: 'active', + slide_number_class: 'orbit-slide-number', + caption_class: 'orbit-caption', + active_slide_class: 'active', + orbit_transition_class: 'orbit-transitioning', + bullets: true, + circular: true, + timer: true, + variable_height: false, + swipe: true, + before_slide_change: noop, + after_slide_change: noop + }, + + init : function (scope, method, options) { + var self = this; + this.bindings(method, options); + }, + + events : function (instance) { + var orbit_instance = new Orbit(this.S(instance), this.S(instance).data('orbit-init')); + this.S(instance).data(this.name + '-instance', orbit_instance); + }, + + reflow : function () { + var self = this; + + if (self.S(self.scope).is('[data-orbit]')) { + var $el = self.S(self.scope); + var instance = $el.data(self.name + '-instance'); + instance.compute_dimensions(); + } else { + self.S('[data-orbit]', self.scope).each(function(idx, el) { + var $el = self.S(el); + var opts = self.data_options($el); + var instance = $el.data(self.name + '-instance'); + instance.compute_dimensions(); + }); + } + } + }; + + +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.reveal.js b/resources/foundation/js/foundation/foundation.reveal.js new file mode 100644 index 0000000..04351a9 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.reveal.js @@ -0,0 +1,444 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.reveal = { + name : 'reveal', + + version : '5.4.7', + + locked : false, + + settings : { + animation: 'fadeAndPop', + animation_speed: 250, + close_on_background_click: true, + close_on_esc: true, + dismiss_modal_class: 'close-reveal-modal', + bg_class: 'reveal-modal-bg', + root_element: 'body', + open: function(){}, + opened: function(){}, + close: function(){}, + closed: function(){}, + bg : $('.reveal-modal-bg'), + css : { + open : { + 'opacity': 0, + 'visibility': 'visible', + 'display' : 'block' + }, + close : { + 'opacity': 1, + 'visibility': 'hidden', + 'display': 'none' + } + } + }, + + init : function (scope, method, options) { + $.extend(true, this.settings, method, options); + this.bindings(method, options); + }, + + events : function (scope) { + var self = this, + S = self.S; + + S(this.scope) + .off('.reveal') + .on('click.fndtn.reveal', '[' + this.add_namespace('data-reveal-id') + ']:not([disabled])', function (e) { + e.preventDefault(); + + if (!self.locked) { + var element = S(this), + ajax = element.data(self.data_attr('reveal-ajax')); + + self.locked = true; + + if (typeof ajax === 'undefined') { + self.open.call(self, element); + } else { + var url = ajax === true ? element.attr('href') : ajax; + + self.open.call(self, element, {url: url}); + } + } + }); + + S(document) + .on('click.fndtn.reveal', this.close_targets(), function (e) { + + e.preventDefault(); + + if (!self.locked) { + var settings = S('[' + self.attr_name() + '].open').data(self.attr_name(true) + '-init') || self.settings, + bg_clicked = S(e.target)[0] === S('.' + settings.bg_class)[0]; + + if (bg_clicked) { + if (settings.close_on_background_click) { + e.stopPropagation(); + } else { + return; + } + } + + self.locked = true; + self.close.call(self, bg_clicked ? S('[' + self.attr_name() + '].open') : S(this).closest('[' + self.attr_name() + ']')); + } + }); + + if(S('[' + self.attr_name() + ']', this.scope).length > 0) { + S(this.scope) + // .off('.reveal') + .on('open.fndtn.reveal', this.settings.open) + .on('opened.fndtn.reveal', this.settings.opened) + .on('opened.fndtn.reveal', this.open_video) + .on('close.fndtn.reveal', this.settings.close) + .on('closed.fndtn.reveal', this.settings.closed) + .on('closed.fndtn.reveal', this.close_video); + } else { + S(this.scope) + // .off('.reveal') + .on('open.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.open) + .on('opened.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.opened) + .on('opened.fndtn.reveal', '[' + self.attr_name() + ']', this.open_video) + .on('close.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.close) + .on('closed.fndtn.reveal', '[' + self.attr_name() + ']', this.settings.closed) + .on('closed.fndtn.reveal', '[' + self.attr_name() + ']', this.close_video); + } + + return true; + }, + + // PATCH #3: turning on key up capture only when a reveal window is open + key_up_on : function (scope) { + var self = this; + + // PATCH #1: fixing multiple keyup event trigger from single key press + self.S('body').off('keyup.fndtn.reveal').on('keyup.fndtn.reveal', function ( event ) { + var open_modal = self.S('[' + self.attr_name() + '].open'), + settings = open_modal.data(self.attr_name(true) + '-init') || self.settings ; + // PATCH #2: making sure that the close event can be called only while unlocked, + // so that multiple keyup.fndtn.reveal events don't prevent clean closing of the reveal window. + if ( settings && event.which === 27 && settings.close_on_esc && !self.locked) { // 27 is the keycode for the Escape key + self.close.call(self, open_modal); + } + }); + + return true; + }, + + // PATCH #3: turning on key up capture only when a reveal window is open + key_up_off : function (scope) { + this.S('body').off('keyup.fndtn.reveal'); + return true; + }, + + + open : function (target, ajax_settings) { + var self = this, + modal; + + if (target) { + if (typeof target.selector !== 'undefined') { + // Find the named node; only use the first one found, since the rest of the code assumes there's only one node + modal = self.S('#' + target.data(self.data_attr('reveal-id'))).first(); + } else { + modal = self.S(this.scope); + + ajax_settings = target; + } + } else { + modal = self.S(this.scope); + } + + var settings = modal.data(self.attr_name(true) + '-init'); + settings = settings || this.settings; + + + if (modal.hasClass('open') && target.attr('data-reveal-id') == modal.attr('id')) { + return self.close(modal); + } + + if (!modal.hasClass('open')) { + var open_modal = self.S('[' + self.attr_name() + '].open'); + + if (typeof modal.data('css-top') === 'undefined') { + modal.data('css-top', parseInt(modal.css('top'), 10)) + .data('offset', this.cache_offset(modal)); + } + + this.key_up_on(modal); // PATCH #3: turning on key up capture only when a reveal window is open + modal.trigger('open').trigger('open.fndtn.reveal'); + + if (open_modal.length < 1) { + this.toggle_bg(modal, true); + } + + if (typeof ajax_settings === 'string') { + ajax_settings = { + url: ajax_settings + }; + } + + if (typeof ajax_settings === 'undefined' || !ajax_settings.url) { + if (open_modal.length > 0) { + this.hide(open_modal, settings.css.close); + } + + this.show(modal, settings.css.open); + } else { + var old_success = typeof ajax_settings.success !== 'undefined' ? ajax_settings.success : null; + + $.extend(ajax_settings, { + success: function (data, textStatus, jqXHR) { + if ( $.isFunction(old_success) ) { + old_success(data, textStatus, jqXHR); + } + + modal.html(data); + self.S(modal).foundation('section', 'reflow'); + self.S(modal).children().foundation(); + + if (open_modal.length > 0) { + self.hide(open_modal, settings.css.close); + } + self.show(modal, settings.css.open); + } + }); + + $.ajax(ajax_settings); + } + } + self.S(window).trigger('resize'); + }, + + close : function (modal) { + var modal = modal && modal.length ? modal : this.S(this.scope), + open_modals = this.S('[' + this.attr_name() + '].open'), + settings = modal.data(this.attr_name(true) + '-init') || this.settings; + + if (open_modals.length > 0) { + this.locked = true; + this.key_up_off(modal); // PATCH #3: turning on key up capture only when a reveal window is open + modal.trigger('close').trigger('close.fndtn.reveal'); + this.toggle_bg(modal, false); + this.hide(open_modals, settings.css.close, settings); + } + }, + + close_targets : function () { + var base = '.' + this.settings.dismiss_modal_class; + + if (this.settings.close_on_background_click) { + return base + ', .' + this.settings.bg_class; + } + + return base; + }, + + toggle_bg : function (modal, state) { + if (this.S('.' + this.settings.bg_class).length === 0) { + this.settings.bg = $('<div />', {'class': this.settings.bg_class}) + .appendTo('body').hide(); + } + + var visible = this.settings.bg.filter(':visible').length > 0; + if ( state != visible ) { + if ( state == undefined ? visible : !state ) { + this.hide(this.settings.bg); + } else { + this.show(this.settings.bg); + } + } + }, + + show : function (el, css) { + // is modal + if (css) { + var settings = el.data(this.attr_name(true) + '-init') || this.settings, + root_element = settings.root_element; + + if (el.parent(root_element).length === 0) { + var placeholder = el.wrap('<div style="display: none;" />').parent(); + + el.on('closed.fndtn.reveal.wrapped', function() { + el.detach().appendTo(placeholder); + el.unwrap().unbind('closed.fndtn.reveal.wrapped'); + }); + + el.detach().appendTo(root_element); + } + + var animData = getAnimationData(settings.animation); + if (!animData.animate) { + this.locked = false; + } + if (animData.pop) { + css.top = $(window).scrollTop() - el.data('offset') + 'px'; + var end_css = { + top: $(window).scrollTop() + el.data('css-top') + 'px', + opacity: 1 + }; + + return setTimeout(function () { + return el + .css(css) + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.trigger('opened').trigger('opened.fndtn.reveal'); + }.bind(this)) + .addClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + if (animData.fade) { + css.top = $(window).scrollTop() + el.data('css-top') + 'px'; + var end_css = {opacity: 1}; + + return setTimeout(function () { + return el + .css(css) + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.trigger('opened').trigger('opened.fndtn.reveal'); + }.bind(this)) + .addClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + return el.css(css).show().css({opacity: 1}).addClass('open').trigger('opened').trigger('opened.fndtn.reveal'); + } + + var settings = this.settings; + + // should we animate the background? + if (getAnimationData(settings.animation).fade) { + return el.fadeIn(settings.animation_speed / 2); + } + + this.locked = false; + + return el.show(); + }, + + hide : function (el, css) { + // is modal + if (css) { + var settings = el.data(this.attr_name(true) + '-init'); + settings = settings || this.settings; + + var animData = getAnimationData(settings.animation); + if (!animData.animate) { + this.locked = false; + } + if (animData.pop) { + var end_css = { + top: - $(window).scrollTop() - el.data('offset') + 'px', + opacity: 0 + }; + + return setTimeout(function () { + return el + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.css(css).trigger('closed').trigger('closed.fndtn.reveal'); + }.bind(this)) + .removeClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + if (animData.fade) { + var end_css = {opacity: 0}; + + return setTimeout(function () { + return el + .animate(end_css, settings.animation_speed, 'linear', function () { + this.locked = false; + el.css(css).trigger('closed').trigger('closed.fndtn.reveal'); + }.bind(this)) + .removeClass('open'); + }.bind(this), settings.animation_speed / 2); + } + + return el.hide().css(css).removeClass('open').trigger('closed').trigger('closed.fndtn.reveal'); + } + + var settings = this.settings; + + // should we animate the background? + if (getAnimationData(settings.animation).fade) { + return el.fadeOut(settings.animation_speed / 2); + } + + return el.hide(); + }, + + close_video : function (e) { + var video = $('.flex-video', e.target), + iframe = $('iframe', video); + + if (iframe.length > 0) { + iframe.attr('data-src', iframe[0].src); + iframe.attr('src', iframe.attr('src')); + video.hide(); + } + }, + + open_video : function (e) { + var video = $('.flex-video', e.target), + iframe = video.find('iframe'); + + if (iframe.length > 0) { + var data_src = iframe.attr('data-src'); + if (typeof data_src === 'string') { + iframe[0].src = iframe.attr('data-src'); + } else { + var src = iframe[0].src; + iframe[0].src = undefined; + iframe[0].src = src; + } + video.show(); + } + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + cache_offset : function (modal) { + var offset = modal.show().height() + parseInt(modal.css('top'), 10); + + modal.hide(); + + return offset; + }, + + off : function () { + $(this.scope).off('.fndtn.reveal'); + }, + + reflow : function () {} + }; + + /* + * getAnimationData('popAndFade') // {animate: true, pop: true, fade: true} + * getAnimationData('fade') // {animate: true, pop: false, fade: true} + * getAnimationData('pop') // {animate: true, pop: true, fade: false} + * getAnimationData('foo') // {animate: false, pop: false, fade: false} + * getAnimationData(null) // {animate: false, pop: false, fade: false} + */ + function getAnimationData(str) { + var fade = /fade/i.test(str); + var pop = /pop/i.test(str); + return { + animate: fade || pop, + pop: pop, + fade: fade + }; + } +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.slider.js b/resources/foundation/js/foundation/foundation.slider.js new file mode 100644 index 0000000..1dbe68a --- /dev/null +++ b/resources/foundation/js/foundation/foundation.slider.js @@ -0,0 +1,239 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.slider = { + name : 'slider', + + version : '5.4.7', + + settings: { + start: 0, + end: 100, + step: 1, + initial: null, + display_selector: '', + vertical: false, + on_change: function(){} + }, + + cache : {}, + + init : function (scope, method, options) { + Foundation.inherit(this,'throttle'); + this.bindings(method, options); + this.reflow(); + }, + + events : function() { + var self = this; + + $(this.scope) + .off('.slider') + .on('mousedown.fndtn.slider touchstart.fndtn.slider pointerdown.fndtn.slider', + '[' + self.attr_name() + ']:not(.disabled, [disabled]) .range-slider-handle', function(e) { + if (!self.cache.active) { + e.preventDefault(); + self.set_active_slider($(e.target)); + } + }) + .on('mousemove.fndtn.slider touchmove.fndtn.slider pointermove.fndtn.slider', function(e) { + if (!!self.cache.active) { + e.preventDefault(); + if ($.data(self.cache.active[0], 'settings').vertical) { + var scroll_offset = 0; + if (!e.pageY) { + scroll_offset = window.scrollY; + } + self.calculate_position(self.cache.active, (e.pageY || + e.originalEvent.clientY || + e.originalEvent.touches[0].clientY || + e.currentPoint.y) + + scroll_offset); + } else { + self.calculate_position(self.cache.active, e.pageX || + e.originalEvent.clientX || + e.originalEvent.touches[0].clientX || + e.currentPoint.x); + } + } + }) + .on('mouseup.fndtn.slider touchend.fndtn.slider pointerup.fndtn.slider', function(e) { + self.remove_active_slider(); + }) + .on('change.fndtn.slider', function(e) { + self.settings.on_change(); + }); + + self.S(window) + .on('resize.fndtn.slider', self.throttle(function(e) { + self.reflow(); + }, 300)); + }, + + set_active_slider : function($handle) { + this.cache.active = $handle; + }, + + remove_active_slider : function() { + this.cache.active = null; + }, + + calculate_position : function($handle, cursor_x) { + var self = this, + settings = $.data($handle[0], 'settings'), + handle_l = $.data($handle[0], 'handle_l'), + handle_o = $.data($handle[0], 'handle_o'), + bar_l = $.data($handle[0], 'bar_l'), + bar_o = $.data($handle[0], 'bar_o'); + + requestAnimationFrame(function(){ + var pct; + + if (Foundation.rtl && !settings.vertical) { + pct = self.limit_to(((bar_o+bar_l-cursor_x)/bar_l),0,1); + } else { + pct = self.limit_to(((cursor_x-bar_o)/bar_l),0,1); + } + + pct = settings.vertical ? 1-pct : pct; + + var norm = self.normalized_value(pct, settings.start, settings.end, settings.step); + + self.set_ui($handle, norm); + }); + }, + + set_ui : function($handle, value) { + var settings = $.data($handle[0], 'settings'), + handle_l = $.data($handle[0], 'handle_l'), + bar_l = $.data($handle[0], 'bar_l'), + norm_pct = this.normalized_percentage(value, settings.start, settings.end), + handle_offset = norm_pct*(bar_l-handle_l)-1, + progress_bar_length = norm_pct*100; + + if (Foundation.rtl && !settings.vertical) { + handle_offset = -handle_offset; + } + + handle_offset = settings.vertical ? -handle_offset + bar_l - handle_l + 1 : handle_offset; + this.set_translate($handle, handle_offset, settings.vertical); + + if (settings.vertical) { + $handle.siblings('.range-slider-active-segment').css('height', progress_bar_length + '%'); + } else { + $handle.siblings('.range-slider-active-segment').css('width', progress_bar_length + '%'); + } + + $handle.parent().attr(this.attr_name(), value).trigger('change').trigger('change.fndtn.slider'); + + $handle.parent().children('input[type=hidden]').val(value); + + if (!$handle[0].hasAttribute('aria-valuemin')) { + $handle.attr({ + 'aria-valuemin': settings.start, + 'aria-valuemax': settings.end, + }); + } + $handle.attr('aria-valuenow', value); + + if (settings.display_selector != '') { + $(settings.display_selector).each(function(){ + if (this.hasOwnProperty('value')) { + $(this).val(value); + } else { + $(this).text(value); + } + }); + } + + }, + + normalized_percentage : function(val, start, end) { + return Math.min(1, (val - start)/(end - start)); + }, + + normalized_value : function(val, start, end, step) { + var range = end - start, + point = val*range, + mod = (point-(point%step)) / step, + rem = point % step, + round = ( rem >= step*0.5 ? step : 0); + return (mod*step + round) + start; + }, + + set_translate : function(ele, offset, vertical) { + if (vertical) { + $(ele) + .css('-webkit-transform', 'translateY('+offset+'px)') + .css('-moz-transform', 'translateY('+offset+'px)') + .css('-ms-transform', 'translateY('+offset+'px)') + .css('-o-transform', 'translateY('+offset+'px)') + .css('transform', 'translateY('+offset+'px)'); + } else { + $(ele) + .css('-webkit-transform', 'translateX('+offset+'px)') + .css('-moz-transform', 'translateX('+offset+'px)') + .css('-ms-transform', 'translateX('+offset+'px)') + .css('-o-transform', 'translateX('+offset+'px)') + .css('transform', 'translateX('+offset+'px)'); + } + }, + + limit_to : function(val, min, max) { + return Math.min(Math.max(val, min), max); + }, + + initialize_settings : function(handle) { + var settings = $.extend({}, this.settings, this.data_options($(handle).parent())); + + if (settings.vertical) { + $.data(handle, 'bar_o', $(handle).parent().offset().top); + $.data(handle, 'bar_l', $(handle).parent().outerHeight()); + $.data(handle, 'handle_o', $(handle).offset().top); + $.data(handle, 'handle_l', $(handle).outerHeight()); + } else { + $.data(handle, 'bar_o', $(handle).parent().offset().left); + $.data(handle, 'bar_l', $(handle).parent().outerWidth()); + $.data(handle, 'handle_o', $(handle).offset().left); + $.data(handle, 'handle_l', $(handle).outerWidth()); + } + + $.data(handle, 'bar', $(handle).parent()); + $.data(handle, 'settings', settings); + }, + + set_initial_position : function($ele) { + var settings = $.data($ele.children('.range-slider-handle')[0], 'settings'), + initial = (!!settings.initial ? settings.initial : Math.floor((settings.end-settings.start)*0.5/settings.step)*settings.step+settings.start), + $handle = $ele.children('.range-slider-handle'); + this.set_ui($handle, initial); + }, + + set_value : function(value) { + var self = this; + $('[' + self.attr_name() + ']', this.scope).each(function(){ + $(this).attr(self.attr_name(), value); + }); + if (!!$(this.scope).attr(self.attr_name())) { + $(this.scope).attr(self.attr_name(), value); + } + self.reflow(); + }, + + reflow : function() { + var self = this; + self.S('[' + this.attr_name() + ']').each(function() { + var handle = $(this).children('.range-slider-handle')[0], + val = $(this).attr(self.attr_name()); + self.initialize_settings(handle); + + if (val) { + self.set_ui($(handle), parseFloat(val)); + } else { + self.set_initial_position($(this)); + } + }); + } + }; + +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.tab.js b/resources/foundation/js/foundation/foundation.tab.js new file mode 100644 index 0000000..f01a865 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.tab.js @@ -0,0 +1,217 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.tab = { + name : 'tab', + + version : '5.4.7', + + settings : { + active_class: 'active', + callback : function () {}, + deep_linking: false, + scroll_to_content: true, + is_hover: false + }, + + default_tab_hashes: [], + + init : function (scope, method, options) { + var self = this, + S = this.S; + + this.bindings(method, options); + this.handle_location_hash_change(); + + // Store the default active tabs which will be referenced when the + // location hash is absent, as in the case of navigating the tabs and + // returning to the first viewing via the browser Back button. + S('[' + this.attr_name() + '] > .active > a', this.scope).each(function () { + self.default_tab_hashes.push(this.hash); + }); + }, + + events : function () { + var self = this, + S = this.S; + + var usual_tab_behavior = function (e) { + var settings = S(this).closest('[' + self.attr_name() +']').data(self.attr_name(true) + '-init'); + if (!settings.is_hover || Modernizr.touch) { + e.preventDefault(); + e.stopPropagation(); + self.toggle_active_tab(S(this).parent()); + } + }; + + S(this.scope) + .off('.tab') + // Click event: tab title + .on('focus.fndtn.tab', '[' + this.attr_name() + '] > * > a', usual_tab_behavior ) + .on('click.fndtn.tab', '[' + this.attr_name() + '] > * > a', usual_tab_behavior ) + // Hover event: tab title + .on('mouseenter.fndtn.tab', '[' + this.attr_name() + '] > * > a', function (e) { + var settings = S(this).closest('[' + self.attr_name() +']').data(self.attr_name(true) + '-init'); + if (settings.is_hover) self.toggle_active_tab(S(this).parent()); + }); + + // Location hash change event + S(window).on('hashchange.fndtn.tab', function (e) { + e.preventDefault(); + self.handle_location_hash_change(); + }); + }, + + handle_location_hash_change : function () { + + var self = this, + S = this.S; + + S('[' + this.attr_name() + ']', this.scope).each(function () { + var settings = S(this).data(self.attr_name(true) + '-init'); + if (settings.deep_linking) { + // Match the location hash to a label + var hash; + if (settings.scroll_to_content) { + hash = self.scope.location.hash; + } else { + // prefix the hash to prevent anchor scrolling + hash = self.scope.location.hash.replace('fndtn-', ''); + } + if (hash != '') { + // Check whether the location hash references a tab content div or + // another element on the page (inside or outside the tab content div) + var hash_element = S(hash); + if (hash_element.hasClass('content') && hash_element.parent().hasClass('tabs-content')) { + // Tab content div + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + hash + ']').parent()); + } else { + // Not the tab content div. If inside the tab content, find the + // containing tab and toggle it as active. + var hash_tab_container_id = hash_element.closest('.content').attr('id'); + if (hash_tab_container_id != undefined) { + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=#' + hash_tab_container_id + ']').parent(), hash); + } + } + } else { + // Reference the default tab hashes which were initialized in the init function + for (var ind = 0; ind < self.default_tab_hashes.length; ind++) { + self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + self.default_tab_hashes[ind] + ']').parent()); + } + } + } + }); + }, + + toggle_active_tab: function (tab, location_hash) { + var S = this.S, + tabs = tab.closest('[' + this.attr_name() + ']'), + tab_link = tab.find('a'), + anchor = tab.children('a').first(), + target_hash = '#' + anchor.attr('href').split('#')[1], + target = S(target_hash), + siblings = tab.siblings(), + settings = tabs.data(this.attr_name(true) + '-init'), + interpret_keyup_action = function(e) { + // Light modification of Heydon Pickering's Practical ARIA Examples: http://heydonworks.com/practical_aria_examples/js/a11y.js + + // define current, previous and next (possible) tabs + + var $original = $(this); + var $prev = $(this).parents('li').prev().children('[role="tab"]'); + var $next = $(this).parents('li').next().children('[role="tab"]'); + var $target; + + // find the direction (prev or next) + + switch (e.keyCode) { + case 37: + $target = $prev; + break; + case 39: + $target = $next; + break; + default: + $target = false + break; + } + + if ($target.length) { + $original.attr({ + 'tabindex' : '-1', + 'aria-selected' : null + }); + $target.attr({ + 'tabindex' : '0', + 'aria-selected' : true + }).focus(); + } + + // Hide panels + + $('[role="tabpanel"]') + .attr('aria-hidden', 'true'); + + // Show panel which corresponds to target + + $('#' + $(document.activeElement).attr('href').substring(1)) + .attr('aria-hidden', null); + + }; + + // allow usage of data-tab-content attribute instead of href + if (S(this).data(this.data_attr('tab-content'))) { + target_hash = '#' + S(this).data(this.data_attr('tab-content')).split('#')[1]; + target = S(target_hash); + } + + if (settings.deep_linking) { + + if (settings.scroll_to_content) { + // retain current hash to scroll to content + window.location.hash = location_hash || target_hash; + if (location_hash == undefined || location_hash == target_hash) { + tab.parent()[0].scrollIntoView(); + } else { + S(target_hash)[0].scrollIntoView(); + } + } else { + // prefix the hashes so that the browser doesn't scroll down + if (location_hash != undefined) { + window.location.hash = 'fndtn-' + location_hash.replace('#', ''); + } else { + window.location.hash = 'fndtn-' + target_hash.replace('#', ''); + } + } + } + + // WARNING: The activation and deactivation of the tab content must + // occur after the deep linking in order to properly refresh the browser + // window (notably in Chrome). + // Clean up multiple attr instances to done once + tab.addClass(settings.active_class).triggerHandler('opened'); + tab_link.attr({"aria-selected": "true", tabindex: 0}); + siblings.removeClass(settings.active_class) + siblings.find('a').attr({"aria-selected": "false", tabindex: -1}); + target.siblings().removeClass(settings.active_class).attr({"aria-hidden": "true", tabindex: -1}); + target.addClass(settings.active_class).attr('aria-hidden', 'false').removeAttr("tabindex"); + settings.callback(tab); + target.triggerHandler('toggled', [tab]); + tabs.triggerHandler('toggled', [target]); + + tab_link.off('keydown').on('keydown', interpret_keyup_action ); + }, + + data_attr: function (str) { + if (this.namespace.length > 0) { + return this.namespace + '-' + str; + } + + return str; + }, + + off : function () {}, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.tooltip.js b/resources/foundation/js/foundation/foundation.tooltip.js new file mode 100644 index 0000000..e0c3ef6 --- /dev/null +++ b/resources/foundation/js/foundation/foundation.tooltip.js @@ -0,0 +1,300 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.tooltip = { + name : 'tooltip', + + version : '5.4.7', + + settings : { + additional_inheritable_classes : [], + tooltip_class : '.tooltip', + append_to: 'body', + touch_close_text: 'Tap To Close', + disable_for_touch: false, + hover_delay: 200, + show_on : 'all', + tip_template : function (selector, content) { + return '<span data-selector="' + selector + '" id="' + selector + '" class="' + + Foundation.libs.tooltip.settings.tooltip_class.substring(1) + + '" role="tooltip">' + content + '<span class="nub"></span></span>'; + } + }, + + cache : {}, + + init : function (scope, method, options) { + Foundation.inherit(this, 'random_str'); + this.bindings(method, options); + }, + + should_show: function (target, tip) { + var settings = $.extend({}, this.settings, this.data_options(target)); + + if (settings.show_on === 'all') { + return true; + } else if (this.small() && settings.show_on === 'small') { + return true; + } else if (this.medium() && settings.show_on === 'medium') { + return true; + } else if (this.large() && settings.show_on === 'large') { + return true; + } + return false; + }, + + medium : function () { + return matchMedia(Foundation.media_queries['medium']).matches; + }, + + large : function () { + return matchMedia(Foundation.media_queries['large']).matches; + }, + + events : function (instance) { + var self = this, + S = self.S; + + self.create(this.S(instance)); + + $(this.scope) + .off('.tooltip') + .on('mouseenter.fndtn.tooltip mouseleave.fndtn.tooltip touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', + '[' + this.attr_name() + ']', function (e) { + var $this = S(this), + settings = $.extend({}, self.settings, self.data_options($this)), + is_touch = false; + + if (Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type) && S(e.target).is('a')) { + return false; + } + + if (/mouse/i.test(e.type) && self.ie_touch(e)) return false; + + if ($this.hasClass('open')) { + if (Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) e.preventDefault(); + self.hide($this); + } else { + if (settings.disable_for_touch && Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) { + return; + } else if(!settings.disable_for_touch && Modernizr.touch && /touchstart|MSPointerDown/i.test(e.type)) { + e.preventDefault(); + S(settings.tooltip_class + '.open').hide(); + is_touch = true; + } + + if (/enter|over/i.test(e.type)) { + this.timer = setTimeout(function () { + var tip = self.showTip($this); + }.bind(this), self.settings.hover_delay); + } else if (e.type === 'mouseout' || e.type === 'mouseleave') { + clearTimeout(this.timer); + self.hide($this); + } else { + self.showTip($this); + } + } + }) + .on('mouseleave.fndtn.tooltip touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', '[' + this.attr_name() + '].open', function (e) { + if (/mouse/i.test(e.type) && self.ie_touch(e)) return false; + + if($(this).data('tooltip-open-event-type') == 'touch' && e.type == 'mouseleave') { + return; + } + else if($(this).data('tooltip-open-event-type') == 'mouse' && /MSPointerDown|touchstart/i.test(e.type)) { + self.convert_to_touch($(this)); + } else { + self.hide($(this)); + } + }) + .on('DOMNodeRemoved DOMAttrModified', '[' + this.attr_name() + ']:not(a)', function (e) { + self.hide(S(this)); + }); + }, + + ie_touch : function (e) { + // How do I distinguish between IE11 and Windows Phone 8????? + return false; + }, + + showTip : function ($target) { + var $tip = this.getTip($target); + if (this.should_show($target, $tip)){ + return this.show($target); + } + return; + }, + + getTip : function ($target) { + var selector = this.selector($target), + settings = $.extend({}, this.settings, this.data_options($target)), + tip = null; + + if (selector) { + tip = this.S('span[data-selector="' + selector + '"]' + settings.tooltip_class); + } + + return (typeof tip === 'object') ? tip : false; + }, + + selector : function ($target) { + var id = $target.attr('id'), + dataSelector = $target.attr(this.attr_name()) || $target.attr('data-selector'); + + if ((id && id.length < 1 || !id) && typeof dataSelector != 'string') { + dataSelector = this.random_str(6); + $target + .attr('data-selector', dataSelector) + .attr('aria-describedby', dataSelector); + } + + return (id && id.length > 0) ? id : dataSelector; + }, + + create : function ($target) { + var self = this, + settings = $.extend({}, this.settings, this.data_options($target)), + tip_template = this.settings.tip_template; + + if (typeof settings.tip_template === 'string' && window.hasOwnProperty(settings.tip_template)) { + tip_template = window[settings.tip_template]; + } + + var $tip = $(tip_template(this.selector($target), $('<div></div>').html($target.attr('title')).html())), + classes = this.inheritable_classes($target); + + $tip.addClass(classes).appendTo(settings.append_to); + + if (Modernizr.touch) { + $tip.append('<span class="tap-to-close">'+settings.touch_close_text+'</span>'); + $tip.on('touchstart.fndtn.tooltip MSPointerDown.fndtn.tooltip', function(e) { + self.hide($target); + }); + } + + $target.removeAttr('title').attr('title',''); + }, + + reposition : function (target, tip, classes) { + var width, nub, nubHeight, nubWidth, column, objPos; + + tip.css('visibility', 'hidden').show(); + + width = target.data('width'); + nub = tip.children('.nub'); + nubHeight = nub.outerHeight(); + nubWidth = nub.outerHeight(); + + if (this.small()) { + tip.css({'width' : '100%' }); + } else { + tip.css({'width' : (width) ? width : 'auto'}); + } + + objPos = function (obj, top, right, bottom, left, width) { + return obj.css({ + 'top' : (top) ? top : 'auto', + 'bottom' : (bottom) ? bottom : 'auto', + 'left' : (left) ? left : 'auto', + 'right' : (right) ? right : 'auto' + }).end(); + }; + + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', target.offset().left); + + if (this.small()) { + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', 12.5, $(this.scope).width()); + tip.addClass('tip-override'); + objPos(nub, -nubHeight, 'auto', 'auto', target.offset().left); + } else { + var left = target.offset().left; + if (Foundation.rtl) { + nub.addClass('rtl'); + left = target.offset().left + target.outerWidth() - tip.outerWidth(); + } + objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', left); + tip.removeClass('tip-override'); + if (classes && classes.indexOf('tip-top') > -1) { + if (Foundation.rtl) nub.addClass('rtl'); + objPos(tip, (target.offset().top - tip.outerHeight()), 'auto', 'auto', left) + .removeClass('tip-override'); + } else if (classes && classes.indexOf('tip-left') > -1) { + objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left - tip.outerWidth() - nubHeight)) + .removeClass('tip-override'); + nub.removeClass('rtl'); + } else if (classes && classes.indexOf('tip-right') > -1) { + objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left + target.outerWidth() + nubHeight)) + .removeClass('tip-override'); + nub.removeClass('rtl'); + } + } + + tip.css('visibility', 'visible').hide(); + }, + + small : function () { + return matchMedia(Foundation.media_queries.small).matches && + !matchMedia(Foundation.media_queries.medium).matches; + }, + + inheritable_classes : function ($target) { + var settings = $.extend({}, this.settings, this.data_options($target)), + inheritables = ['tip-top', 'tip-left', 'tip-bottom', 'tip-right', 'radius', 'round'].concat(settings.additional_inheritable_classes), + classes = $target.attr('class'), + filtered = classes ? $.map(classes.split(' '), function (el, i) { + if ($.inArray(el, inheritables) !== -1) { + return el; + } + }).join(' ') : ''; + + return $.trim(filtered); + }, + + convert_to_touch : function($target) { + var self = this, + $tip = self.getTip($target), + settings = $.extend({}, self.settings, self.data_options($target)); + + if ($tip.find('.tap-to-close').length === 0) { + $tip.append('<span class="tap-to-close">'+settings.touch_close_text+'</span>'); + $tip.on('click.fndtn.tooltip.tapclose touchstart.fndtn.tooltip.tapclose MSPointerDown.fndtn.tooltip.tapclose', function(e) { + self.hide($target); + }); + } + + $target.data('tooltip-open-event-type', 'touch'); + }, + + show : function ($target) { + var $tip = this.getTip($target); + + if ($target.data('tooltip-open-event-type') == 'touch') { + this.convert_to_touch($target); + } + + this.reposition($target, $tip, $target.attr('class')); + $target.addClass('open'); + $tip.fadeIn(150); + }, + + hide : function ($target) { + var $tip = this.getTip($target); + + $tip.fadeOut(150, function() { + $tip.find('.tap-to-close').remove(); + $tip.off('click.fndtn.tooltip.tapclose MSPointerDown.fndtn.tapclose'); + $target.removeClass('open'); + }); + }, + + off : function () { + var self = this; + this.S(this.scope).off('.fndtn.tooltip'); + this.S(this.settings.tooltip_class).each(function (i) { + $('[' + self.attr_name() + ']').eq(i).attr('title', $(this).text()); + }).remove(); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/foundation/foundation.topbar.js b/resources/foundation/js/foundation/foundation.topbar.js new file mode 100644 index 0000000..a1543ac --- /dev/null +++ b/resources/foundation/js/foundation/foundation.topbar.js @@ -0,0 +1,445 @@ +;(function ($, window, document, undefined) { + 'use strict'; + + Foundation.libs.topbar = { + name : 'topbar', + + version: '5.4.7', + + settings : { + index : 0, + sticky_class : 'sticky', + custom_back_text: true, + back_text: 'Back', + mobile_show_parent_link: true, + is_hover: true, + scrolltop : true, // jump to top when sticky nav menu toggle is clicked + sticky_on : 'all' + }, + + init : function (section, method, options) { + Foundation.inherit(this, 'add_custom_rule register_media throttle'); + var self = this; + + self.register_media('topbar', 'foundation-mq-topbar'); + + this.bindings(method, options); + + self.S('[' + this.attr_name() + ']', this.scope).each(function () { + var topbar = $(this), + settings = topbar.data(self.attr_name(true) + '-init'), + section = self.S('section, .top-bar-section', this); + topbar.data('index', 0); + var topbarContainer = topbar.parent(); + if (topbarContainer.hasClass('fixed') || self.is_sticky(topbar, topbarContainer, settings) ) { + self.settings.sticky_class = settings.sticky_class; + self.settings.sticky_topbar = topbar; + topbar.data('height', topbarContainer.outerHeight()); + topbar.data('stickyoffset', topbarContainer.offset().top); + } else { + topbar.data('height', topbar.outerHeight()); + } + + if (!settings.assembled) { + self.assemble(topbar); + } + + if (settings.is_hover) { + self.S('.has-dropdown', topbar).addClass('not-click'); + } else { + self.S('.has-dropdown', topbar).removeClass('not-click'); + } + + // Pad body when sticky (scrolled) or fixed. + self.add_custom_rule('.f-topbar-fixed { padding-top: ' + topbar.data('height') + 'px }'); + + if (topbarContainer.hasClass('fixed')) { + self.S('body').addClass('f-topbar-fixed'); + } + }); + + }, + + is_sticky: function (topbar, topbarContainer, settings) { + var sticky = topbarContainer.hasClass(settings.sticky_class); + + if (sticky && settings.sticky_on === 'all') { + return true; + } else if (sticky && this.small() && settings.sticky_on === 'small') { + return (matchMedia(Foundation.media_queries.small).matches && !matchMedia(Foundation.media_queries.medium).matches && + !matchMedia(Foundation.media_queries.large).matches); + //return true; + } else if (sticky && this.medium() && settings.sticky_on === 'medium') { + return (matchMedia(Foundation.media_queries.small).matches && matchMedia(Foundation.media_queries.medium).matches && + !matchMedia(Foundation.media_queries.large).matches); + //return true; + } else if(sticky && this.large() && settings.sticky_on === 'large') { + return (matchMedia(Foundation.media_queries.small).matches && matchMedia(Foundation.media_queries.medium).matches && + matchMedia(Foundation.media_queries.large).matches); + //return true; + } + + return false; + }, + + toggle: function (toggleEl) { + var self = this, + topbar; + + if (toggleEl) { + topbar = self.S(toggleEl).closest('[' + this.attr_name() + ']'); + } else { + topbar = self.S('[' + this.attr_name() + ']'); + } + + var settings = topbar.data(this.attr_name(true) + '-init'); + + var section = self.S('section, .top-bar-section', topbar); + + if (self.breakpoint()) { + if (!self.rtl) { + section.css({left: '0%'}); + $('>.name', section).css({left: '100%'}); + } else { + section.css({right: '0%'}); + $('>.name', section).css({right: '100%'}); + } + + self.S('li.moved', section).removeClass('moved'); + topbar.data('index', 0); + + topbar + .toggleClass('expanded') + .css('height', ''); + } + + if (settings.scrolltop) { + if (!topbar.hasClass('expanded')) { + if (topbar.hasClass('fixed')) { + topbar.parent().addClass('fixed'); + topbar.removeClass('fixed'); + self.S('body').addClass('f-topbar-fixed'); + } + } else if (topbar.parent().hasClass('fixed')) { + if (settings.scrolltop) { + topbar.parent().removeClass('fixed'); + topbar.addClass('fixed'); + self.S('body').removeClass('f-topbar-fixed'); + + window.scrollTo(0,0); + } else { + topbar.parent().removeClass('expanded'); + } + } + } else { + if (self.is_sticky(topbar, topbar.parent(), settings)) { + topbar.parent().addClass('fixed'); + } + + if (topbar.parent().hasClass('fixed')) { + if (!topbar.hasClass('expanded')) { + topbar.removeClass('fixed'); + topbar.parent().removeClass('expanded'); + self.update_sticky_positioning(); + } else { + topbar.addClass('fixed'); + topbar.parent().addClass('expanded'); + self.S('body').addClass('f-topbar-fixed'); + } + } + } + }, + + timer : null, + + events : function (bar) { + var self = this, + S = this.S; + + S(this.scope) + .off('.topbar') + .on('click.fndtn.topbar', '[' + this.attr_name() + '] .toggle-topbar', function (e) { + e.preventDefault(); + self.toggle(this); + }) + .on('click.fndtn.topbar','.top-bar .top-bar-section li a[href^="#"],[' + this.attr_name() + '] .top-bar-section li a[href^="#"]',function (e) { + var li = $(this).closest('li'); + if(self.breakpoint() && !li.hasClass('back') && !li.hasClass('has-dropdown')) + { + self.toggle(); + } + }) + .on('click.fndtn.topbar', '[' + this.attr_name() + '] li.has-dropdown', function (e) { + var li = S(this), + target = S(e.target), + topbar = li.closest('[' + self.attr_name() + ']'), + settings = topbar.data(self.attr_name(true) + '-init'); + + if(target.data('revealId')) { + self.toggle(); + return; + } + + if (self.breakpoint()) return; + if (settings.is_hover && !Modernizr.touch) return; + + e.stopImmediatePropagation(); + + if (li.hasClass('hover')) { + li + .removeClass('hover') + .find('li') + .removeClass('hover'); + + li.parents('li.hover') + .removeClass('hover'); + } else { + li.addClass('hover'); + + $(li).siblings().removeClass('hover'); + + if (target[0].nodeName === 'A' && target.parent().hasClass('has-dropdown')) { + e.preventDefault(); + } + } + }) + .on('click.fndtn.topbar', '[' + this.attr_name() + '] .has-dropdown>a', function (e) { + if (self.breakpoint()) { + + e.preventDefault(); + + var $this = S(this), + topbar = $this.closest('[' + self.attr_name() + ']'), + section = topbar.find('section, .top-bar-section'), + dropdownHeight = $this.next('.dropdown').outerHeight(), + $selectedLi = $this.closest('li'); + + topbar.data('index', topbar.data('index') + 1); + $selectedLi.addClass('moved'); + + if (!self.rtl) { + section.css({left: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({left: 100 * topbar.data('index') + '%'}); + } else { + section.css({right: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({right: 100 * topbar.data('index') + '%'}); + } + + topbar.css('height', $this.siblings('ul').outerHeight(true) + topbar.data('height')); + } + }); + + S(window).off(".topbar").on("resize.fndtn.topbar", self.throttle(function() { + self.resize.call(self); + }, 50)).trigger("resize").trigger("resize.fndtn.topbar").load(function(){ + // Ensure that the offset is calculated after all of the pages resources have loaded + S(this).trigger("resize.fndtn.topbar"); + }); + + S('body').off('.topbar').on('click.fndtn.topbar', function (e) { + var parent = S(e.target).closest('li').closest('li.hover'); + + if (parent.length > 0) { + return; + } + + S('[' + self.attr_name() + '] li.hover').removeClass('hover'); + }); + + // Go up a level on Click + S(this.scope).on('click.fndtn.topbar', '[' + this.attr_name() + '] .has-dropdown .back', function (e) { + e.preventDefault(); + + var $this = S(this), + topbar = $this.closest('[' + self.attr_name() + ']'), + section = topbar.find('section, .top-bar-section'), + settings = topbar.data(self.attr_name(true) + '-init'), + $movedLi = $this.closest('li.moved'), + $previousLevelUl = $movedLi.parent(); + + topbar.data('index', topbar.data('index') - 1); + + if (!self.rtl) { + section.css({left: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({left: 100 * topbar.data('index') + '%'}); + } else { + section.css({right: -(100 * topbar.data('index')) + '%'}); + section.find('>.name').css({right: 100 * topbar.data('index') + '%'}); + } + + if (topbar.data('index') === 0) { + topbar.css('height', ''); + } else { + topbar.css('height', $previousLevelUl.outerHeight(true) + topbar.data('height')); + } + + setTimeout(function () { + $movedLi.removeClass('moved'); + }, 300); + }); + + // Show dropdown menus when their items are focused + S(this.scope).find('.dropdown a') + .focus(function() { + $(this).parents('.has-dropdown').addClass('hover'); + }) + .blur(function() { + $(this).parents('.has-dropdown').removeClass('hover'); + }); + }, + + resize : function () { + var self = this; + self.S('[' + this.attr_name() + ']').each(function () { + var topbar = self.S(this), + settings = topbar.data(self.attr_name(true) + '-init'); + + var stickyContainer = topbar.parent('.' + self.settings.sticky_class); + var stickyOffset; + + if (!self.breakpoint()) { + var doToggle = topbar.hasClass('expanded'); + topbar + .css('height', '') + .removeClass('expanded') + .find('li') + .removeClass('hover'); + + if(doToggle) { + self.toggle(topbar); + } + } + + if(self.is_sticky(topbar, stickyContainer, settings)) { + if(stickyContainer.hasClass('fixed')) { + // Remove the fixed to allow for correct calculation of the offset. + stickyContainer.removeClass('fixed'); + + stickyOffset = stickyContainer.offset().top; + if(self.S(document.body).hasClass('f-topbar-fixed')) { + stickyOffset -= topbar.data('height'); + } + + topbar.data('stickyoffset', stickyOffset); + stickyContainer.addClass('fixed'); + } else { + stickyOffset = stickyContainer.offset().top; + topbar.data('stickyoffset', stickyOffset); + } + } + + }); + }, + + breakpoint : function () { + return !matchMedia(Foundation.media_queries['topbar']).matches; + }, + + small : function () { + return matchMedia(Foundation.media_queries['small']).matches; + }, + + medium : function () { + return matchMedia(Foundation.media_queries['medium']).matches; + }, + + large : function () { + return matchMedia(Foundation.media_queries['large']).matches; + }, + + assemble : function (topbar) { + var self = this, + settings = topbar.data(this.attr_name(true) + '-init'), + section = self.S('section, .top-bar-section', topbar); + + // Pull element out of the DOM for manipulation + section.detach(); + + self.S('.has-dropdown>a', section).each(function () { + var $link = self.S(this), + $dropdown = $link.siblings('.dropdown'), + url = $link.attr('href'), + $titleLi; + + + if (!$dropdown.find('.title.back').length) { + + if (settings.mobile_show_parent_link == true && url) { + $titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5></li><li class="parent-link show-for-small"><a class="parent-link js-generated" href="' + url + '">' + $link.html() +'</a></li>'); + } else { + $titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5>'); + } + + // Copy link to subnav + if (settings.custom_back_text == true) { + $('h5>a', $titleLi).html(settings.back_text); + } else { + $('h5>a', $titleLi).html('« ' + $link.html()); + } + $dropdown.prepend($titleLi); + } + }); + + // Put element back in the DOM + section.appendTo(topbar); + + // check for sticky + this.sticky(); + + this.assembled(topbar); + }, + + assembled : function (topbar) { + topbar.data(this.attr_name(true), $.extend({}, topbar.data(this.attr_name(true)), {assembled: true})); + }, + + height : function (ul) { + var total = 0, + self = this; + + $('> li', ul).each(function () { + total += self.S(this).outerHeight(true); + }); + + return total; + }, + + sticky : function () { + var self = this; + + this.S(window).on('scroll', function() { + self.update_sticky_positioning(); + }); + }, + + update_sticky_positioning: function() { + var klass = '.' + this.settings.sticky_class, + $window = this.S(window), + self = this; + + if (self.settings.sticky_topbar && self.is_sticky(this.settings.sticky_topbar,this.settings.sticky_topbar.parent(), this.settings)) { + var distance = this.settings.sticky_topbar.data('stickyoffset'); + if (!self.S(klass).hasClass('expanded')) { + if ($window.scrollTop() > (distance)) { + if (!self.S(klass).hasClass('fixed')) { + self.S(klass).addClass('fixed'); + self.S('body').addClass('f-topbar-fixed'); + } + } else if ($window.scrollTop() <= distance) { + if (self.S(klass).hasClass('fixed')) { + self.S(klass).removeClass('fixed'); + self.S('body').removeClass('f-topbar-fixed'); + } + } + } + } + }, + + off : function () { + this.S(this.scope).off('.fndtn.topbar'); + this.S(window).off('.fndtn.topbar'); + }, + + reflow : function () {} + }; +}(jQuery, window, window.document)); diff --git a/resources/foundation/js/vendor/fastclick.js b/resources/foundation/js/vendor/fastclick.js new file mode 100644 index 0000000..e8e0392 --- /dev/null +++ b/resources/foundation/js/vendor/fastclick.js @@ -0,0 +1,9 @@ +/** + * @preserve FastClick: polyfill to remove click delays on browsers with touch UIs. + * + * @version 1.0.3 + * @codingstandard ftlabs-jsv2 + * @copyright The Financial Times Limited [All Rights Reserved] + * @license MIT License (see LICENSE.txt) + */ +function FastClick(a,b){"use strict";function c(a,b){return function(){return a.apply(b,arguments)}}var d;if(b=b||{},this.trackingClick=!1,this.trackingClickStart=0,this.targetElement=null,this.touchStartX=0,this.touchStartY=0,this.lastTouchIdentifier=0,this.touchBoundary=b.touchBoundary||10,this.layer=a,this.tapDelay=b.tapDelay||200,!FastClick.notNeeded(a)){for(var e=["onMouse","onClick","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel"],f=this,g=0,h=e.length;h>g;g++)f[e[g]]=c(f[e[g]],f);deviceIsAndroid&&(a.addEventListener("mouseover",this.onMouse,!0),a.addEventListener("mousedown",this.onMouse,!0),a.addEventListener("mouseup",this.onMouse,!0)),a.addEventListener("click",this.onClick,!0),a.addEventListener("touchstart",this.onTouchStart,!1),a.addEventListener("touchmove",this.onTouchMove,!1),a.addEventListener("touchend",this.onTouchEnd,!1),a.addEventListener("touchcancel",this.onTouchCancel,!1),Event.prototype.stopImmediatePropagation||(a.removeEventListener=function(b,c,d){var e=Node.prototype.removeEventListener;"click"===b?e.call(a,b,c.hijacked||c,d):e.call(a,b,c,d)},a.addEventListener=function(b,c,d){var e=Node.prototype.addEventListener;"click"===b?e.call(a,b,c.hijacked||(c.hijacked=function(a){a.propagationStopped||c(a)}),d):e.call(a,b,c,d)}),"function"==typeof a.onclick&&(d=a.onclick,a.addEventListener("click",function(a){d(a)},!1),a.onclick=null)}}var deviceIsAndroid=navigator.userAgent.indexOf("Android")>0,deviceIsIOS=/iP(ad|hone|od)/.test(navigator.userAgent),deviceIsIOS4=deviceIsIOS&&/OS 4_\d(_\d)?/.test(navigator.userAgent),deviceIsIOSWithBadTarget=deviceIsIOS&&/OS ([6-9]|\d{2})_\d/.test(navigator.userAgent),deviceIsBlackBerry10=navigator.userAgent.indexOf("BB10")>0;FastClick.prototype.needsClick=function(a){"use strict";switch(a.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(a.disabled)return!0;break;case"input":if(deviceIsIOS&&"file"===a.type||a.disabled)return!0;break;case"label":case"video":return!0}return/\bneedsclick\b/.test(a.className)},FastClick.prototype.needsFocus=function(a){"use strict";switch(a.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!deviceIsAndroid;case"input":switch(a.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!a.disabled&&!a.readOnly;default:return/\bneedsfocus\b/.test(a.className)}},FastClick.prototype.sendClick=function(a,b){"use strict";var c,d;document.activeElement&&document.activeElement!==a&&document.activeElement.blur(),d=b.changedTouches[0],c=document.createEvent("MouseEvents"),c.initMouseEvent(this.determineEventType(a),!0,!0,window,1,d.screenX,d.screenY,d.clientX,d.clientY,!1,!1,!1,!1,0,null),c.forwardedTouchEvent=!0,a.dispatchEvent(c)},FastClick.prototype.determineEventType=function(a){"use strict";return deviceIsAndroid&&"select"===a.tagName.toLowerCase()?"mousedown":"click"},FastClick.prototype.focus=function(a){"use strict";var b;deviceIsIOS&&a.setSelectionRange&&0!==a.type.indexOf("date")&&"time"!==a.type?(b=a.value.length,a.setSelectionRange(b,b)):a.focus()},FastClick.prototype.updateScrollParent=function(a){"use strict";var b,c;if(b=a.fastClickScrollParent,!b||!b.contains(a)){c=a;do{if(c.scrollHeight>c.offsetHeight){b=c,a.fastClickScrollParent=c;break}c=c.parentElement}while(c)}b&&(b.fastClickLastScrollTop=b.scrollTop)},FastClick.prototype.getTargetElementFromEventTarget=function(a){"use strict";return a.nodeType===Node.TEXT_NODE?a.parentNode:a},FastClick.prototype.onTouchStart=function(a){"use strict";var b,c,d;if(a.targetTouches.length>1)return!0;if(b=this.getTargetElementFromEventTarget(a.target),c=a.targetTouches[0],deviceIsIOS){if(d=window.getSelection(),d.rangeCount&&!d.isCollapsed)return!0;if(!deviceIsIOS4){if(c.identifier&&c.identifier===this.lastTouchIdentifier)return a.preventDefault(),!1;this.lastTouchIdentifier=c.identifier,this.updateScrollParent(b)}}return this.trackingClick=!0,this.trackingClickStart=a.timeStamp,this.targetElement=b,this.touchStartX=c.pageX,this.touchStartY=c.pageY,a.timeStamp-this.lastClickTime<this.tapDelay&&a.preventDefault(),!0},FastClick.prototype.touchHasMoved=function(a){"use strict";var b=a.changedTouches[0],c=this.touchBoundary;return Math.abs(b.pageX-this.touchStartX)>c||Math.abs(b.pageY-this.touchStartY)>c?!0:!1},FastClick.prototype.onTouchMove=function(a){"use strict";return this.trackingClick?((this.targetElement!==this.getTargetElementFromEventTarget(a.target)||this.touchHasMoved(a))&&(this.trackingClick=!1,this.targetElement=null),!0):!0},FastClick.prototype.findControl=function(a){"use strict";return void 0!==a.control?a.control:a.htmlFor?document.getElementById(a.htmlFor):a.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},FastClick.prototype.onTouchEnd=function(a){"use strict";var b,c,d,e,f,g=this.targetElement;if(!this.trackingClick)return!0;if(a.timeStamp-this.lastClickTime<this.tapDelay)return this.cancelNextClick=!0,!0;if(this.cancelNextClick=!1,this.lastClickTime=a.timeStamp,c=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,deviceIsIOSWithBadTarget&&(f=a.changedTouches[0],g=document.elementFromPoint(f.pageX-window.pageXOffset,f.pageY-window.pageYOffset)||g,g.fastClickScrollParent=this.targetElement.fastClickScrollParent),d=g.tagName.toLowerCase(),"label"===d){if(b=this.findControl(g)){if(this.focus(g),deviceIsAndroid)return!1;g=b}}else if(this.needsFocus(g))return a.timeStamp-c>100||deviceIsIOS&&window.top!==window&&"input"===d?(this.targetElement=null,!1):(this.focus(g),this.sendClick(g,a),deviceIsIOS&&"select"===d||(this.targetElement=null,a.preventDefault()),!1);return deviceIsIOS&&!deviceIsIOS4&&(e=g.fastClickScrollParent,e&&e.fastClickLastScrollTop!==e.scrollTop)?!0:(this.needsClick(g)||(a.preventDefault(),this.sendClick(g,a)),!1)},FastClick.prototype.onTouchCancel=function(){"use strict";this.trackingClick=!1,this.targetElement=null},FastClick.prototype.onMouse=function(a){"use strict";return this.targetElement?a.forwardedTouchEvent?!0:a.cancelable&&(!this.needsClick(this.targetElement)||this.cancelNextClick)?(a.stopImmediatePropagation?a.stopImmediatePropagation():a.propagationStopped=!0,a.stopPropagation(),a.preventDefault(),!1):!0:!0},FastClick.prototype.onClick=function(a){"use strict";var b;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===a.target.type&&0===a.detail?!0:(b=this.onMouse(a),b||(this.targetElement=null),b)},FastClick.prototype.destroy=function(){"use strict";var a=this.layer;deviceIsAndroid&&(a.removeEventListener("mouseover",this.onMouse,!0),a.removeEventListener("mousedown",this.onMouse,!0),a.removeEventListener("mouseup",this.onMouse,!0)),a.removeEventListener("click",this.onClick,!0),a.removeEventListener("touchstart",this.onTouchStart,!1),a.removeEventListener("touchmove",this.onTouchMove,!1),a.removeEventListener("touchend",this.onTouchEnd,!1),a.removeEventListener("touchcancel",this.onTouchCancel,!1)},FastClick.notNeeded=function(a){"use strict";var b,c,d;if("undefined"==typeof window.ontouchstart)return!0;if(c=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!deviceIsAndroid)return!0;if(b=document.querySelector("meta[name=viewport]")){if(-1!==b.content.indexOf("user-scalable=no"))return!0;if(c>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(deviceIsBlackBerry10&&(d=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),d[1]>=10&&d[2]>=3&&(b=document.querySelector("meta[name=viewport]")))){if(-1!==b.content.indexOf("user-scalable=no"))return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===a.style.msTouchAction?!0:!1},FastClick.attach=function(a,b){"use strict";return new FastClick(a,b)},"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){"use strict";return FastClick}):"undefined"!=typeof module&&module.exports?(module.exports=FastClick.attach,module.exports.FastClick=FastClick):window.FastClick=FastClick; diff --git a/resources/foundation/js/vendor/jquery.cookie.js b/resources/foundation/js/vendor/jquery.cookie.js new file mode 100644 index 0000000..9abcdec --- /dev/null +++ b/resources/foundation/js/vendor/jquery.cookie.js @@ -0,0 +1,8 @@ +/*! + * jQuery Cookie Plugin v1.4.1 + * https://github.com/carhartl/jquery-cookie + * + * Copyright 2013 Klaus Hartl + * Released under the MIT license + */ +!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){function b(a){return h.raw?a:encodeURIComponent(a)}function c(a){return h.raw?a:decodeURIComponent(a)}function d(a){return b(h.json?JSON.stringify(a):String(a))}function e(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return a=decodeURIComponent(a.replace(g," ")),h.json?JSON.parse(a):a}catch(b){}}function f(b,c){var d=h.raw?b:e(b);return a.isFunction(c)?c(d):d}var g=/\+/g,h=a.cookie=function(e,g,i){if(void 0!==g&&!a.isFunction(g)){if(i=a.extend({},h.defaults,i),"number"==typeof i.expires){var j=i.expires,k=i.expires=new Date;k.setTime(+k+864e5*j)}return document.cookie=[b(e),"=",d(g),i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("")}for(var l=e?void 0:{},m=document.cookie?document.cookie.split("; "):[],n=0,o=m.length;o>n;n++){var p=m[n].split("="),q=c(p.shift()),r=p.join("=");if(e&&e===q){l=f(r,g);break}e||void 0===(r=f(r))||(l[q]=r)}return l};h.defaults={},a.removeCookie=function(b,c){return void 0===a.cookie(b)?!1:(a.cookie(b,"",a.extend({},c,{expires:-1})),!a.cookie(b))}}); diff --git a/resources/foundation/js/vendor/jquery.js b/resources/foundation/js/vendor/jquery.js new file mode 100644 index 0000000..05fb1ec --- /dev/null +++ b/resources/foundation/js/vendor/jquery.js @@ -0,0 +1,26 @@ +/*! + * jQuery JavaScript Library v2.1.1 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2014-05-01T17:11Z + */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){function c(a){var b=a.length,c=_.type(a);return"function"===c||_.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}function d(a,b,c){if(_.isFunction(b))return _.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return _.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(hb.test(b))return _.filter(b,a,c);b=_.filter(b,a)}return _.grep(a,function(a){return U.call(b,a)>=0!==c})}function e(a,b){for(;(a=a[b])&&1!==a.nodeType;);return a}function f(a){var b=ob[a]={};return _.each(a.match(nb)||[],function(a,c){b[c]=!0}),b}function g(){Z.removeEventListener("DOMContentLoaded",g,!1),a.removeEventListener("load",g,!1),_.ready()}function h(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=_.expando+Math.random()}function i(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(ub,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:tb.test(c)?_.parseJSON(c):c}catch(e){}sb.set(a,b,c)}else c=void 0;return c}function j(){return!0}function k(){return!1}function l(){try{return Z.activeElement}catch(a){}}function m(a,b){return _.nodeName(a,"table")&&_.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function n(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function o(a){var b=Kb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function p(a,b){for(var c=0,d=a.length;d>c;c++)rb.set(a[c],"globalEval",!b||rb.get(b[c],"globalEval"))}function q(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(rb.hasData(a)&&(f=rb.access(a),g=rb.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)_.event.add(b,e,j[e][c])}sb.hasData(a)&&(h=sb.access(a),i=_.extend({},h),sb.set(b,i))}}function r(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&_.nodeName(a,b)?_.merge([a],c):c}function s(a,b){var c=b.nodeName.toLowerCase();"input"===c&&yb.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}function t(b,c){var d,e=_(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:_.css(e[0],"display");return e.detach(),f}function u(a){var b=Z,c=Ob[a];return c||(c=t(a,b),"none"!==c&&c||(Nb=(Nb||_("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=Nb[0].contentDocument,b.write(),b.close(),c=t(a,b),Nb.detach()),Ob[a]=c),c}function v(a,b,c){var d,e,f,g,h=a.style;return c=c||Rb(a),c&&(g=c.getPropertyValue(b)||c[b]),c&&(""!==g||_.contains(a.ownerDocument,a)||(g=_.style(a,b)),Qb.test(g)&&Pb.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function w(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}function x(a,b){if(b in a)return b;for(var c=b[0].toUpperCase()+b.slice(1),d=b,e=Xb.length;e--;)if(b=Xb[e]+c,b in a)return b;return d}function y(a,b,c){var d=Tb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function z(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=_.css(a,c+wb[f],!0,e)),d?("content"===c&&(g-=_.css(a,"padding"+wb[f],!0,e)),"margin"!==c&&(g-=_.css(a,"border"+wb[f]+"Width",!0,e))):(g+=_.css(a,"padding"+wb[f],!0,e),"padding"!==c&&(g+=_.css(a,"border"+wb[f]+"Width",!0,e)));return g}function A(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Rb(a),g="border-box"===_.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=v(a,b,f),(0>e||null==e)&&(e=a.style[b]),Qb.test(e))return e;d=g&&(Y.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+z(a,b,c||(g?"border":"content"),d,f)+"px"}function B(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=rb.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&xb(d)&&(f[g]=rb.access(d,"olddisplay",u(d.nodeName)))):(e=xb(d),"none"===c&&e||rb.set(d,"olddisplay",e?c:_.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function C(a,b,c,d,e){return new C.prototype.init(a,b,c,d,e)}function D(){return setTimeout(function(){Yb=void 0}),Yb=_.now()}function E(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=wb[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function F(a,b,c){for(var d,e=(cc[b]||[]).concat(cc["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function G(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},n=a.style,o=a.nodeType&&xb(a),p=rb.get(a,"fxshow");c.queue||(h=_._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,_.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[n.overflow,n.overflowX,n.overflowY],j=_.css(a,"display"),k="none"===j?rb.get(a,"olddisplay")||u(a.nodeName):j,"inline"===k&&"none"===_.css(a,"float")&&(n.display="inline-block")),c.overflow&&(n.overflow="hidden",l.always(function(){n.overflow=c.overflow[0],n.overflowX=c.overflow[1],n.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],$b.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(o?"hide":"show")){if("show"!==e||!p||void 0===p[d])continue;o=!0}m[d]=p&&p[d]||_.style(a,d)}else j=void 0;if(_.isEmptyObject(m))"inline"===("none"===j?u(a.nodeName):j)&&(n.display=j);else{p?"hidden"in p&&(o=p.hidden):p=rb.access(a,"fxshow",{}),f&&(p.hidden=!o),o?_(a).show():l.done(function(){_(a).hide()}),l.done(function(){var b;rb.remove(a,"fxshow");for(b in m)_.style(a,b,m[b])});for(d in m)g=F(o?p[d]:0,d,l),d in p||(p[d]=g.start,o&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function H(a,b){var c,d,e,f,g;for(c in a)if(d=_.camelCase(c),e=b[d],f=a[c],_.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=_.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function I(a,b,c){var d,e,f=0,g=bc.length,h=_.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=Yb||D(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:_.extend({},b),opts:_.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:Yb||D(),duration:c.duration,tweens:[],createTween:function(b,c){var d=_.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(H(k,j.opts.specialEasing);g>f;f++)if(d=bc[f].call(j,a,k,j.opts))return d;return _.map(k,F,j),_.isFunction(j.opts.start)&&j.opts.start.call(a,j),_.fx.timer(_.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function J(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(nb)||[];if(_.isFunction(c))for(;d=f[e++];)"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function K(a,b,c,d){function e(h){var i;return f[h]=!0,_.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||g||f[j]?g?!(i=j):void 0:(b.dataTypes.unshift(j),e(j),!1)}),i}var f={},g=a===vc;return e(b.dataTypes[0])||!f["*"]&&e("*")}function L(a,b){var c,d,e=_.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&_.extend(!0,a,d),a}function M(a,b,c){for(var d,e,f,g,h=a.contents,i=a.dataTypes;"*"===i[0];)i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function N(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];for(f=k.shift();f;)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}function O(a,b,c,d){var e;if(_.isArray(b))_.each(b,function(b,e){c||zc.test(a)?d(a,e):O(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==_.type(b))d(a,b);else for(e in b)O(a+"["+e+"]",b[e],c,d)}function P(a){return _.isWindow(a)?a:9===a.nodeType&&a.defaultView}var Q=[],R=Q.slice,S=Q.concat,T=Q.push,U=Q.indexOf,V={},W=V.toString,X=V.hasOwnProperty,Y={},Z=a.document,$="2.1.1",_=function(a,b){return new _.fn.init(a,b)},ab=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,bb=/^-ms-/,cb=/-([\da-z])/gi,db=function(a,b){return b.toUpperCase()};_.fn=_.prototype={jquery:$,constructor:_,selector:"",length:0,toArray:function(){return R.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:R.call(this)},pushStack:function(a){var b=_.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return _.each(this,a,b)},map:function(a){return this.pushStack(_.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(R.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:T,sort:Q.sort,splice:Q.splice},_.extend=_.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||_.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(_.isPlainObject(d)||(e=_.isArray(d)))?(e?(e=!1,f=c&&_.isArray(c)?c:[]):f=c&&_.isPlainObject(c)?c:{},g[b]=_.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},_.extend({expando:"jQuery"+($+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===_.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!_.isArray(a)&&a-parseFloat(a)>=0},isPlainObject:function(a){return"object"!==_.type(a)||a.nodeType||_.isWindow(a)?!1:a.constructor&&!X.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?V[W.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=_.trim(a),a&&(1===a.indexOf("use strict")?(b=Z.createElement("script"),b.text=a,Z.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(bb,"ms-").replace(cb,db)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,d){var e,f=0,g=a.length,h=c(a);if(d){if(h)for(;g>f&&(e=b.apply(a[f],d),e!==!1);f++);else for(f in a)if(e=b.apply(a[f],d),e===!1)break}else if(h)for(;g>f&&(e=b.call(a[f],f,a[f]),e!==!1);f++);else for(f in a)if(e=b.call(a[f],f,a[f]),e===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(ab,"")},makeArray:function(a,b){var d=b||[];return null!=a&&(c(Object(a))?_.merge(d,"string"==typeof a?[a]:a):T.call(d,a)),d},inArray:function(a,b,c){return null==b?-1:U.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,d){var e,f=0,g=a.length,h=c(a),i=[];if(h)for(;g>f;f++)e=b(a[f],f,d),null!=e&&i.push(e);else for(f in a)e=b(a[f],f,d),null!=e&&i.push(e);return S.apply([],i)},guid:1,proxy:function(a,b){var c,d,e;return"string"==typeof b&&(c=a[b],b=a,a=c),_.isFunction(a)?(d=R.call(arguments,2),e=function(){return a.apply(b||this,d.concat(R.call(arguments)))},e.guid=a.guid=a.guid||_.guid++,e):void 0},now:Date.now,support:Y}),_.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){V["[object "+b+"]"]=b.toLowerCase()});var eb=/*! + * Sizzle CSS Selector Engine v1.10.19 + * http://sizzlejs.com/ + * + * Copyright 2013 jQuery Foundation, Inc. and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2014-04-18 + */ +function(a){function b(a,b,c,d){var e,f,g,h,i,j,l,n,o,p;if((b?b.ownerDocument||b:O)!==G&&F(b),b=b||G,c=c||[],!a||"string"!=typeof a)return c;if(1!==(h=b.nodeType)&&9!==h)return[];if(I&&!d){if(e=sb.exec(a))if(g=e[1]){if(9===h){if(f=b.getElementById(g),!f||!f.parentNode)return c;if(f.id===g)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(g))&&M(b,f)&&f.id===g)return c.push(f),c}else{if(e[2])return _.apply(c,b.getElementsByTagName(a)),c;if((g=e[3])&&v.getElementsByClassName&&b.getElementsByClassName)return _.apply(c,b.getElementsByClassName(g)),c}if(v.qsa&&(!J||!J.test(a))){if(n=l=N,o=b,p=9===h&&a,1===h&&"object"!==b.nodeName.toLowerCase()){for(j=z(a),(l=b.getAttribute("id"))?n=l.replace(ub,"\\$&"):b.setAttribute("id",n),n="[id='"+n+"'] ",i=j.length;i--;)j[i]=n+m(j[i]);o=tb.test(a)&&k(b.parentNode)||b,p=j.join(",")}if(p)try{return _.apply(c,o.querySelectorAll(p)),c}catch(q){}finally{l||b.removeAttribute("id")}}}return B(a.replace(ib,"$1"),b,c,d)}function c(){function a(c,d){return b.push(c+" ")>w.cacheLength&&delete a[b.shift()],a[c+" "]=d}var b=[];return a}function d(a){return a[N]=!0,a}function e(a){var b=G.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function f(a,b){for(var c=a.split("|"),d=a.length;d--;)w.attrHandle[c[d]]=b}function g(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||W)-(~a.sourceIndex||W);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function h(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function i(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function j(a){return d(function(b){return b=+b,d(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function k(a){return a&&typeof a.getElementsByTagName!==V&&a}function l(){}function m(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function n(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=Q++;return b.first?function(b,c,f){for(;b=b[d];)if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[P,f];if(g){for(;b=b[d];)if((1===b.nodeType||e)&&a(b,c,g))return!0}else for(;b=b[d];)if(1===b.nodeType||e){if(i=b[N]||(b[N]={}),(h=i[d])&&h[0]===P&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function o(a){return a.length>1?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function p(a,c,d){for(var e=0,f=c.length;f>e;e++)b(a,c[e],d);return d}function q(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function r(a,b,c,e,f,g){return e&&!e[N]&&(e=r(e)),f&&!f[N]&&(f=r(f,g)),d(function(d,g,h,i){var j,k,l,m=[],n=[],o=g.length,r=d||p(b||"*",h.nodeType?[h]:h,[]),s=!a||!d&&b?r:q(r,m,a,h,i),t=c?f||(d?a:o||e)?[]:g:s;if(c&&c(s,t,h,i),e)for(j=q(t,n),e(j,[],h,i),k=j.length;k--;)(l=j[k])&&(t[n[k]]=!(s[n[k]]=l));if(d){if(f||a){if(f){for(j=[],k=t.length;k--;)(l=t[k])&&j.push(s[k]=l);f(null,t=[],j,i)}for(k=t.length;k--;)(l=t[k])&&(j=f?bb.call(d,l):m[k])>-1&&(d[j]=!(g[j]=l))}}else t=q(t===g?t.splice(o,t.length):t),f?f(null,g,t,i):_.apply(g,t)})}function s(a){for(var b,c,d,e=a.length,f=w.relative[a[0].type],g=f||w.relative[" "],h=f?1:0,i=n(function(a){return a===b},g,!0),j=n(function(a){return bb.call(b,a)>-1},g,!0),k=[function(a,c,d){return!f&&(d||c!==C)||((b=c).nodeType?i(a,c,d):j(a,c,d))}];e>h;h++)if(c=w.relative[a[h].type])k=[n(o(k),c)];else{if(c=w.filter[a[h].type].apply(null,a[h].matches),c[N]){for(d=++h;e>d&&!w.relative[a[d].type];d++);return r(h>1&&o(k),h>1&&m(a.slice(0,h-1).concat({value:" "===a[h-2].type?"*":""})).replace(ib,"$1"),c,d>h&&s(a.slice(h,d)),e>d&&s(a=a.slice(d)),e>d&&m(a))}k.push(c)}return o(k)}function t(a,c){var e=c.length>0,f=a.length>0,g=function(d,g,h,i,j){var k,l,m,n=0,o="0",p=d&&[],r=[],s=C,t=d||f&&w.find.TAG("*",j),u=P+=null==s?1:Math.random()||.1,v=t.length;for(j&&(C=g!==G&&g);o!==v&&null!=(k=t[o]);o++){if(f&&k){for(l=0;m=a[l++];)if(m(k,g,h)){i.push(k);break}j&&(P=u)}e&&((k=!m&&k)&&n--,d&&p.push(k))}if(n+=o,e&&o!==n){for(l=0;m=c[l++];)m(p,r,g,h);if(d){if(n>0)for(;o--;)p[o]||r[o]||(r[o]=Z.call(i));r=q(r)}_.apply(i,r),j&&!d&&r.length>0&&n+c.length>1&&b.uniqueSort(i)}return j&&(P=u,C=s),p};return e?d(g):g}var u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N="sizzle"+-new Date,O=a.document,P=0,Q=0,R=c(),S=c(),T=c(),U=function(a,b){return a===b&&(E=!0),0},V="undefined",W=1<<31,X={}.hasOwnProperty,Y=[],Z=Y.pop,$=Y.push,_=Y.push,ab=Y.slice,bb=Y.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},cb="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",db="[\\x20\\t\\r\\n\\f]",eb="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",fb=eb.replace("w","w#"),gb="\\["+db+"*("+eb+")(?:"+db+"*([*^$|!~]?=)"+db+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+fb+"))|)"+db+"*\\]",hb=":("+eb+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+gb+")*)|.*)\\)|)",ib=new RegExp("^"+db+"+|((?:^|[^\\\\])(?:\\\\.)*)"+db+"+$","g"),jb=new RegExp("^"+db+"*,"+db+"*"),kb=new RegExp("^"+db+"*([>+~]|"+db+")"+db+"*"),lb=new RegExp("="+db+"*([^\\]'\"]*?)"+db+"*\\]","g"),mb=new RegExp(hb),nb=new RegExp("^"+fb+"$"),ob={ID:new RegExp("^#("+eb+")"),CLASS:new RegExp("^\\.("+eb+")"),TAG:new RegExp("^("+eb.replace("w","w*")+")"),ATTR:new RegExp("^"+gb),PSEUDO:new RegExp("^"+hb),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+db+"*(even|odd|(([+-]|)(\\d*)n|)"+db+"*(?:([+-]|)"+db+"*(\\d+)|))"+db+"*\\)|)","i"),bool:new RegExp("^(?:"+cb+")$","i"),needsContext:new RegExp("^"+db+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+db+"*((?:-\\d)?\\d*)"+db+"*\\)|)(?=[^-]|$)","i")},pb=/^(?:input|select|textarea|button)$/i,qb=/^h\d$/i,rb=/^[^{]+\{\s*\[native \w/,sb=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tb=/[+~]/,ub=/'|\\/g,vb=new RegExp("\\\\([\\da-f]{1,6}"+db+"?|("+db+")|.)","ig"),wb=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{_.apply(Y=ab.call(O.childNodes),O.childNodes),Y[O.childNodes.length].nodeType}catch(xb){_={apply:Y.length?function(a,b){$.apply(a,ab.call(b))}:function(a,b){for(var c=a.length,d=0;a[c++]=b[d++];);a.length=c-1}}}v=b.support={},y=b.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},F=b.setDocument=function(a){var b,c=a?a.ownerDocument||a:O,d=c.defaultView;return c!==G&&9===c.nodeType&&c.documentElement?(G=c,H=c.documentElement,I=!y(c),d&&d!==d.top&&(d.addEventListener?d.addEventListener("unload",function(){F()},!1):d.attachEvent&&d.attachEvent("onunload",function(){F()})),v.attributes=e(function(a){return a.className="i",!a.getAttribute("className")}),v.getElementsByTagName=e(function(a){return a.appendChild(c.createComment("")),!a.getElementsByTagName("*").length}),v.getElementsByClassName=rb.test(c.getElementsByClassName)&&e(function(a){return a.innerHTML="<div class='a'></div><div class='a i'></div>",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),v.getById=e(function(a){return H.appendChild(a).id=N,!c.getElementsByName||!c.getElementsByName(N).length}),v.getById?(w.find.ID=function(a,b){if(typeof b.getElementById!==V&&I){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},w.filter.ID=function(a){var b=a.replace(vb,wb);return function(a){return a.getAttribute("id")===b}}):(delete w.find.ID,w.filter.ID=function(a){var b=a.replace(vb,wb);return function(a){var c=typeof a.getAttributeNode!==V&&a.getAttributeNode("id");return c&&c.value===b}}),w.find.TAG=v.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==V?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},w.find.CLASS=v.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==V&&I?b.getElementsByClassName(a):void 0},K=[],J=[],(v.qsa=rb.test(c.querySelectorAll))&&(e(function(a){a.innerHTML="<select msallowclip=''><option selected=''></option></select>",a.querySelectorAll("[msallowclip^='']").length&&J.push("[*^$]="+db+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||J.push("\\["+db+"*(?:value|"+cb+")"),a.querySelectorAll(":checked").length||J.push(":checked")}),e(function(a){var b=c.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&J.push("name"+db+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||J.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),J.push(",.*:")})),(v.matchesSelector=rb.test(L=H.matches||H.webkitMatchesSelector||H.mozMatchesSelector||H.oMatchesSelector||H.msMatchesSelector))&&e(function(a){v.disconnectedMatch=L.call(a,"div"),L.call(a,"[s!='']:x"),K.push("!=",hb)}),J=J.length&&new RegExp(J.join("|")),K=K.length&&new RegExp(K.join("|")),b=rb.test(H.compareDocumentPosition),M=b||rb.test(H.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},U=b?function(a,b){if(a===b)return E=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!v.sortDetached&&b.compareDocumentPosition(a)===d?a===c||a.ownerDocument===O&&M(O,a)?-1:b===c||b.ownerDocument===O&&M(O,b)?1:D?bb.call(D,a)-bb.call(D,b):0:4&d?-1:1)}:function(a,b){if(a===b)return E=!0,0;var d,e=0,f=a.parentNode,h=b.parentNode,i=[a],j=[b];if(!f||!h)return a===c?-1:b===c?1:f?-1:h?1:D?bb.call(D,a)-bb.call(D,b):0;if(f===h)return g(a,b);for(d=a;d=d.parentNode;)i.unshift(d);for(d=b;d=d.parentNode;)j.unshift(d);for(;i[e]===j[e];)e++;return e?g(i[e],j[e]):i[e]===O?-1:j[e]===O?1:0},c):G},b.matches=function(a,c){return b(a,null,null,c)},b.matchesSelector=function(a,c){if((a.ownerDocument||a)!==G&&F(a),c=c.replace(lb,"='$1']"),!(!v.matchesSelector||!I||K&&K.test(c)||J&&J.test(c)))try{var d=L.call(a,c);if(d||v.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return b(c,G,null,[a]).length>0},b.contains=function(a,b){return(a.ownerDocument||a)!==G&&F(a),M(a,b)},b.attr=function(a,b){(a.ownerDocument||a)!==G&&F(a);var c=w.attrHandle[b.toLowerCase()],d=c&&X.call(w.attrHandle,b.toLowerCase())?c(a,b,!I):void 0;return void 0!==d?d:v.attributes||!I?a.getAttribute(b):(d=a.getAttributeNode(b))&&d.specified?d.value:null},b.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},b.uniqueSort=function(a){var b,c=[],d=0,e=0;if(E=!v.detectDuplicates,D=!v.sortStable&&a.slice(0),a.sort(U),E){for(;b=a[e++];)b===a[e]&&(d=c.push(e));for(;d--;)a.splice(c[d],1)}return D=null,a},x=b.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(1===e||9===e||11===e){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=x(a)}else if(3===e||4===e)return a.nodeValue}else for(;b=a[d++];)c+=x(b);return c},w=b.selectors={cacheLength:50,createPseudo:d,match:ob,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(vb,wb),a[3]=(a[3]||a[4]||a[5]||"").replace(vb,wb),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||b.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&b.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return ob.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&mb.test(c)&&(b=z(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(vb,wb).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=R[a+" "];return b||(b=new RegExp("(^|"+db+")"+a+"("+db+"|$)"))&&R(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==V&&a.getAttribute("class")||"")})},ATTR:function(a,c,d){return function(e){var f=b.attr(e,a);return null==f?"!="===c:c?(f+="","="===c?f===d:"!="===c?f!==d:"^="===c?d&&0===f.indexOf(d):"*="===c?d&&f.indexOf(d)>-1:"$="===c?d&&f.slice(-d.length)===d:"~="===c?(" "+f+" ").indexOf(d)>-1:"|="===c?f===d||f.slice(0,d.length+1)===d+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){for(;p;){for(l=b;l=l[p];)if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){for(k=q[N]||(q[N]={}),j=k[a]||[],n=j[0]===P&&j[1],m=j[0]===P&&j[2],l=n&&q.childNodes[n];l=++n&&l&&l[p]||(m=n=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){k[a]=[P,n,m];break}}else if(s&&(j=(b[N]||(b[N]={}))[a])&&j[0]===P)m=j[1];else for(;(l=++n&&l&&l[p]||(m=n=0)||o.pop())&&((h?l.nodeName.toLowerCase()!==r:1!==l.nodeType)||!++m||(s&&((l[N]||(l[N]={}))[a]=[P,m]),l!==b)););return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,c){var e,f=w.pseudos[a]||w.setFilters[a.toLowerCase()]||b.error("unsupported pseudo: "+a);return f[N]?f(c):f.length>1?(e=[a,a,"",c],w.setFilters.hasOwnProperty(a.toLowerCase())?d(function(a,b){for(var d,e=f(a,c),g=e.length;g--;)d=bb.call(a,e[g]),a[d]=!(b[d]=e[g])}):function(a){return f(a,0,e)}):f}},pseudos:{not:d(function(a){var b=[],c=[],e=A(a.replace(ib,"$1"));return e[N]?d(function(a,b,c,d){for(var f,g=e(a,null,d,[]),h=a.length;h--;)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,d,f){return b[0]=a,e(b,null,f,c),!c.pop()}}),has:d(function(a){return function(c){return b(a,c).length>0}}),contains:d(function(a){return function(b){return(b.textContent||b.innerText||x(b)).indexOf(a)>-1}}),lang:d(function(a){return nb.test(a||"")||b.error("unsupported lang: "+a),a=a.replace(vb,wb).toLowerCase(),function(b){var c;do if(c=I?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===H},focus:function(a){return a===G.activeElement&&(!G.hasFocus||G.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!w.pseudos.empty(a)},header:function(a){return qb.test(a.nodeName)},input:function(a){return pb.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:j(function(){return[0]}),last:j(function(a,b){return[b-1]}),eq:j(function(a,b,c){return[0>c?c+b:c]}),even:j(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:j(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:j(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:j(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},w.pseudos.nth=w.pseudos.eq;for(u in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[u]=h(u);for(u in{submit:!0,reset:!0})w.pseudos[u]=i(u);return l.prototype=w.filters=w.pseudos,w.setFilters=new l,z=b.tokenize=function(a,c){var d,e,f,g,h,i,j,k=S[a+" "];if(k)return c?0:k.slice(0);for(h=a,i=[],j=w.preFilter;h;){(!d||(e=jb.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),d=!1,(e=kb.exec(h))&&(d=e.shift(),f.push({value:d,type:e[0].replace(ib," ")}),h=h.slice(d.length));for(g in w.filter)!(e=ob[g].exec(h))||j[g]&&!(e=j[g](e))||(d=e.shift(),f.push({value:d,type:g,matches:e}),h=h.slice(d.length));if(!d)break}return c?h.length:h?b.error(a):S(a,i).slice(0)},A=b.compile=function(a,b){var c,d=[],e=[],f=T[a+" "];if(!f){for(b||(b=z(a)),c=b.length;c--;)f=s(b[c]),f[N]?d.push(f):e.push(f);f=T(a,t(e,d)),f.selector=a}return f},B=b.select=function(a,b,c,d){var e,f,g,h,i,j="function"==typeof a&&a,l=!d&&z(a=j.selector||a);if(c=c||[],1===l.length){if(f=l[0]=l[0].slice(0),f.length>2&&"ID"===(g=f[0]).type&&v.getById&&9===b.nodeType&&I&&w.relative[f[1].type]){if(b=(w.find.ID(g.matches[0].replace(vb,wb),b)||[])[0],!b)return c;j&&(b=b.parentNode),a=a.slice(f.shift().value.length)}for(e=ob.needsContext.test(a)?0:f.length;e--&&(g=f[e],!w.relative[h=g.type]);)if((i=w.find[h])&&(d=i(g.matches[0].replace(vb,wb),tb.test(f[0].type)&&k(b.parentNode)||b))){if(f.splice(e,1),a=d.length&&m(f),!a)return _.apply(c,d),c;break}}return(j||A(a,l))(d,b,!I,c,tb.test(a)&&k(b.parentNode)||b),c},v.sortStable=N.split("").sort(U).join("")===N,v.detectDuplicates=!!E,F(),v.sortDetached=e(function(a){return 1&a.compareDocumentPosition(G.createElement("div"))}),e(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||f("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),v.attributes&&e(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||f("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),e(function(a){return null==a.getAttribute("disabled")})||f(cb,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),b}(a);_.find=eb,_.expr=eb.selectors,_.expr[":"]=_.expr.pseudos,_.unique=eb.uniqueSort,_.text=eb.getText,_.isXMLDoc=eb.isXML,_.contains=eb.contains;var fb=_.expr.match.needsContext,gb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,hb=/^.[^:#\[\.,]*$/;_.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?_.find.matchesSelector(d,a)?[d]:[]:_.find.matches(a,_.grep(b,function(a){return 1===a.nodeType}))},_.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(_(a).filter(function(){for(b=0;c>b;b++)if(_.contains(e[b],this))return!0}));for(b=0;c>b;b++)_.find(a,e[b],d);return d=this.pushStack(c>1?_.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(d(this,a||[],!1))},not:function(a){return this.pushStack(d(this,a||[],!0))},is:function(a){return!!d(this,"string"==typeof a&&fb.test(a)?_(a):a||[],!1).length}});var ib,jb=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,kb=_.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:jb.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||ib).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof _?b[0]:b,_.merge(this,_.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:Z,!0)),gb.test(c[1])&&_.isPlainObject(b))for(c in b)_.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=Z.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=Z,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):_.isFunction(a)?"undefined"!=typeof ib.ready?ib.ready(a):a(_):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),_.makeArray(a,this))};kb.prototype=_.fn,ib=_(Z);var lb=/^(?:parents|prev(?:Until|All))/,mb={children:!0,contents:!0,next:!0,prev:!0};_.extend({dir:function(a,b,c){for(var d=[],e=void 0!==c;(a=a[b])&&9!==a.nodeType;)if(1===a.nodeType){if(e&&_(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),_.fn.extend({has:function(a){var b=_(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(_.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=fb.test(a)||"string"!=typeof a?_(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&_.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?_.unique(f):f)},index:function(a){return a?"string"==typeof a?U.call(_(a),this[0]):U.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(_.unique(_.merge(this.get(),_(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}}),_.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return _.dir(a,"parentNode")},parentsUntil:function(a,b,c){return _.dir(a,"parentNode",c)},next:function(a){return e(a,"nextSibling")},prev:function(a){return e(a,"previousSibling")},nextAll:function(a){return _.dir(a,"nextSibling")},prevAll:function(a){return _.dir(a,"previousSibling")},nextUntil:function(a,b,c){return _.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return _.dir(a,"previousSibling",c)},siblings:function(a){return _.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return _.sibling(a.firstChild)},contents:function(a){return a.contentDocument||_.merge([],a.childNodes)}},function(a,b){_.fn[a]=function(c,d){var e=_.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=_.filter(d,e)),this.length>1&&(mb[a]||_.unique(e),lb.test(a)&&e.reverse()),this.pushStack(e)}});var nb=/\S+/g,ob={};_.Callbacks=function(a){a="string"==typeof a?ob[a]||f(a):_.extend({},a);var b,c,d,e,g,h,i=[],j=!a.once&&[],k=function(f){for(b=a.memory&&f,c=!0,h=e||0,e=0,g=i.length,d=!0;i&&g>h;h++)if(i[h].apply(f[0],f[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,i&&(j?j.length&&k(j.shift()):b?i=[]:l.disable())},l={add:function(){if(i){var c=i.length;!function f(b){_.each(b,function(b,c){var d=_.type(c);"function"===d?a.unique&&l.has(c)||i.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),d?g=i.length:b&&(e=c,k(b))}return this},remove:function(){return i&&_.each(arguments,function(a,b){for(var c;(c=_.inArray(b,i,c))>-1;)i.splice(c,1),d&&(g>=c&&g--,h>=c&&h--)}),this},has:function(a){return a?_.inArray(a,i)>-1:!(!i||!i.length)},empty:function(){return i=[],g=0,this},disable:function(){return i=j=b=void 0,this},disabled:function(){return!i},lock:function(){return j=void 0,b||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return!i||c&&!j||(b=b||[],b=[a,b.slice?b.slice():b],d?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!c}};return l},_.extend({Deferred:function(a){var b=[["resolve","done",_.Callbacks("once memory"),"resolved"],["reject","fail",_.Callbacks("once memory"),"rejected"],["notify","progress",_.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return _.Deferred(function(c){_.each(b,function(b,f){var g=_.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&_.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?_.extend(a,d):d}},e={};return d.pipe=d.then,_.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b,c,d,e=0,f=R.call(arguments),g=f.length,h=1!==g||a&&_.isFunction(a.promise)?g:0,i=1===h?a:_.Deferred(),j=function(a,c,d){return function(e){c[a]=this,d[a]=arguments.length>1?R.call(arguments):e,d===b?i.notifyWith(c,d):--h||i.resolveWith(c,d)}};if(g>1)for(b=new Array(g),c=new Array(g),d=new Array(g);g>e;e++)f[e]&&_.isFunction(f[e].promise)?f[e].promise().done(j(e,d,f)).fail(i.reject).progress(j(e,c,b)):--h;return h||i.resolveWith(d,f),i.promise()}});var pb;_.fn.ready=function(a){return _.ready.promise().done(a),this},_.extend({isReady:!1,readyWait:1,holdReady:function(a){a?_.readyWait++:_.ready(!0)},ready:function(a){(a===!0?--_.readyWait:_.isReady)||(_.isReady=!0,a!==!0&&--_.readyWait>0||(pb.resolveWith(Z,[_]),_.fn.triggerHandler&&(_(Z).triggerHandler("ready"),_(Z).off("ready"))))}}),_.ready.promise=function(b){return pb||(pb=_.Deferred(),"complete"===Z.readyState?setTimeout(_.ready):(Z.addEventListener("DOMContentLoaded",g,!1),a.addEventListener("load",g,!1))),pb.promise(b)},_.ready.promise();var qb=_.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===_.type(c)){e=!0;for(h in c)_.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,_.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(_(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};_.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType},h.uid=1,h.accepts=_.acceptData,h.prototype={key:function(a){if(!h.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=h.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,_.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(_.isEmptyObject(f))_.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,_.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{_.isArray(b)?d=b.concat(b.map(_.camelCase)):(e=_.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(nb)||[])),c=d.length;for(;c--;)delete g[d[c]]}},hasData:function(a){return!_.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var rb=new h,sb=new h,tb=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,ub=/([A-Z])/g;_.extend({hasData:function(a){return sb.hasData(a)||rb.hasData(a)},data:function(a,b,c){return sb.access(a,b,c)},removeData:function(a,b){sb.remove(a,b)},_data:function(a,b,c){return rb.access(a,b,c)},_removeData:function(a,b){rb.remove(a,b)}}),_.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=sb.get(f),1===f.nodeType&&!rb.get(f,"hasDataAttrs"))){for(c=g.length;c--;)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=_.camelCase(d.slice(5)),i(f,d,e[d])));rb.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){sb.set(this,a)}):qb(this,function(b){var c,d=_.camelCase(a);if(f&&void 0===b){if(c=sb.get(f,a),void 0!==c)return c;if(c=sb.get(f,d),void 0!==c)return c;if(c=i(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=sb.get(this,d);sb.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&sb.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){sb.remove(this,a)})}}),_.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=rb.get(a,b),c&&(!d||_.isArray(c)?d=rb.access(a,b,_.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=_.queue(a,b),d=c.length,e=c.shift(),f=_._queueHooks(a,b),g=function(){_.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return rb.get(a,c)||rb.access(a,c,{empty:_.Callbacks("once memory").add(function(){rb.remove(a,[b+"queue",c])})})}}),_.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?_.queue(this[0],a):void 0===b?this:this.each(function(){var c=_.queue(this,a,b);_._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&_.dequeue(this,a)})},dequeue:function(a){return this.each(function(){_.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=_.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};for("string"!=typeof a&&(b=a,a=void 0),a=a||"fx";g--;)c=rb.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var vb=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,wb=["Top","Right","Bottom","Left"],xb=function(a,b){return a=b||a,"none"===_.css(a,"display")||!_.contains(a.ownerDocument,a)},yb=/^(?:checkbox|radio)$/i;!function(){var a=Z.createDocumentFragment(),b=a.appendChild(Z.createElement("div")),c=Z.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),Y.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",Y.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var zb="undefined";Y.focusinBubbles="onfocusin"in a;var Ab=/^key/,Bb=/^(?:mouse|pointer|contextmenu)|click/,Cb=/^(?:focusinfocus|focusoutblur)$/,Db=/^([^.]*)(?:\.(.+)|)$/;_.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=rb.get(a);if(q)for(c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=_.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return typeof _!==zb&&_.event.triggered!==b.type?_.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(nb)||[""],j=b.length;j--;)h=Db.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=_.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=_.event.special[n]||{},k=_.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&_.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),_.event.global[n]=!0)},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=rb.hasData(a)&&rb.get(a);if(q&&(i=q.events)){for(b=(b||"").match(nb)||[""],j=b.length;j--;)if(h=Db.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){for(l=_.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;f--;)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||_.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)_.event.remove(a,n+b[j],c,d,!0);_.isEmptyObject(i)&&(delete q.handle,rb.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,j,k,l,m=[d||Z],n=X.call(b,"type")?b.type:b,o=X.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||Z,3!==d.nodeType&&8!==d.nodeType&&!Cb.test(n+_.event.triggered)&&(n.indexOf(".")>=0&&(o=n.split("."),n=o.shift(),o.sort()),j=n.indexOf(":")<0&&"on"+n,b=b[_.expando]?b:new _.Event(n,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=o.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:_.makeArray(c,[b]),l=_.event.special[n]||{},e||!l.trigger||l.trigger.apply(d,c)!==!1)){if(!e&&!l.noBubble&&!_.isWindow(d)){for(i=l.delegateType||n,Cb.test(i+n)||(g=g.parentNode);g;g=g.parentNode)m.push(g),h=g; +h===(d.ownerDocument||Z)&&m.push(h.defaultView||h.parentWindow||a)}for(f=0;(g=m[f++])&&!b.isPropagationStopped();)b.type=f>1?i:l.bindType||n,k=(rb.get(g,"events")||{})[b.type]&&rb.get(g,"handle"),k&&k.apply(g,c),k=j&&g[j],k&&k.apply&&_.acceptData(g)&&(b.result=k.apply(g,c),b.result===!1&&b.preventDefault());return b.type=n,e||b.isDefaultPrevented()||l._default&&l._default.apply(m.pop(),c)!==!1||!_.acceptData(d)||j&&_.isFunction(d[n])&&!_.isWindow(d)&&(h=d[j],h&&(d[j]=null),_.event.triggered=n,d[n](),_.event.triggered=void 0,h&&(d[j]=h)),b.result}},dispatch:function(a){a=_.event.fix(a);var b,c,d,e,f,g=[],h=R.call(arguments),i=(rb.get(this,"events")||{})[a.type]||[],j=_.event.special[a.type]||{};if(h[0]=a,a.delegateTarget=this,!j.preDispatch||j.preDispatch.call(this,a)!==!1){for(g=_.event.handlers.call(this,a,i),b=0;(e=g[b++])&&!a.isPropagationStopped();)for(a.currentTarget=e.elem,c=0;(f=e.handlers[c++])&&!a.isImmediatePropagationStopped();)(!a.namespace_re||a.namespace_re.test(f.namespace))&&(a.handleObj=f,a.data=f.data,d=((_.event.special[f.origType]||{}).handle||f.handler).apply(e.elem,h),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()));return j.postDispatch&&j.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?_(e,this).index(i)>=0:_.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||Z,d=c.documentElement,e=c.body,a.pageX=b.clientX+(d&&d.scrollLeft||e&&e.scrollLeft||0)-(d&&d.clientLeft||e&&e.clientLeft||0),a.pageY=b.clientY+(d&&d.scrollTop||e&&e.scrollTop||0)-(d&&d.clientTop||e&&e.clientTop||0)),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},fix:function(a){if(a[_.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];for(g||(this.fixHooks[e]=g=Bb.test(e)?this.mouseHooks:Ab.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new _.Event(f),b=d.length;b--;)c=d[b],a[c]=f[c];return a.target||(a.target=Z),3===a.target.nodeType&&(a.target=a.target.parentNode),g.filter?g.filter(a,f):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==l()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===l()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&_.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return _.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=_.extend(new _.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?_.event.trigger(e,null,b):_.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},_.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)},_.Event=function(a,b){return this instanceof _.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?j:k):this.type=a,b&&_.extend(this,b),this.timeStamp=a&&a.timeStamp||_.now(),void(this[_.expando]=!0)):new _.Event(a,b)},_.Event.prototype={isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=j,a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=j,a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=j,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},_.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){_.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!_.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),Y.focusinBubbles||_.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){_.event.simulate(b,a.target,_.event.fix(a),!0)};_.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=rb.access(d,b);e||d.addEventListener(a,c,!0),rb.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=rb.access(d,b)-1;e?rb.access(d,b,e):(d.removeEventListener(a,c,!0),rb.remove(d,b))}}}),_.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(g in a)this.on(g,b,c,a[g],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=k;else if(!d)return this;return 1===e&&(f=d,d=function(a){return _().off(a),f.apply(this,arguments)},d.guid=f.guid||(f.guid=_.guid++)),this.each(function(){_.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,_(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=k),this.each(function(){_.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){_.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?_.event.trigger(a,b,c,!0):void 0}});var Eb=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Fb=/<([\w:]+)/,Gb=/<|&#?\w+;/,Hb=/<(?:script|style|link)/i,Ib=/checked\s*(?:[^=]|=\s*.checked.)/i,Jb=/^$|\/(?:java|ecma)script/i,Kb=/^true\/(.*)/,Lb=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,Mb={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Mb.optgroup=Mb.option,Mb.tbody=Mb.tfoot=Mb.colgroup=Mb.caption=Mb.thead,Mb.th=Mb.td,_.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=_.contains(a.ownerDocument,a);if(!(Y.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||_.isXMLDoc(a)))for(g=r(h),f=r(a),d=0,e=f.length;e>d;d++)s(f[d],g[d]);if(b)if(c)for(f=f||r(a),g=g||r(h),d=0,e=f.length;e>d;d++)q(f[d],g[d]);else q(a,h);return g=r(h,"script"),g.length>0&&p(g,!i&&r(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,n=a.length;n>m;m++)if(e=a[m],e||0===e)if("object"===_.type(e))_.merge(l,e.nodeType?[e]:e);else if(Gb.test(e)){for(f=f||k.appendChild(b.createElement("div")),g=(Fb.exec(e)||["",""])[1].toLowerCase(),h=Mb[g]||Mb._default,f.innerHTML=h[1]+e.replace(Eb,"<$1></$2>")+h[2],j=h[0];j--;)f=f.lastChild;_.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));for(k.textContent="",m=0;e=l[m++];)if((!d||-1===_.inArray(e,d))&&(i=_.contains(e.ownerDocument,e),f=r(k.appendChild(e),"script"),i&&p(f),c))for(j=0;e=f[j++];)Jb.test(e.type||"")&&c.push(e);return k},cleanData:function(a){for(var b,c,d,e,f=_.event.special,g=0;void 0!==(c=a[g]);g++){if(_.acceptData(c)&&(e=c[rb.expando],e&&(b=rb.cache[e]))){if(b.events)for(d in b.events)f[d]?_.event.remove(c,d):_.removeEvent(c,d,b.handle);rb.cache[e]&&delete rb.cache[e]}delete sb.cache[c[sb.expando]]}}}),_.fn.extend({text:function(a){return qb(this,function(a){return void 0===a?_.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=m(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=m(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?_.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||_.cleanData(r(c)),c.parentNode&&(b&&_.contains(c.ownerDocument,c)&&p(r(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(_.cleanData(r(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return _.clone(this,a,b)})},html:function(a){return qb(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Hb.test(a)&&!Mb[(Fb.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Eb,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(_.cleanData(r(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,_.cleanData(r(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=S.apply([],a);var c,d,e,f,g,h,i=0,j=this.length,k=this,l=j-1,m=a[0],p=_.isFunction(m);if(p||j>1&&"string"==typeof m&&!Y.checkClone&&Ib.test(m))return this.each(function(c){var d=k.eq(c);p&&(a[0]=m.call(this,c,d.html())),d.domManip(a,b)});if(j&&(c=_.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(e=_.map(r(c,"script"),n),f=e.length;j>i;i++)g=c,i!==l&&(g=_.clone(g,!0,!0),f&&_.merge(e,r(g,"script"))),b.call(this[i],g,i);if(f)for(h=e[e.length-1].ownerDocument,_.map(e,o),i=0;f>i;i++)g=e[i],Jb.test(g.type||"")&&!rb.access(g,"globalEval")&&_.contains(h,g)&&(g.src?_._evalUrl&&_._evalUrl(g.src):_.globalEval(g.textContent.replace(Lb,"")))}return this}}),_.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){_.fn[a]=function(a){for(var c,d=[],e=_(a),f=e.length-1,g=0;f>=g;g++)c=g===f?this:this.clone(!0),_(e[g])[b](c),T.apply(d,c.get());return this.pushStack(d)}});var Nb,Ob={},Pb=/^margin/,Qb=new RegExp("^("+vb+")(?!px)[a-z%]+$","i"),Rb=function(a){return a.ownerDocument.defaultView.getComputedStyle(a,null)};!function(){function b(){g.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",g.innerHTML="",e.appendChild(f);var b=a.getComputedStyle(g,null);c="1%"!==b.top,d="4px"===b.width,e.removeChild(f)}var c,d,e=Z.documentElement,f=Z.createElement("div"),g=Z.createElement("div");g.style&&(g.style.backgroundClip="content-box",g.cloneNode(!0).style.backgroundClip="",Y.clearCloneStyle="content-box"===g.style.backgroundClip,f.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",f.appendChild(g),a.getComputedStyle&&_.extend(Y,{pixelPosition:function(){return b(),c},boxSizingReliable:function(){return null==d&&b(),d},reliableMarginRight:function(){var b,c=g.appendChild(Z.createElement("div"));return c.style.cssText=g.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",g.style.width="1px",e.appendChild(f),b=!parseFloat(a.getComputedStyle(c,null).marginRight),e.removeChild(f),b}}))}(),_.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Sb=/^(none|table(?!-c[ea]).+)/,Tb=new RegExp("^("+vb+")(.*)$","i"),Ub=new RegExp("^([+-])=("+vb+")","i"),Vb={position:"absolute",visibility:"hidden",display:"block"},Wb={letterSpacing:"0",fontWeight:"400"},Xb=["Webkit","O","Moz","ms"];_.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=v(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=_.camelCase(b),i=a.style;return b=_.cssProps[h]||(_.cssProps[h]=x(i,h)),g=_.cssHooks[b]||_.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=Ub.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(_.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||_.cssNumber[h]||(c+="px"),Y.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=_.camelCase(b);return b=_.cssProps[h]||(_.cssProps[h]=x(a.style,h)),g=_.cssHooks[b]||_.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=v(a,b,d)),"normal"===e&&b in Wb&&(e=Wb[b]),""===c||c?(f=parseFloat(e),c===!0||_.isNumeric(f)?f||0:e):e}}),_.each(["height","width"],function(a,b){_.cssHooks[b]={get:function(a,c,d){return c?Sb.test(_.css(a,"display"))&&0===a.offsetWidth?_.swap(a,Vb,function(){return A(a,b,d)}):A(a,b,d):void 0},set:function(a,c,d){var e=d&&Rb(a);return y(a,c,d?z(a,b,d,"border-box"===_.css(a,"boxSizing",!1,e),e):0)}}}),_.cssHooks.marginRight=w(Y.reliableMarginRight,function(a,b){return b?_.swap(a,{display:"inline-block"},v,[a,"marginRight"]):void 0}),_.each({margin:"",padding:"",border:"Width"},function(a,b){_.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+wb[d]+b]=f[d]||f[d-2]||f[0];return e}},Pb.test(a)||(_.cssHooks[a+b].set=y)}),_.fn.extend({css:function(a,b){return qb(this,function(a,b,c){var d,e,f={},g=0;if(_.isArray(b)){for(d=Rb(a),e=b.length;e>g;g++)f[b[g]]=_.css(a,b[g],!1,d);return f}return void 0!==c?_.style(a,b,c):_.css(a,b)},a,b,arguments.length>1)},show:function(){return B(this,!0)},hide:function(){return B(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){xb(this)?_(this).show():_(this).hide()})}}),_.Tween=C,C.prototype={constructor:C,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(_.cssNumber[c]?"":"px")},cur:function(){var a=C.propHooks[this.prop];return a&&a.get?a.get(this):C.propHooks._default.get(this)},run:function(a){var b,c=C.propHooks[this.prop];return this.pos=b=this.options.duration?_.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):C.propHooks._default.set(this),this}},C.prototype.init.prototype=C.prototype,C.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=_.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){_.fx.step[a.prop]?_.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[_.cssProps[a.prop]]||_.cssHooks[a.prop])?_.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},C.propHooks.scrollTop=C.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},_.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},_.fx=C.prototype.init,_.fx.step={};var Yb,Zb,$b=/^(?:toggle|show|hide)$/,_b=new RegExp("^(?:([+-])=|)("+vb+")([a-z%]*)$","i"),ac=/queueHooks$/,bc=[G],cc={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=_b.exec(b),f=e&&e[3]||(_.cssNumber[a]?"":"px"),g=(_.cssNumber[a]||"px"!==f&&+d)&&_b.exec(_.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,_.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};_.Animation=_.extend(I,{tweener:function(a,b){_.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],cc[c]=cc[c]||[],cc[c].unshift(b)},prefilter:function(a,b){b?bc.unshift(a):bc.push(a)}}),_.speed=function(a,b,c){var d=a&&"object"==typeof a?_.extend({},a):{complete:c||!c&&b||_.isFunction(a)&&a,duration:a,easing:c&&b||b&&!_.isFunction(b)&&b};return d.duration=_.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in _.fx.speeds?_.fx.speeds[d.duration]:_.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){_.isFunction(d.old)&&d.old.call(this),d.queue&&_.dequeue(this,d.queue)},d},_.fn.extend({fadeTo:function(a,b,c,d){return this.filter(xb).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=_.isEmptyObject(a),f=_.speed(b,c,d),g=function(){var b=I(this,_.extend({},a),f);(e||rb.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=_.timers,g=rb.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&ac.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&_.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=rb.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=_.timers,g=d?d.length:0;for(c.finish=!0,_.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),_.each(["toggle","show","hide"],function(a,b){var c=_.fn[b];_.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(E(b,!0),a,d,e)}}),_.each({slideDown:E("show"),slideUp:E("hide"),slideToggle:E("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){_.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),_.timers=[],_.fx.tick=function(){var a,b=0,c=_.timers;for(Yb=_.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||_.fx.stop(),Yb=void 0},_.fx.timer=function(a){_.timers.push(a),a()?_.fx.start():_.timers.pop()},_.fx.interval=13,_.fx.start=function(){Zb||(Zb=setInterval(_.fx.tick,_.fx.interval))},_.fx.stop=function(){clearInterval(Zb),Zb=null},_.fx.speeds={slow:600,fast:200,_default:400},_.fn.delay=function(a,b){return a=_.fx?_.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a=Z.createElement("input"),b=Z.createElement("select"),c=b.appendChild(Z.createElement("option"));a.type="checkbox",Y.checkOn=""!==a.value,Y.optSelected=c.selected,b.disabled=!0,Y.optDisabled=!c.disabled,a=Z.createElement("input"),a.value="t",a.type="radio",Y.radioValue="t"===a.value}();var dc,ec,fc=_.expr.attrHandle;_.fn.extend({attr:function(a,b){return qb(this,_.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){_.removeAttr(this,a)})}}),_.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===zb?_.prop(a,b,c):(1===f&&_.isXMLDoc(a)||(b=b.toLowerCase(),d=_.attrHooks[b]||(_.expr.match.bool.test(b)?ec:dc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=_.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void _.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(nb);if(f&&1===a.nodeType)for(;c=f[e++];)d=_.propFix[c]||c,_.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)},attrHooks:{type:{set:function(a,b){if(!Y.radioValue&&"radio"===b&&_.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),ec={set:function(a,b,c){return b===!1?_.removeAttr(a,c):a.setAttribute(c,c),c}},_.each(_.expr.match.bool.source.match(/\w+/g),function(a,b){var c=fc[b]||_.find.attr;fc[b]=function(a,b,d){var e,f;return d||(f=fc[b],fc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,fc[b]=f),e}});var gc=/^(?:input|select|textarea|button)$/i;_.fn.extend({prop:function(a,b){return qb(this,_.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[_.propFix[a]||a]})}}),_.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!_.isXMLDoc(a),f&&(b=_.propFix[b]||b,e=_.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){return a.hasAttribute("tabindex")||gc.test(a.nodeName)||a.href?a.tabIndex:-1}}}}),Y.optSelected||(_.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null}}),_.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){_.propFix[this.toLowerCase()]=this});var hc=/[\t\r\n\f]/g;_.fn.extend({addClass:function(a){var b,c,d,e,f,g,h="string"==typeof a&&a,i=0,j=this.length;if(_.isFunction(a))return this.each(function(b){_(this).addClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(nb)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(hc," "):" ")){for(f=0;e=b[f++];)d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=_.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0===arguments.length||"string"==typeof a&&a,i=0,j=this.length;if(_.isFunction(a))return this.each(function(b){_(this).removeClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(nb)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(hc," "):"")){for(f=0;e=b[f++];)for(;d.indexOf(" "+e+" ")>=0;)d=d.replace(" "+e+" "," ");g=a?_.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(_.isFunction(a)?function(c){_(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c)for(var b,d=0,e=_(this),f=a.match(nb)||[];b=f[d++];)e.hasClass(b)?e.removeClass(b):e.addClass(b);else(c===zb||"boolean"===c)&&(this.className&&rb.set(this,"__className__",this.className),this.className=this.className||a===!1?"":rb.get(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(hc," ").indexOf(b)>=0)return!0;return!1}});var ic=/\r/g;_.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=_.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,_(this).val()):a,null==e?e="":"number"==typeof e?e+="":_.isArray(e)&&(e=_.map(e,function(a){return null==a?"":a+""})),b=_.valHooks[this.type]||_.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=_.valHooks[e.type]||_.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(ic,""):null==c?"":c)}}}),_.extend({valHooks:{option:{get:function(a){var b=_.find.attr(a,"value");return null!=b?b:_.trim(_.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(Y.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&_.nodeName(c.parentNode,"optgroup"))){if(b=_(c).val(),f)return b;g.push(b)}return g},set:function(a,b){for(var c,d,e=a.options,f=_.makeArray(b),g=e.length;g--;)d=e[g],(d.selected=_.inArray(d.value,f)>=0)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),_.each(["radio","checkbox"],function(){_.valHooks[this]={set:function(a,b){return _.isArray(b)?a.checked=_.inArray(_(a).val(),b)>=0:void 0}},Y.checkOn||(_.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})}),_.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){_.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),_.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var jc=_.now(),kc=/\?/;_.parseJSON=function(a){return JSON.parse(a+"")},_.parseXML=function(a){var b,c;if(!a||"string"!=typeof a)return null;try{c=new DOMParser,b=c.parseFromString(a,"text/xml")}catch(d){b=void 0}return(!b||b.getElementsByTagName("parsererror").length)&&_.error("Invalid XML: "+a),b};var lc,mc,nc=/#.*$/,oc=/([?&])_=[^&]*/,pc=/^(.*?):[ \t]*([^\r\n]*)$/gm,qc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,rc=/^(?:GET|HEAD)$/,sc=/^\/\//,tc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,uc={},vc={},wc="*/".concat("*");try{mc=location.href}catch(xc){mc=Z.createElement("a"),mc.href="",mc=mc.href}lc=tc.exec(mc.toLowerCase())||[],_.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:mc,type:"GET",isLocal:qc.test(lc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":wc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":_.parseJSON,"text xml":_.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?L(L(a,_.ajaxSettings),b):L(_.ajaxSettings,a)},ajaxPrefilter:J(uc),ajaxTransport:J(vc),ajax:function(a,b){function c(a,b,c,g){var i,k,r,s,u,w=b;2!==t&&(t=2,h&&clearTimeout(h),d=void 0,f=g||"",v.readyState=a>0?4:0,i=a>=200&&300>a||304===a,c&&(s=M(l,v,c)),s=N(l,s,v,i),i?(l.ifModified&&(u=v.getResponseHeader("Last-Modified"),u&&(_.lastModified[e]=u),u=v.getResponseHeader("etag"),u&&(_.etag[e]=u)),204===a||"HEAD"===l.type?w="nocontent":304===a?w="notmodified":(w=s.state,k=s.data,r=s.error,i=!r)):(r=w,(a||!w)&&(w="error",0>a&&(a=0))),v.status=a,v.statusText=(b||w)+"",i?o.resolveWith(m,[k,w,v]):o.rejectWith(m,[v,w,r]),v.statusCode(q),q=void 0,j&&n.trigger(i?"ajaxSuccess":"ajaxError",[v,l,i?k:r]),p.fireWith(m,[v,w]),j&&(n.trigger("ajaxComplete",[v,l]),--_.active||_.event.trigger("ajaxStop")))}"object"==typeof a&&(b=a,a=void 0),b=b||{};var d,e,f,g,h,i,j,k,l=_.ajaxSetup({},b),m=l.context||l,n=l.context&&(m.nodeType||m.jquery)?_(m):_.event,o=_.Deferred(),p=_.Callbacks("once memory"),q=l.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!g)for(g={};b=pc.exec(f);)g[b[1].toLowerCase()]=b[2];b=g[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(l.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return d&&d.abort(b),c(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,l.url=((a||l.url||mc)+"").replace(nc,"").replace(sc,lc[1]+"//"),l.type=b.method||b.type||l.method||l.type,l.dataTypes=_.trim(l.dataType||"*").toLowerCase().match(nb)||[""],null==l.crossDomain&&(i=tc.exec(l.url.toLowerCase()),l.crossDomain=!(!i||i[1]===lc[1]&&i[2]===lc[2]&&(i[3]||("http:"===i[1]?"80":"443"))===(lc[3]||("http:"===lc[1]?"80":"443")))),l.data&&l.processData&&"string"!=typeof l.data&&(l.data=_.param(l.data,l.traditional)),K(uc,l,b,v),2===t)return v;j=l.global,j&&0===_.active++&&_.event.trigger("ajaxStart"),l.type=l.type.toUpperCase(),l.hasContent=!rc.test(l.type),e=l.url,l.hasContent||(l.data&&(e=l.url+=(kc.test(e)?"&":"?")+l.data,delete l.data),l.cache===!1&&(l.url=oc.test(e)?e.replace(oc,"$1_="+jc++):e+(kc.test(e)?"&":"?")+"_="+jc++)),l.ifModified&&(_.lastModified[e]&&v.setRequestHeader("If-Modified-Since",_.lastModified[e]),_.etag[e]&&v.setRequestHeader("If-None-Match",_.etag[e])),(l.data&&l.hasContent&&l.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",l.contentType),v.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+("*"!==l.dataTypes[0]?", "+wc+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)v.setRequestHeader(k,l.headers[k]);if(l.beforeSend&&(l.beforeSend.call(m,v,l)===!1||2===t))return v.abort();u="abort";for(k in{success:1,error:1,complete:1})v[k](l[k]);if(d=K(vc,l,b,v)){v.readyState=1,j&&n.trigger("ajaxSend",[v,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){v.abort("timeout")},l.timeout));try{t=1,d.send(r,c)}catch(w){if(!(2>t))throw w;c(-1,w)}}else c(-1,"No Transport");return v},getJSON:function(a,b,c){return _.get(a,b,c,"json")},getScript:function(a,b){return _.get(a,void 0,b,"script")}}),_.each(["get","post"],function(a,b){_[b]=function(a,c,d,e){return _.isFunction(c)&&(e=e||d,d=c,c=void 0),_.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),_.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){_.fn[b]=function(a){return this.on(b,a)}}),_._evalUrl=function(a){return _.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},_.fn.extend({wrapAll:function(a){var b;return _.isFunction(a)?this.each(function(b){_(this).wrapAll(a.call(this,b))}):(this[0]&&(b=_(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){for(var a=this;a.firstElementChild;)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return this.each(_.isFunction(a)?function(b){_(this).wrapInner(a.call(this,b))}:function(){var b=_(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=_.isFunction(a);return this.each(function(c){_(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){_.nodeName(this,"body")||_(this).replaceWith(this.childNodes)}).end()}}),_.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0},_.expr.filters.visible=function(a){return!_.expr.filters.hidden(a)};var yc=/%20/g,zc=/\[\]$/,Ac=/\r?\n/g,Bc=/^(?:submit|button|image|reset|file)$/i,Cc=/^(?:input|select|textarea|keygen)/i;_.param=function(a,b){var c,d=[],e=function(a,b){b=_.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=_.ajaxSettings&&_.ajaxSettings.traditional),_.isArray(a)||a.jquery&&!_.isPlainObject(a))_.each(a,function(){e(this.name,this.value) +});else for(c in a)O(c,a[c],b,e);return d.join("&").replace(yc,"+")},_.fn.extend({serialize:function(){return _.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=_.prop(this,"elements");return a?_.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!_(this).is(":disabled")&&Cc.test(this.nodeName)&&!Bc.test(a)&&(this.checked||!yb.test(a))}).map(function(a,b){var c=_(this).val();return null==c?null:_.isArray(c)?_.map(c,function(a){return{name:b.name,value:a.replace(Ac,"\r\n")}}):{name:b.name,value:c.replace(Ac,"\r\n")}}).get()}}),_.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(a){}};var Dc=0,Ec={},Fc={0:200,1223:204},Gc=_.ajaxSettings.xhr();a.ActiveXObject&&_(a).on("unload",function(){for(var a in Ec)Ec[a]()}),Y.cors=!!Gc&&"withCredentials"in Gc,Y.ajax=Gc=!!Gc,_.ajaxTransport(function(a){var b;return Y.cors||Gc&&!a.crossDomain?{send:function(c,d){var e,f=a.xhr(),g=++Dc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)f.setRequestHeader(e,c[e]);b=function(a){return function(){b&&(delete Ec[g],b=f.onload=f.onerror=null,"abort"===a?f.abort():"error"===a?d(f.status,f.statusText):d(Fc[f.status]||f.status,f.statusText,"string"==typeof f.responseText?{text:f.responseText}:void 0,f.getAllResponseHeaders()))}},f.onload=b(),f.onerror=b("error"),b=Ec[g]=b("abort");try{f.send(a.hasContent&&a.data||null)}catch(h){if(b)throw h}},abort:function(){b&&b()}}:void 0}),_.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return _.globalEval(a),a}}}),_.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),_.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(d,e){b=_("<script>").prop({async:!0,charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&e("error"===a.type?404:200,a.type)}),Z.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Hc=[],Ic=/(=)\?(?=&|$)|\?\?/;_.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Hc.pop()||_.expando+"_"+jc++;return this[a]=!0,a}}),_.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Ic.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ic.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=_.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Ic,"$1"+e):b.jsonp!==!1&&(b.url+=(kc.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||_.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Hc.push(e)),g&&_.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),_.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||Z;var d=gb.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=_.buildFragment([a],b,e),e&&e.length&&_(e).remove(),_.merge([],d.childNodes))};var Jc=_.fn.load;_.fn.load=function(a,b,c){if("string"!=typeof a&&Jc)return Jc.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=_.trim(a.slice(h)),a=a.slice(0,h)),_.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&_.ajax({url:a,type:e,dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?_("<div>").append(_.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,f||[a.responseText,b,a])}),this},_.expr.filters.animated=function(a){return _.grep(_.timers,function(b){return a===b.elem}).length};var Kc=a.document.documentElement;_.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=_.css(a,"position"),l=_(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=_.css(a,"top"),i=_.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),_.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},_.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){_.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,_.contains(b,d)?(typeof d.getBoundingClientRect!==zb&&(e=d.getBoundingClientRect()),c=P(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===_.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),_.nodeName(a[0],"html")||(d=a.offset()),d.top+=_.css(a[0],"borderTopWidth",!0),d.left+=_.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-_.css(c,"marginTop",!0),left:b.left-d.left-_.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||Kc;a&&!_.nodeName(a,"html")&&"static"===_.css(a,"position");)a=a.offsetParent;return a||Kc})}}),_.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b,c){var d="pageYOffset"===c;_.fn[b]=function(e){return qb(this,function(b,e,f){var g=P(b);return void 0===f?g?g[c]:b[e]:void(g?g.scrollTo(d?a.pageXOffset:f,d?f:a.pageYOffset):b[e]=f)},b,e,arguments.length,null)}}),_.each(["top","left"],function(a,b){_.cssHooks[b]=w(Y.pixelPosition,function(a,c){return c?(c=v(a,b),Qb.test(c)?_(a).position()[b]+"px":c):void 0})}),_.each({Height:"height",Width:"width"},function(a,b){_.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){_.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return qb(this,function(b,c,d){var e;return _.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?_.css(b,c,g):_.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),_.fn.size=function(){return this.length},_.fn.andSelf=_.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return _});var Lc=a.jQuery,Mc=a.$;return _.noConflict=function(b){return a.$===_&&(a.$=Mc),b&&a.jQuery===_&&(a.jQuery=Lc),_},typeof b===zb&&(a.jQuery=a.$=_),_}); diff --git a/resources/foundation/js/vendor/modernizr.js b/resources/foundation/js/vendor/modernizr.js new file mode 100644 index 0000000..54dbd54 --- /dev/null +++ b/resources/foundation/js/vendor/modernizr.js @@ -0,0 +1,8 @@ +/*! + * Modernizr v2.8.3 + * www.modernizr.com + * + * Copyright (c) Faruk Ates, Paul Irish, Alex Sexton + * Available under the BSD and MIT licenses: www.modernizr.com/license/ + */ +window.Modernizr=function(a,b,c){function d(a){t.cssText=a}function e(a,b){return d(x.join(a+";")+(b||""))}function f(a,b){return typeof a===b}function g(a,b){return!!~(""+a).indexOf(b)}function h(a,b){for(var d in a){var e=a[d];if(!g(e,"-")&&t[e]!==c)return"pfx"==b?e:!0}return!1}function i(a,b,d){for(var e in a){var g=b[a[e]];if(g!==c)return d===!1?a[e]:f(g,"function")?g.bind(d||b):g}return!1}function j(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+z.join(d+" ")+d).split(" ");return f(b,"string")||f(b,"undefined")?h(e,b):(e=(a+" "+A.join(d+" ")+d).split(" "),i(e,b,c))}function k(){o.input=function(c){for(var d=0,e=c.length;e>d;d++)E[c[d]]=!!(c[d]in u);return E.list&&(E.list=!(!b.createElement("datalist")||!a.HTMLDataListElement)),E}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),o.inputtypes=function(a){for(var d,e,f,g=0,h=a.length;h>g;g++)u.setAttribute("type",e=a[g]),d="text"!==u.type,d&&(u.value=v,u.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(e)&&u.style.WebkitAppearance!==c?(q.appendChild(u),f=b.defaultView,d=f.getComputedStyle&&"textfield"!==f.getComputedStyle(u,null).WebkitAppearance&&0!==u.offsetHeight,q.removeChild(u)):/^(search|tel)$/.test(e)||(d=/^(url|email)$/.test(e)?u.checkValidity&&u.checkValidity()===!1:u.value!=v)),D[a[g]]=!!d;return D}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var l,m,n="2.8.3",o={},p=!0,q=b.documentElement,r="modernizr",s=b.createElement(r),t=s.style,u=b.createElement("input"),v=":)",w={}.toString,x=" -webkit- -moz- -o- -ms- ".split(" "),y="Webkit Moz O ms",z=y.split(" "),A=y.toLowerCase().split(" "),B={svg:"http://www.w3.org/2000/svg"},C={},D={},E={},F=[],G=F.slice,H=function(a,c,d,e){var f,g,h,i,j=b.createElement("div"),k=b.body,l=k||b.createElement("body");if(parseInt(d,10))for(;d--;)h=b.createElement("div"),h.id=e?e[d]:r+(d+1),j.appendChild(h);return f=["­",'<style id="s',r,'">',a,"</style>"].join(""),j.id=r,(k?j:l).innerHTML+=f,l.appendChild(j),k||(l.style.background="",l.style.overflow="hidden",i=q.style.overflow,q.style.overflow="hidden",q.appendChild(l)),g=c(j,a),k?j.parentNode.removeChild(j):(l.parentNode.removeChild(l),q.style.overflow=i),!!g},I=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return H("@media "+b+" { #"+r+" { position: absolute; } }",function(b){d="absolute"==(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).position}),d},J=function(){function a(a,e){e=e||b.createElement(d[a]||"div"),a="on"+a;var g=a in e;return g||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(a,""),g=f(e[a],"function"),f(e[a],"undefined")||(e[a]=c),e.removeAttribute(a))),e=null,g}var d={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return a}(),K={}.hasOwnProperty;m=f(K,"undefined")||f(K.call,"undefined")?function(a,b){return b in a&&f(a.constructor.prototype[b],"undefined")}:function(a,b){return K.call(a,b)},Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError;var c=G.call(arguments,1),d=function(){if(this instanceof d){var e=function(){};e.prototype=b.prototype;var f=new e,g=b.apply(f,c.concat(G.call(arguments)));return Object(g)===g?g:f}return b.apply(a,c.concat(G.call(arguments)))};return d}),C.flexbox=function(){return j("flexWrap")},C.flexboxlegacy=function(){return j("boxDirection")},C.canvas=function(){var a=b.createElement("canvas");return!(!a.getContext||!a.getContext("2d"))},C.canvastext=function(){return!(!o.canvas||!f(b.createElement("canvas").getContext("2d").fillText,"function"))},C.webgl=function(){return!!a.WebGLRenderingContext},C.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:H(["@media (",x.join("touch-enabled),("),r,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=9===a.offsetTop}),c},C.geolocation=function(){return"geolocation"in navigator},C.postmessage=function(){return!!a.postMessage},C.websqldatabase=function(){return!!a.openDatabase},C.indexedDB=function(){return!!j("indexedDB",a)},C.hashchange=function(){return J("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},C.history=function(){return!(!a.history||!history.pushState)},C.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},C.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},C.rgba=function(){return d("background-color:rgba(150,255,150,.5)"),g(t.backgroundColor,"rgba")},C.hsla=function(){return d("background-color:hsla(120,40%,100%,.5)"),g(t.backgroundColor,"rgba")||g(t.backgroundColor,"hsla")},C.multiplebgs=function(){return d("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(t.background)},C.backgroundsize=function(){return j("backgroundSize")},C.borderimage=function(){return j("borderImage")},C.borderradius=function(){return j("borderRadius")},C.boxshadow=function(){return j("boxShadow")},C.textshadow=function(){return""===b.createElement("div").style.textShadow},C.opacity=function(){return e("opacity:.55"),/^0.55$/.test(t.opacity)},C.cssanimations=function(){return j("animationName")},C.csscolumns=function(){return j("columnCount")},C.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return d((a+"-webkit- ".split(" ").join(b+a)+x.join(c+a)).slice(0,-a.length)),g(t.backgroundImage,"gradient")},C.cssreflections=function(){return j("boxReflect")},C.csstransforms=function(){return!!j("transform")},C.csstransforms3d=function(){var a=!!j("perspective");return a&&"webkitPerspective"in q.style&&H("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b){a=9===b.offsetLeft&&3===b.offsetHeight}),a},C.csstransitions=function(){return j("transition")},C.fontface=function(){var a;return H('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&0===g.indexOf(d.split(" ")[0])}),a},C.generatedcontent=function(){var a;return H(["#",r,"{font:0/0 a}#",r,':after{content:"',v,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},C.video=function(){var a=b.createElement("video"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(d){}return c},C.audio=function(){var a=b.createElement("audio"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(d){}return c},C.localstorage=function(){try{return localStorage.setItem(r,r),localStorage.removeItem(r),!0}catch(a){return!1}},C.sessionstorage=function(){try{return sessionStorage.setItem(r,r),sessionStorage.removeItem(r),!0}catch(a){return!1}},C.webworkers=function(){return!!a.Worker},C.applicationcache=function(){return!!a.applicationCache},C.svg=function(){return!!b.createElementNS&&!!b.createElementNS(B.svg,"svg").createSVGRect},C.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==B.svg},C.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(w.call(b.createElementNS(B.svg,"animate")))},C.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(w.call(b.createElementNS(B.svg,"clipPath")))};for(var L in C)m(C,L)&&(l=L.toLowerCase(),o[l]=C[L](),F.push((o[l]?"":"no-")+l));return o.input||k(),o.addTest=function(a,b){if("object"==typeof a)for(var d in a)m(a,d)&&o.addTest(d,a[d]);else{if(a=a.toLowerCase(),o[a]!==c)return o;b="function"==typeof b?b():b,"undefined"!=typeof p&&p&&(q.className+=" "+(b?"":"no-")+a),o[a]=b}return o},d(""),s=u=null,function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=s.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=r[a[p]];return b||(b={},q++,a[p]=q,r[q]=b),b}function f(a,c,d){if(c||(c=b),k)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():o.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!f.canHaveChildren||n.test(a)||f.tagUrn?f:d.frag.appendChild(f)}function g(a,c){if(a||(a=b),k)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function i(a){a||(a=b);var d=e(a);return!s.shivCSS||j||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||h(a,d),a}var j,k,l="3.7.0",m=a.html5||{},n=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,o=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,p="_html5shiv",q=0,r={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",j="hidden"in a,k=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){j=!0,k=!0}}();var s={elements:m.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:l,shivCSS:m.shivCSS!==!1,supportsUnknownElements:k,shivMethods:m.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=s,i(b)}(this,b),o._version=n,o._prefixes=x,o._domPrefixes=A,o._cssomPrefixes=z,o.mq=I,o.hasEvent=J,o.testProp=function(a){return h([a])},o.testAllProps=j,o.testStyles=H,o.prefixed=function(a,b,c){return b?j(a,b,c):j(a,"pfx")},q.className=q.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" js "+F.join(" "):""),o}(this,this.document); diff --git a/resources/foundation/js/vendor/placeholder.js b/resources/foundation/js/vendor/placeholder.js new file mode 100644 index 0000000..25b4dec --- /dev/null +++ b/resources/foundation/js/vendor/placeholder.js @@ -0,0 +1,2 @@ +/*! http://mths.be/placeholder v2.0.8 by @mathias */ +!function(a,b,c){function d(a){var b={},d=/^jQuery\d+$/;return c.each(a.attributes,function(a,c){c.specified&&!d.test(c.name)&&(b[c.name]=c.value)}),b}function e(a,b){var d=this,e=c(d);if(d.value==e.attr("placeholder")&&e.hasClass("placeholder"))if(e.data("placeholder-password")){if(e=e.hide().next().show().attr("id",e.removeAttr("id").data("placeholder-id")),a===!0)return e[0].value=b;e.focus()}else d.value="",e.removeClass("placeholder"),d==g()&&d.select()}function f(){var a,b=this,f=c(b),g=this.id;if(""==b.value){if("password"==b.type){if(!f.data("placeholder-textinput")){try{a=f.clone().attr({type:"text"})}catch(h){a=c("<input>").attr(c.extend(d(this),{type:"text"}))}a.removeAttr("name").data({"placeholder-password":f,"placeholder-id":g}).bind("focus.placeholder",e),f.data({"placeholder-textinput":a,"placeholder-id":g}).before(a)}f=f.removeAttr("id").hide().prev().attr("id",g).show()}f.addClass("placeholder"),f[0].value=f.attr("placeholder")}else f.removeClass("placeholder")}function g(){try{return b.activeElement}catch(a){}}var h,i,j="[object OperaMini]"==Object.prototype.toString.call(a.operamini),k="placeholder"in b.createElement("input")&&!j,l="placeholder"in b.createElement("textarea")&&!j,m=c.fn,n=c.valHooks,o=c.propHooks;k&&l?(i=m.placeholder=function(){return this},i.input=i.textarea=!0):(i=m.placeholder=function(){var a=this;return a.filter((k?"textarea":":input")+"[placeholder]").not(".placeholder").bind({"focus.placeholder":e,"blur.placeholder":f}).data("placeholder-enabled",!0).trigger("blur.placeholder"),a},i.input=k,i.textarea=l,h={get:function(a){var b=c(a),d=b.data("placeholder-password");return d?d[0].value:b.data("placeholder-enabled")&&b.hasClass("placeholder")?"":a.value},set:function(a,b){var d=c(a),h=d.data("placeholder-password");return h?h[0].value=b:d.data("placeholder-enabled")?(""==b?(a.value=b,a!=g()&&f.call(a)):d.hasClass("placeholder")?e.call(a,!0,b)||(a.value=b):a.value=b,d):a.value=b}},k||(n.input=h,o.value=h),l||(n.textarea=h,o.value=h),c(function(){c(b).delegate("form","submit.placeholder",function(){var a=c(".placeholder",this).each(e);setTimeout(function(){a.each(f)},10)})}),c(a).bind("beforeunload.placeholder",function(){c(".placeholder").each(function(){this.value=""})}))}(this,document,jQuery); diff --git a/resources/foundation/robots.txt b/resources/foundation/robots.txt new file mode 100644 index 0000000..214e411 --- /dev/null +++ b/resources/foundation/robots.txt @@ -0,0 +1,4 @@ +# www.robotstxt.org/ +# www.google.com/support/webmasters/bin/answer.py?hl=en&answer=156449 + +User-agent: * diff --git a/resources/images/edugain_logo.png b/resources/images/edugain_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6c1648d2bd56eedc308fe2a6ddb97ca0ec2f1f08 GIT binary patch literal 16534 zcmd73i96I$8#ivtnru;7vads>NG1DDMHpilOUj<5v6P+cr0hc05Qbqe)eutloebGh znXxaCA^UqqJ<t36uIu*)ymMV;%y*o7Irsg!mvf&OgF9M`^qll$WMqsw+Uka6WRx)Q zewvmV{Lk4b{uTTn_cYW}B}4UbFMwaD98_+rkddKZFznwu0e+|R&^GfVBRln(^pCvV zz2pHInKDF2UB&o`)k=0u`U4G2<#g`GVf5qax+O~uJ7eb4%y@dZ@vF1LNCBfOT{e`l z1Giu)D$4c-`A#AcZuWH<;cm=@<e@0kDvIBwr>Cs^`QxopPd=m{><)Tck!5bb5filJ zSK7n&sJa?5)BTlYy@?wza{O}VBXLi9@sZ(4LXlonA#n2JH)J7X36Q_<$e76xB=$)! z3T4#sPrx`?2m8Obv}9O{e{aeEUs_Z`+hyKTZhI>Zg?6gQI#^<KoBhV{b)bJ<`Zw=~ zA3kzRV>SPT<xW5*sTryxjDu${$OTS_yZuZ$I(uz%e|AY<wf3)QHX-oTgpv8T#!rin zUUm!@#hj&c*eFx`a!yK{<L@_eDX<cB3`X}+>qF*p-k%>&w%El`oeLi?U{(949lV5} z<H~SP;2ELn-x;4&1OI-Ux2TK~2)8eFWW?cdQRr$Tbw1PMC&v#8Fb9@$HLJRE>qvD+ zijzd9<3}N76xi4h<FeJJ5cbT3%f7w$zT*GxfiXu1^kbnR@eRWyzLM=xj1W=Ot;6r{ zUnyfk;3ql?j4fYwbUC~}SwTnnmyWYCio*7u*93TyqpjOgs`Ti-kJex2jA=TcWQFxd z!m6KQbjzE^|JsCsEFbKID#cKMZ$(z!>Lt0IEOlMo6zt<FS^48XE8$2$K7DyK%H_5@ zyH;&$7}=wUu=9EIZ%N9IRB2<1Yrp3h*vQ9_!x?p}zm}i>-H8(F1c+MZMJ2pQr8fSx zKtAJ*zkgFgp8%nBbRjO(>w71|M27C>8!QO^eFP;(6w$hx4n8?_Gr3uoFbiR_tEBq- zh(LoVQomv0-Tl~Xp+xteY3AuFqrw*)-p1lxwgw?abo}Qm&RY1!vmOMj=3cDZ-Q}7Z zc4u;^JY#Nuh`2Z6|97P>CcG|l(rYhQTxNg8%Q3Cd!lc?u3TX;1m*zRYybE~YDwxu9 z)8p=l#sB?!^emDI+lgc?wYj|al~e90zi;+buathZYh*$O4gX)?%e$eBx|x4YEGe2` zD;>DBZMdF)S;f_{?cw5M>xtJ)8Z`eLuZ#-cMVT3IenFPVC|5V~tA0#ynf7kg|42k# zxc+I%ZDUbgpgO^L2laX*q7c=fuMuU%_LrkF3VfNqc3$zCf^2G3>2$D^rHkF&-BCz) zQDw(~%U?TChK9h2D(2KrKC`%OWcJtZ8nyNtKT4P<1WMlc2L=Yhd@zNfC+lu<zOL^L zad*Cr7QDu&3H+tOPk~*e=%wl{ZxFlf^2BA!`g0`yMKaG)%ZA_I-Q^?4mr*j@S96<f z{4%*;&sB58$~3%Is_qec^6v^z3IvAYw}o8YtP2x%%JauVlR>88?b0RIPI0j>?}C+< z=>C2Wr)-Q`<XY`JgiR(Gv|0^m9?TWCOAwn-oqoUzl#@s1ua0v1jmlaF56NDwxP4`B zlxwo5;f&YqgN%Ab-@bhs_rg)Lm-POY(qv@e&r0C9pv05q?l*fenvvB<6tNE$gBuM@ z9cKYoA(BE$LaJ9>Dm}iu%l;{HVTTDbK-3x19xt&3tW2?_Bgc2FwZA;^4&1U<xqEAR zJ<udTa%eoXS5o=qE8oL|pXAC6nW+NUd^3?dA?0cZ+IEnIGiSMza9iipdk2;uuz&wn zX^4Ir1e;tl5Zr9lG5fySFY4*u^wQGzk~+b8vG|K(B68fflW*^N+|wI2@0@#3^&Phl zuI?zDW+qc51RqUQworx$8K-I07#TI~osu755FS=q6z!tji=uuz=~9*|@vQazURo@> zOx4`@Xl$i=IK^Xk#r!50#po{FX7(AWMC7^<M(??or^TahcUevg!-g-A<$vl-bSF#T z%kDMxKe2a@*U!-)dZ_tZ2HaC@?}l@cWZ3*2k8LS-NI4<4kx!g*vSCN)36@jovAbMQ z-#0hEsoTu~p4IhM`bIvP!NDE3EpusKJOT<+jYt-pCi|{tCD0bw(avH1=0xY>NmuSq z4L+ItP8a1T1NB;C1rAT8sC>ZgZRp4#WPP^2q2A6?jgCVn?a%Zwee=Y~yFdCY%5A}q z9iO<#F!ObQDx5)7tC8G>*>TFytkBtaC_}Qm+ZKI+uE%I=NO?7<$X0_Tn5pZMf9q7b zenAovU9<h@zQfAQVt++<PQE_!>T2=fR`i7LEYsB1{ZqPEf<9x$^t*5WCaR-?(rI7Z zD|Wwr*@Y+M(hq!x9N8u%Bf{y&jqQA^w|`C<c2OU!Vn;g#>@G6mSIs0$P803)me&|p za{^e4;PDmX?YH5<krpq9&8X_@69YUN-gd^r{nEG&M?&599>o~*WbIGiLfKo7r6^QS zp5}+eJGgh5)9~H8c7219tU*=SGvD2qKfBhLxyDpnCYoR+7?;u@lThzaYI-*XKFIm; zrNdRM|AvkMLUwOHUZETJwJdPzkA@a@HZ6Xv=D_Jg!`SV~J(_nje=Z7NA7BiYrxS$9 zWI<2Z^J1Sc?F{zqw}1UW70yUfUfvl;2G7;75A^xXTotlqH#FQ$4QGM!f`IZ8?LJBO zU-sOdNzTKUt$$Jr?8JS|(CPa+dV9*#`^JO}ZAHu@IpVJdH~fC`)bllAL!u=sGL_(r z|5;P*kjCqRRn_5(CcpDMfKpl1QQ2bnM%I8~gyoV+K}XWZn|475*uB(Pc8xA*PYrDH z;7{Rcgsk6gklW@NEiCqhpZt?F^@m%njBd+v$jLsorg@*k?{RMJ+idxZDk%G$K#6+Y zoebaaUUI}e^?+wXPfiJk@&z30526yrE)h4Q_z{^|MsJcR9O~Nz=j@oOG%go2M2VsM ztR8LuOdjgMbvWtVnd-l-6r}HiQE+Ok0XhqcpV;}VUUH{v=ncG=3FaVLU&^&5-MinO zRg*?edxj(m8BL2b!T4^K>h;f(BV#dc9@`S^kk~Y&sYB&^|8<=Oyfc1o4?8aFP&d-2 zL051je=y(R_5de0iQ?t`?sG675=wBMJEx>uX?DV=A7@5B)U~M~`ap`3`RXg~9qJH* za(Uew-7NUPUZ_7~EN#UBL~yb}w>7qa5UVPm(MJ84S5X{T*sJPb&ZP3h-1FZx59Jdj zSRwk@%z*EW<!=aYFrLV)M(M=!uVt*QeA`$;626nnx0VvUD1}}#7-8a1p_<L#wm<h{ z6)Is8&Ie105YL|afcd`KEPAgK=dvW<h5K`{>03HHeqS;s4?f8M33_jJg&4EB?2<Nh z<<Wr}74F!T2TonBoL7)}Sx%7;R*Z4|HOVj;2skys#~wzuQaxr;q|-&szH?m>gAwOO zv2Bp0sXwhT56*Stes#7#Xeg(SpL6&5A}9Rwe!}kkrXKSX|F-Y?W`0kgsYN8U<1kaE zRK6$Xy@Au&)T8iApG~%iFrmwnfoC!<r%@xe#n~aMi4fge6n(^L(ZNo3l_;7o{GZYg z(E6pc+Lf|P^;;)R!euTWHBOq@kvV=Qp&FmI`Fkek6$4+Mz%MuFuN%rl7c~3ajp9mg zxOu7NcW;*|u#-2&<+M5|+suZayKBi}1c^6?%QslCob>@v7}og%G&_6Q@k-o67TdaX zN6*364vLl&BtHtlhX{r4<&Dr|w8F@Ar1Q;$miF@goU&IH874lqg8-Dc3$!f+OEJBg z{bP4Exr7k=^5_YYt7*Tbk>EVKpjBV0wd(y_K61z_897CCmdq43pSW5hP?(7A^*_8r zPJ51Id?Cb4PG^0Ww^1mUKqb5E270v6CH*m7O00iMEPH+@J5iMSedC^x1U7Sjrgcm( zT{VhAzoG#viY@R&&3{1p*pDbp-bJ;!*Io60AnVwOc#(DZIcPBh`@6&|?PSPHlBML0 zo2F4Fg_~B~Eg+{JrKw1Hv?b9(^4I^!AObtRyT@?@-V|s^kL_}5tRIWdc|3d`sD1I) z=#xMriF@2rT@()1QvlmIdlbE>A!<WTA3Quq1jyDuf=y7ypv{r$wsw}q_r*=Ug6#x{ zNvlf$4e0|7iNU0MtR5X~0c_Lw)4{GnA^Yfyvz!lbwB2?8sZT9Ww%Bq^Hh#Ntnb$gJ zSKbwI)bqL%F7tF{ROOim0?%b&S&n~Ai|#^Cng<QszOE{S|NkzYG639Eaj(z|fxB39 z(QRG~CYb&zmBeU6O%6N%g3Snh3q5H+aV^elaRRNed3&{)*>NiY*>@aMsC19ccNqf{ z$pt0?MXBZj6Ilk>7<))&(T!_y9ra2<X3WVwcu`JGd{gQ3<=t{+&eRoL1|t>WDF}Wc z&bG2H?4KS!$JJF|PNmjOry3Fw^tyU(`$}#~5kPmjQd5>P_+8Z;=<M!NvJJjW_A*F? z4;oA1cj@lE^F+-?MOAC1=Xx=0S+MQgJw?Y&h9-q-Wnxt(rl8qN%#?B8)>L_#F+S<z zrosH6>vDep>yUpB&FZ&8Ta6BcMon@4C*r86N(XcXLqu)G^<OLwgU26jER9`xP}0;` z`Wn7+V=rn<5ZSy>!)10Z>5j|jNVx{t&oC12i}$2mG{Q0x-ip4<Y}nxW8XnTNCzyLL z=>p?P-+@V{$p)R)*aSkXEyl>H$s>@claJ5{-gG#uZo^&ZXeo<>$7eU_Z{0d4vUa4V zh0TQfTW@tZ4?MBOWMN%{aWXm0<?PX1BnvN#+9XTYi@tJ=qkcM~vGMhp!fD<Wm)9~^ z&&Cj{zJkm{7<hd;(m><Y5>lT&89CB%RnB*68@}>My~HmCIiAT@?a-}EL-#ldIZLx< z_d-&smO3^WY-|O4G|w@C6M_ESfqZ%*#?4jN-idE{!#IolSL$~M$Iq-vD~hW*@jbRS zL<@Lf3&OAYw-UdIMgV=S>5CW=v62m)xZwj>OqyIz;CtN4O>q|FDFn2LX!84L@?%%R zgG?^88ecT;F_nl`GO=NAEt843DC1LO7df)-Xjg7S{<AtYwqRS=@kkLHwA*5g8oK<E zrqT-&hd?jhMsZf6`cZuC!-CsBsStBd%uw@ZyZc+AY*RhFY;=Yv?JJbe9lPlb(+-W2 z8k6f#shDN<-lUJ*Db%ZUkM#lTVDUd)Q8IAeKwA-*G4(a##9G~Wt3Oc^#s&+X#`rAs zoF`uP)Tlr4+|pBL>)A$im5Ymj5=}|*&Uk~F3t7u?UVv*Zki4)N=H;a4ftpT=Azr$N zoZ2_wd@nkw0Cw6GA8UU{jRcYNY;0KPLxr77*grKotmwtNDEmVp3+j%<^L&#UsK_So zysUt#NiGW+xr653$sFwjL;JM@&AMKBGP{styUJ_GS35~Cllk?1_d>=%<GD5V_#|aF z&6qaW<o!Taf3O`uCRKCP{95WrA`AZk7h!jf4T|mRCKC<PvBlNHol?kA>UH;R&S1xb zCRI@DBeTor2u};6*aSLz8g@KJILX#Y*sm;GB}Vs5MMB2@cABUOHt7Q0vd~S=E78*F zAe0EQLkbD8D6ONk_qjVFg<}v@u;SfhWbMgcyZ9GWG0+zXjVRhL_dcZ!WR{`3Vcx08 zAIUGo3DjqV6kjpx*ljf@SErGQ(U2mzF=brRM*`QG@aR@wm~>YvRLACd8!GibWMuHM zRNCgdzr#1yQkJsxjqwr(WM&5$t(#)7E5TMqFPr<;&LZUXuh+eXyDDud%OTdy+#WZ; z39iP~?K+9Z=4ymj>y*a<IK-Jx;g{KYx0$ERq40HpPCn-TkwYJgJV??2G6Odi1;Q_e zzYp3`Cz+UXrhQ*)850O$zY=!Jq4M$X<Q}IYSK7JpZSL={`fKj@9JwTCVFeTUieyGA z`^+iwZXN?F<9nuioh<^V6CmdoFj8I(ZjR;T&%EDgu38n^Mx?=6%xhq^o_2#C2OBXj z;e%d2yPqoWT(}tmC%B+QF35lC-QSTI4e)$z@v;^(wjj#8DgjF=ZBk595OlL2%~`fz z-7he&BHj=aB<U`Nmmxpew?Pj#Xc{%rod<nwEF0du!RN6p03;%mfjkkO8z3M6(>r|R z*9F}(S@!C~;Thl5kBP25`pxTpn`^k(r(4#N;Jhby3emeg-JQcCT48B1waG(MQnd5< zVZ*5|Iuf`Oq7)xaC<PRK>6Sb}dnVrVjo;XFtNY2Rrqgkg4ce{rx3L0UH-PhZiV7ew z_*RZI$PM);`>z_NzK*2?P7VjcNZAbT)OOL*^H-h-7?$&}IT$<g<inLKL?Uu(Guzs@ zvu8XR4aAcAE7pQa|Av8%V)U7XBxT*orLVHOl>RLB1K(HGBupH;Q)lnwYJjx#U_Hjs zjIY<GsL50V%P9}(EDMBtcDI$=`8vWrW-DDU1~zfjf3ZH1q0fhb#m!@obF51j*u(@n zMx(N4Bx^PM@w?!pQLCem2Mf*VigX7@D@rssCzrM-8P)<ernTCOtF?BIePQQ^Vu<j} z-n~<?YWF{mzj)~Ku#n|Ga5Y}wY8EKkg{vDLu4c`|c2Qdd?o^<~<)cF`)ZwP3+v4t8 zSqBa%z@ft1VdJ?Ad?gYWw{zeucUUhpdeMH=No(7yk6jct(R64Bt3MbiPkmD2Zn{#u zrmL>a@8w!0Ds*?}<55!gD3&b<Aur#tD(jFF+*D6|?qC#}a60O2-d^B-jNH)ZdWZYB zjz&dDgq7SbPrwIPnR@dhk5M9{m>j3Y!;AXmS+r!?Ny_HDUm%=o{b%(kv3m)z>>P+9 zY*1}U(|x#gK!E_PJHNDXb~^VK)9Ex&`a$=$j5)9EZGLvcH!*qC2fZR_(Y()A+Ao;! zHB4hme$s&(NTjJ>aLDO0XUO#$iA@xU>Dga!eCN-RWr`ml%c1Ik75dTXP-CF8V^XX- zouf%sS6C~82r2bx?vfo2>q2VQoTteTCVuYDu=QRPmpSuvj(pwl0m=EzGry8Dv||o6 zwBIE=6m8Z1*!>BB)4Xs0?PJTp&r@!Tvqla0G7Bdgm$?M4odxnmgzP3JY-)1r+NrZ6 zuP~Vtb^I<xbpvGa)XN8bCE6nCkp<L^Lj#hyxyArS|4Kvb>f_)gUyojeX*mv$mEFj~ zLRv@aq@@@7^V82bIPG97`JvL$Y#=jG>5~UR2p`+6TW$0f;2bC?)KTO4D<fI%uD6(2 za{l00K$$n(kgZ4QGWyC%1opX|_ssq-G9t0UZFcoyY2o20)C__Pr=FEjo}+fvhzJ+5 z?<@$dFDe{b(hwMBT*Wq`LtIAX5|G~pcGKjTuGU1K0f26P^z9;N(isb2V@!tVPr4}D ziYAxr@!_XSQTp`hNJ5YMMCN(1o8B`{z<ZZ_QuQbua;@exgWfh}z!`ahswTX@T{m00 zH}qtY)#RB_^(B_}o@^PR3;8;@jRYA39m`t=F@ldTa^#2li}Dk4X1EyM`vg*A7a8NL zE4TgxC4|}L4JpKLx8>ENoHm7vhm=uAfD1#E%-i+;`v;9bcE2Zo$CvT!em1JdcRWY5 zrcxIZLf#13+DXFHqIiBfzl*>&x9&$}P4+0n(274;<z;fHFlLBD$aZ=qM>6Lfnw8&O z;@E9K)h?Xaell(P5wpbA0ew90`E2i3>Mf<LGa()Wrg3uGBx{f~zf}|pKPs|~D1x(a zuAPhZF1<2JlS?H9Yw7tc=bZvU$y}16k<>;-o>FM(Z7keooX_h~47d!@Y%D#h@FRo> zk<}XU$SE@@WEbW;s<I$&LK;j!sJu@;iUMu@sX=&F!kZGFw;{a7eVqr2fj_U5e34*W ze(V`v@O}3pscoa{xz)9yCx{BnrMd{KuvFs#8h;k}#oOX~O@Fz?X~;b+XTu^Z=)(=Q z!ZQf5dQ%<l7d!>i9d?MeZHIGp<#P8f9es<$^J)vI(U+QE=VN>uH(9PKk)KKzDPrP# zt@-Eqx&P?@dF!1}^hvAcH;%oILvI%qJw`WgOI|_3r-AqwIE&rOhM(ixI=>Jax5{@^ zw6JAO9~1-O=BNJrJ}}0Y`HV_AaiP)vs8xI3Yko1zIuV5xx&wUj#g{+2(P>nvvLkP9 z%DYeNB=|pbm;63XWW<-rZ}N8s{?VmwiHh{nJE<va|HXF9BVwr@l>VwHQX>enk}QUI z-s<$f(FI)z?$hRl)vunE#THb59M4{-Gx;6AmlVuR6Z>X;Q`n3Fm-o;%Rg|hZHoqka z|3WC?d(i5C1si!+=Uc_-|H@JOr0bj2xRF~fCu@-KCQ{1@q2b6QrxH9Z`Ar@^p%|lz zDv_y5hR5eL=4P4u*Kl2zWr1j53y3DtbR0bM-7$&oK)hnZs1xbXaxwT=mat47VVB+3 zkw)$5UdDd~8w$%NEO`H-{G?JLWMH$BZ8B{u#)#hqeYn^ph~Kp1O6(#;q5&8lkT15R zs3;WDO=@t|bwB|`3vihaufA_xIkkTaQn21540^EY(cxE)28+uhHq;0<c0iT2k&?No z=<velOZpxB8Q%}<|4TXnQpFuV#?SdxH-9}RK3^tb=^fA~$%R=R<8I#tp2ivvmrA2P zbpgiq&N|uZ&HAp0JGNkoLhHg!dB<jFMtA$x4!QU<mA&RA)clnvl1`@1nz7BeAaM@= z-1O9TGvr*HyLYH0r*LSJMa~!g7C2WUT5N42bgAaJZDX4QEM*h41u>?a*Ioi;661xV z7)N!gZW3bO+VWz*KYYiWXS0%1SwE%~Ja50MAFh4L>vo+FwCY+%8ugMFtu*7ZW8V0A zb0&?W?3Q-ht!2!pQpYNs_lDrJB{k@Ooacw)6JbhhEJH=Le5V==b5)EMwB7!(K)dVT zV%aV?4w8^8#TZRgG^jPGL6xB-=K%YYqEFSWhMIqcv?Qk=nUrU$&rlLp6?zrXx%jaD zPMD?}nFx!-=hva|y;EKd${T6|ZI(s?CWO#o%`rWxz4#OG`o>VWchuhZ)RTCL3$^wU zh54VOu|5H;eolO&q^@5rycHxQn7QN<yo40vvJpyT4K7K8*FMp0gqmmmVL2BiXu2T6 z(Osx5@OusBGT|LxQ?4!MNHzz#BxJ`KrWZRxR>R{Q=2GAF51so=x%nPSb16HB4mPyB z9MB!KP2{LJ7d;TfyW(*`YRh%A=VNAsBJ82E-^Vv}j1j46)LZ<p*K>z+NeJcVvlCfU zs9fF^VVIh={MVH~V=q9gvZdx+k;!Qo?mb-K8yt{DhHG|mrXK06b-fwXXI1VUgDjar zk{(E`6`D2qu;fjjI5?8YJ9Td*{h#=e)Z3FZl@Cf7T?=U*rlFq%`Uw{!<XN3jQq$p} zfk%WLx2vdJ^ZP9O<&s<&CVm_<rZEhTQ5>*8yU4H4K0b-fek1ghzz<-XcRBKf63U=C zGx$i{<avN$@Um8_xkHikpEu3*X;lMtlBnCc3AIl5Fe9;6zk{d`H%%+XK3duSh0*L# zID2jaUgB-MfDCm9Kd2E%O3CklJ_Oq@uNZR&)M@2wI$#^>Zuo1u7d|D{s8`*@JI`0C zCC!}{G!;@NMm_hg3BFUPeF<vrprOrlDBCKbRo5>w@j5~iOW62xGN}UZ?)wk7t|TCT zvL(SwQ>ac|`?GSQBJ3VUw?5#<E@&-+7MDOV2-G~e>Y^})<olL{vUIQk##KR?v}sWw zIA+q0$gwqZR`Ynt$XRxGCF(nhlsjvmI>hKLk0+jg=zKD>ROW??-esBOxi}4_^mYoA z<+L*D#_OFG*Yh3Fxo`oPxp1fqS8>EhI%Q_yR_GG)zYVbQUpig@o8iHJTG&MlcS0DI z3;tDd0}vCU^IX0U_wHdQs!Y$NokMOfT|JuWOF*gloEghdm~(fis4JqGcyC|;6+Yy+ z>ZP5?jO30-bl>@p^$pNSl6?NZ^v7$IIpv!MPg+HL1Oi3#ce3Xb-+g{(-TedbkV5kM zj&2-&>L8U8F;G4_U*zE1iEF13y*|$@SEF-CS)X0Y?J<Qe=VQ!li>#5r^hreZCI6(h z3@eOQ^A#pU*iQ)!e(O-3A-=sfC;8%^y-_2e0YJMTJ7LhtXO%>`PKN_BL?d8kA~5rs z+|!-G6O+V1(9j3qwki&6pI6r4Iv<UtLpT+1JH;CYu&T_9mUH&Jf2vIvnT}wD5i=H< zKXcUZu;S?}<wAL(7e>=n1hMt`_NCeOJ4LOW(y{+Yx2d8eL*P3s_jPPe@!aXbtYk5R zBsK_iPX|EZw!6na_>OyZS24yA6&<tG|5Xi@xpvCxR7WEHh_HiiH%`lXH#XL$h!FCO zZzmjOrXke*G4>^<D=~$<v$@z_C$BB<nwGgK>_60w1x<idY?HgDyQx4yGD@PvOpu5i zgRG7##+aanhCW`!W`1aI;!Y4`FUQ5$_;%s6XoQ|(?yi28m!b*y^Ikpr6i4^I5^pEU zN<m1E!YQp-Oh`DAy2{WomCF1fXMuEr_4$8jeiC2y2lSOW>x&0vEAm#pU={y})Pj`j z1?WwvV+CptBejVy>fh=Yq#|o&E+r$;40zzX^W&I$xAipSi>-rLu7-t?<+31|oTg{& zg(_-<2xuhNLq^sGjP8K|Hue2*gMlyq<G>ilhab?~alKOi<3vWaa3`KNy@^7Le9V%C zBgnLPK}aq^6cN`#REv;}poq|^1tz_}^~@Mm*i8;A@Np0^J&z#%P!uwKX9wecw!@Tz zs9_Q@6iR9P;s8TX#&LHJRSM`)&@EiP8iTo?>7b>9Vps|v>9P1<c~48hfR~%4Qn7kz zOOMh_hnoOPB6WNvVBsUPVyrdqC%pq%F>qNctF_`)oHz|U#u&t|#m^T5aPi-+y|fv$ zXCrDozc1{RFo5wHZLdMX*f@<Jg;l5&NGmVVIAN2{-qcHjzt#F(HA8T87j*w0m?|LX zz7|RtQ8qJ*09p<PT7G~X8vh!hT7x7dTsp%D4T4`LAp~-_UXVpnAG_;O*-V98?-_IR zaTU;1E&bUS(w)e?|Ap@rwUdU1ImLWtqvOhZhr6sVUk6rI{g1Q6ra&qT#WKmOG?!kX z5`Y;U{%!ivdT+(n7wZ?KAq6u0_F3GqyT59zz3WkbDlAI2MWQ|3r~2uK@|;{DK54?I z%im5smu{rIv+y~7LeSUI<Dy4k!v7j7iAa)ijI78(f$S2qA&7rUpf6enj{xz{vR^a- z!enp#4KD@bJ#12&`qkgJBw@-R|L*;+T2!>%;nd>l$*<2hcTDW!);KROTyEVmt$5cp zcy?g!Kfq(!k=i=W)q%4~DH6J*HN*EHmavPy;}Mt)&>e(4Vo_NCGW%nNTyQp@5x65v zl4Y97dm^~5+Ga4bWcPkMI!Q)*_FKXjy6U9ksl#q&&X!$eN|V((R<y{L|BvG=^oj_= zj*n?G{?b&ONv&>#m_}!+i4I>ypagxzkaBl6lYBGrwuDIwAFNg-wr$Mm^sfJ9+DS~n zWk)51#6_68glP_fSb3C1JEG6poH=C#K*p*~cZkpFrso|WsIuw98XnI8g071o?Q{_1 z)8c50zvYHQNkAM(AZ{gIxnek=;IS=|SYX9l;XW65W_2%5_!(<`gU-i)bg4RNMswV? z$F;xhM%1V2^TAXTY#4ciU!}tjmX5d=?X9PiEFUHA1W)z@vO2A0pDa+Gj(wUb{G$8# zt>skClkqB-S`k;`xO-U*|2h4$Vi`P0VeZ_me4(ksXO|HATF88xT@`HKMX-Hw@QABm z``W?wsm#80fBbp+4wZ{CwoKuVqfe2>khjSat8`Mw%vVJA%!quB9gTU%n{}0?0I~Q` zkBg2|{}-@vTz1KjigVq-A3baB@v5X07&L@!L5u`VyVV<tp>Von`VqMoOBN`fS4T_B z^l^nt<*fX+8l}?-rnlLz(9-i%WTakhrCIf3MSl~&q_uSLe<MCoa}2NR!e~Z2k(Q1H zd0)D5d9)5n6|^}~KiE1_DTGYb+J&FuUc(s!_ulBq)x4~%Z}Xgczxx@?15w#xE+-&Y z&z<gd{TjzP?7|cM@Slt3H&c>A-89oWvsf0~iSex3br0CmVeAFKyAa?#38LzfeA@5D z*6+25`be-Dx;>1-Pra8PSrQg!DuX6^T`g`XXG{b@AUa`%vc|V|j3t#(bq)rO-+L|f z1vD5Joyhu#?Z;(5H3G-88U_Q5^r6#$8+}aZ3meMJfYbqDl7TR{LC)?SaKQZ*^a;RL zXqeB;xcw>jya9#*;`EdTbRrjD1ZW5`BUc?O^2Lp)HH=V>CgrqzFc6y-k8^YouT8t5 z86@pfRnG&oA@!Rzu?0Mruy2KjmX_JK;lOiJ@)1oxpmWs-S+vgrHHUFyyUq|_s40<J zu0u7=-r#)jPsS}jR&jc%d$oUC1*_UjK53%iw@(F#C&QgmdlG90L!?qX0#mdT0fGmE z<BMkqjnfMLtqP-}o9-=OEQzV`skgm=sVg`#o^c)1Kcgd8_2g$3>d;X@D<@;(soGQj z2(AbGdRN5EYi_0#gutap#o;2tPUg>Gp(MiY5z1`L=m9WJUSOO^I6G-+61E5$Hs6?; zG)6`0%RlaCl*~~|XD<o@C#Otq39^p!x5PLfrb&f?Nf!lDlcjC$;D_2RMA43vl5n`? zNPu`8;GN1uT%$1;d#DYX<b>Ef?+7?=z?bf2#qFCwF(>)+IYDSEvQ52|OM6$4MR0n+ zTRGSxtXxHnQt_8K=$ZVd5E)E^=q{&dplWp~kQ|xhk`$<mK-2bEiH$X~ZEmm>eKGOd z>vAz7S2WIsv;Za6T=yKo`R%s{d;jfzJf98W*B7(!V$wZ_*R3fpbzX2tm(zLQ2zYx* zh)q}x&T-prRsc?kq;PT#jyV>Ulba-}<DAMbak~`A)1?>3W#H|*h*n~&oH;_{=Vwq~ zx9RfLiiN@NF0hO$4h1_>SJ56X`jt>t(sW{SCJ+q6(T<<1S~n%_M)2>E<yaf$_bO@n zAKxgW{Qh|}k$U?F1e_-=oDcs>==xbTUse<i3<`801$?jqg=_r!Z~T9pUt{Zlk{8+% z@$Xo#@0P)4r{Q%oeDk~u8wD@k#oNQE|D&?l1jvn<XG?MJG5{E>65h;zh6To0q6}EY zas^2F4iNcr2NX<$yl>y7LfG{NOvzf`9F;w<Pt_^d-C8DF-P?Q9!)}+6bDqZu>$gH= zs)kT@K-Z3=hDHZFrV~h?iO|^i97v{D6iuEWgzje7r63ro0~=xj^%*tDYka=Jo#b>^ z(Ex<Z3dBs<nyydcE{u2Io(hnlLNXPCzDo!P*Z(kF@wrs?XvMkz;c1Mf2G|jL;ZQ#` z2^IL*AzcEnOc&_F+B)KW`wn2ZW8dN(w#}MNWrNo8H4iJYbDDeB`OI1>=wf{82WY`b zh14RQV9;=gzXn!VXa-_JmH>W{gr<8xxo%^f<K6Bng$T3#ejX}KVx4Gf2{IHF2@_ys zwA}zZ9|5+{<%^iWxMxK!94@nB%Pjx+(we+*q$M*ge1<53CfSn!4JdlyqWXqo7khpn zHS4zPL&+9Nm>At~9PydtC=Jkr2)6oF!_V_G05Hibwt4OBN^`4hz3l`{n)W3jFbo50 zbKOEM{*l_)6|$&EveVMvPqO@1(H};^PN`d<3TYI&*?t#upu0$%-Z$gyz<|zGmk=x* z2O#Dw31XZWn_9XImCP=fIGy{n*e?l=GI2rczH*PoSWp;-rx@1$hF@SHYJ)CSio64= zbi9!xAPw9#ss$Yby*b73qRU{|(@bw2_<z2Tfl?Yknmt2w!9#?GwT)x%?mGtNZBIby z^xZSa^Pm}ZcxJMth`Bs<;B0yJujC1kpk-a|N*%GMKZXKxl+3izI3mIu24O?O69*8k z0@Y~qpC2)xLDMAyql%#)m77keC9FxU&H+V>qc2sr${wcCCTVH+jql(ssuc-kK31%> z9NiBaI#1OGsB!Tc^GLDen=&nW)>3aD)7afswuXBgBt*Z3vzR_^Wdj?HqESg}TMX<y zCL;#p0E0CB0Tft6o9#`X(XYRxOkVo+BG3hOGx|Y~C_8Z1=tdR=`AttwDtF6?F%C=p zkkCb;_NJ!49{y<~m4&8<=WBhOd+zhY%$I0324?A{SpkuBUxD2JArig?_TUQ8Ot?<# zVySz58(Y+=R|H#)fs04Utl{JY=f4Lf{`Iq2Ts24v)%)9M!6x7PKE%ZWahL|rNIAwR zo0L?dQy{$=2C)%vshy--;wHkzNiAZeQnYp;huU6R)6Zu5eB8F|C<^p{kZ`Adt4Bvu zqF%Ro`CzV3;-DMwx;EVa0gx$yIWa{P_QccF*WPY-?ou$*XCmyRnP>k@rdQtk2Zi^= zVVT0Ar;*#Ibt$)nu40EI=?c%GO$YZkKK=x{gMcj}rRfjRZPO1rQklnXQ$Y?<p|qU_ zjt!X0x#M{##jhEdIw<Rl7c3jP1fFj_)>UV!j}Bj}E{b$0itbFc*Wq&wV7+2)ectp# zCDsR29iVrbmtl#@%|C$<4yiPimCK%+3|KSzrblWOwe?M&d7Aob{q0?!Dq)sx_bs(> z|Jy=_;qRUMT1d{zh1`BOV*YN+v@=!1$>w1_b(;uD2=wb6LZ}Y_onoMtdU#+p+TwdC z-1jHM#Iy3C?jqXRVQU@#;^iA~-j1%!3iPq`X<aOUu0n}pAa%d68)&8$=8n3^dh8Ay z2#qU|=0}PX_syKkEIH@*n%!=LaAwAO_P5Hw^~^Bq6@bULflC8Cwtd;~6z-c4i~AB| zs*n*qM3xckzi`eZ?9$$!_-}vbwwzab$Jmjb!s(UwY2d7-8_TI9)Xb+jy(|iL&i|#i zL@!(PRv`_c5$3o`X(l1$K0dvn$C?b>uj<NX<IL)9fpOr3S-=VD5$vCr+40WG0j*`2 zm4#*9!vve1F3`~2t1qQNLQFH|6QRCax}G)<8}3EVF2|7UX^?{zX$FZcf}6ccJpE-E z3Pd4R_@2|H@YH_#-ajRJHk}&of4sIvxT60FEGOATv~JGmIR6oU4t*NX*nWVL98p>J zgr0x%%}xvU!4#A3=Bimg$Z>Ttc*x_pg70kII8b*yr7SMpYt<?Mlc{OJ@F!jd<4-N- z0HZ|NA!Pu!gRcmI6anO0IXW%QfdaY*BEIJptmE3^m_X^?A-?zKDW;x9Unl0Y*Hw18 z`6SxFJvYlX4vI`e)g^5Cz<K;}K0ofL%Fr8c|K7Aawe>q++8ELlgz#5J)wvq4%{fc1 zeVrQz6$>;GqPlAZI+lxJ8t5B}EJdGp@BAhl`cQGF%vxOZ1JwGr9%GPw<*#g<nDUV3 z=Q|oW4AHD6x7Ul0&nSAgYqzi_-S?$n;ebe__f2$1s);yj@8vYc-VC#fDUj8H+$$BY z`+F@CoGmC+8~D51pmpU?mza^SW-YiHz^tDr&HHs(9IIqpjaQlJ`4VvvFU^dr<G|fW zg@Ia=1*2p)`EM}d$Pq?4e)Xo8Z33h>NqM~S!$Ze3YG<C>9t_Ce%K);so-q!iLf|MF z<gI*q8KW3acg90@`Po6eI!>HXuR@il*_Z`bSYf6pW&6ddUozHSyWa`?Fh;xoyfe?@ zloW{4_oT1Uf<Z3oV+XJ4?~0r)mNK_K>){H@)UwXhe-t7@TNlS>rdDINtC6QE=|)=Y zw4QY0P`o_f+fZ=mx#sG#Uk7&~=K6;0wbn+NkA^?lUQM<Q9XVNmU(P4qKyHC4S(C7^ z1e#yc9UwaGX)RUR#cBeNd~RG`k_l%S&!S{x?SRraj>NFPxsc&c_@J)YR)ajP=klQA zHry{f9lo;v<IL22glPQ^kJ=ctI}SI}4`r2fRT-Q#ZnhnX1++5m8&)dy&YQc|_Z5j@ z1xh5J?S-VBWc;aS8O&Y>+{NRPOh45ZQ2dN10wYL)#J!f<WyCw5n4QMPv%hi6pNr6R z8BIVY+W2<h`jQ*xeX@PLgsI}F%_hI=-2k*!82M%FD<wzF325ct%nznVtv$OBt&9rc zgWp5&QF{q#w@RM=BV-H4zW!19^pl}1hyom11_WM0`)&QH4Zmb;*lZqH2t>Lm-PzxL z(KL-F-9)3R)*(b@#L8^d#32+oose6YvSG1!;6b4_RzRkS;I1D{THNWpDQCCYgD_Sj zpu0$*yE0OZcmnJE2Kv~u^3__VKF>GU{PoN^n2yR**+V_n@@9f_J5wXxC&w_TxjM6< zAi>6L*$*aE*>Fhizm}B9&25oNIg3{IU*T%7Z*X%{G1O?P6zC>Pf8z-9Ng7Q^1eM<J zOCv#aW++Gdn0l1DV}<ruOsPzQ3pj)~hN7Yq>?`?T=Y+JvqH+83!MBPeIXFbv>W`)t ztPq%)y%?K=O~=tc?X$~egwKdA38uiXiw(ccwM{?duqKsB@xvvnzDhprQgY(*mMDFg zn<$)7aHL5H&hIgn(x*k(LC?R8qTbf%e>I@s(&zT4D|I$RN~js9>e-O#^-lrSaI>R> z<<lKdiWul`?2MVOxpe2u8J|cC>aQ_i-T*jT`{QKp;5=m0Tk(459Wh%TS~}X^jT9E- z7$0x5g!9S^cK+Ve5oyezh4@PRhvBd!hYk;;axINoBcf=msXCo%)-esL3q~hL(}CHf zL7pBKdu-p!?&@ZzGyJ_!NleAU`XARj{Je=Q*_qW`tN!Q%CL4SNOe@o1Rg$AqwNWF? z?B3@&I<qx13R-(~a)KPl<E-}XgE1t{gK+zH86U-yAeroCJZ(bH2&9Xn{>)*R+O9>) z!oz0w%&NhRTO-)$I{4rj4*ni1s5#1f?I<Jl&7J(YmaYQR9aqQZPTVg!Ca)S{c1b<{ z@2Uu`g4bpjv`0nq3o?oV?A4Y$tn|!^{PS5cceo-+cX>4W=S}abcfR(TKi_o$7QV?> zIy&$%T=$32W3*s%esiS#&b01&A|!>XE6<Em+nQdx+0q(pwk0Z>*}k$&99B`66};qU zl4H^}S!^^3Afbk#rG5Wx#WxEy7$93|7kNt5y?z1`?pomVOMgR<-+VJ5ll^rwUN_8G z3M+x|(BB@;NzlcY=bgKOIxtmjy5e^<wDw{TtFM|2*`<C<d(P}UCw#Dnl95B(cmpr& zD&ygHv?i0R{Guo$gLzj!kn=QPE#Hh&46`Tv*tOJ@97}(Hs|*1eb^*pC?R3Ms{48-! zUt$T`*`B!DsJFbH3CO8OdLzzQ+KN}Py01(0W%z{d@tc{8Z@z>V`YE`_o<~M(Wx%A{ zSQ(|!^bMn!Rel+)fU5YTnCoF(AVtaB)I2FoQpIRmNc~&ma!?o>ZZ1QM@Xq%(Z;u8X z%9ksnb<XSc$7GCjBxLcSZ>%whATVI&>a^tU+Yco~n1;F$D)v>wMts^!Q`V&=eZw3h zcC5g>g)i;M_jAT589j=kcg!!ycNIJ;Bh(8)<>jK+O5cHd<Jgzxqi2UNBmTJmLAfH~ zs{=CHxEzcJ;k3(7f^nU@);^etZc)=(MbSdT%e|!PLRfq}KSO!7X|FBwtOL^mroS`^ z&LU*0aq6^fUml`Jyf#UGvNe3xMdB`Jhb1@~Qbs98jL0IkA0%#cv-6z%u!9&45J@aP ze|g(*(gleyMDIccOy+{~nX#NVF0+&?eaj>k-!ukbMJSt(SEZ&)y~hf2=li$80Z;9M zwmdW$B9J0$ine3M4soYI!JMs@=T(COV8S3F1!^lQxmctt1zXrHQ%}1V^D}9c>g>)# z_Qa6|>%BnOUh5n~Dl)&4XSog4)F(CEjq!L#|FlR7M#X54eXDk>F_EJAU{X$lxqF#C zb>_l!OHnLBV_@26q1nhxtwtzpwL>fGk;iC?HaqCF$c&<OQh?8bW03@8(P>$Ks5#cz zH8_%8?1E=ytG^o#G5`7T;_Mgr%2V}niUef-XQoH>eF`*B+07*JvC(!s7XCV%+n&>> zLrr2{KbW6BdthO42TG8LQhbkP@_HaG!^d5_`CL&A>!Mp!CLDU5bl5ct#)%V<3gWg~ zWdR6{iSnZvKa+y34u)wR;c`jISX?Q}=biwRyc0J7V|patFP>|Y>YK~}!4_0BtECSI zMAdPxN;itrOT3%eWz(JCmwjH=&8|Xl`#Nvy<j5>L&xz#jb*~e)huMna!Ciw)Lo~Si zBbs@o7*b@6!1!+jjs~pDqjnw&+_4<m&Epmhxn62|5ZbcnsnUget9I&<e4oS{o53BU zNgJtI(@u7l4ax5av;e4-i^WtApN9Cac=EyG3hkc83O@uV+I9o19|?|)IffRI?YBCL zLMLU5Y){~0wRXK1(uO+NJ6T2VcB^GsEW15(=$8N`>{L=TPQ(8MXfgA8MRQqsKX-{w zUm}Xmb8THtr8DnhXDP6$ka<6M9u(O8&9MYbe<)lk!rmoTEKvMLlA(rUI+ZSu510I; ziy(XM=*#*XlD(`COlz+m*0MIhi?U4i56;9~;~A9p%nDBKdzhLy*6t3bKiSZ+z=n4X zH=3H(Z_CLUKbLh|Npa%nHb+GpP{r*IIC=Cdw99F*4Y@QKirdJ8dAxDSeEOoNGT&dH zV|FrNbqt$b=1b){MgLfV1SIC?7DkJWKu>-|>jhc>mxE2$f5cF4)t7TuQM(*e_z#T{ z#6fcFM-$J1E?H{thO~X}zYLNn6_=`5Nu$?1o9`J<kN?P-%VHMW#k_f2->`K(0hyXV zc4pV+V%CGiR|aO;vyseVbhRo*whMtuVw1!|pjBr(Nr%dU6r{dAGDnZfIijb*(5+Np zh-on1WvXZDjHW1zcV&-#dp$A6#uWnSO6!^2MWm`xTB58o^Lu$5x6oXZo`G!i8oiBM zyW?}9T@*%*md=gWptQ@38F*P_eoB{OWgw`6Ca}q4G>K%SeWoB47lu{r{v4OkEZ#6y zDKoJRny5#u{{&afF1k#%RKB3KLMcwlvy^{sf;u+~IBJGazsRp}`JsA6Zg_O7qCM`Z zy|g4gWqf`v2<!4kM5aWh|0lPk-->^Bg)<ET$179yCL{Umh#ldIF^4J+FyKmu1~`yL z+E?#L`$p_u${iVm#!`{?t84iMJ+9(wnPn<Y@h7ou$fc>CToeMM_kz|Cu&{(&o%!5I zD7F?``&i7wSv%CDEJpL*Q0W3TAlo0zy&2M-WMSovA4>@;l8DL?%{Iu#IB>2({rY!k zZw8WoY<RA?@HR%%jBl`j>CnKwR{N&orCSIi{5gZo%mHOX!A8o8%c>ha4JHCQEw0S( zx4}h*yo(}VM<0AlLBE3jp7uMx>pvR?qHkZ&Z+Gi{dZ_2j<Ej0T3B7lFxg1~)2nB+^ zT*Imeto~=X4Sw-+ztGOM8br|a`ewX>4r5GMtN9t{Flx*uqk@iA$z=?y@l{Pqo4P0! z2lC$;SQUG{vRj8mA^pn`x?3Hr)*2-@<3{)k!{Q$(mnqa}sA{bk_zz#efV-$R;(iDX z;SgS>HeL3Lce;8<x?XpnERwgLlWs4$E#@G@5|F_M6ZvjI<>Ljn!h&`+bE%?LDaQ%Z zRh235R~rM~Vh81RF?4<v+HdO`?reJcafj<hZjEMt^PF_aX*#1*9AICfEIqJna=|hs zsFCrFS;@YyjJ(RII6@O#b+%R0Kxw~nG;xkGXh7)JeWR~2-dJ`UmiGL6%~`oQx{F;0 zx>qM*u7w*vyj3U9H(-}!UrC>WjG^J}C0#KDFJ)PlM5I?uta_ng#_k{KcbB$AbPu1E zHhoZ02fgEKBk@Ovb&YuE&B%#rtK&Z)Gq8Msr!NYMsJSG)Dh2y2%CiK<`G=NpZcRm^ zVBU(w_TMe*{CD{$E;%g2MEyE(%aE*Uh?L>pOa&Ox+AOxH(fUiBj1MMk3$8;@ry<8+ z>9No|5~k1K@lz+!e;?=ZbU<TX?l~?gBcRqQ<%r_kAm<o3W3DgCqU8Q<p1=I8D5G@S z=CMa(>2RF&lBCJ?D;FD5x^TbBJo!xie&Z798^e@x+mf)Fe)o<X92Zf_;y(||$?#<l zWUjg|gAs_;1GTMxcQ`|+z-4N5{oOSQ7~8f=`QL>S!1=SP^XMyV0sKE74UmJ67PGEa zA!L1(TK-)?mjYrHVmuw0u$g~mWXJUX-OuI(d~|(XOa^x$(GXaX3;OS>WPYU2hpi72 zz<s4u2i1SXE|DRihM7l`%Wb2||30dsKtOH(!}wS7|2OZe{}bx}|7N}WtG%NsK2y%5 S)%IM{7j-o5sH0SEp8g+UpgD{H literal 0 HcmV?d00001 diff --git a/resources/images/edugain_test_idp_basics.png b/resources/images/edugain_test_idp_basics.png new file mode 100644 index 0000000000000000000000000000000000000000..cd9eb776f8c79c0a08a248402981cf56340ffa79 GIT binary patch literal 179093 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 literal 0 HcmV?d00001 diff --git a/resources/geant_logo_rgb_300dpi.jpg b/resources/images/geant_logo_rgb_300dpi.jpg similarity index 100% rename from resources/geant_logo_rgb_300dpi.jpg rename to resources/images/geant_logo_rgb_300dpi.jpg diff --git a/templates/web/account_wizard.tt2.html b/templates/web/account_wizard.tt2.html index 3d6a8a5..7add805 100644 --- a/templates/web/account_wizard.tt2.html +++ b/templates/web/account_wizard.tt2.html @@ -114,7 +114,6 @@ continue afterwards. <label for="sp_entityid">Type the SP name or entityID to search for it.</label> Note that only Service Providers are in the list which are included in the eduGAIN metadata.<br/> - <select id="sp_entityid" name="sp_entityid" class="required"> <option value="">Select your Service Provider below</option> [% FOREACH entity IN federation_metadata_as_hashref.sort('default_display_name') %] diff --git a/templates/web/errors.tt2.html b/templates/web/errors.tt2.html index 4026175..9476727 100644 --- a/templates/web/errors.tt2.html +++ b/templates/web/errors.tt2.html @@ -5,7 +5,7 @@ Error: [% IF err == 'unknown_action' %] - Unknown action + unknown action [% ELSIF err == 'internal' %] internal error; administrators of the federation registry have been notified. @@ -30,5 +30,5 @@ <br/> [% END %] <!-- FOREACH --> - You can report the issue to the administrators (<a href="mailto:[% conf.support_email %]>[% conf.support_email %]</a>). + You can report the issue to the administrators (<a href="mailto:[% conf.support_email %]>">[% conf.support_email %]</a>). [% END %] diff --git a/templates/web/generate_token.tt2.html b/templates/web/generate_token.tt2.html index c1be141..b184ac2 100644 --- a/templates/web/generate_token.tt2.html +++ b/templates/web/generate_token.tt2.html @@ -7,7 +7,7 @@ An email challenge including a validation token has been emailed to you at [% em <legend>Validation Token</legend> <label for="authentication_token">Please provide the validation token here:</label> -<input name="authentication_token" value="" id="authentication_token" type="text" class="required"/> +<input name="authentication_token" value="" id="authentication_token" type="text" class="required error"/> <input type="hidden" name="sp_entityid" value="[% sp_entityid %]" id="sp_entityid"/> <input type="hidden" name="email_address" value="[% email_address %]" id="email_address"/> diff --git a/templates/web/home.tt2.html b/templates/web/home.tt2.html index 9ac361f..258ed71 100644 --- a/templates/web/home.tt2.html +++ b/templates/web/home.tt2.html @@ -10,22 +10,29 @@ $(function() { </script> -<div> -<h3>eduGAIN Test Identity Provider?</h3> -The eduGAIN Test Identity Provider allows administrators of a Service +<div class="row"> +<h2>eduGAIN Test Identity Provider?</h2> +<p>The eduGAIN Test Identity Provider allows administrators of a Service Provider (SP) registered in <a href="http://www.geant.net/service/eduGAIN/Pages/home.aspx">eduGAIN</a> to create test accounts with different profiles to validate the behaviour and test federated login. The test accounts can only be used to access own services. -<br/><br/> +</p> +<h3>Start testing your eduGAIN service</h3> +<p> To start testing your own eduGAIN service, start by selecting the -Service Provider you are administrator for.<br/> -<button id="start_testing">Start testing your eduGAIN service</button> -<br/><br/> +Service Provider you are administrator for. +</p> +<p class="align-center"><button id="start_testing">Go on testing the service</button></p> +<h3>The eduGAIN Test IdP Basics</h3> +<p> +<br/><img alt="The eduGAIN Test IdP Basics" src="/resources/images/edugain_test_idp_basics.png"/> +</p> <h3>How is it ensured that users can only test their own service?</h3> -The eduGAIN Test Identity Provider exclusively allows creating test +<p>The eduGAIN Test Identity Provider exclusively allows creating test accounts only to users who can receive challenge emails for email -addresses listed in the eduGAIN metadata for a particualar Service Provider. +addresses listed in the eduGAIN metadata for a particular Service Provider. The test accounts can only be used to access one single service for which a user proofed that he is administrator. -</div> \ No newline at end of file +</p> +</div> diff --git a/templates/web/index.tt2.html b/templates/web/index.tt2.html index ab3248e..c44430a 100644 --- a/templates/web/index.tt2.html +++ b/templates/web/index.tt2.html @@ -10,8 +10,14 @@ html1/DTD/xhtml1-transitional.dtd"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> <link rel="icon" type="image/png" href="/images/favicon.png" /> + +<!-- Foundation css --> +<link rel="stylesheet" type="text/css" href="resources/foundation/css/normalize.css"> +<link rel="stylesheet" type="text/css" href="resources/foundation/css/foundation.css"> + <link href="resources/jquery.steps.css" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="resources/jquery-ui-1.11.1/jquery-ui.min.css" /> +<link rel="stylesheet" type="text/css" href="resources/css/style.css" /> <script type="text/javascript" src="resources/jquery-1.11.1.min.js"></script> <script type="text/javascript" src="resources/jquery-ui-1.11.1/jquery-ui.min.js"></script> @@ -66,7 +72,7 @@ jQuery(function($){ .appendTo( this.wrapper ) .val( value ) .attr( "title", "" ) - .addClass( "custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left" ) + .addClass( "custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left error required" ) .autocomplete({ delay: 0, minLength: 0, @@ -179,79 +185,31 @@ jQuery(function($){ //--> </SCRIPT> -<STYLE type="text/css"><!-- - -.login {float: left} -.menu {float: right} -.footer {text-align: center} -.prod {background-color: #028A34} -h1 {text-align: center} -li,dd {margin-left:10px;} -li.parametre {margin-bottom: 15px;} -dd.parametre {margin-bottom: 15px;} -div.important{border-style:solid;border-color:black;border-width:1px;background-color:#F5DEB3;padding:5px;} -.mandatory{color:#e00853;font-style:italic;font-weight:bold;margin:0 3px} -.notice{border:2px solid #05a;padding:5px 5px 5px 5px;margin:20px;} -#sp_entityid{width:100%;} -.scrollable{overflow-y: scroll;} -fieldset.scrollable{height: 75%;} -.wizard .content div.radio_inline input[type="radio"]{display: inline;} - -.custom-combobox { - position: relative; - display: inline-block; -} -.custom-combobox-toggle { - position: absolute; - top: 0; - bottom: 0; - margin-left: -1px; - padding: 0; -} -.custom-combobox-input { - margin: 0; - padding: 5px 10px; - padding-left: 40px; - width: 600px; -} - -.ui-autocomplete { - max-height: 400px; - overflow-y: auto; - /* prevent horizontal scrollbar */ - overflow-x: hidden; -} -/* IE 6 doesn't support max-height -* we use height instead, but this forces the menu to always be this tall -*/ -* html .ui-autocomplete { - height: 400px; -} - - ---></STYLE> <title> [% PROCESS 'templates/web/title.tt2.html' %] </title> </head> <body> +<div id="header"> + <ul> + <li class="logo align-left"><a href="/accountmanager" title="eduGAIN Test Identity Provider home page"><img alt="eduGAIN logo" width="200" src="/resources/images/edugain_logo.png "/></a></li> + <li> </li> + <li class="logo align-right"><a href="http://www.geant.net" title="Géant home page" target="_blank"><img alt="GEANT logo" width="100" src="/resources/images/geant_logo_rgb_300dpi.jpg"/></a></li> + </ul> + <div class="title"> + <span class="hide-for-small"><h1>[% PROCESS 'templates/web/title.tt2.html' %]</h1></span> + </div> +</div> + <div id="wrapper"> - <div id="header"> - <div id="bandeau"> + + <!--<div id="bandeau"> <div class="logo"> <img alt="GEANT logo" width="150" src="/resources/geant_logo_rgb_300dpi.jpg"/> </div> - <div class="connection"> - </div> - - <div class="title"> - [% PROCESS 'templates/web/title.tt2.html' %] - </div> - - </div> - + </div>--> <div id="content"> @@ -283,11 +241,23 @@ DUMP :<br> [% END %] <div> - <hr> -<div align="middle">Test Account Manager [% conf.version %]</div> +<div id="footer"> + <div class="row align-center"> + <span>Test Account Manager [% conf.version %]</span> + </div> +</div> </div> </div> +</div> + + <script src="resources/foundation/js/foundation.min.js"></script> + <script src="resources/foundation/js/foundation/foundation.tooltip.js"></script> + <script> + $(document).foundation(); + </script> + + </div> </body> </html> diff --git a/templates/web/select_sp.tt2.html b/templates/web/select_sp.tt2.html index ad27e9c..4631668 100644 --- a/templates/web/select_sp.tt2.html +++ b/templates/web/select_sp.tt2.html @@ -8,7 +8,7 @@ Before you can create test accounts at this Identity Provider, we need to ensure you are a legitimate administrator of "[% sp_display_name %]". </div> -<fieldset class="scrollable"> +<fieldset> [% IF sp_metadata_as_hashref.contacts.defined %] <legend>Select your email address</legend> <label for="sp_entityid">The email addresses below have been extracted from your SP SAML metadata.<br/>Please select the email address where an email challenge @@ -34,8 +34,9 @@ Before you can create test accounts at this Identity Provider, we need to ensure </div> [% ELSE %] -No ContactPerson elements could be found in your SP SAML metadata. Therefore we are unable to provide test accounts for your SP. Please contact your local federation +<div class="alert-box warning radius">No ContactPerson elements could be found in your SP SAML metadata. Therefore we are unable to provide test accounts for your SP. Please contact your local federation administrator to add ContactPerson information to the SAML metadata. +</div> [% END %] </fieldset> @@ -47,4 +48,4 @@ administrator to add ContactPerson information to the SAML metadata. input.val([input.attr('value')]); }); }); -</script> \ No newline at end of file +</script> diff --git a/templates/web/validate_token.tt2.html b/templates/web/validate_token.tt2.html index f2aa108..9212ec6 100644 --- a/templates/web/validate_token.tt2.html +++ b/templates/web/validate_token.tt2.html @@ -25,21 +25,35 @@ jQuery(document).ready(function($){ </script> +<div class="row"> + +<div class="alert-box success radius"> +<strong>Success:</strong> Your identity as administrator of the Service Provider with entityID <strong>[% sp_entityid %]</strong> could successfully be validated! +</div> + +<h4>The following test accounts with different profiles were created for you:</h4> + +<div class="accounts_profile"> -<div> -Your identity as administrator of the Service Provider with entityID [% sp_entityid %] could successfully be validated! -<br/><br/> -The following test accounts with different profiles were created for you: -<ol> [% FOREACH account IN test_accounts %] [% PROCESS "${account.get('account_profile')}.tt2" %] - <li>account profile: [% account_profile.type %] - <dl> - <dd>user name: user[% account.get('id') %]</dd> - <dd>user password: [% account.get('user_password') %]</dd> - <dd>comment: [% account_profile.comment %]</dd> - <dd><button class="show_account_details" id="show_account_details_[% account.get('id') %]">show account details</button></dd> + <table> + <caption>Account profile: [% account_profile.type %]</caption> + <tr> + <th>user name:</th><td> user[% account.get('id') %]</td> + </tr> + <tr> + <th>user password:</th><td>[% account.get('user_password') %]</td> + </tr> + <tr> + <th>comment:</th><td>[% account_profile.comment %]</td> + </tr> + <tr> + <td colspan=2 class="align-center" ><button class="show_account_details" id="show_account_details_[% account.get('id') %]">show account details</button></td> + </tr> + </table> + <div class="account_details" id="account_details_[% account.get('id') %]"> Below is the list of user attributes associated to this test account. After a successfull authentication process these attributes are transmited via the SAML protocol from the Test Identity Provider to your Service Provider. @@ -57,16 +71,19 @@ The following test accounts with different profiles were created for you: If you a customized test account with additionnal user attributes, you should contact <a href="mailto:[% conf.support_email %]">[% conf.support_email %]</a>. </div> </dl> - </li> + [% END %] -</ol> -Note that these test accounts will automatically expire in [% conf.accounts_validity_period %] days and that they can only be used to test federated login to your eduGAIN-enabled Service Provider with entityID [% sp_entityid %]. -<br/><br/> -You can now use these test accounts to login at your federated service.<br/> -To do so, select the "[% conf.idp_displayname %]" when choosing an organisation to login at. -<br/><br/> -Please keep a record of the above user names and passwords because currently there is no mecanism to retrieve the above credentials once you close this page. If you forget the username and passowrds, you can however request new test accounts. -<br/><br/> -Thank you for using the [% conf.app_name %] +</div> + +<div class="alert-box info radius"> + <p>You can now use these test accounts to login at your federated service.<br/> +To do so, select the "[% conf.idp_displayname %]" when choosing an organisation to login at.</p> + <p>Please keep a record of the above user names and passwords because currently there is no mecanism to retrieve the above credentials once you close this page. If you forget the username and passowrds, you can however request new test accounts.</p> +</div> +<div class="alert-box warning radius"> + <p>Note that these test accounts will automatically expire in [% conf.accounts_validity_period %] days and that they can only be used to test federated login to your eduGAIN-enabled Service Provider with entityID <strong>[% sp_entityid %]</strong>.</p> +</div> +<p class="align-center"><Strong>Thank you for using the [% conf.app_name %]</strong></p> +</div> -- GitLab