diff --git a/wp-content/themes/aktiv2014/app/scripts/main.js b/wp-content/themes/aktiv2014/app/scripts/main.js index a37b166..b653cb4 100644 --- a/wp-content/themes/aktiv2014/app/scripts/main.js +++ b/wp-content/themes/aktiv2014/app/scripts/main.js @@ -4,7 +4,7 @@ var program_endpoint = 'https://studentersamfundet.no/api/events/get_today/'; var inside_url = 'https://inside.studentersamfundet.no'; var inside_groups_url = inside_url + '/api/groups.php'; var user_search_endpoint = '/inside-api/'; -var email_search_endpoint = '/email-api/'; +var email_endpoint = '/email-api/'; var query_params = { //meta_key: '_neuf_events_starttime', //meta_value: moment().add('days', 1).format('X'), @@ -95,7 +95,7 @@ function do_search() { ); } -function load_initial_values() { +function user_search_load_initial_values() { var param_set = false; var q = getParameterByName('q'); if(q && q.length > 0) { @@ -185,9 +185,32 @@ function get_user_meta(key, callback) { callback(data); }); } - +function mailinglist_show(q) { + $.getJSON( + email_endpoint, + { + 'do': 'list', + q: q, + _wpnonce: $('meta[name=x-inside-api-nonce]').attr('content') + }, + function(data) { + var list = '
Medlemmer på ' + data.meta.list +'
'; + var html = _.template(list, data); + $('.list-members').html(html); + $('.lists-list-wrap .meta').html('Vis medlemmer på '+ data.meta.list +''); + } + ); +} +function mailinglists_load_initial() { + var q = getParameterByName('q'); + if(q && q.length > 0) { + mailinglist_show(q); + } +} jQuery(document).ready(function() { - moment.lang('nb'); + moment.locale('nb'); var $ = jQuery; @@ -257,7 +280,7 @@ jQuery(document).ready(function() { }); /* Load intial values from url query */ - load_initial_values(); + user_search_load_initial_values(); }); $('.search-field').on('keyup keypress', function(e) { // No @@ -277,6 +300,35 @@ jQuery(document).ready(function() { }); } + /* Mailinglists page */ + if( $('.page-mailinglists').length ) { + // TODO: + // - selected mailinglist logic and highlight + // - better mobile layout + // - sorting by list size + /* Load list of lists*/ + $.getJSON( + email_endpoint, + { + 'do': 'list', + _wpnonce: $('meta[name=x-inside-api-nonce]').attr('content') + }, + function(data) { + // TODO, dynamic show/hide of members + var list = '
Viser '+ data.meta.num +' epostlister:
'; + var html = _.template(list, data); + $('.lists-list').html(html); + } + ); + mailinglists_load_initial(); + } + /* Profile page */ if( $('.profile').length ) { /* Load groups and memberships */ @@ -301,7 +353,7 @@ jQuery(document).ready(function() { if(u.is_member === '1') { is_member_field.html('Gyldig medlemskap.'); } else { - is_member_field.html('Du har ikke et gyldig medlemskap. Du kan forny medlemskapet ditt via SMS, via SnappOrder eller via nettbutikken i Inside.'); + is_member_field.html('Du har ikke et gyldig medlemskap. Du kan forny medlemskapet ditt via SMS, via SnappOrder eller via nettbutikken i Inside.'); } } } @@ -310,7 +362,7 @@ jQuery(document).ready(function() { params.q = $('.profile-details .user-email').text(); params.inherited = true; $.getJSON( - email_search_endpoint, + email_endpoint, params, function(data) { var list = '<% _.each(results, function(r) { %>' + diff --git a/wp-content/themes/aktiv2014/app/styles/main.scss b/wp-content/themes/aktiv2014/app/styles/main.scss index a73825a..77ef75b 100644 --- a/wp-content/themes/aktiv2014/app/styles/main.scss +++ b/wp-content/themes/aktiv2014/app/styles/main.scss @@ -457,6 +457,100 @@ input[type=submit]{ } } +/* Mailinglists page */ +.page-mailinglists { + .page-title { + @include grid-column(12); + } + .sort-by { + @include grid-column(12); + } + .lists-list-wrap { + @include grid-column(12); + } + .list-members-wrap { + @include grid-column(12); + font-size: rem-calc(16); + } + .toptoptop{ + @include grid-column(12); + margin-top: rem-calc(18); + } + + @media #{$large-up} { + .lists-list-wrap { + @include grid-column(6); + } + .list-members-wrap { + @include grid-column(6); + } + .list-members-button { + display: none; + } + } + + .lists-list { + ul { + list-style: none; + margin: 0; + } + li { + list-style: none; + padding: 10px; + display: block; + position: relative; + line-height: 1.15; + &:nth-child(odd) { + background-color: #eee; + } + } + + .button-alt { + color: #666; + background-color: transparent; + &:hover { + background-color: #ccc; + } + } + } + .list-members { + ul { + list-style: none; + margin: 0; + } + li { + list-style: none; + &:nth-child(odd) { + background-color: #eee; + } + a { + padding: 8px 10px; + display: block; + position: relative; + + } + } + } + .list-num-members { + font-size: rem-calc(14); + color: #666; + } + .email-aliases, + .email-mailman { + position: absolute; + right: 16px; + top: 8px; + .dashicons { + font-size: rem-calc(18); + vertical-align: baseline; + position: relative; + top: 4px; + left: -3px; + } + } + +} + /* Sidebar */ .sidebar { @include grid-column(12, $collapse:true); diff --git a/wp-content/themes/aktiv2014/bower.json b/wp-content/themes/aktiv2014/bower.json index 1a86eeb..ad124bc 100644 --- a/wp-content/themes/aktiv2014/bower.json +++ b/wp-content/themes/aktiv2014/bower.json @@ -4,9 +4,9 @@ "dependencies": { "modernizr": "~2.8.3", "jquery": ">=2.1.0", - "foundation": "~5.3.0", - "moment": "~2.7.0", - "underscore": "~1.6.0", + "foundation": "~5.4.3", + "moment": "~2.8.3", + "underscore": "~1.7.0", "chosen-bower": "~1.1.0", "history.js": "~1.8.0" }, diff --git a/wp-content/themes/aktiv2014/dist/scripts/main.js b/wp-content/themes/aktiv2014/dist/scripts/main.js index 22e7b48..3b90c3b 100644 --- a/wp-content/themes/aktiv2014/dist/scripts/main.js +++ b/wp-content/themes/aktiv2014/dist/scripts/main.js @@ -1 +1 @@ -"use strict";function getParameterByName(e){e=e.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var t=new RegExp("[\\?&]"+e+"=([^&#]*)"),a=t.exec(location.search);return null===a?"":decodeURIComponent(a[1].replace(/\+/g," "))}function format_posts(e){var t="",a=0;if(0===e.length)return"Idag er det stille på huset :-/";for(a=0;a',t+=''+moment.unix(r.custom_fields._neuf_events_starttime).utc().format("HH.mm")+": ",t+=''+r.title+"",t+=' '+r.custom_fields._neuf_events_venue+"",t+=""}return t}function format_results(e){var t="";if(e.error)return console.log(e.error),$(".search-result-list").html(""),void $(".search-results .meta").html("");if(0===e.meta.num_results)return $(".search-result-list").html("Uffda, ingen treff."),void $(".search-results .meta").html("");var a='<% _.each(results, function(u) { %> <% }); %>
NavnBrukernavnEpostTelefonHar medlemskapGrupper
<%= u.firstname %> <%= u.lastname %><%= u.username %><%= u.email %><%= u.number %><% if(u.is_member != 0) { %>Ja<% } else { %>Nei<% } %><% _.each(u.groups, function(g, i) { %><%= g.name %><% if(u.groups.length !== i +1){ %>, <% } %><% }); %>
',r=t+_.template(a,e);$(".search-result-list").html(r);var n="Antall treff: <%= meta.num_results %>";$(".search-results .meta").html(_.template(n,e))}function do_search(){var e=$('.filters [data-search-filter="has_valid_membership"]'),t="",a=$(".groups-select").val();null!==a&&(t=a.join());var r={q:$(".search-field").val(),filter_groups:t};e.hasClass("active")&&(r.has_valid_membership=!0);var n=$.param(r);window.History.pushState(null,null,"?"+n),r._wpnonce=$("meta[name=x-inside-api-nonce]").attr("content"),$.getJSON(user_search_endpoint,r,format_results)}function load_initial_values(){var e=!1,t=getParameterByName("q");t&&t.length>0&&($(".search-field").val(t),e=!0);var a=getParameterByName("has_valid_membership");a&&"true"===a&&($('.filters [data-search-filter="has_valid_membership"]').addClass("active"),e=!0);var r=getParameterByName("filter_groups"),n=[];if(r&&r.length>0){n=-1!==r.indexOf(",")?r.split(","):[r];var s=!1,i=0;for(i=0;i"+a.groups[n].name+"";e(".group-list").html(r);var s=e(".is-member");s.html("1"===a.is_member?"Gyldig medlemskap.":'Du har ikke et gyldig medlemskap. Du kan forny medlemskapet ditt via SMS, via SnappOrder eller via nettbutikken i Inside.')}}),a.q=e(".profile-details .user-email").text(),a.inherited=!0,e.getJSON(email_search_endpoint,a,function(t){var r='<% _.each(results, function(r) { %>
  • <%= r.name %>
  • <% }); %>',n=_.template(r,t);e(".account-details .email-list").html(n),a.inherited&&(t.results=t.inherited_results,n=_.template(r,t),e(".account-details .email-list-inherited").html(n))})}}); \ No newline at end of file +"use strict";function getParameterByName(e){e=e.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var t=new RegExp("[\\?&]"+e+"=([^&#]*)"),a=t.exec(location.search);return null===a?"":decodeURIComponent(a[1].replace(/\+/g," "))}function format_posts(e){var t="",a=0;if(0===e.length)return"Idag er det stille på huset :-/";for(a=0;a',t+=''+moment.unix(n.custom_fields._neuf_events_starttime).utc().format("HH.mm")+": ",t+=''+n.title+"",t+=' '+n.custom_fields._neuf_events_venue+"",t+=""}return t}function format_results(e){var t="";if(e.error)return console.log(e.error),$(".search-result-list").html(""),void $(".search-results .meta").html("");if(0===e.meta.num_results)return $(".search-result-list").html("Uffda, ingen treff."),void $(".search-results .meta").html("");var a='<% _.each(results, function(u) { %> <% }); %>
    NavnBrukernavnEpostTelefonHar medlemskapGrupper
    <%= u.firstname %> <%= u.lastname %><%= u.username %><%= u.email %><%= u.number %><% if(u.is_member != 0) { %>Ja<% } else { %>Nei<% } %><% _.each(u.groups, function(g, i) { %><%= g.name %><% if(u.groups.length !== i +1){ %>, <% } %><% }); %>
    ',n=t+_.template(a,e);$(".search-result-list").html(n);var s="Antall treff: <%= meta.num_results %>";$(".search-results .meta").html(_.template(s,e))}function do_search(){var e=$('.filters [data-search-filter="has_valid_membership"]'),t="",a=$(".groups-select").val();null!==a&&(t=a.join());var n={q:$(".search-field").val(),filter_groups:t};e.hasClass("active")&&(n.has_valid_membership=!0);var s=$.param(n);window.History.pushState(null,null,"?"+s),n._wpnonce=$("meta[name=x-inside-api-nonce]").attr("content"),$.getJSON(user_search_endpoint,n,format_results)}function user_search_load_initial_values(){var e=!1,t=getParameterByName("q");t&&t.length>0&&($(".search-field").val(t),e=!0);var a=getParameterByName("has_valid_membership");a&&"true"===a&&($('.filters [data-search-filter="has_valid_membership"]').addClass("active"),e=!0);var n=getParameterByName("filter_groups"),s=[];if(n&&n.length>0){s=-1!==n.indexOf(",")?n.split(","):[n];var r=!1,i=0;for(i=0;i
      <% _.each(members, function(m) { %>
    • <%= m %>
    • <% }); %>
    ',a=_.template(t,e);$(".list-members").html(a),$(".lists-list-wrap .meta").html('Vis medlemmer på '+e.meta.list+"")})}function mailinglists_load_initial(){var e=getParameterByName("q");e&&e.length>0&&mailinglist_show(e)}var program_endpoint="https://studentersamfundet.no/api/events/get_today/",inside_url="https://inside.studentersamfundet.no",inside_groups_url=inside_url+"/api/groups.php",user_search_endpoint="/inside-api/",email_endpoint="/email-api/",query_params={};jQuery(document).ready(function(){moment.locale("nb");var e=jQuery;e("#menu .menu-toggle").on("click",function(t){t.preventDefault();var a=e("#menu .main-menu, #menu .user-menu-wrap");a.toggleClass("visible")}),e("#menu a.profile-badge").on("click",function(t){t.preventDefault();var a=e("#menu .user-menu");a.toggleClass("visible")}),e("[data-toggle-introduction]").on("click",function(){e(this).parent().fadeOut(600),save_user_meta("introduction_dismissed",!0)}),e(".front-page .introduction").length&&get_user_meta("introduction_dismissed",function(t){t.hasOwnProperty("result")&&"true"!==t.result&&(e(".introduction").show(),e(".introduction").addClass("fadein"))});var t=".program-list";if(e(t).length&&e.getJSON(program_endpoint+"?callback=?",query_params,function(a){if(a&&a.events){var n=format_posts(a.events);e(t).html(n)}}),e(".search-form").length&&(e.getJSON(inside_groups_url,function(t){var a='',n=_.template(a,t);e(".groups-select-wrap").html(n),e(".groups-select").chosen({no_results_text:"Uffda, ingen treff!",allow_single_deselect:!0}).change(function(){do_search()}),user_search_load_initial_values()}),e(".search-field").on("keyup keypress",function(e){(10===e.keyCode||13===e.keyCode)&&e.preventDefault()}),e(".search-field").on("keyup keypress",_.debounce(function(){do_search()},300)),e(".roles a").on("click",function(t){t.preventDefault(),e(this).toggleClass("active"),do_search()})),e(".page-mailinglists").length&&(e.getJSON(email_endpoint,{"do":"list",_wpnonce:e("meta[name=x-inside-api-nonce]").attr("content")},function(t){var a="
    Viser "+t.meta.num+' epostlister:
    ',n=_.template(a,t);e(".lists-list").html(n)}),mailinglists_load_initial()),e(".profile").length){var a={q:e("meta[name=x-username]").attr("content"),exact:!0,_wpnonce:e("meta[name=x-inside-api-nonce]").attr("content")};e.getJSON(user_search_endpoint,a,function(t){if(t.hasOwnProperty("results")&&1===t.results.length){for(var a=t.results[0],n="",s=0;s"+a.groups[s].name+"";e(".group-list").html(n);var r=e(".is-member");r.html("1"===a.is_member?"Gyldig medlemskap.":'Du har ikke et gyldig medlemskap. Du kan forny medlemskapet ditt via SMS, via SnappOrder eller via nettbutikken i Inside.')}}),a.q=e(".profile-details .user-email").text(),a.inherited=!0,e.getJSON(email_endpoint,a,function(t){var n='<% _.each(results, function(r) { %>
  • <%= r.name %>
  • <% }); %>',s=_.template(n,t);e(".account-details .email-list").html(s),a.inherited&&(t.results=t.inherited_results,s=_.template(n,t),e(".account-details .email-list-inherited").html(s))})}}); \ No newline at end of file diff --git a/wp-content/themes/aktiv2014/dist/scripts/vendor.js b/wp-content/themes/aktiv2014/dist/scripts/vendor.js index b9fecfb..679386c 100755 --- a/wp-content/themes/aktiv2014/dist/scripts/vendor.js +++ b/wp-content/themes/aktiv2014/dist/scripts/vendor.js @@ -11840,7 +11840,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }); } - // # 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. + // # 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); } @@ -12002,7 +12002,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) window.Foundation = { name : 'Foundation', - version : '5.3.1', + version : '5.4.2', media_queries : { small : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''), @@ -12040,6 +12040,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } } + 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; }, @@ -12342,7 +12354,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.abide = { name : 'abide', - version : '5.3.3', + version : '5.4.2', settings : { live_validate : true, @@ -12518,17 +12530,17 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) parent = direct_parent.parent(); } + if (validator) { + valid = this.settings.validators[validator].apply(this, [el, required, parent]); + validations.push(valid); + } + if (is_radio && required) { validations.push(this.valid_radio(el, required)); } else if (is_checkbox && required) { validations.push(this.valid_checkbox(el, required)); } else { - if (validator) { - valid = this.settings.validators[validator].apply(this, [el, required, parent]); - validations.push(valid); - } - if (el_patterns[i][1].test(value) && valid_length || !required && el.value.length < 1 || $(el).attr('disabled')) { validations.push(true); @@ -12540,13 +12552,27 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) if(validations[0]){ this.S(el).removeAttr(this.invalid_attr); + el.setAttribute('aria-invalid', 'false'); + el.removeAttribute('aria-describedby'); parent.removeClass('error'); - if (label.length > 0 && this.settings.error_labels) label.removeClass('error'); + if (label.length > 0 && this.settings.error_labels) { + label.removeClass('error').removeAttr('role'); + } $(el).triggerHandler('valid'); } else { - parent.addClass('error'); this.S(el).attr(this.invalid_attr, ''); - if (label.length > 0 && this.settings.error_labels) label.addClass('error'); + el.setAttribute('aria-invalid', 'true'); + + // Try to find the error associated with the input + var errorElem = parent.find('small.error, span.error'); + 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('error'); + if (label.length > 0 && this.settings.error_labels) { + label.addClass('error').attr('role', 'alert'); + } $(el).triggerHandler('invalid'); } @@ -12637,7 +12663,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.accordion = { name : 'accordion', - version : '5.3.3', + version : '5.4.2', settings : { active_class: 'active', @@ -12703,7 +12729,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.alert = { name : 'alert', - version : '5.3.3', + version : '5.4.2', settings : { callback: function (){} @@ -12717,7 +12743,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var self = this, S = this.S; - $(this.scope).off('.alert').on('click.fndtn.alert', '[' + this.attr_name() + '] a.close', function (e) { + $(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; @@ -12747,7 +12773,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.clearing = { name : 'clearing', - version: '5.3.3', + version: '5.4.2', settings : { templates : { @@ -13306,7 +13332,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.dropdown = { name : 'dropdown', - version : '5.3.3', + version : '5.4.2', settings : { active_class: 'open', @@ -13405,9 +13431,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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) @@ -13431,6 +13460,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) .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 () { @@ -13620,7 +13652,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.equalizer = { name : 'equalizer', - version : '5.3.3', + version : '5.4.2', settings : { use_tallest: true, @@ -13695,7 +13727,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.interchange = { name : 'interchange', - version : '5.3.3', + version : '5.4.2', cache : {}, @@ -14042,11 +14074,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.joyride = { name : 'joyride', - version : '5.3.3', + version : '5.4.2', 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 @@ -14099,6 +14132,34 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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; @@ -14106,46 +14167,40 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) .off('.joyride') .on('click.fndtn.joyride', '.joyride-next-tip, .joyride-modal-bg', function (e) { e.preventDefault(); - - 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(); - } - + this.go_next() }.bind(this)) .on('click.fndtn.joyride', '.joyride-prev-tip', function (e) { e.preventDefault(); - - 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); - } - + 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.joyride", function(e) { + if (!this.settings.keyboard) 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) { + if ($('[' + self.attr_name() + ']').length > 0 && self.settings.$next_tip && self.settings.riding) { if (self.settings.exposed.length > 0) { var $els = $(self.settings.exposed); @@ -14184,6 +14239,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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') { @@ -14896,7 +14952,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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(); @@ -14928,7 +14988,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs['magellan-expedition'] = { name : 'magellan-expedition', - version : '5.3.3', + version : '5.4.2', settings : { active_class: 'active', @@ -15035,7 +15095,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) placeholder.attr(self.add_namespace('data-magellan-expedition-clone'),''); expedition.before(placeholder); } - expedition.css({position:'fixed', top: settings.fixed_top}); + 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'); @@ -15118,7 +15178,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.offcanvas = { name : 'offcanvas', - version : '5.3.3', + version : '5.4.2', settings : { open_method: 'move', @@ -15140,6 +15200,10 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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'; } @@ -15147,27 +15211,67 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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); - if (settings.close_on_click) { + 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); - if (settings.close_on_click) { + 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); - if (right_postfix) self.click_remove_class(e, move_class + right_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) { @@ -15625,7 +15729,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.orbit = { name: 'orbit', - version: '5.3.1', + version: '5.4.2', settings: { animation: 'slide', @@ -15700,7 +15804,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.reveal = { name : 'reveal', - version : '5.3.3', + version : '5.4.2', locked : false, @@ -16144,7 +16248,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.slider = { name : 'slider', - version : '5.3.3', + version : '5.4.2', settings: { start: 0, @@ -16268,6 +16372,15 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) $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.input_id != '') { $(settings.display_selector).each(function(){ if (this.hasOwnProperty('value')) { @@ -16281,7 +16394,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, normalized_percentage : function(val, start, end) { - return (val - start)/(end - start); + return Math.min(1, (val - start)/(end - start)); }, normalized_value : function(val, start, end, step) { @@ -16376,7 +16489,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.tab = { name : 'tab', - version : '5.3.3', + version : '5.4.2', settings : { active_class: 'active', @@ -16407,17 +16520,20 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var self = this, S = this.S; - S(this.scope) - .off('.tab') - // Click event: tab title - .on('click.fndtn.tab', '[' + this.attr_name() + '] > * > a', function (e) { + 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'); @@ -16428,7 +16544,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) S(window).on('hashchange.fndtn.tab', function (e) { e.preventDefault(); self.handle_location_hash_change(); - }); + + }).on('keyup', function (e) { +        if (e.keyword == 9) { +          // active tab +          console.log(document.querySelector('[data-tab] .tab-title :focus')) +        } +      }); + ; }, handle_location_hash_change : function () { @@ -16468,11 +16591,58 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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'); + 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'))) { @@ -16516,12 +16686,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // 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'); - siblings.removeClass(settings.active_class); - target.siblings().removeClass(settings.active_class).end().addClass(settings.active_class); + 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}).end().addClass(settings.active_class).attr('aria-hidden', 'false').find(':first-child').attr('tabindex', 0); settings.callback(tab); + target.children().attr('tab-index', 0); target.triggerHandler('toggled', [tab]); tabs.triggerHandler('toggled', [target]); + + tab_link.on('keydown', interpret_keyup_action ); }, data_attr: function (str) { @@ -16544,7 +16720,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.tooltip = { name : 'tooltip', - version : '5.3.3', + version : '5.4.2', settings : { additional_inheritable_classes : [], @@ -16555,9 +16731,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) hover_delay: 200, show_on : 'all', tip_template : function (selector, content) { - return '' + content + ''; + + '" role="tooltip">' + content + ''; } }, @@ -16683,7 +16859,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) if ((id && id.length < 1 || !id) && typeof dataSelector != 'string') { dataSelector = this.random_str(6); - $target.attr('data-selector', dataSelector); + $target + .attr('data-selector', dataSelector) + .attr('aria-describedby', dataSelector); } return (id && id.length > 0) ? id : dataSelector; @@ -16843,7 +17021,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Foundation.libs.topbar = { name : 'topbar', - version: '5.3.3', + version: '5.4.2', settings : { index : 0, @@ -16855,7 +17033,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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; @@ -16867,7 +17045,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) self.S('[' + this.attr_name() + ']', this.scope).each(function () { var topbar = $(this), settings = topbar.data(self.attr_name(true) + '-init'), - section = self.S('section', this); + 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) ) { @@ -16906,7 +17084,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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); + !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 && @@ -16933,7 +17111,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var settings = topbar.data(this.attr_name(true) + '-init'); - var section = self.S('section, .section', topbar); + var section = self.S('section, .top-bar-section', topbar); if (self.breakpoint()) { if (!self.rtl) { @@ -17049,7 +17227,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var $this = S(this), topbar = $this.closest('[' + self.attr_name() + ']'), - section = topbar.find('section, .section'), + section = topbar.find('section, .top-bar-section'), dropdownHeight = $this.next('.dropdown').outerHeight(), $selectedLi = $this.closest('li'); @@ -17067,10 +17245,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) 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'); + + 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'); @@ -17088,7 +17269,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var $this = S(this), topbar = $this.closest('[' + self.attr_name() + ']'), - section = topbar.find('section, .section'), + section = topbar.find('section, .top-bar-section'), settings = topbar.data(self.attr_name(true) + '-init'), $movedLi = $this.closest('li.moved'), $previousLevelUl = $movedLi.parent(); @@ -17113,6 +17294,15 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) $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 () { @@ -17177,7 +17367,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) assemble : function (topbar) { var self = this, settings = topbar.data(this.attr_name(true) + '-init'), - section = self.S('section', topbar); + section = self.S('section, .top-bar-section', topbar); // Pull element out of the DOM for manipulation section.detach(); @@ -17196,7 +17386,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } else { $titleLi = $('
  • '); } - + // Copy link to subnav if (settings.custom_back_text == true) { $('h5>a', $titleLi).html(settings.back_text); @@ -17224,8 +17414,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var total = 0, self = this; - $('> li', ul).each(function () { - total += self.S(this).outerHeight(true); + $('> li', ul).each(function () { + total += self.S(this).outerHeight(true); }); return total; @@ -17241,7 +17431,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) update_sticky_positioning: function() { var klass = '.' + this.settings.sticky_class, - $window = this.S(window), + $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)) { @@ -17269,26 +17459,26 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) reflow : function () {} }; -}(jQuery, this, this.document)); +}(jQuery, window, window.document)); //! moment.js -//! version : 2.7.0 +//! version : 2.8.3 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com (function (undefined) { - /************************************ Constants ************************************/ var moment, - VERSION = "2.7.0", + VERSION = '2.8.3', // the global-scope this is NOT the global object in Node.js globalScope = typeof global !== 'undefined' ? global : this, oldGlobalMoment, round = Math.round, + hasOwnProperty = Object.prototype.hasOwnProperty, i, YEAR = 0, @@ -17299,22 +17489,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) SECOND = 5, MILLISECOND = 6, - // internal storage for language config files - languages = {}, + // internal storage for locale config files + locales = {}, - // moment internal properties - momentProperties = { - _isAMomentObject: null, - _i : null, - _f : null, - _l : null, - _strict : null, - _tzm : null, - _isUTC : null, - _offset : null, // optional. Combine with _isUTC - _pf : null, - _lang : null // optional - }, + // extra moment internal properties (plugins register props here) + momentProperties = [], // check for nodeJS hasModule = (typeof module !== 'undefined' && module.exports), @@ -17373,7 +17552,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) ['HH', /(T| )\d\d/] ], - // timezone chunker "+10:00" > ["10", "00"] or "-1530" > ["-15", "30"] + // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-15', '30'] parseTimezoneChunker = /([\+\-]|\d\d)/gi, // getter and setter names @@ -17420,12 +17599,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // default relative time thresholds relativeTimeThresholds = { - s: 45, //seconds to minutes - m: 45, //minutes to hours - h: 22, //hours to days - dd: 25, //days to month (month == 1) - dm: 45, //days to months (months > 1) - dy: 345 //days to year + s: 45, // seconds to minute + m: 45, // minutes to hour + h: 22, // hours to day + d: 26, // days to month + M: 11 // months to year }, // tokens to ordinalize and pad @@ -17437,10 +17615,10 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this.month() + 1; }, MMM : function (format) { - return this.lang().monthsShort(this, format); + return this.localeData().monthsShort(this, format); }, MMMM : function (format) { - return this.lang().months(this, format); + return this.localeData().months(this, format); }, D : function () { return this.date(); @@ -17452,13 +17630,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this.day(); }, dd : function (format) { - return this.lang().weekdaysMin(this, format); + return this.localeData().weekdaysMin(this, format); }, ddd : function (format) { - return this.lang().weekdaysShort(this, format); + return this.localeData().weekdaysShort(this, format); }, dddd : function (format) { - return this.lang().weekdays(this, format); + return this.localeData().weekdays(this, format); }, w : function () { return this.week(); @@ -17504,10 +17682,10 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this.isoWeekday(); }, a : function () { - return this.lang().meridiem(this.hours(), this.minutes(), true); + return this.localeData().meridiem(this.hours(), this.minutes(), true); }, A : function () { - return this.lang().meridiem(this.hours(), this.minutes(), false); + return this.localeData().meridiem(this.hours(), this.minutes(), false); }, H : function () { return this.hours(); @@ -17535,19 +17713,19 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, Z : function () { var a = -this.zone(), - b = "+"; + b = '+'; if (a < 0) { a = -a; - b = "-"; + b = '-'; } - return b + leftZeroFill(toInt(a / 60), 2) + ":" + leftZeroFill(toInt(a) % 60, 2); + return b + leftZeroFill(toInt(a / 60), 2) + ':' + leftZeroFill(toInt(a) % 60, 2); }, ZZ : function () { var a = -this.zone(), - b = "+"; + b = '+'; if (a < 0) { a = -a; - b = "-"; + b = '-'; } return b + leftZeroFill(toInt(a / 60), 2) + leftZeroFill(toInt(a) % 60, 2); }, @@ -17565,6 +17743,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }, + deprecations = {}, + lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin']; // Pick the first defined of two or three arguments. dfl comes from @@ -17573,10 +17753,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) switch (arguments.length) { case 2: return a != null ? a : b; case 3: return a != null ? a : b != null ? b : c; - default: throw new Error("Implement me"); + default: throw new Error('Implement me'); } } + function hasOwnProp(a, b) { + return hasOwnProperty.call(a, b); + } + function defaultParsingFlags() { // We need to deep clone this object, and es5 standard is not very // helpful. @@ -17594,23 +17778,31 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; } + function printMsg(msg) { + if (moment.suppressDeprecationWarnings === false && + typeof console !== 'undefined' && console.warn) { + console.warn('Deprecation warning: ' + msg); + } + } + function deprecate(msg, fn) { var firstTime = true; - function printMsg() { - if (moment.suppressDeprecationWarnings === false && - typeof console !== 'undefined' && console.warn) { - console.warn("Deprecation warning: " + msg); - } - } return extend(function () { if (firstTime) { - printMsg(); + printMsg(msg); firstTime = false; } return fn.apply(this, arguments); }, fn); } + function deprecateSimple(name, msg) { + if (!deprecations[name]) { + printMsg(msg); + deprecations[name] = true; + } + } + function padToken(func, count) { return function (a) { return leftZeroFill(func.call(this, a), count); @@ -17618,7 +17810,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } function ordinalizeToken(func, period) { return function (a) { - return this.lang().ordinal(func.call(this, a), period); + return this.localeData().ordinal(func.call(this, a), period); }; } @@ -17637,14 +17829,16 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) Constructors ************************************/ - function Language() { - + function Locale() { } // Moment prototype object - function Moment(config) { - checkOverflow(config); - extend(this, config); + function Moment(config, skipOverflow) { + if (skipOverflow !== false) { + checkOverflow(config); + } + copyConfig(this, config); + this._d = new Date(+config._d); } // Duration Constructor @@ -17678,6 +17872,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) this._data = {}; + this._locale = moment.localeData(); + this._bubble(); } @@ -17688,31 +17884,67 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) function extend(a, b) { for (var i in b) { - if (b.hasOwnProperty(i)) { + if (hasOwnProp(b, i)) { a[i] = b[i]; } } - if (b.hasOwnProperty("toString")) { + if (hasOwnProp(b, 'toString')) { a.toString = b.toString; } - if (b.hasOwnProperty("valueOf")) { + if (hasOwnProp(b, 'valueOf')) { a.valueOf = b.valueOf; } return a; } - function cloneMoment(m) { - var result = {}, i; - for (i in m) { - if (m.hasOwnProperty(i) && momentProperties.hasOwnProperty(i)) { - result[i] = m[i]; + function copyConfig(to, from) { + var i, prop, val; + + if (typeof from._isAMomentObject !== 'undefined') { + to._isAMomentObject = from._isAMomentObject; + } + if (typeof from._i !== 'undefined') { + to._i = from._i; + } + if (typeof from._f !== 'undefined') { + to._f = from._f; + } + if (typeof from._l !== 'undefined') { + to._l = from._l; + } + if (typeof from._strict !== 'undefined') { + to._strict = from._strict; + } + if (typeof from._tzm !== 'undefined') { + to._tzm = from._tzm; + } + if (typeof from._isUTC !== 'undefined') { + to._isUTC = from._isUTC; + } + if (typeof from._offset !== 'undefined') { + to._offset = from._offset; + } + if (typeof from._pf !== 'undefined') { + to._pf = from._pf; + } + if (typeof from._locale !== 'undefined') { + to._locale = from._locale; + } + + if (momentProperties.length > 0) { + for (i in momentProperties) { + prop = momentProperties[i]; + val = from[prop]; + if (typeof val !== 'undefined') { + to[prop] = val; + } } } - return result; + return to; } function absRound(number) { @@ -17735,7 +17967,51 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return (sign ? (forceSign ? '+' : '') : '-') + output; } - // helper function for _.addTime and _.subtractTime + function positiveMomentsDifference(base, other) { + var res = {milliseconds: 0, months: 0}; + + res.months = other.month() - base.month() + + (other.year() - base.year()) * 12; + if (base.clone().add(res.months, 'M').isAfter(other)) { + --res.months; + } + + res.milliseconds = +other - +(base.clone().add(res.months, 'M')); + + return res; + } + + function momentsDifference(base, other) { + var res; + other = makeAs(other, base); + if (base.isBefore(other)) { + res = positiveMomentsDifference(base, other); + } else { + res = positiveMomentsDifference(other, base); + res.milliseconds = -res.milliseconds; + res.months = -res.months; + } + + return res; + } + + // TODO: remove 'name' arg after deprecation is removed + function createAdder(direction, name) { + return function (val, period) { + var dur, tmp; + //invert the arguments, but complain about it + if (period !== null && !isNaN(+period)) { + deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period).'); + tmp = val; val = period; period = tmp; + } + + val = typeof val === 'string' ? +val : val; + dur = moment.duration(val, period); + addOrSubtractDurationFromMoment(this, dur, direction); + return this; + }; + } + function addOrSubtractDurationFromMoment(mom, duration, isAdding, updateOffset) { var milliseconds = duration._milliseconds, days = duration._days, @@ -17762,8 +18038,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } function isDate(input) { - return Object.prototype.toString.call(input) === '[object Date]' || - input instanceof Date; + return Object.prototype.toString.call(input) === '[object Date]' || + input instanceof Date; } // compare two arrays, return the number of differences @@ -17795,7 +18071,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) prop; for (prop in inputObject) { - if (inputObject.hasOwnProperty(prop)) { + if (hasOwnProp(inputObject, prop)) { normalizedProp = normalizeUnits(prop); if (normalizedProp) { normalizedInput[normalizedProp] = inputObject[prop]; @@ -17823,7 +18099,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) moment[field] = function (format, index) { var i, getter, - method = moment.fn._lang[field], + method = moment._locale[field], results = []; if (typeof format === 'number') { @@ -17833,7 +18109,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) getter = function (i) { var m = moment().utc().set(setter, i); - return method.call(moment.fn._lang, m, format || ''); + return method.call(moment._locale, m, format || ''); }; if (index != null) { @@ -17918,10 +18194,50 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return m._isValid; } - function normalizeLanguage(key) { + function normalizeLocale(key) { return key ? key.toLowerCase().replace('_', '-') : key; } + // pick the locale from the array + // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each + // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root + function chooseLocale(names) { + var i = 0, j, next, locale, split; + + while (i < names.length) { + split = normalizeLocale(names[i]).split('-'); + j = split.length; + next = normalizeLocale(names[i + 1]); + next = next ? next.split('-') : null; + while (j > 0) { + locale = loadLocale(split.slice(0, j).join('-')); + if (locale) { + return locale; + } + if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) { + //the next array item is better than a shallower substring of this one + break; + } + j--; + } + i++; + } + return null; + } + + function loadLocale(name) { + var oldLocale = null; + if (!locales[name] && hasModule) { + try { + oldLocale = moment.locale(); + require('./locale/' + name); + // because defineLocale currently also sets the global locale, we want to undo that for lazy loaded locales + moment.locale(oldLocale); + } catch (e) { } + } + return locales[name]; + } + // Return a moment from input, that is local/utc/zone equivalent to model. function makeAs(input, model) { return model._isUTC ? moment(input).zone(model._offset || 0) : @@ -17929,11 +18245,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } /************************************ - Languages + Locale ************************************/ - extend(Language.prototype, { + extend(Locale.prototype, { set : function (config) { var prop, i; @@ -17947,12 +18263,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }, - _months : "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), + _months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'), months : function (m) { return this._months[m.month()]; }, - _monthsShort : "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), + _monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), monthsShort : function (m) { return this._monthsShort[m.month()]; }, @@ -17978,17 +18294,17 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }, - _weekdays : "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), + _weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'), weekdays : function (m) { return this._weekdays[m.day()]; }, - _weekdaysShort : "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), + _weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), weekdaysShort : function (m) { return this._weekdaysShort[m.day()]; }, - _weekdaysMin : "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), + _weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), weekdaysMin : function (m) { return this._weekdaysMin[m.day()]; }, @@ -18015,11 +18331,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, _longDateFormat : { - LT : "h:mm A", - L : "MM/DD/YYYY", - LL : "MMMM D YYYY", - LLL : "MMMM D YYYY LT", - LLLL : "dddd, MMMM D YYYY LT" + LT : 'h:mm A', + L : 'MM/DD/YYYY', + LL : 'MMMM D, YYYY', + LLL : 'MMMM D, YYYY LT', + LLLL : 'dddd, MMMM D, YYYY LT' }, longDateFormat : function (key) { var output = this._longDateFormat[key]; @@ -18061,35 +18377,37 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, _relativeTime : { - future : "in %s", - past : "%s ago", - s : "a few seconds", - m : "a minute", - mm : "%d minutes", - h : "an hour", - hh : "%d hours", - d : "a day", - dd : "%d days", - M : "a month", - MM : "%d months", - y : "a year", - yy : "%d years" + future : 'in %s', + past : '%s ago', + s : 'a few seconds', + m : 'a minute', + mm : '%d minutes', + h : 'an hour', + hh : '%d hours', + d : 'a day', + dd : '%d days', + M : 'a month', + MM : '%d months', + y : 'a year', + yy : '%d years' }, + relativeTime : function (number, withoutSuffix, string, isFuture) { var output = this._relativeTime[string]; return (typeof output === 'function') ? output(number, withoutSuffix, string, isFuture) : output.replace(/%d/i, number); }, + pastFuture : function (diff, output) { var format = this._relativeTime[diff > 0 ? 'future' : 'past']; return typeof format === 'function' ? format(output) : format.replace(/%s/i, output); }, ordinal : function (number) { - return this._ordinal.replace("%d", number); + return this._ordinal.replace('%d', number); }, - _ordinal : "%d", + _ordinal : '%d', preparse : function (string) { return string; @@ -18114,78 +18432,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }); - // Loads a language definition into the `languages` cache. The function - // takes a key and optionally values. If not in the browser and no values - // are provided, it will load the language file module. As a convenience, - // this function also returns the language values. - function loadLang(key, values) { - values.abbr = key; - if (!languages[key]) { - languages[key] = new Language(); - } - languages[key].set(values); - return languages[key]; - } - - // Remove a language from the `languages` cache. Mostly useful in tests. - function unloadLang(key) { - delete languages[key]; - } - - // Determines which language definition to use and returns it. - // - // With no parameters, it will return the global language. If you - // pass in a language key, such as 'en', it will return the - // definition for 'en', so long as 'en' has already been loaded using - // moment.lang. - function getLangDefinition(key) { - var i = 0, j, lang, next, split, - get = function (k) { - if (!languages[k] && hasModule) { - try { - require('./lang/' + k); - } catch (e) { } - } - return languages[k]; - }; - - if (!key) { - return moment.fn._lang; - } - - if (!isArray(key)) { - //short-circuit everything else - lang = get(key); - if (lang) { - return lang; - } - key = [key]; - } - - //pick the language from the array - //try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each - //substring from most specific to least, but move to the next array item if it's a more specific variant than the current root - while (i < key.length) { - split = normalizeLanguage(key[i]).split('-'); - j = split.length; - next = normalizeLanguage(key[i + 1]); - next = next ? next.split('-') : null; - while (j > 0) { - lang = get(split.slice(0, j).join('-')); - if (lang) { - return lang; - } - if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) { - //the next array item is better than a shallower substring of this one - break; - } - j--; - } - i++; - } - return moment.fn._lang; - } - /************************************ Formatting ************************************/ @@ -18193,9 +18439,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) function removeFormattingTokens(input) { if (input.match(/\[[\s\S]/)) { - return input.replace(/^\[|\]$/g, ""); + return input.replace(/^\[|\]$/g, ''); } - return input.replace(/\\/g, ""); + return input.replace(/\\/g, ''); } function makeFormatFunction(format) { @@ -18210,7 +18456,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } return function (mom) { - var output = ""; + var output = ''; for (i = 0; i < length; i++) { output += array[i] instanceof Function ? array[i].call(mom, format) : array[i]; } @@ -18220,12 +18466,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // format date using native date object function formatMoment(m, format) { - if (!m.isValid()) { - return m.lang().invalidDate(); + return m.localeData().invalidDate(); } - format = expandFormat(format, m.lang()); + format = expandFormat(format, m.localeData()); if (!formatFunctions[format]) { formatFunctions[format] = makeFormatFunction(format); @@ -18234,11 +18479,11 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return formatFunctions[format](m); } - function expandFormat(format, lang) { + function expandFormat(format, locale) { var i = 5; function replaceLongDateFormatTokens(input) { - return lang.longDateFormat(input) || input; + return locale.longDateFormat(input) || input; } localFormattingTokens.lastIndex = 0; @@ -18279,13 +18524,19 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) case 'ggggg': return strict ? parseTokenSixDigits : parseTokenOneToSixDigits; case 'S': - if (strict) { return parseTokenOneDigit; } + if (strict) { + return parseTokenOneDigit; + } /* falls through */ case 'SS': - if (strict) { return parseTokenTwoDigits; } + if (strict) { + return parseTokenTwoDigits; + } /* falls through */ case 'SSS': - if (strict) { return parseTokenThreeDigits; } + if (strict) { + return parseTokenThreeDigits; + } /* falls through */ case 'DDD': return parseTokenOneToThreeDigits; @@ -18297,7 +18548,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return parseTokenWord; case 'a': case 'A': - return getLangDefinition(config._l)._meridiemParse; + return config._locale._meridiemParse; case 'X': return parseTokenTimestampMs; case 'Z': @@ -18334,13 +18585,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) case 'Do': return parseTokenOrdinal; default : - a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\', '')), "i")); + a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\', '')), 'i')); return a; } } function timezoneMinutesFromString(string) { - string = string || ""; + string = string || ''; var possibleTzMatches = (string.match(parseTokenTimezone) || []), tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [], parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0], @@ -18369,7 +18620,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) break; case 'MMM' : // fall through to MMMM case 'MMMM' : - a = getLangDefinition(config._l).monthsParse(input); + a = config._locale.monthsParse(input); // if we didn't find a month name, mark the date as invalid. if (a != null) { datePartArray[MONTH] = a; @@ -18409,7 +18660,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // AM / PM case 'a' : // fall through to A case 'A' : - config._isPm = getLangDefinition(config._l).isPM(input); + config._isPm = config._locale.isPM(input); break; // 24 HOUR case 'H' : // fall through to hh @@ -18449,7 +18700,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) case 'dd': case 'ddd': case 'dddd': - a = getLangDefinition(config._l).weekdaysParse(input); + a = config._locale.weekdaysParse(input); // if we didn't get a weekday name, mark the date as invalid if (a != null) { config._w = config._w || {}; @@ -18485,7 +18736,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } function dayOfYearFromWeekInfo(config) { - var w, weekYear, week, weekday, dow, doy, temp, lang; + var w, weekYear, week, weekday, dow, doy, temp; w = config._w; if (w.GG != null || w.W != null || w.E != null) { @@ -18500,9 +18751,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) week = dfl(w.W, 1); weekday = dfl(w.E, 1); } else { - lang = getLangDefinition(config._l); - dow = lang._week.dow; - doy = lang._week.doy; + dow = config._locale._week.dow; + doy = config._locale._week.doy; weekYear = dfl(w.gg, config._a[YEAR], weekOfYear(moment(), dow, doy).year); week = dfl(w.w, 1); @@ -18616,7 +18866,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // date from string and format string function makeDateFromStringAndFormat(config) { - if (config._f === moment.ISO_8601) { parseISO(config); return; @@ -18626,13 +18875,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) config._pf.empty = true; // This array is used to make a Date, either with `new Date` or `Date.UTC` - var lang = getLangDefinition(config._l), - string = '' + config._i, + var string = '' + config._i, i, parsedInput, tokens, token, skipped, stringLength = string.length, totalParsedInputLength = 0; - tokens = expandFormat(config._f, lang).match(formattingTokens) || []; + tokens = expandFormat(config._f, config._locale).match(formattingTokens) || []; for (i = 0; i < tokens.length; i++) { token = tokens[i]; @@ -18707,7 +18955,10 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) for (i = 0; i < config._f.length; i++) { currentScore = 0; - tempConfig = extend({}, config); + tempConfig = copyConfig({}, config); + if (config._useUTC != null) { + tempConfig._useUTC = config._useUTC; + } tempConfig._pf = defaultParsingFlags(); tempConfig._f = config._f[i]; makeDateFromStringAndFormat(tempConfig); @@ -18743,8 +18994,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) config._pf.iso = true; for (i = 0, l = isoDates.length; i < l; i++) { if (isoDates[i][1].exec(string)) { - // match[5] should be "T" or undefined - config._f = isoDates[i][0] + (match[6] || " "); + // match[5] should be 'T' or undefined + config._f = isoDates[i][0] + (match[6] || ' '); break; } } @@ -18755,7 +19006,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } } if (string.match(parseTokenTimezone)) { - config._f += "Z"; + config._f += 'Z'; } makeDateFromStringAndFormat(config); } else { @@ -18772,21 +19023,29 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } } - function makeDateFromInput(config) { - var input = config._i, - matched = aspNetJsonRegex.exec(input); + function map(arr, fn) { + var res = [], i; + for (i = 0; i < arr.length; ++i) { + res.push(fn(arr[i], i)); + } + return res; + } + function makeDateFromInput(config) { + var input = config._i, matched; if (input === undefined) { config._d = new Date(); - } else if (matched) { + } else if (isDate(input)) { + config._d = new Date(+input); + } else if ((matched = aspNetJsonRegex.exec(input)) !== null) { config._d = new Date(+matched[1]); } else if (typeof input === 'string') { makeDateFromString(config); } else if (isArray(input)) { - config._a = input.slice(0); + config._a = map(input.slice(0), function (obj) { + return parseInt(obj, 10); + }); dateFromConfig(config); - } else if (isDate(input)) { - config._d = new Date(+input); } else if (typeof(input) === 'object') { dateFromObject(config); } else if (typeof(input) === 'number') { @@ -18817,13 +19076,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return date; } - function parseWeekday(input, language) { + function parseWeekday(input, locale) { if (typeof input === 'string') { if (!isNaN(input)) { input = parseInt(input, 10); } else { - input = language.weekdaysParse(input); + input = locale.weekdaysParse(input); if (typeof input !== 'number') { return null; } @@ -18838,29 +19097,33 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize - function substituteTimeAgo(string, number, withoutSuffix, isFuture, lang) { - return lang.relativeTime(number || 1, !!withoutSuffix, string, isFuture); + function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { + return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture); } - function relativeTime(milliseconds, withoutSuffix, lang) { - var seconds = round(Math.abs(milliseconds) / 1000), - minutes = round(seconds / 60), - hours = round(minutes / 60), - days = round(hours / 24), - years = round(days / 365), - args = seconds < relativeTimeThresholds.s && ['s', seconds] || + function relativeTime(posNegDuration, withoutSuffix, locale) { + var duration = moment.duration(posNegDuration).abs(), + seconds = round(duration.as('s')), + minutes = round(duration.as('m')), + hours = round(duration.as('h')), + days = round(duration.as('d')), + months = round(duration.as('M')), + years = round(duration.as('y')), + + args = seconds < relativeTimeThresholds.s && ['s', seconds] || minutes === 1 && ['m'] || minutes < relativeTimeThresholds.m && ['mm', minutes] || hours === 1 && ['h'] || hours < relativeTimeThresholds.h && ['hh', hours] || days === 1 && ['d'] || - days <= relativeTimeThresholds.dd && ['dd', days] || - days <= relativeTimeThresholds.dm && ['M'] || - days < relativeTimeThresholds.dy && ['MM', round(days / 30)] || + days < relativeTimeThresholds.d && ['dd', days] || + months === 1 && ['M'] || + months < relativeTimeThresholds.M && ['MM', months] || years === 1 && ['y'] || ['yy', years]; + args[2] = withoutSuffix; - args[3] = milliseconds > 0; - args[4] = lang; + args[3] = +posNegDuration > 0; + args[4] = locale; return substituteTimeAgo.apply({}, args); } @@ -18891,7 +19154,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) daysToDayOfWeek += 7; } - adjustedMoment = moment(mom).add('d', daysToDayOfWeek); + adjustedMoment = moment(mom).add(daysToDayOfWeek, 'd'); return { week: Math.ceil(adjustedMoment.dayOfYear() / 7), year: adjustedMoment.year() @@ -18921,18 +19184,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var input = config._i, format = config._f; + config._locale = config._locale || moment.localeData(config._l); + if (input === null || (format === undefined && input === '')) { return moment.invalid({nullInput: true}); } if (typeof input === 'string') { - config._i = input = getLangDefinition().preparse(input); + config._i = input = config._locale.preparse(input); } if (moment.isMoment(input)) { - config = cloneMoment(input); - - config._d = new Date(+input._d); + return new Moment(input, true); } else if (format) { if (isArray(format)) { makeDateFromStringAndArray(config); @@ -18946,12 +19209,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return new Moment(config); } - moment = function (input, format, lang, strict) { + moment = function (input, format, locale, strict) { var c; - if (typeof(lang) === "boolean") { - strict = lang; - lang = undefined; + if (typeof(locale) === 'boolean') { + strict = locale; + locale = undefined; } // object construction must be done this way. // https://github.com/moment/moment/issues/1423 @@ -18959,7 +19222,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) c._isAMomentObject = true; c._i = input; c._f = format; - c._l = lang; + c._l = locale; c._strict = strict; c._isUTC = false; c._pf = defaultParsingFlags(); @@ -18970,13 +19233,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) moment.suppressDeprecationWarnings = false; moment.createFromInputFallback = deprecate( - "moment construction falls back to js Date. This is " + - "discouraged and will be removed in upcoming major " + - "release. Please refer to " + - "https://github.com/moment/moment/issues/1407 for more info.", - function (config) { - config._d = new Date(config._i); - }); + 'moment construction falls back to js Date. This is ' + + 'discouraged and will be removed in upcoming major ' + + 'release. Please refer to ' + + 'https://github.com/moment/moment/issues/1407 for more info.', + function (config) { + config._d = new Date(config._i); + } + ); // Pick a moment m from moments so that m[fn](other) is true for all // other. This relies on the function fn to be transitive. @@ -19013,12 +19277,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; // creating with utc - moment.utc = function (input, format, lang, strict) { + moment.utc = function (input, format, locale, strict) { var c; - if (typeof(lang) === "boolean") { - strict = lang; - lang = undefined; + if (typeof(locale) === 'boolean') { + strict = locale; + locale = undefined; } // object construction must be done this way. // https://github.com/moment/moment/issues/1423 @@ -19026,7 +19290,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) c._isAMomentObject = true; c._useUTC = true; c._isUTC = true; - c._l = lang; + c._l = locale; c._i = input; c._f = format; c._strict = strict; @@ -19047,7 +19311,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) match = null, sign, ret, - parseIso; + parseIso, + diffRes; if (moment.isDuration(input)) { duration = { @@ -19063,7 +19328,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) duration.milliseconds = input; } } else if (!!(match = aspNetTimeSpanJsonRegex.exec(input))) { - sign = (match[1] === "-") ? -1 : 1; + sign = (match[1] === '-') ? -1 : 1; duration = { y: 0, d: toInt(match[DATE]) * sign, @@ -19073,7 +19338,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) ms: toInt(match[MILLISECOND]) * sign }; } else if (!!(match = isoDurationRegex.exec(input))) { - sign = (match[1] === "-") ? -1 : 1; + sign = (match[1] === '-') ? -1 : 1; parseIso = function (inp) { // We'd normally use ~~inp for this, but unfortunately it also // converts floats to ints. @@ -19091,12 +19356,19 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) s: parseIso(match[7]), w: parseIso(match[8]) }; + } else if (typeof duration === 'object' && + ('from' in duration || 'to' in duration)) { + diffRes = momentsDifference(moment(duration.from), moment(duration.to)); + + duration = {}; + duration.ms = diffRes.milliseconds; + duration.M = diffRes.months; } ret = new Duration(duration); - if (moment.isDuration(input) && input.hasOwnProperty('_lang')) { - ret._lang = input._lang; + if (moment.isDuration(input) && hasOwnProp(input, '_locale')) { + ret._locale = input._locale; } return ret; @@ -19120,46 +19392,99 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) moment.updateOffset = function () {}; // This function allows you to set a threshold for relative time strings - moment.relativeTimeThreshold = function(threshold, limit) { - if (relativeTimeThresholds[threshold] === undefined) { - return false; - } - relativeTimeThresholds[threshold] = limit; - return true; + moment.relativeTimeThreshold = function (threshold, limit) { + if (relativeTimeThresholds[threshold] === undefined) { + return false; + } + if (limit === undefined) { + return relativeTimeThresholds[threshold]; + } + relativeTimeThresholds[threshold] = limit; + return true; }; - // This function will load languages and then set the global language. If + moment.lang = deprecate( + 'moment.lang is deprecated. Use moment.locale instead.', + function (key, value) { + return moment.locale(key, value); + } + ); + + // This function will load locale and then set the global locale. If // no arguments are passed in, it will simply return the current global - // language key. - moment.lang = function (key, values) { - var r; - if (!key) { - return moment.fn._lang._abbr; + // locale key. + moment.locale = function (key, values) { + var data; + if (key) { + if (typeof(values) !== 'undefined') { + data = moment.defineLocale(key, values); + } + else { + data = moment.localeData(key); + } + + if (data) { + moment.duration._locale = moment._locale = data; + } } - if (values) { - loadLang(normalizeLanguage(key), values); - } else if (values === null) { - unloadLang(key); - key = 'en'; - } else if (!languages[key]) { - getLangDefinition(key); - } - r = moment.duration.fn._lang = moment.fn._lang = getLangDefinition(key); - return r._abbr; + + return moment._locale._abbr; }; - // returns language data - moment.langData = function (key) { - if (key && key._lang && key._lang._abbr) { - key = key._lang._abbr; + moment.defineLocale = function (name, values) { + if (values !== null) { + values.abbr = name; + if (!locales[name]) { + locales[name] = new Locale(); + } + locales[name].set(values); + + // backwards compat for now: also set the locale + moment.locale(name); + + return locales[name]; + } else { + // useful for testing + delete locales[name]; + return null; } - return getLangDefinition(key); + }; + + moment.langData = deprecate( + 'moment.langData is deprecated. Use moment.localeData instead.', + function (key) { + return moment.localeData(key); + } + ); + + // returns locale data + moment.localeData = function (key) { + var locale; + + if (key && key._locale && key._locale._abbr) { + key = key._locale._abbr; + } + + if (!key) { + return moment._locale; + } + + if (!isArray(key)) { + //short-circuit everything else + locale = loadLocale(key); + if (locale) { + return locale; + } + key = [key]; + } + + return chooseLocale(key); }; // compare moment object moment.isMoment = function (obj) { return obj instanceof Moment || - (obj != null && obj.hasOwnProperty('_isAMomentObject')); + (obj != null && hasOwnProp(obj, '_isAMomentObject')); }; // for typechecking Duration objects @@ -19215,7 +19540,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, toString : function () { - return this.clone().lang('en').format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ"); + return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); }, toDate : function () { @@ -19249,7 +19574,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, isDSTShifted : function () { - if (this._a) { return this.isValid() && compareArrays(this._a, (this._isUTC ? moment.utc(this._a) : moment(this._a)).toArray()) > 0; } @@ -19265,53 +19589,35 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this._pf.overflow; }, - utc : function () { - return this.zone(0); + utc : function (keepLocalTime) { + return this.zone(0, keepLocalTime); }, - local : function () { - this.zone(0); - this._isUTC = false; + local : function (keepLocalTime) { + if (this._isUTC) { + this.zone(0, keepLocalTime); + this._isUTC = false; + + if (keepLocalTime) { + this.add(this._dateTzOffset(), 'm'); + } + } return this; }, format : function (inputString) { var output = formatMoment(this, inputString || moment.defaultFormat); - return this.lang().postformat(output); + return this.localeData().postformat(output); }, - add : function (input, val) { - var dur; - // switch args to support add('s', 1) and add(1, 's') - if (typeof input === 'string' && typeof val === 'string') { - dur = moment.duration(isNaN(+val) ? +input : +val, isNaN(+val) ? val : input); - } else if (typeof input === 'string') { - dur = moment.duration(+val, input); - } else { - dur = moment.duration(input, val); - } - addOrSubtractDurationFromMoment(this, dur, 1); - return this; - }, + add : createAdder(1, 'add'), - subtract : function (input, val) { - var dur; - // switch args to support subtract('s', 1) and subtract(1, 's') - if (typeof input === 'string' && typeof val === 'string') { - dur = moment.duration(isNaN(+val) ? +input : +val, isNaN(+val) ? val : input); - } else if (typeof input === 'string') { - dur = moment.duration(+val, input); - } else { - dur = moment.duration(input, val); - } - addOrSubtractDurationFromMoment(this, dur, -1); - return this; - }, + subtract : createAdder(-1, 'subtract'), diff : function (input, units, asFloat) { var that = makeAs(input, this), zoneDiff = (this.zone() - that.zone()) * 6e4, - diff, output; + diff, output, daysAdjust; units = normalizeUnits(units); @@ -19322,11 +19628,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) output = ((this.year() - that.year()) * 12) + (this.month() - that.month()); // adjust by taking difference in days, average number of days // and dst in the given months. - output += ((this - moment(this).startOf('month')) - - (that - moment(that).startOf('month'))) / diff; + daysAdjust = (this - moment(this).startOf('month')) - + (that - moment(that).startOf('month')); // same as above but with zones, to negate all dst - output -= ((this.zone() - moment(this).startOf('month').zone()) - - (that.zone() - moment(that).startOf('month').zone())) * 6e4 / diff; + daysAdjust -= ((this.zone() - moment(this).startOf('month').zone()) - + (that.zone() - moment(that).startOf('month').zone())) * 6e4; + output += daysAdjust / diff; if (units === 'year') { output = output / 12; } @@ -19343,7 +19650,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, from : function (time, withoutSuffix) { - return moment.duration(this.diff(time)).lang(this.lang()._abbr).humanize(!withoutSuffix); + return moment.duration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix); }, fromNow : function (withoutSuffix) { @@ -19362,7 +19669,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) diff < 1 ? 'sameDay' : diff < 2 ? 'nextDay' : diff < 7 ? 'nextWeek' : 'sameElse'; - return this.format(this.lang().calendar(format, this)); + return this.format(this.localeData().calendar(format, this)); }, isLeapYear : function () { @@ -19377,8 +19684,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) day : function (input) { var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); if (input != null) { - input = parseWeekday(input, this.lang()); - return this.add({ d : input - day }); + input = parseWeekday(input, this.localeData()); + return this.add(input - day, 'd'); } else { return day; } @@ -19386,7 +19693,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) month : makeAccessor('Month', true), - startOf: function (units) { + startOf : function (units) { units = normalizeUnits(units); // the following switch intentionally omits break keywords // to utilize falling through the cases. @@ -19431,26 +19738,41 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) endOf: function (units) { units = normalizeUnits(units); - return this.startOf(units).add((units === 'isoWeek' ? 'week' : units), 1).subtract('ms', 1); + return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms'); }, isAfter: function (input, units) { - units = typeof units !== 'undefined' ? units : 'millisecond'; - return +this.clone().startOf(units) > +moment(input).startOf(units); + units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); + if (units === 'millisecond') { + input = moment.isMoment(input) ? input : moment(input); + return +this > +input; + } else { + return +this.clone().startOf(units) > +moment(input).startOf(units); + } }, isBefore: function (input, units) { - units = typeof units !== 'undefined' ? units : 'millisecond'; - return +this.clone().startOf(units) < +moment(input).startOf(units); + units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); + if (units === 'millisecond') { + input = moment.isMoment(input) ? input : moment(input); + return +this < +input; + } else { + return +this.clone().startOf(units) < +moment(input).startOf(units); + } }, isSame: function (input, units) { - units = units || 'ms'; - return +this.clone().startOf(units) === +makeAs(input, this).startOf(units); + units = normalizeUnits(units || 'millisecond'); + if (units === 'millisecond') { + input = moment.isMoment(input) ? input : moment(input); + return +this === +input; + } else { + return +this.clone().startOf(units) === +makeAs(input, this).startOf(units); + } }, min: deprecate( - "moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548", + 'moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548', function (other) { other = moment.apply(null, arguments); return other < this ? this : other; @@ -19458,36 +19780,43 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) ), max: deprecate( - "moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548", + 'moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548', function (other) { other = moment.apply(null, arguments); return other > this ? this : other; } ), - // keepTime = true means only change the timezone, without affecting - // the local hour. So 5:31:26 +0300 --[zone(2, true)]--> 5:31:26 +0200 - // It is possible that 5:31:26 doesn't exist int zone +0200, so we - // adjust the time as needed, to be valid. + // keepLocalTime = true means only change the timezone, without + // affecting the local hour. So 5:31:26 +0300 --[zone(2, true)]--> + // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist int zone + // +0200, so we adjust the time as needed, to be valid. // // Keeping the time actually adds/subtracts (one hour) // from the actual represented time. That is why we call updateOffset // a second time. In case it wants us to change the offset again // _changeInProgress == true case, then we have to adjust, because // there is no such time in the given timezone. - zone : function (input, keepTime) { - var offset = this._offset || 0; + zone : function (input, keepLocalTime) { + var offset = this._offset || 0, + localAdjust; if (input != null) { - if (typeof input === "string") { + if (typeof input === 'string') { input = timezoneMinutesFromString(input); } if (Math.abs(input) < 16) { input = input * 60; } + if (!this._isUTC && keepLocalTime) { + localAdjust = this._dateTzOffset(); + } this._offset = input; this._isUTC = true; + if (localAdjust != null) { + this.subtract(localAdjust, 'm'); + } if (offset !== input) { - if (!keepTime || this._changeInProgress) { + if (!keepLocalTime || this._changeInProgress) { addOrSubtractDurationFromMoment(this, moment.duration(offset - input, 'm'), 1, false); } else if (!this._changeInProgress) { @@ -19497,17 +19826,17 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } } } else { - return this._isUTC ? offset : this._d.getTimezoneOffset(); + return this._isUTC ? offset : this._dateTzOffset(); } return this; }, zoneAbbr : function () { - return this._isUTC ? "UTC" : ""; + return this._isUTC ? 'UTC' : ''; }, zoneName : function () { - return this._isUTC ? "Coordinated Universal Time" : ""; + return this._isUTC ? 'Coordinated Universal Time' : ''; }, parseZone : function () { @@ -19536,7 +19865,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) dayOfYear : function (input) { var dayOfYear = round((moment(this).startOf('day') - moment(this).startOf('year')) / 864e5) + 1; - return input == null ? dayOfYear : this.add("d", (input - dayOfYear)); + return input == null ? dayOfYear : this.add((input - dayOfYear), 'd'); }, quarter : function (input) { @@ -19544,28 +19873,28 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, weekYear : function (input) { - var year = weekOfYear(this, this.lang()._week.dow, this.lang()._week.doy).year; - return input == null ? year : this.add("y", (input - year)); + var year = weekOfYear(this, this.localeData()._week.dow, this.localeData()._week.doy).year; + return input == null ? year : this.add((input - year), 'y'); }, isoWeekYear : function (input) { var year = weekOfYear(this, 1, 4).year; - return input == null ? year : this.add("y", (input - year)); + return input == null ? year : this.add((input - year), 'y'); }, week : function (input) { - var week = this.lang().week(this); - return input == null ? week : this.add("d", (input - week) * 7); + var week = this.localeData().week(this); + return input == null ? week : this.add((input - week) * 7, 'd'); }, isoWeek : function (input) { var week = weekOfYear(this, 1, 4).week; - return input == null ? week : this.add("d", (input - week) * 7); + return input == null ? week : this.add((input - week) * 7, 'd'); }, weekday : function (input) { - var weekday = (this.day() + 7 - this.lang()._week.dow) % 7; - return input == null ? weekday : this.add("d", input - weekday); + var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; + return input == null ? weekday : this.add(input - weekday, 'd'); }, isoWeekday : function (input) { @@ -19580,7 +19909,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, weeksInYear : function () { - var weekInfo = this._lang._week; + var weekInfo = this.localeData()._week; return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy); }, @@ -19597,16 +19926,42 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this; }, - // If passed a language key, it will set the language for this - // instance. Otherwise, it will return the language configuration + // If passed a locale key, it will set the locale for this + // instance. Otherwise, it will return the locale configuration // variables for this instance. - lang : function (key) { + locale : function (key) { + var newLocaleData; + if (key === undefined) { - return this._lang; + return this._locale._abbr; } else { - this._lang = getLangDefinition(key); + newLocaleData = moment.localeData(key); + if (newLocaleData != null) { + this._locale = newLocaleData; + } return this; } + }, + + lang : deprecate( + 'moment().lang() is deprecated. Use moment().localeData() instead.', + function (key) { + if (key === undefined) { + return this.localeData(); + } else { + return this.locale(key); + } + } + ), + + localeData : function () { + return this._locale; + }, + + _dateTzOffset : function () { + // On Firefox.24 Date#getTimezoneOffset returns a floating point. + // https://github.com/moment/moment/pull/1871 + return Math.round(this._d.getTimezoneOffset() / 15) * 15; } }); @@ -19615,7 +19970,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // TODO: Move this out of here! if (typeof value === 'string') { - value = mom.lang().monthsParse(value); + value = mom.localeData().monthsParse(value); // TODO: Another silent failure? if (typeof value !== 'number') { return mom; @@ -19662,9 +20017,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) moment.fn.hour = moment.fn.hours = makeAccessor('Hours', true); // moment.fn.month is defined separately moment.fn.date = makeAccessor('Date', true); - moment.fn.dates = deprecate("dates accessor is deprecated. Use date instead.", makeAccessor('Date', true)); + moment.fn.dates = deprecate('dates accessor is deprecated. Use date instead.', makeAccessor('Date', true)); moment.fn.year = makeAccessor('FullYear', true); - moment.fn.years = deprecate("years accessor is deprecated. Use year instead.", makeAccessor('FullYear', true)); + moment.fn.years = deprecate('years accessor is deprecated. Use year instead.', makeAccessor('FullYear', true)); // add plural methods moment.fn.days = moment.fn.day; @@ -19681,6 +20036,17 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) ************************************/ + function daysToYears (days) { + // 400 years have 146097 days (taking into account leap year rules) + return days * 400 / 146097; + } + + function yearsToDays (years) { + // years * 365 + absRound(years / 4) - + // absRound(years / 100) + absRound(years / 400); + return years * 146097 / 400; + } + extend(moment.duration.fn = Duration.prototype, { _bubble : function () { @@ -19688,7 +20054,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) days = this._days, months = this._months, data = this._data, - seconds, minutes, hours, years; + seconds, minutes, hours, years = 0; // The following code bubbles up values, see the tests for // examples of what that means. @@ -19704,15 +20070,40 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) data.hours = hours % 24; days += absRound(hours / 24); - data.days = days % 30; + // Accurately convert days to years, assume start from year 0. + years = absRound(daysToYears(days)); + days -= absRound(yearsToDays(years)); + + // 30 days to a month + // TODO (iskren): Use anchor date (like 1st Jan) to compute this. months += absRound(days / 30); - data.months = months % 12; + days %= 30; - years = absRound(months / 12); + // 12 months -> 1 year + years += absRound(months / 12); + months %= 12; + + data.days = days; + data.months = months; data.years = years; }, + abs : function () { + this._milliseconds = Math.abs(this._milliseconds); + this._days = Math.abs(this._days); + this._months = Math.abs(this._months); + + this._data.milliseconds = Math.abs(this._data.milliseconds); + this._data.seconds = Math.abs(this._data.seconds); + this._data.minutes = Math.abs(this._data.minutes); + this._data.hours = Math.abs(this._data.hours); + this._data.months = Math.abs(this._data.months); + this._data.years = Math.abs(this._data.years); + + return this; + }, + weeks : function () { return absRound(this.days() / 7); }, @@ -19725,14 +20116,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, humanize : function (withSuffix) { - var difference = +this, - output = relativeTime(difference, !withSuffix, this.lang()); + var output = relativeTime(this, !withSuffix, this.localeData()); if (withSuffix) { - output = this.lang().pastFuture(difference, output); + output = this.localeData().pastFuture(+this, output); } - return this.lang().postformat(output); + return this.localeData().postformat(output); }, add : function (input, val) { @@ -19766,13 +20156,41 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }, as : function (units) { + var days, months; units = normalizeUnits(units); - return this['as' + units.charAt(0).toUpperCase() + units.slice(1) + 's'](); + + if (units === 'month' || units === 'year') { + days = this._days + this._milliseconds / 864e5; + months = this._months + daysToYears(days) * 12; + return units === 'month' ? months : months / 12; + } else { + // handle milliseconds separately because of floating point math errors (issue #1867) + days = this._days + yearsToDays(this._months / 12); + switch (units) { + case 'week': return days / 7 + this._milliseconds / 6048e5; + case 'day': return days + this._milliseconds / 864e5; + case 'hour': return days * 24 + this._milliseconds / 36e5; + case 'minute': return days * 24 * 60 + this._milliseconds / 6e4; + case 'second': return days * 24 * 60 * 60 + this._milliseconds / 1000; + // Math.floor prevents floating point math errors here + case 'millisecond': return Math.floor(days * 24 * 60 * 60 * 1000) + this._milliseconds; + default: throw new Error('Unknown unit ' + units); + } + } }, lang : moment.fn.lang, + locale : moment.fn.locale, - toIsoString : function () { + toIsoString : deprecate( + 'toIsoString() is deprecated. Please use toISOString() instead ' + + '(notice the capitals)', + function () { + return this.toISOString(); + } + ), + + toISOString : function () { // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js var years = Math.abs(this.years()), months = Math.abs(this.months()), @@ -19796,41 +20214,59 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) (hours ? hours + 'H' : '') + (minutes ? minutes + 'M' : '') + (seconds ? seconds + 'S' : ''); + }, + + localeData : function () { + return this._locale; } }); + moment.duration.fn.toString = moment.duration.fn.toISOString; + function makeDurationGetter(name) { moment.duration.fn[name] = function () { return this._data[name]; }; } - function makeDurationAsGetter(name, factor) { - moment.duration.fn['as' + name] = function () { - return +this / factor; - }; - } - for (i in unitMillisecondFactors) { - if (unitMillisecondFactors.hasOwnProperty(i)) { - makeDurationAsGetter(i, unitMillisecondFactors[i]); + if (hasOwnProp(unitMillisecondFactors, i)) { makeDurationGetter(i.toLowerCase()); } } - makeDurationAsGetter('Weeks', 6048e5); + moment.duration.fn.asMilliseconds = function () { + return this.as('ms'); + }; + moment.duration.fn.asSeconds = function () { + return this.as('s'); + }; + moment.duration.fn.asMinutes = function () { + return this.as('m'); + }; + moment.duration.fn.asHours = function () { + return this.as('h'); + }; + moment.duration.fn.asDays = function () { + return this.as('d'); + }; + moment.duration.fn.asWeeks = function () { + return this.as('weeks'); + }; moment.duration.fn.asMonths = function () { - return (+this - this.years() * 31536e6) / 2592e6 + this.years() * 12; + return this.as('M'); + }; + moment.duration.fn.asYears = function () { + return this.as('y'); }; - /************************************ - Default Lang + Default Locale ************************************/ - // Set default language, other languages will inherit from English. - moment.lang('en', { + // Set default locale, other locale will inherit from English. + moment.locale('en', { ordinal : function (number) { var b = number % 10, output = (toInt(number % 100 / 10) === 1) ? 'th' : @@ -19841,7 +20277,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }); - /* EMBED_LANGUAGES */ + /* EMBED_LOCALES */ /************************************ Exposing Moment @@ -19855,9 +20291,9 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) oldGlobalMoment = globalScope.moment; if (shouldDeprecate) { globalScope.moment = deprecate( - "Accessing Moment through the global scope is " + - "deprecated, and will be removed in an upcoming " + - "release.", + 'Accessing Moment through the global scope is ' + + 'deprecated, and will be removed in an upcoming ' + + 'release.', moment); } else { globalScope.moment = moment; @@ -19867,8 +20303,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // CommonJS module is defined if (hasModule) { module.exports = moment; - } else if (typeof define === "function" && define.amd) { - define("moment", function (require, exports, module) { + } else if (typeof define === 'function' && define.amd) { + define('moment', function (require, exports, module) { if (module.config && module.config() && module.config().noGlobal === true) { // release the global variable globalScope.moment = oldGlobalMoment; @@ -19882,7 +20318,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } }).call(this); -// Underscore.js 1.6.0 +// Underscore.js 1.7.0 // http://underscorejs.org // (c) 2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors // Underscore may be freely distributed under the MIT license. @@ -19898,9 +20334,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Save the previous value of the `_` variable. var previousUnderscore = root._; - // Establish the object that gets returned to break out of a loop iteration. - var breaker = {}; - // Save bytes in the minified (but not gzipped) version: var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype; @@ -19915,15 +20348,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // All **ECMAScript 5** native function implementations that we hope to use // are declared here. var - nativeForEach = ArrayProto.forEach, - nativeMap = ArrayProto.map, - nativeReduce = ArrayProto.reduce, - nativeReduceRight = ArrayProto.reduceRight, - nativeFilter = ArrayProto.filter, - nativeEvery = ArrayProto.every, - nativeSome = ArrayProto.some, - nativeIndexOf = ArrayProto.indexOf, - nativeLastIndexOf = ArrayProto.lastIndexOf, nativeIsArray = Array.isArray, nativeKeys = Object.keys, nativeBind = FuncProto.bind; @@ -19937,8 +20361,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Export the Underscore object for **Node.js**, with // backwards-compatibility for the old `require()` API. If we're in - // the browser, add `_` as a global object via a string identifier, - // for Closure Compiler "advanced" mode. + // the browser, add `_` as a global object. if (typeof exports !== 'undefined') { if (typeof module !== 'undefined' && module.exports) { exports = module.exports = _; @@ -19949,98 +20372,125 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } // Current version. - _.VERSION = '1.6.0'; + _.VERSION = '1.7.0'; + + // Internal function that returns an efficient (for current engines) version + // of the passed-in callback, to be repeatedly applied in other Underscore + // functions. + var createCallback = function(func, context, argCount) { + if (context === void 0) return func; + switch (argCount == null ? 3 : argCount) { + case 1: return function(value) { + return func.call(context, value); + }; + case 2: return function(value, other) { + return func.call(context, value, other); + }; + case 3: return function(value, index, collection) { + return func.call(context, value, index, collection); + }; + case 4: return function(accumulator, value, index, collection) { + return func.call(context, accumulator, value, index, collection); + }; + } + return function() { + return func.apply(context, arguments); + }; + }; + + // A mostly-internal function to generate callbacks that can be applied + // to each element in a collection, returning the desired result — either + // identity, an arbitrary callback, a property matcher, or a property accessor. + _.iteratee = function(value, context, argCount) { + if (value == null) return _.identity; + if (_.isFunction(value)) return createCallback(value, context, argCount); + if (_.isObject(value)) return _.matches(value); + return _.property(value); + }; // Collection Functions // -------------------- // The cornerstone, an `each` implementation, aka `forEach`. - // Handles objects with the built-in `forEach`, arrays, and raw objects. - // Delegates to **ECMAScript 5**'s native `forEach` if available. - var each = _.each = _.forEach = function(obj, iterator, context) { + // Handles raw objects in addition to array-likes. Treats all + // sparse array-likes as if they were dense. + _.each = _.forEach = function(obj, iteratee, context) { if (obj == null) return obj; - if (nativeForEach && obj.forEach === nativeForEach) { - obj.forEach(iterator, context); - } else if (obj.length === +obj.length) { - for (var i = 0, length = obj.length; i < length; i++) { - if (iterator.call(context, obj[i], i, obj) === breaker) return; + iteratee = createCallback(iteratee, context); + var i, length = obj.length; + if (length === +length) { + for (i = 0; i < length; i++) { + iteratee(obj[i], i, obj); } } else { var keys = _.keys(obj); - for (var i = 0, length = keys.length; i < length; i++) { - if (iterator.call(context, obj[keys[i]], keys[i], obj) === breaker) return; + for (i = 0, length = keys.length; i < length; i++) { + iteratee(obj[keys[i]], keys[i], obj); } } return obj; }; - // Return the results of applying the iterator to each element. - // Delegates to **ECMAScript 5**'s native `map` if available. - _.map = _.collect = function(obj, iterator, context) { - var results = []; - if (obj == null) return results; - if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context); - each(obj, function(value, index, list) { - results.push(iterator.call(context, value, index, list)); - }); + // Return the results of applying the iteratee to each element. + _.map = _.collect = function(obj, iteratee, context) { + if (obj == null) return []; + iteratee = _.iteratee(iteratee, context); + var keys = obj.length !== +obj.length && _.keys(obj), + length = (keys || obj).length, + results = Array(length), + currentKey; + for (var index = 0; index < length; index++) { + currentKey = keys ? keys[index] : index; + results[index] = iteratee(obj[currentKey], currentKey, obj); + } return results; }; var reduceError = 'Reduce of empty array with no initial value'; // **Reduce** builds up a single result from a list of values, aka `inject`, - // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available. - _.reduce = _.foldl = _.inject = function(obj, iterator, memo, context) { - var initial = arguments.length > 2; + // or `foldl`. + _.reduce = _.foldl = _.inject = function(obj, iteratee, memo, context) { if (obj == null) obj = []; - if (nativeReduce && obj.reduce === nativeReduce) { - if (context) iterator = _.bind(iterator, context); - return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator); + iteratee = createCallback(iteratee, context, 4); + var keys = obj.length !== +obj.length && _.keys(obj), + length = (keys || obj).length, + index = 0, currentKey; + if (arguments.length < 3) { + if (!length) throw new TypeError(reduceError); + memo = obj[keys ? keys[index++] : index++]; + } + for (; index < length; index++) { + currentKey = keys ? keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); } - each(obj, function(value, index, list) { - if (!initial) { - memo = value; - initial = true; - } else { - memo = iterator.call(context, memo, value, index, list); - } - }); - if (!initial) throw new TypeError(reduceError); return memo; }; // The right-associative version of reduce, also known as `foldr`. - // Delegates to **ECMAScript 5**'s native `reduceRight` if available. - _.reduceRight = _.foldr = function(obj, iterator, memo, context) { - var initial = arguments.length > 2; + _.reduceRight = _.foldr = function(obj, iteratee, memo, context) { if (obj == null) obj = []; - if (nativeReduceRight && obj.reduceRight === nativeReduceRight) { - if (context) iterator = _.bind(iterator, context); - return initial ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator); + iteratee = createCallback(iteratee, context, 4); + var keys = obj.length !== + obj.length && _.keys(obj), + index = (keys || obj).length, + currentKey; + if (arguments.length < 3) { + if (!index) throw new TypeError(reduceError); + memo = obj[keys ? keys[--index] : --index]; } - var length = obj.length; - if (length !== +length) { - var keys = _.keys(obj); - length = keys.length; + while (index--) { + currentKey = keys ? keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); } - each(obj, function(value, index, list) { - index = keys ? keys[--length] : --length; - if (!initial) { - memo = obj[index]; - initial = true; - } else { - memo = iterator.call(context, memo, obj[index], index, list); - } - }); - if (!initial) throw new TypeError(reduceError); return memo; }; // Return the first value which passes a truth test. Aliased as `detect`. _.find = _.detect = function(obj, predicate, context) { var result; - any(obj, function(value, index, list) { - if (predicate.call(context, value, index, list)) { + predicate = _.iteratee(predicate, context); + _.some(obj, function(value, index, list) { + if (predicate(value, index, list)) { result = value; return true; } @@ -20049,61 +20499,58 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; // Return all the elements that pass a truth test. - // Delegates to **ECMAScript 5**'s native `filter` if available. // Aliased as `select`. _.filter = _.select = function(obj, predicate, context) { var results = []; if (obj == null) return results; - if (nativeFilter && obj.filter === nativeFilter) return obj.filter(predicate, context); - each(obj, function(value, index, list) { - if (predicate.call(context, value, index, list)) results.push(value); + predicate = _.iteratee(predicate, context); + _.each(obj, function(value, index, list) { + if (predicate(value, index, list)) results.push(value); }); return results; }; // Return all the elements for which a truth test fails. _.reject = function(obj, predicate, context) { - return _.filter(obj, function(value, index, list) { - return !predicate.call(context, value, index, list); - }, context); + return _.filter(obj, _.negate(_.iteratee(predicate)), context); }; // Determine whether all of the elements match a truth test. - // Delegates to **ECMAScript 5**'s native `every` if available. // Aliased as `all`. _.every = _.all = function(obj, predicate, context) { - predicate || (predicate = _.identity); - var result = true; - if (obj == null) return result; - if (nativeEvery && obj.every === nativeEvery) return obj.every(predicate, context); - each(obj, function(value, index, list) { - if (!(result = result && predicate.call(context, value, index, list))) return breaker; - }); - return !!result; + if (obj == null) return true; + predicate = _.iteratee(predicate, context); + var keys = obj.length !== +obj.length && _.keys(obj), + length = (keys || obj).length, + index, currentKey; + for (index = 0; index < length; index++) { + currentKey = keys ? keys[index] : index; + if (!predicate(obj[currentKey], currentKey, obj)) return false; + } + return true; }; // Determine if at least one element in the object matches a truth test. - // Delegates to **ECMAScript 5**'s native `some` if available. // Aliased as `any`. - var any = _.some = _.any = function(obj, predicate, context) { - predicate || (predicate = _.identity); - var result = false; - if (obj == null) return result; - if (nativeSome && obj.some === nativeSome) return obj.some(predicate, context); - each(obj, function(value, index, list) { - if (result || (result = predicate.call(context, value, index, list))) return breaker; - }); - return !!result; + _.some = _.any = function(obj, predicate, context) { + if (obj == null) return false; + predicate = _.iteratee(predicate, context); + var keys = obj.length !== +obj.length && _.keys(obj), + length = (keys || obj).length, + index, currentKey; + for (index = 0; index < length; index++) { + currentKey = keys ? keys[index] : index; + if (predicate(obj[currentKey], currentKey, obj)) return true; + } + return false; }; // Determine if the array or object contains a given value (using `===`). // Aliased as `include`. _.contains = _.include = function(obj, target) { if (obj == null) return false; - if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1; - return any(obj, function(value) { - return value === target; - }); + if (obj.length !== +obj.length) obj = _.values(obj); + return _.indexOf(obj, target) >= 0; }; // Invoke a method (with arguments) on every item in a collection. @@ -20132,51 +20579,67 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return _.find(obj, _.matches(attrs)); }; - // Return the maximum element or (element-based computation). - // Can't optimize arrays of integers longer than 65,535 elements. - // See [WebKit Bug 80797](https://bugs.webkit.org/show_bug.cgi?id=80797) - _.max = function(obj, iterator, context) { - if (!iterator && _.isArray(obj) && obj[0] === +obj[0] && obj.length < 65535) { - return Math.max.apply(Math, obj); - } - var result = -Infinity, lastComputed = -Infinity; - each(obj, function(value, index, list) { - var computed = iterator ? iterator.call(context, value, index, list) : value; - if (computed > lastComputed) { - result = value; - lastComputed = computed; + // Return the maximum element (or element-based computation). + _.max = function(obj, iteratee, context) { + var result = -Infinity, lastComputed = -Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = obj.length === +obj.length ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value > result) { + result = value; + } } - }); + } else { + iteratee = _.iteratee(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed > lastComputed || computed === -Infinity && result === -Infinity) { + result = value; + lastComputed = computed; + } + }); + } return result; }; // Return the minimum element (or element-based computation). - _.min = function(obj, iterator, context) { - if (!iterator && _.isArray(obj) && obj[0] === +obj[0] && obj.length < 65535) { - return Math.min.apply(Math, obj); - } - var result = Infinity, lastComputed = Infinity; - each(obj, function(value, index, list) { - var computed = iterator ? iterator.call(context, value, index, list) : value; - if (computed < lastComputed) { - result = value; - lastComputed = computed; + _.min = function(obj, iteratee, context) { + var result = Infinity, lastComputed = Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = obj.length === +obj.length ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value < result) { + result = value; + } } - }); + } else { + iteratee = _.iteratee(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed < lastComputed || computed === Infinity && result === Infinity) { + result = value; + lastComputed = computed; + } + }); + } return result; }; - // Shuffle an array, using the modern version of the + // Shuffle a collection, using the modern version of the // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle). _.shuffle = function(obj) { - var rand; - var index = 0; - var shuffled = []; - each(obj, function(value) { - rand = _.random(index++); - shuffled[index - 1] = shuffled[rand]; - shuffled[rand] = value; - }); + var set = obj && obj.length === +obj.length ? obj : _.values(obj); + var length = set.length; + var shuffled = Array(length); + for (var index = 0, rand; index < length; index++) { + rand = _.random(0, index); + if (rand !== index) shuffled[index] = shuffled[rand]; + shuffled[rand] = set[index]; + } return shuffled; }; @@ -20191,21 +20654,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return _.shuffle(obj).slice(0, Math.max(0, n)); }; - // An internal function to generate lookup iterators. - var lookupIterator = function(value) { - if (value == null) return _.identity; - if (_.isFunction(value)) return value; - return _.property(value); - }; - - // Sort the object's values by a criterion produced by an iterator. - _.sortBy = function(obj, iterator, context) { - iterator = lookupIterator(iterator); + // Sort the object's values by a criterion produced by an iteratee. + _.sortBy = function(obj, iteratee, context) { + iteratee = _.iteratee(iteratee, context); return _.pluck(_.map(obj, function(value, index, list) { return { value: value, index: index, - criteria: iterator.call(context, value, index, list) + criteria: iteratee(value, index, list) }; }).sort(function(left, right) { var a = left.criteria; @@ -20220,12 +20676,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // An internal function used for aggregate "group by" operations. var group = function(behavior) { - return function(obj, iterator, context) { + return function(obj, iteratee, context) { var result = {}; - iterator = lookupIterator(iterator); - each(obj, function(value, index) { - var key = iterator.call(context, value, index, obj); - behavior(result, key, value); + iteratee = _.iteratee(iteratee, context); + _.each(obj, function(value, index) { + var key = iteratee(value, index, obj); + behavior(result, value, key); }); return result; }; @@ -20233,32 +20689,32 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Groups the object's values by a criterion. Pass either a string attribute // to group by, or a function that returns the criterion. - _.groupBy = group(function(result, key, value) { - _.has(result, key) ? result[key].push(value) : result[key] = [value]; + _.groupBy = group(function(result, value, key) { + if (_.has(result, key)) result[key].push(value); else result[key] = [value]; }); // Indexes the object's values by a criterion, similar to `groupBy`, but for // when you know that your index values will be unique. - _.indexBy = group(function(result, key, value) { + _.indexBy = group(function(result, value, key) { result[key] = value; }); // Counts instances of an object that group by a certain criterion. Pass // either a string attribute to count by, or a function that returns the // criterion. - _.countBy = group(function(result, key) { - _.has(result, key) ? result[key]++ : result[key] = 1; + _.countBy = group(function(result, value, key) { + if (_.has(result, key)) result[key]++; else result[key] = 1; }); // Use a comparator function to figure out the smallest index at which // an object should be inserted so as to maintain order. Uses binary search. - _.sortedIndex = function(array, obj, iterator, context) { - iterator = lookupIterator(iterator); - var value = iterator.call(context, obj); + _.sortedIndex = function(array, obj, iteratee, context) { + iteratee = _.iteratee(iteratee, context, 1); + var value = iteratee(obj); var low = 0, high = array.length; while (low < high) { - var mid = (low + high) >>> 1; - iterator.call(context, array[mid]) < value ? low = mid + 1 : high = mid; + var mid = low + high >>> 1; + if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; } return low; }; @@ -20274,7 +20730,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Return the number of elements in an object. _.size = function(obj) { if (obj == null) return 0; - return (obj.length === +obj.length) ? obj.length : _.keys(obj).length; + return obj.length === +obj.length ? obj.length : _.keys(obj).length; + }; + + // Split a collection into two arrays: one whose elements all satisfy the given + // predicate, and one whose elements all do not satisfy the predicate. + _.partition = function(obj, predicate, context) { + predicate = _.iteratee(predicate, context); + var pass = [], fail = []; + _.each(obj, function(value, key, obj) { + (predicate(value, key, obj) ? pass : fail).push(value); + }); + return [pass, fail]; }; // Array Functions @@ -20285,7 +20752,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // allows it to work with `_.map`. _.first = _.head = _.take = function(array, n, guard) { if (array == null) return void 0; - if ((n == null) || guard) return array[0]; + if (n == null || guard) return array[0]; if (n < 0) return []; return slice.call(array, 0, n); }; @@ -20295,14 +20762,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // the array, excluding the last N. The **guard** check allows it to work with // `_.map`. _.initial = function(array, n, guard) { - return slice.call(array, 0, array.length - ((n == null) || guard ? 1 : n)); + return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); }; // Get the last element of an array. Passing **n** will return the last N // values in the array. The **guard** check allows it to work with `_.map`. _.last = function(array, n, guard) { if (array == null) return void 0; - if ((n == null) || guard) return array[array.length - 1]; + if (n == null || guard) return array[array.length - 1]; return slice.call(array, Math.max(array.length - n, 0)); }; @@ -20311,7 +20778,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // the rest N values in the array. The **guard** // check allows it to work with `_.map`. _.rest = _.tail = _.drop = function(array, n, guard) { - return slice.call(array, (n == null) || guard ? 1 : n); + return slice.call(array, n == null || guard ? 1 : n); }; // Trim out all falsy values from an array. @@ -20320,23 +20787,26 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; // Internal implementation of a recursive `flatten` function. - var flatten = function(input, shallow, output) { + var flatten = function(input, shallow, strict, output) { if (shallow && _.every(input, _.isArray)) { return concat.apply(output, input); } - each(input, function(value) { - if (_.isArray(value) || _.isArguments(value)) { - shallow ? push.apply(output, value) : flatten(value, shallow, output); + for (var i = 0, length = input.length; i < length; i++) { + var value = input[i]; + if (!_.isArray(value) && !_.isArguments(value)) { + if (!strict) output.push(value); + } else if (shallow) { + push.apply(output, value); } else { - output.push(value); + flatten(value, shallow, strict, output); } - }); + } return output; }; // Flatten out an array, either recursively (by default), or just one level. _.flatten = function(array, shallow) { - return flatten(array, shallow, []); + return flatten(array, shallow, false, []); }; // Return a version of the array that does not contain the specified value(s). @@ -20344,68 +20814,77 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return _.difference(array, slice.call(arguments, 1)); }; - // Split an array into two arrays: one whose elements all satisfy the given - // predicate, and one whose elements all do not satisfy the predicate. - _.partition = function(array, predicate) { - var pass = [], fail = []; - each(array, function(elem) { - (predicate(elem) ? pass : fail).push(elem); - }); - return [pass, fail]; - }; - // Produce a duplicate-free version of the array. If the array has already // been sorted, you have the option of using a faster algorithm. // Aliased as `unique`. - _.uniq = _.unique = function(array, isSorted, iterator, context) { - if (_.isFunction(isSorted)) { - context = iterator; - iterator = isSorted; + _.uniq = _.unique = function(array, isSorted, iteratee, context) { + if (array == null) return []; + if (!_.isBoolean(isSorted)) { + context = iteratee; + iteratee = isSorted; isSorted = false; } - var initial = iterator ? _.map(array, iterator, context) : array; - var results = []; + if (iteratee != null) iteratee = _.iteratee(iteratee, context); + var result = []; var seen = []; - each(initial, function(value, index) { - if (isSorted ? (!index || seen[seen.length - 1] !== value) : !_.contains(seen, value)) { - seen.push(value); - results.push(array[index]); + for (var i = 0, length = array.length; i < length; i++) { + var value = array[i]; + if (isSorted) { + if (!i || seen !== value) result.push(value); + seen = value; + } else if (iteratee) { + var computed = iteratee(value, i, array); + if (_.indexOf(seen, computed) < 0) { + seen.push(computed); + result.push(value); + } + } else if (_.indexOf(result, value) < 0) { + result.push(value); } - }); - return results; + } + return result; }; // Produce an array that contains the union: each distinct element from all of // the passed-in arrays. _.union = function() { - return _.uniq(_.flatten(arguments, true)); + return _.uniq(flatten(arguments, true, true, [])); }; // Produce an array that contains every item shared between all the // passed-in arrays. _.intersection = function(array) { - var rest = slice.call(arguments, 1); - return _.filter(_.uniq(array), function(item) { - return _.every(rest, function(other) { - return _.contains(other, item); - }); - }); + if (array == null) return []; + var result = []; + var argsLength = arguments.length; + for (var i = 0, length = array.length; i < length; i++) { + var item = array[i]; + if (_.contains(result, item)) continue; + for (var j = 1; j < argsLength; j++) { + if (!_.contains(arguments[j], item)) break; + } + if (j === argsLength) result.push(item); + } + return result; }; // Take the difference between one array and a number of other arrays. // Only the elements present in just the first array will remain. _.difference = function(array) { - var rest = concat.apply(ArrayProto, slice.call(arguments, 1)); - return _.filter(array, function(value){ return !_.contains(rest, value); }); + var rest = flatten(slice.call(arguments, 1), true, true, []); + return _.filter(array, function(value){ + return !_.contains(rest, value); + }); }; // Zip together multiple lists into a single array -- elements that share // an index go together. - _.zip = function() { - var length = _.max(_.pluck(arguments, 'length').concat(0)); - var results = new Array(length); + _.zip = function(array) { + if (array == null) return []; + var length = _.max(arguments, 'length').length; + var results = Array(length); for (var i = 0; i < length; i++) { - results[i] = _.pluck(arguments, '' + i); + results[i] = _.pluck(arguments, i); } return results; }; @@ -20426,10 +20905,8 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return result; }; - // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**), - // we need this function. Return the position of the first occurrence of an - // item in an array, or -1 if the item is not included in the array. - // Delegates to **ECMAScript 5**'s native `indexOf` if available. + // Return the position of the first occurrence of an item in an array, + // or -1 if the item is not included in the array. // If the array is large and already in sort order, pass `true` // for **isSorted** to use binary search. _.indexOf = function(array, item, isSorted) { @@ -20437,26 +20914,23 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var i = 0, length = array.length; if (isSorted) { if (typeof isSorted == 'number') { - i = (isSorted < 0 ? Math.max(0, length + isSorted) : isSorted); + i = isSorted < 0 ? Math.max(0, length + isSorted) : isSorted; } else { i = _.sortedIndex(array, item); return array[i] === item ? i : -1; } } - if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item, isSorted); for (; i < length; i++) if (array[i] === item) return i; return -1; }; - // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available. _.lastIndexOf = function(array, item, from) { if (array == null) return -1; - var hasIndex = from != null; - if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) { - return hasIndex ? array.lastIndexOf(item, from) : array.lastIndexOf(item); + var idx = array.length; + if (typeof from == 'number') { + idx = from < 0 ? idx + from + 1 : Math.min(idx, from + 1); } - var i = (hasIndex ? from : array.length); - while (i--) if (array[i] === item) return i; + while (--idx >= 0) if (array[idx] === item) return idx; return -1; }; @@ -20468,15 +20942,13 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) stop = start || 0; start = 0; } - step = arguments[2] || 1; + step = step || 1; var length = Math.max(Math.ceil((stop - start) / step), 0); - var idx = 0; - var range = new Array(length); + var range = Array(length); - while(idx < length) { - range[idx++] = start; - start += step; + for (var idx = 0; idx < length; idx++, start += step) { + range[idx] = start; } return range; @@ -20486,7 +20958,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // ------------------ // Reusable constructor function for prototype setting. - var ctor = function(){}; + var Ctor = function(){}; // Create a function bound to a given object (assigning `this`, and arguments, // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if @@ -20494,17 +20966,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) _.bind = function(func, context) { var args, bound; if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1)); - if (!_.isFunction(func)) throw new TypeError; + if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function'); args = slice.call(arguments, 2); - return bound = function() { + bound = function() { if (!(this instanceof bound)) return func.apply(context, args.concat(slice.call(arguments))); - ctor.prototype = func.prototype; - var self = new ctor; - ctor.prototype = null; + Ctor.prototype = func.prototype; + var self = new Ctor; + Ctor.prototype = null; var result = func.apply(self, args.concat(slice.call(arguments))); - if (Object(result) === result) return result; + if (_.isObject(result)) return result; return self; }; + return bound; }; // Partially apply a function by creating a version that has had some of its @@ -20527,27 +21000,34 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // are the method names to be bound. Useful for ensuring that all callbacks // defined on an object belong to it. _.bindAll = function(obj) { - var funcs = slice.call(arguments, 1); - if (funcs.length === 0) throw new Error('bindAll must be passed function names'); - each(funcs, function(f) { obj[f] = _.bind(obj[f], obj); }); + var i, length = arguments.length, key; + if (length <= 1) throw new Error('bindAll must be passed function names'); + for (i = 1; i < length; i++) { + key = arguments[i]; + obj[key] = _.bind(obj[key], obj); + } return obj; }; // Memoize an expensive function by storing its results. _.memoize = function(func, hasher) { - var memo = {}; - hasher || (hasher = _.identity); - return function() { - var key = hasher.apply(this, arguments); - return _.has(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments)); + var memoize = function(key) { + var cache = memoize.cache; + var address = hasher ? hasher.apply(this, arguments) : key; + if (!_.has(cache, address)) cache[address] = func.apply(this, arguments); + return cache[address]; }; + memoize.cache = {}; + return memoize; }; // Delays a function for the given number of milliseconds, and then calls // it with the arguments supplied. _.delay = function(func, wait) { var args = slice.call(arguments, 2); - return setTimeout(function(){ return func.apply(null, args); }, wait); + return setTimeout(function(){ + return func.apply(null, args); + }, wait); }; // Defers a function, scheduling it to run after the current call stack has @@ -20565,12 +21045,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var context, args, result; var timeout = null; var previous = 0; - options || (options = {}); + if (!options) options = {}; var later = function() { previous = options.leading === false ? 0 : _.now(); timeout = null; result = func.apply(context, args); - context = args = null; + if (!timeout) context = args = null; }; return function() { var now = _.now(); @@ -20578,12 +21058,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var remaining = wait - (now - previous); context = this; args = arguments; - if (remaining <= 0) { + if (remaining <= 0 || remaining > wait) { clearTimeout(timeout); timeout = null; previous = now; result = func.apply(context, args); - context = args = null; + if (!timeout) context = args = null; } else if (!timeout && options.trailing !== false) { timeout = setTimeout(later, remaining); } @@ -20600,13 +21080,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var later = function() { var last = _.now() - timestamp; - if (last < wait) { + + if (last < wait && last > 0) { timeout = setTimeout(later, wait - last); } else { timeout = null; if (!immediate) { result = func.apply(context, args); - context = args = null; + if (!timeout) context = args = null; } } }; @@ -20616,9 +21097,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) args = arguments; timestamp = _.now(); var callNow = immediate && !timeout; - if (!timeout) { - timeout = setTimeout(later, wait); - } + if (!timeout) timeout = setTimeout(later, wait); if (callNow) { result = func.apply(context, args); context = args = null; @@ -20628,19 +21107,6 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; }; - // Returns a function that will be executed at most one time, no matter how - // often you call it. Useful for lazy initialization. - _.once = function(func) { - var ran = false, memo; - return function() { - if (ran) return memo; - ran = true; - memo = func.apply(this, arguments); - func = null; - return memo; - }; - }; - // Returns the first function passed as an argument to the second, // allowing you to adjust arguments, run code before and after, and // conditionally execute the original function. @@ -20648,16 +21114,23 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return _.partial(wrapper, func); }; + // Returns a negated version of the passed-in predicate. + _.negate = function(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; + }; + // Returns a function that is the composition of a list of functions, each // consuming the return value of the function that follows. _.compose = function() { - var funcs = arguments; + var args = arguments; + var start = args.length - 1; return function() { - var args = arguments; - for (var i = funcs.length - 1; i >= 0; i--) { - args = [funcs[i].apply(this, args)]; - } - return args[0]; + var i = start; + var result = args[start].apply(this, arguments); + while (i--) result = args[i].call(this, result); + return result; }; }; @@ -20670,6 +21143,23 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; }; + // Returns a function that will only be executed before being called N times. + _.before = function(times, func) { + var memo; + return function() { + if (--times > 0) { + memo = func.apply(this, arguments); + } else { + func = null; + } + return memo; + }; + }; + + // Returns a function that will be executed at most one time, no matter how + // often you call it. Useful for lazy initialization. + _.once = _.partial(_.before, 2); + // Object Functions // ---------------- @@ -20687,7 +21177,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) _.values = function(obj) { var keys = _.keys(obj); var length = keys.length; - var values = new Array(length); + var values = Array(length); for (var i = 0; i < length; i++) { values[i] = obj[keys[i]]; } @@ -20698,7 +21188,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) _.pairs = function(obj) { var keys = _.keys(obj); var length = keys.length; - var pairs = new Array(length); + var pairs = Array(length); for (var i = 0; i < length; i++) { pairs[i] = [keys[i], obj[keys[i]]]; } @@ -20727,45 +21217,62 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Extend a given object with all the properties in passed-in object(s). _.extend = function(obj) { - each(slice.call(arguments, 1), function(source) { - if (source) { - for (var prop in source) { - obj[prop] = source[prop]; + if (!_.isObject(obj)) return obj; + var source, prop; + for (var i = 1, length = arguments.length; i < length; i++) { + source = arguments[i]; + for (prop in source) { + if (hasOwnProperty.call(source, prop)) { + obj[prop] = source[prop]; } } - }); + } return obj; }; // Return a copy of the object only containing the whitelisted properties. - _.pick = function(obj) { - var copy = {}; - var keys = concat.apply(ArrayProto, slice.call(arguments, 1)); - each(keys, function(key) { - if (key in obj) copy[key] = obj[key]; - }); - return copy; + _.pick = function(obj, iteratee, context) { + var result = {}, key; + if (obj == null) return result; + if (_.isFunction(iteratee)) { + iteratee = createCallback(iteratee, context); + for (key in obj) { + var value = obj[key]; + if (iteratee(value, key, obj)) result[key] = value; + } + } else { + var keys = concat.apply([], slice.call(arguments, 1)); + obj = new Object(obj); + for (var i = 0, length = keys.length; i < length; i++) { + key = keys[i]; + if (key in obj) result[key] = obj[key]; + } + } + return result; }; // Return a copy of the object without the blacklisted properties. - _.omit = function(obj) { - var copy = {}; - var keys = concat.apply(ArrayProto, slice.call(arguments, 1)); - for (var key in obj) { - if (!_.contains(keys, key)) copy[key] = obj[key]; + _.omit = function(obj, iteratee, context) { + if (_.isFunction(iteratee)) { + iteratee = _.negate(iteratee); + } else { + var keys = _.map(concat.apply([], slice.call(arguments, 1)), String); + iteratee = function(value, key) { + return !_.contains(keys, key); + }; } - return copy; + return _.pick(obj, iteratee, context); }; // Fill in a given object with default properties. _.defaults = function(obj) { - each(slice.call(arguments, 1), function(source) { - if (source) { - for (var prop in source) { - if (obj[prop] === void 0) obj[prop] = source[prop]; - } + if (!_.isObject(obj)) return obj; + for (var i = 1, length = arguments.length; i < length; i++) { + var source = arguments[i]; + for (var prop in source) { + if (obj[prop] === void 0) obj[prop] = source[prop]; } - }); + } return obj; }; @@ -20787,7 +21294,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var eq = function(a, b, aStack, bStack) { // Identical objects are equal. `0 === -0`, but they aren't identical. // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal). - if (a === b) return a !== 0 || 1 / a == 1 / b; + if (a === b) return a !== 0 || 1 / a === 1 / b; // A strict comparison is necessary because `null == undefined`. if (a == null || b == null) return a === b; // Unwrap any wrapped objects. @@ -20795,29 +21302,27 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) if (b instanceof _) b = b._wrapped; // Compare `[[Class]]` names. var className = toString.call(a); - if (className != toString.call(b)) return false; + if (className !== toString.call(b)) return false; switch (className) { - // Strings, numbers, dates, and booleans are compared by value. + // Strings, numbers, regular expressions, dates, and booleans are compared by value. + case '[object RegExp]': + // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') case '[object String]': // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is // equivalent to `new String("5")`. - return a == String(b); + return '' + a === '' + b; case '[object Number]': - // `NaN`s are equivalent, but non-reflexive. An `egal` comparison is performed for - // other numeric values. - return a != +a ? b != +b : (a == 0 ? 1 / a == 1 / b : a == +b); + // `NaN`s are equivalent, but non-reflexive. + // Object(NaN) is equivalent to NaN + if (+a !== +a) return +b !== +b; + // An `egal` comparison is performed for other numeric values. + return +a === 0 ? 1 / +a === 1 / b : +a === +b; case '[object Date]': case '[object Boolean]': // Coerce dates and booleans to numeric primitive values. Dates are compared by their // millisecond representations. Note that invalid dates with millisecond representations // of `NaN` are not equivalent. - return +a == +b; - // RegExps are compared by their source patterns and flags. - case '[object RegExp]': - return a.source == b.source && - a.global == b.global && - a.multiline == b.multiline && - a.ignoreCase == b.ignoreCase; + return +a === +b; } if (typeof a != 'object' || typeof b != 'object') return false; // Assume equality for cyclic structures. The algorithm for detecting cyclic @@ -20826,25 +21331,29 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) while (length--) { // Linear search. Performance is inversely proportional to the number of // unique nested structures. - if (aStack[length] == a) return bStack[length] == b; + if (aStack[length] === a) return bStack[length] === b; } // Objects with different constructors are not equivalent, but `Object`s // from different frames are. var aCtor = a.constructor, bCtor = b.constructor; - if (aCtor !== bCtor && !(_.isFunction(aCtor) && (aCtor instanceof aCtor) && - _.isFunction(bCtor) && (bCtor instanceof bCtor)) - && ('constructor' in a && 'constructor' in b)) { + if ( + aCtor !== bCtor && + // Handle Object.create(x) cases + 'constructor' in a && 'constructor' in b && + !(_.isFunction(aCtor) && aCtor instanceof aCtor && + _.isFunction(bCtor) && bCtor instanceof bCtor) + ) { return false; } // Add the first object to the stack of traversed objects. aStack.push(a); bStack.push(b); - var size = 0, result = true; + var size, result; // Recursively compare objects and arrays. - if (className == '[object Array]') { + if (className === '[object Array]') { // Compare array lengths to determine if a deep comparison is necessary. size = a.length; - result = size == b.length; + result = size === b.length; if (result) { // Deep compare the contents, ignoring non-numeric properties. while (size--) { @@ -20853,21 +21362,17 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) } } else { // Deep compare objects. - for (var key in a) { - if (_.has(a, key)) { - // Count the expected number of properties. - size++; - // Deep compare each member. + var keys = _.keys(a), key; + size = keys.length; + // Ensure that both objects contain the same number of properties before comparing deep equality. + result = _.keys(b).length === size; + if (result) { + while (size--) { + // Deep compare each member + key = keys[size]; if (!(result = _.has(b, key) && eq(a[key], b[key], aStack, bStack))) break; } } - // Ensure that both objects contain the same number of properties. - if (result) { - for (key in b) { - if (_.has(b, key) && !(size--)) break; - } - result = !size; - } } // Remove the first object from the stack of traversed objects. aStack.pop(); @@ -20884,7 +21389,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // An "empty" object has no enumerable own-properties. _.isEmpty = function(obj) { if (obj == null) return true; - if (_.isArray(obj) || _.isString(obj)) return obj.length === 0; + if (_.isArray(obj) || _.isString(obj) || _.isArguments(obj)) return obj.length === 0; for (var key in obj) if (_.has(obj, key)) return false; return true; }; @@ -20897,18 +21402,19 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Is a given value an array? // Delegates to ECMA5's native Array.isArray _.isArray = nativeIsArray || function(obj) { - return toString.call(obj) == '[object Array]'; + return toString.call(obj) === '[object Array]'; }; // Is a given variable an object? _.isObject = function(obj) { - return obj === Object(obj); + var type = typeof obj; + return type === 'function' || type === 'object' && !!obj; }; // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp. - each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp'], function(name) { + _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp'], function(name) { _['is' + name] = function(obj) { - return toString.call(obj) == '[object ' + name + ']'; + return toString.call(obj) === '[object ' + name + ']'; }; }); @@ -20916,14 +21422,14 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // there isn't any inspectable "Arguments" type. if (!_.isArguments(arguments)) { _.isArguments = function(obj) { - return !!(obj && _.has(obj, 'callee')); + return _.has(obj, 'callee'); }; } - // Optimize `isFunction` if appropriate. - if (typeof (/./) !== 'function') { + // Optimize `isFunction` if appropriate. Work around an IE 11 bug. + if (typeof /./ !== 'function') { _.isFunction = function(obj) { - return typeof obj === 'function'; + return typeof obj == 'function' || false; }; } @@ -20934,12 +21440,12 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Is the given value `NaN`? (NaN is the only number which does not equal itself). _.isNaN = function(obj) { - return _.isNumber(obj) && obj != +obj; + return _.isNumber(obj) && obj !== +obj; }; // Is a given value a boolean? _.isBoolean = function(obj) { - return obj === true || obj === false || toString.call(obj) == '[object Boolean]'; + return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; }; // Is a given value equal to null? @@ -20955,7 +21461,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Shortcut function for checking if an object has a given property directly // on itself (in other words, not on a prototype). _.has = function(obj, key) { - return hasOwnProperty.call(obj, key); + return obj != null && hasOwnProperty.call(obj, key); }; // Utility Functions @@ -20968,17 +21474,19 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this; }; - // Keep the identity function around for default iterators. + // Keep the identity function around for default iteratees. _.identity = function(value) { return value; }; _.constant = function(value) { - return function () { + return function() { return value; }; }; + _.noop = function(){}; + _.property = function(key) { return function(obj) { return obj[key]; @@ -20987,20 +21495,23 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) // Returns a predicate for checking whether an object has a given set of `key:value` pairs. _.matches = function(attrs) { + var pairs = _.pairs(attrs), length = pairs.length; return function(obj) { - if (obj === attrs) return true; //avoid comparing an object to itself. - for (var key in attrs) { - if (attrs[key] !== obj[key]) - return false; + if (obj == null) return !length; + obj = new Object(obj); + for (var i = 0; i < length; i++) { + var pair = pairs[i], key = pair[0]; + if (pair[1] !== obj[key] || !(key in obj)) return false; } return true; - } + }; }; // Run a function **n** times. - _.times = function(n, iterator, context) { + _.times = function(n, iteratee, context) { var accum = Array(Math.max(0, n)); - for (var i = 0; i < n; i++) accum[i] = iterator.call(context, i); + iteratee = createCallback(iteratee, context, 1); + for (var i = 0; i < n; i++) accum[i] = iteratee(i); return accum; }; @@ -21014,54 +21525,44 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) }; // A (possibly faster) way to get the current timestamp as an integer. - _.now = Date.now || function() { return new Date().getTime(); }; - - // List of HTML entities for escaping. - var entityMap = { - escape: { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' - } + _.now = Date.now || function() { + return new Date().getTime(); }; - entityMap.unescape = _.invert(entityMap.escape); - // Regexes containing the keys and values listed immediately above. - var entityRegexes = { - escape: new RegExp('[' + _.keys(entityMap.escape).join('') + ']', 'g'), - unescape: new RegExp('(' + _.keys(entityMap.unescape).join('|') + ')', 'g') + // List of HTML entities for escaping. + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' }; + var unescapeMap = _.invert(escapeMap); // Functions for escaping and unescaping strings to/from HTML interpolation. - _.each(['escape', 'unescape'], function(method) { - _[method] = function(string) { - if (string == null) return ''; - return ('' + string).replace(entityRegexes[method], function(match) { - return entityMap[method][match]; - }); + var createEscaper = function(map) { + var escaper = function(match) { + return map[match]; }; - }); + // Regexes for identifying a key that needs to be escaped + var source = '(?:' + _.keys(map).join('|') + ')'; + var testRegexp = RegExp(source); + var replaceRegexp = RegExp(source, 'g'); + return function(string) { + string = string == null ? '' : '' + string; + return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; + }; + }; + _.escape = createEscaper(escapeMap); + _.unescape = createEscaper(unescapeMap); // If the value of the named `property` is a function then invoke it with the // `object` as context; otherwise, return it. _.result = function(object, property) { if (object == null) return void 0; var value = object[property]; - return _.isFunction(value) ? value.call(object) : value; - }; - - // Add your own custom functions to the Underscore object. - _.mixin = function(obj) { - each(_.functions(obj), function(name) { - var func = _[name] = obj[name]; - _.prototype[name] = function() { - var args = [this._wrapped]; - push.apply(args, arguments); - return result.call(this, func.apply(_, args)); - }; - }); + return _.isFunction(value) ? object[property]() : value; }; // Generate a unique integer id (unique within the entire client session). @@ -21092,22 +21593,26 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) '\\': '\\', '\r': 'r', '\n': 'n', - '\t': 't', '\u2028': 'u2028', '\u2029': 'u2029' }; - var escaper = /\\|'|\r|\n|\t|\u2028|\u2029/g; + var escaper = /\\|'|\r|\n|\u2028|\u2029/g; + + var escapeChar = function(match) { + return '\\' + escapes[match]; + }; // JavaScript micro-templating, similar to John Resig's implementation. // Underscore templating handles arbitrary delimiters, preserves whitespace, // and correctly escapes quotes within interpolated code. - _.template = function(text, data, settings) { - var render; + // NB: `oldSettings` only exists for backwards compatibility. + _.template = function(text, settings, oldSettings) { + if (!settings && oldSettings) settings = oldSettings; settings = _.defaults({}, settings, _.templateSettings); // Combine delimiters into one regular expression via alternation. - var matcher = new RegExp([ + var matcher = RegExp([ (settings.escape || noMatch).source, (settings.interpolate || noMatch).source, (settings.evaluate || noMatch).source @@ -21117,19 +21622,18 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) var index = 0; var source = "__p+='"; text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { - source += text.slice(index, offset) - .replace(escaper, function(match) { return '\\' + escapes[match]; }); + source += text.slice(index, offset).replace(escaper, escapeChar); + index = offset + match.length; if (escape) { source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; - } - if (interpolate) { + } else if (interpolate) { source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; - } - if (evaluate) { + } else if (evaluate) { source += "';\n" + evaluate + "\n__p+='"; } - index = offset + match.length; + + // Adobe VMs need the match returned to produce the correct offest. return match; }); source += "';\n"; @@ -21139,29 +21643,31 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) source = "var __t,__p='',__j=Array.prototype.join," + "print=function(){__p+=__j.call(arguments,'');};\n" + - source + "return __p;\n"; + source + 'return __p;\n'; try { - render = new Function(settings.variable || 'obj', '_', source); + var render = new Function(settings.variable || 'obj', '_', source); } catch (e) { e.source = source; throw e; } - if (data) return render(data, _); var template = function(data) { return render.call(this, data, _); }; - // Provide the compiled function source as a convenience for precompilation. - template.source = 'function(' + (settings.variable || 'obj') + '){\n' + source + '}'; + // Provide the compiled source as a convenience for precompilation. + var argument = settings.variable || 'obj'; + template.source = 'function(' + argument + '){\n' + source + '}'; return template; }; - // Add a "chain" function, which will delegate to the wrapper. + // Add a "chain" function. Start chaining a wrapped Underscore object. _.chain = function(obj) { - return _(obj).chain(); + var instance = _(obj); + instance._chain = true; + return instance; }; // OOP @@ -21175,42 +21681,44 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return this._chain ? _(obj).chain() : obj; }; + // Add your own custom functions to the Underscore object. + _.mixin = function(obj) { + _.each(_.functions(obj), function(name) { + var func = _[name] = obj[name]; + _.prototype[name] = function() { + var args = [this._wrapped]; + push.apply(args, arguments); + return result.call(this, func.apply(_, args)); + }; + }); + }; + // Add all of the Underscore functions to the wrapper object. _.mixin(_); // Add all mutator Array functions to the wrapper. - each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { + _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { var method = ArrayProto[name]; _.prototype[name] = function() { var obj = this._wrapped; method.apply(obj, arguments); - if ((name == 'shift' || name == 'splice') && obj.length === 0) delete obj[0]; + if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0]; return result.call(this, obj); }; }); // Add all accessor Array functions to the wrapper. - each(['concat', 'join', 'slice'], function(name) { + _.each(['concat', 'join', 'slice'], function(name) { var method = ArrayProto[name]; _.prototype[name] = function() { return result.call(this, method.apply(this._wrapped, arguments)); }; }); - _.extend(_.prototype, { - - // Start chaining a wrapped Underscore object. - chain: function() { - this._chain = true; - return this; - }, - - // Extracts the result from a wrapped and chained object. - value: function() { - return this._wrapped; - } - - }); + // Extracts the result from a wrapped and chained object. + _.prototype.value = function() { + return this._wrapped; + }; // AMD registration happens at the end for compatibility with AMD loaders // that may not enforce next-turn semantics on modules. Even though general @@ -21224,7 +21732,7 @@ if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) return _; }); } -}).call(this); +}.call(this)); /*! Chosen, a Select Box Enhancer for jQuery and Prototype diff --git a/wp-content/themes/aktiv2014/dist/styles/main.css b/wp-content/themes/aktiv2014/dist/styles/main.css index d769365..87ec1ed 100644 --- a/wp-content/themes/aktiv2014/dist/styles/main.css +++ b/wp-content/themes/aktiv2014/dist/styles/main.css @@ -1 +1 @@ -/*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}kbd,pre,samp{font-family:monospace,monospace}button{font:inherit}input,optgroup{margin:0}input,optgroup,select,textarea{color:inherit;font:inherit}button{overflow:visible}button,select{text-transform:none}html input[type="button"],input[type="reset"]{-webkit-appearance:button;cursor:pointer}input[type="submit"]{cursor:pointer}html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;zoom:1;*display:inline;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;box-sizing:border-box;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:23px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url('../images/chosen-sprite.png') -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover,.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url('../images/chosen-sprite.png') no-repeat 0 2px}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type="text"]{box-sizing:border-box;margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:#fff url('../images/chosen-sprite.png') no-repeat 100% -20px;background:url('../images/chosen-sprite.png') no-repeat 100% -20px;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;box-sizing:border-box;margin:0;padding:0;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type="text"]{margin:1px 0;padding:5px;height:36px;outline:0;border:0!important;background:transparent!important;box-shadow:none;color:#666;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-field .default{color:#999}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 0 3px 5px;padding:3px 20px 3px 5px;border:1px solid #aaa;border-radius:3px;background-color:#e4e4e4;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url('../images/chosen-sprite.png') -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;border-bottom-right-radius:0;border-bottom-left-radius:0;background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type="text"]{color:#111!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single,.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type="text"]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single-nosearch .chosen-search,.chosen-rtl .chosen-drop{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type="text"]{padding:4px 5px 4px 20px;background:#fff url('../images/chosen-sprite.png') no-repeat -30px -20px;background:url('../images/chosen-sprite.png') no-repeat -30px -20px;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:144dpi){.chosen-rtl .chosen-search input[type="text"],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-container-single .chosen-search input[type="text"],.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span{background-image:url('../images/chosen-sprite@2x.png') !important;background-size:52px 37px!important;background-repeat:no-repeat!important}}meta.foundation-version{font-family:"/5.3.3/"}meta.foundation-mq-small{font-family:"/only screen/";width:0}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{box-sizing:border-box}html,body{font-size:100%}body{background:#fafafa;color:#000;padding:0;margin:0;font-family:"Open Sans",sans-serif;font-weight:400;font-style:normal;line-height:150%;position:relative;cursor:default}a:hover{cursor:pointer}img{max-width:100%;height:auto;-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}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px}select,.row{width:100%}.row{margin:0 auto;max-width:78.125rem}.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:0 -.9375rem;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:.9375rem;padding-right:.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:.9375rem;padding-right:.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:.9375rem;padding-right:.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:.9375rem;padding-right:.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}}[class*="block-grid-"]{display:block;padding:0;margin:0 -.625rem}[class*="block-grid-"]:before{content:" ";display:table}[class*="block-grid-"]:after{content:" ";display:table;clear:both}[class*="block-grid-"]>li{display:block;height:auto;float:left;padding: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}}@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}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}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}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}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}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}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}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}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,.touch .show-for-touch{display:inherit!important}.touch .hide-for-touch{display:none!important}table.hide-for-touch,.touch table.show-for-touch{display:table}thead.hide-for-touch,.touch thead.show-for-touch{display:table-header-group!important}tbody.hide-for-touch,.touch tbody.show-for-touch{display:table-row-group!important}tr.hide-for-touch,.touch tr.show-for-touch{display:table-row!important}td.hide-for-touch,.touch td.show-for-touch,th.hide-for-touch,.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}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}}.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{margin:0}div,dl{padding:0}dt,dd{margin:0}dt,dd,ul,ol{padding:0}li{margin:0}li,h1,h2,h3,h4,h5,h6{padding:0}pre{margin:0}pre,form,p,th,td{padding:0}th,td{margin:0}a{color:#e68c1e;text-decoration:none;line-height:inherit}a:hover,a:focus{color:#ca7916}a img{border:none}p{font-family:inherit;font-weight:400;font-size:1rem;margin:0 0 1.25rem;text-rendering:optimizeLegibility}p,p.lead{line-height:1.6}p.lead{font-size:1.21875rem}p aside{font-size:.875rem;line-height:1.35;font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Open Sans",sans-serif;font-weight:400;font-style:normal;color:#000;text-rendering:optimizeLegibility;margin:.2rem 0 .5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:60%;color:#595959;line-height:0}h1{font-size:2.125rem}h2{font-size:1.6875rem}h3{font-size:1.375rem}h4,h5{font-size:1.125rem}h6{font-size:1rem}.subheader{line-height:1.4;color:#595959;font-weight:400;margin-top:.2rem;margin-bottom:.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:700}strong,b,small{line-height:inherit}small{font-size:60%}code{font-family:Consolas,'Liberation Mono',Courier,monospace;font-weight:400;color:#333;background-color:#9ee8ff;border-width:1px;border-style:solid;border-color:#75dfff;padding:.125rem .3125rem .0625rem}ul,ol,dl{font-size:1rem;line-height:1.6;list-style-position:outside;font-family:inherit}dl{margin:0 0 1.25rem}ul{margin:0 0 1.25rem 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:0 0 1.25rem 1.4rem}ol li ul,ol li ol{margin-left:1.25rem;margin-bottom:0}dl dt{margin-bottom:.3rem;font-weight:700}dl dd{margin-bottom:.75rem}abbr,acronym{font-size:90%;color:#000;border-bottom:1px dotted #ddd;cursor:help}acronym{text-transform:uppercase}abbr{text-transform:none}blockquote{margin:0 0 1.25rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #ddd}blockquote cite{display:block;font-size:.8125rem;color:#3b3b3b}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:#3b3b3b}blockquote,blockquote p{line-height:1.6;color:#595959}.vcard{display:inline-block;border:1px solid #ddd}.vcard li{margin:0;display:block}.vcard .fn{font-size:.9375rem}.vcard .fn,.vevent .summary,.vevent abbr{font-weight:700}.vevent abbr{cursor:default;text-decoration:none;border:none;padding: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{@page{margin:.5cm}*{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}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}}button,.button,input[type=submit]{border-style:solid;border-width:0;cursor:pointer;font-family:"Open Sans",sans-serif;font-weight:400;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:1rem 2rem 1.0625rem;font-size:1rem;background-color:#e68c1e;border-color:#bc7114;color:#fff;transition:background-color 300ms ease-out}button:hover,button:focus,.button:hover,input[type=submit]:hover,.button:focus,input[type=submit]:focus{background-color:#bc7114;color:#fff}button.secondary,.button.secondary,input.secondary[type=submit]{background-color:#008CBA;border-color:#007295;color:#fff}button.secondary:hover,button.secondary:focus,.button.secondary:hover,input.secondary[type=submit]:hover,.button.secondary:focus,input.secondary[type=submit]:focus{background-color:#007295;color:#fff}button.success,.button.success,input.success[type=submit]{background-color:#43AC6A;border-color:#368a54;color:#fff}button.success:hover,button.success:focus,.button.success:hover,input.success[type=submit]:hover,.button.success:focus,input.success[type=submit]:focus{background-color:#368a54;color:#fff}button.alert,.button.alert,input.alert[type=submit]{background-color:#f04124;border-color:#cf280e;color:#fff}button.alert:hover,button.alert:focus,.button.alert:hover,input.alert[type=submit]:hover,.button.alert:focus,input.alert[type=submit]:focus{background-color:#cf280e;color:#fff}button.large,.button.large,input.large[type=submit]{padding:1.125rem 2.25rem 1.1875rem;font-size:1.25rem}button.small,.button.small,input.small[type=submit]{padding:.875rem 1.75rem .9375rem;font-size:.8125rem}button.tiny,.button.tiny,input.tiny[type=submit]{padding:.625rem 1.25rem .6875rem;font-size:.6875rem}button.expand,.button.expand,input.expand[type=submit]{padding-right:0;padding-left:0;width:100%}button.left-align,.button.left-align,input.left-align[type=submit]{text-align:left;text-indent:.75rem}button.right-align,.button.right-align,input.right-align[type=submit]{text-align:right;padding-right:.75rem}button.radius,#menu .user-menu-wrap button.user-menu,button.dismiss-button,.button.radius,#menu .user-menu-wrap .button.user-menu,input.user-menu[type=submit],.page-login .login-form input.button[type=submit],input[type=submit],input.radius[type=submit],#menu .user-menu-wrap input[type=submit].user-menu,.page-login .login-form input[type=submit],input[type=submit].dismiss-button,.button.dismiss-button,input.dismiss-button[type=submit]{border-radius:3px}button.round,.button.round,input.round[type=submit]{border-radius:1000px}button.disabled,button[disabled],.button.disabled,input.disabled[type=submit],.button[disabled],input[disabled][type=submit]{background-color:#e68c1e;border-color:#bc7114;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled:hover,button.disabled:focus,button[disabled]:hover,button[disabled]:focus,.button.disabled:hover,input.disabled[type=submit]:hover,.button.disabled:focus,input.disabled[type=submit]:focus,.button[disabled]:hover,input[disabled][type=submit]:hover,.button[disabled]:focus,input[disabled][type=submit]:focus{background-color:#bc7114;color:#fff;background-color:#e68c1e}button.disabled.secondary,button[disabled].secondary,.button.disabled.secondary,input.disabled.secondary[type=submit],.button[disabled].secondary,input[disabled].secondary[type=submit]{background-color:#008CBA;border-color:#007295;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.secondary:hover,button.disabled.secondary:focus,button[disabled].secondary:hover,button[disabled].secondary:focus,.button.disabled.secondary:hover,input.disabled.secondary[type=submit]:hover,.button.disabled.secondary:focus,input.disabled.secondary[type=submit]:focus,.button[disabled].secondary:hover,input[disabled].secondary[type=submit]:hover,.button[disabled].secondary:focus,input[disabled].secondary[type=submit]:focus{background-color:#007295;color:#fff;background-color:#008CBA}button.disabled.success,button[disabled].success,.button.disabled.success,input.disabled.success[type=submit],.button[disabled].success,input[disabled].success[type=submit]{background-color:#43AC6A;border-color:#368a54;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.success:hover,button.disabled.success:focus,button[disabled].success:hover,button[disabled].success:focus,.button.disabled.success:hover,input.disabled.success[type=submit]:hover,.button.disabled.success:focus,input.disabled.success[type=submit]:focus,.button[disabled].success:hover,input[disabled].success[type=submit]:hover,.button[disabled].success:focus,input[disabled].success[type=submit]:focus{background-color:#368a54;color:#fff;background-color:#43AC6A}button.disabled.alert,button[disabled].alert,.button.disabled.alert,input.disabled.alert[type=submit],.button[disabled].alert,input[disabled].alert[type=submit]{background-color:#f04124;border-color:#cf280e;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.alert:hover,button.disabled.alert:focus,button[disabled].alert:hover,button[disabled].alert:focus,.button.disabled.alert:hover,input.disabled.alert[type=submit]:hover,.button.disabled.alert:focus,input.disabled.alert[type=submit]:focus,.button[disabled].alert:hover,input[disabled].alert[type=submit]:hover,.button[disabled].alert:focus,input[disabled].alert[type=submit]:focus{background-color:#cf280e;color:#fff;background-color:#f04124}button::-moz-focus-inner{border:0;padding:0}@media only screen and (min-width:40.063em){button,.button,input[type=submit]{display:inline-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;float:left}.button-group>li>button,.button-group>li .button,.button-group>li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group>li:first-child button,.button-group>li:first-child .button,.button-group>li:first-child input[type=submit]{border-left:0}.button-group>li:first-child{margin-left:0}.button-group.radius>*>button,.button-group.radius>*>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*>.button-group.user-menu,.button-group.radius>*>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*>input.button-group[type=submit],.button-group.radius>*>.button-group.dismiss-button,.button-group.radius>* .button,.button-group.radius>* #menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>* .button-group.user-menu,.button-group.radius>* .page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>* input.button-group[type=submit],.button-group.radius>* .button-group.dismiss-button,.button-group.radius>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.radius>*:first-child button,.button-group.radius>*:first-child .button,.button-group.radius>*:first-child #menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:first-child .button-group.user-menu,.button-group.radius>*:first-child .page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:first-child input.button-group[type=submit],.button-group.radius>*:first-child .button-group.dismiss-button,.button-group.radius>*:first-child input[type=submit]{border-left:0}.button-group.radius>*,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*>a,.button-group.radius>*>button,.button-group.radius>*>.button,.button-group.radius>*>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*>.button-group.user-menu,.button-group.radius>*>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*>input.button-group[type=submit],.button-group.radius>*>.button-group.dismiss-button,.button-group.radius>*>input[type=submit]{border-radius:0}.button-group.radius>*:first-child,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*:first-child>a,.button-group.radius>*:first-child>button,.button-group.radius>*:first-child>.button,.button-group.radius>*:first-child>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:first-child>.button-group.user-menu,.button-group.radius>*:first-child>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:first-child>input.button-group[type=submit],.button-group.radius>*:first-child>.button-group.dismiss-button,.button-group.radius>*:first-child>input[type=submit]{border-bottom-left-radius:3px;border-top-left-radius:3px}.button-group.radius>*:last-child,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*:last-child>a,.button-group.radius>*:last-child>button,.button-group.radius>*:last-child>.button,.button-group.radius>*:last-child>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:last-child>.button-group.user-menu,.button-group.radius>*:last-child>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:last-child>input.button-group[type=submit],.button-group.radius>*:last-child>.button-group.dismiss-button,.button-group.radius>*:last-child>input[type=submit]{border-bottom-right-radius:3px;border-top-right-radius:3px}.button-group.round>*>button,.button-group.round>* .button,.button-group.round>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.round>*:first-child button,.button-group.round>*:first-child .button,.button-group.round>*:first-child input[type=submit]{border-left:0}.button-group.round>*,.button-group.round>*>a,.button-group.round>*>button,.button-group.round>*>.button,.button-group.round>*>input[type=submit]{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,.button-group.round>*:first-child>input[type=submit]{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,.button-group.round>*:last-child>input[type=submit]{border-bottom-right-radius:1000px;border-top-right-radius:1000px}.button-group.even-2 li{width:50%}.button-group.even-2 li>button,.button-group.even-2 li .button,.button-group.even-2 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-2 li:first-child button,.button-group.even-2 li:first-child .button,.button-group.even-2 li:first-child input[type=submit]{border-left:0}.button-group.even-2 li button,.button-group.even-2 li .button,.button-group.even-2 li input[type=submit]{width:100%}.button-group.even-3 li{width:33.33333%}.button-group.even-3 li>button,.button-group.even-3 li .button,.button-group.even-3 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-3 li:first-child button,.button-group.even-3 li:first-child .button,.button-group.even-3 li:first-child input[type=submit]{border-left:0}.button-group.even-3 li button,.button-group.even-3 li .button,.button-group.even-3 li input[type=submit]{width:100%}.button-group.even-4 li{width:25%}.button-group.even-4 li>button,.button-group.even-4 li .button,.button-group.even-4 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-4 li:first-child button,.button-group.even-4 li:first-child .button,.button-group.even-4 li:first-child input[type=submit]{border-left:0}.button-group.even-4 li button,.button-group.even-4 li .button,.button-group.even-4 li input[type=submit]{width:100%}.button-group.even-5 li{width:20%}.button-group.even-5 li>button,.button-group.even-5 li .button,.button-group.even-5 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-5 li:first-child button,.button-group.even-5 li:first-child .button,.button-group.even-5 li:first-child input[type=submit]{border-left:0}.button-group.even-5 li button,.button-group.even-5 li .button,.button-group.even-5 li input[type=submit]{width:100%}.button-group.even-6 li{width:16.66667%}.button-group.even-6 li>button,.button-group.even-6 li .button,.button-group.even-6 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-6 li:first-child button,.button-group.even-6 li:first-child .button,.button-group.even-6 li:first-child input[type=submit]{border-left:0}.button-group.even-6 li button,.button-group.even-6 li .button,.button-group.even-6 li input[type=submit]{width:100%}.button-group.even-7 li{width:14.28571%}.button-group.even-7 li>button,.button-group.even-7 li .button,.button-group.even-7 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-7 li:first-child button,.button-group.even-7 li:first-child .button,.button-group.even-7 li:first-child input[type=submit]{border-left:0}.button-group.even-7 li button,.button-group.even-7 li .button,.button-group.even-7 li input[type=submit]{width:100%}.button-group.even-8 li{width:12.5%}.button-group.even-8 li>button,.button-group.even-8 li .button,.button-group.even-8 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-8 li:first-child button,.button-group.even-8 li:first-child .button,.button-group.even-8 li:first-child input[type=submit]{border-left:0}.button-group.even-8 li button,.button-group.even-8 li .button,.button-group.even-8 li input[type=submit]{width:100%}.button-bar:before,.button-bar:after{content:" ";display:table}.button-bar:after{clear:both}.button-bar .button-group{float:left;margin-right:.625rem}.button-bar .button-group div{overflow:hidden}form{margin:0 0 1rem}form .row .row{margin:0 -.5rem}form .row .row .column,form .row .row .columns{padding: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{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:.5rem}label{font-size:.875rem;color:#4d4d4d;cursor:pointer;display:block;font-weight:400;line-height:1.5;margin-bottom:0}label.right{float:none!important;text-align:right}label.inline{margin:0 0 1rem;padding:.5625rem 0}label small{text-transform:capitalize;color:#676767}select::-ms-expand{display:none}.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:.875rem;height:2.3125rem;line-height:2.3125rem}.postfix.button,input.postfix[type=submit],.prefix.button,input.prefix[type=submit]{padding:0;text-align:center;line-height:2.125rem;border:none}.prefix.button.radius,#menu .user-menu-wrap .prefix.button.user-menu,input.prefix.user-menu[type=submit],.page-login .login-form input.prefix.button[type=submit],input.prefix[type=submit],input.prefix.radius[type=submit],#menu .user-menu-wrap input.prefix[type=submit].user-menu,.page-login .login-form input.prefix[type=submit],input.prefix[type=submit].dismiss-button,.prefix.button.dismiss-button,input.prefix.dismiss-button[type=submit]{border-radius:0;border-bottom-left-radius:3px;border-top-left-radius:3px}.postfix.button.radius,#menu .user-menu-wrap .postfix.button.user-menu,input.postfix.user-menu[type=submit],.page-login .login-form input.postfix.button[type=submit],input.postfix[type=submit],input.postfix.radius[type=submit],#menu .user-menu-wrap input.postfix[type=submit].user-menu,.page-login .login-form input.postfix[type=submit],input.postfix[type=submit].dismiss-button,.postfix.button.dismiss-button,input.postfix.dismiss-button[type=submit]{border-radius:0;border-bottom-right-radius:3px;border-top-right-radius:3px}.prefix.button.round,input.prefix.round[type=submit]{border-radius:0;border-bottom-left-radius:1000px;border-top-left-radius:1000px}.postfix.button.round,input.postfix.round[type=submit]{border-radius:0;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.prefix.radius,#menu .user-menu-wrap span.prefix.user-menu,span.prefix.dismiss-button,label.prefix.radius,#menu .user-menu-wrap label.prefix.user-menu,label.prefix.dismiss-button{border-radius:0;border-bottom-left-radius:3px;border-top-left-radius:3px}span.postfix,label.postfix{background:#f2f2f2;border-left:none;color:#333;border-color:#ccc}span.postfix.radius,#menu .user-menu-wrap span.postfix.user-menu,span.postfix.dismiss-button,label.postfix.radius,#menu .user-menu-wrap label.postfix.user-menu,label.postfix.dismiss-button{border-radius:0;border-bottom-right-radius:3px;border-top-right-radius:3px}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"],textarea{-webkit-appearance:none;-webkit-border-radius:0;background-color:#fff;font-family:inherit;border:1px solid #ccc;box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:rgba(0,0,0,.75);display:block;font-size:.875rem;margin:0 0 1rem;padding:.5rem;height:2.3125rem;width:100%;box-sizing:border-box;transition:box-shadow .45s,border-color .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,textarea:focus{box-shadow:0 0 5px #999;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,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"],textarea[disabled],textarea[readonly],fieldset[disabled] textarea{background-color:#ddd;cursor:default}input[type="text"].radius,#menu .user-menu-wrap input[type="text"].user-menu,.page-login .login-form input[type="text"][type=submit],input[type="text"].dismiss-button,input[type="password"].radius,#menu .user-menu-wrap input[type="password"].user-menu,.page-login .login-form input[type="password"][type=submit],input[type="password"].dismiss-button,input[type="date"].radius,#menu .user-menu-wrap input[type="date"].user-menu,.page-login .login-form input[type="date"][type=submit],input[type="date"].dismiss-button,input[type="datetime"].radius,#menu .user-menu-wrap input[type="datetime"].user-menu,.page-login .login-form input[type="datetime"][type=submit],input[type="datetime"].dismiss-button,input[type="datetime-local"].radius,#menu .user-menu-wrap input[type="datetime-local"].user-menu,.page-login .login-form input[type="datetime-local"][type=submit],input[type="datetime-local"].dismiss-button,input[type="month"].radius,#menu .user-menu-wrap input[type="month"].user-menu,.page-login .login-form input[type="month"][type=submit],input[type="month"].dismiss-button,input[type="week"].radius,#menu .user-menu-wrap input[type="week"].user-menu,.page-login .login-form input[type="week"][type=submit],input[type="week"].dismiss-button,input[type="email"].radius,#menu .user-menu-wrap input[type="email"].user-menu,.page-login .login-form input[type="email"][type=submit],input[type="email"].dismiss-button,input[type="number"].radius,#menu .user-menu-wrap input[type="number"].user-menu,.page-login .login-form input[type="number"][type=submit],input[type="number"].dismiss-button,input[type="search"].radius,#menu .user-menu-wrap input[type="search"].user-menu,.page-login .login-form input[type="search"][type=submit],input[type="search"].dismiss-button,input[type="tel"].radius,#menu .user-menu-wrap input[type="tel"].user-menu,.page-login .login-form input[type="tel"][type=submit],input[type="tel"].dismiss-button,input[type="time"].radius,#menu .user-menu-wrap input[type="time"].user-menu,.page-login .login-form input[type="time"][type=submit],input[type="time"].dismiss-button,input[type="url"].radius,#menu .user-menu-wrap input[type="url"].user-menu,.page-login .login-form input[type="url"][type=submit],input[type="url"].dismiss-button,textarea.radius,#menu .user-menu-wrap textarea.user-menu,textarea.dismiss-button{border-radius:3px}input[type="submit"]{-webkit-appearance:none;-webkit-border-radius:0}textarea[rows]{height:auto}select{-webkit-appearance:none!important;-webkit-border-radius:0;background-color:#fafafa;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);background-position:100% center;background-repeat:no-repeat;border:1px solid #ccc;padding:.5rem;font-size:.875rem;color:rgba(0,0,0,.75);line-height:normal;border-radius:0;height:2.3125rem}select.radius,#menu .user-menu-wrap select.user-menu,select.dismiss-button{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}input[type="checkbox"]+label,input[type="radio"]+label{display:inline-block;margin-left:.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:700;background:#fff;padding:0 .1875rem;margin:0 0 0 -.1875rem}[data-abide] .error small.error,[data-abide] .error span.error,[data-abide] span.error,[data-abide] small.error{display:block;padding:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;font-style:italic;background:#f04124;color:#fff}[data-abide] span.error,[data-abide] small.error{display:none}span.error,small.error{display:block;padding:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;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:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;font-style:italic;background:#f04124;color:#fff}.error>label>small{color:#676767;background:0 0;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}.label{font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:.25rem .5rem .375rem;font-size:.6875rem;background-color:#e68c1e;color:#fff}.label.radius,#menu .user-menu-wrap .label.user-menu,.page-login .login-form input.label[type=submit],.label.dismiss-button{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:#008CBA;color:#fff}table{background:#fff;margin-bottom:1.25rem;border:solid 1px #ddd}table caption{background:0 0;color:#222;font-size:1rem;font-weight:700}table thead{background:#f5f5f5}table thead tr th,table thead tr td{padding:.625rem 1rem .5625rem;font-size:.875rem;font-weight:700;color:#222}table tfoot{background:#f5f5f5}table tfoot tr th,table tfoot tr td{padding:.625rem 1rem .5625rem;font-size:.875rem;font-weight:700;color:#222}table tr th,table tr td{padding:.75rem 1rem;font-size:.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}body h1,body h2,body h3,body h4,body h5,body h6{font-weight:800}#site-header{background-color:#333;box-shadow:rgba(0,0,0,.3)0 1px 2px 0}#site-header #header-container{width:100%;margin:0 auto;max-width:78.125rem;position:relative;z-index:1}#site-header #header-container:before{content:" ";display:table}#site-header #header-container:after{content:" ";display:table;clear:both}#site-header .site-title{padding-left:.9375rem;padding-right:.9375rem;width:25%;float:left}#site-header .site-title a{display:block;padding-top:1.125rem;padding-bottom:1.125rem;color:#fff;line-height:1}#site-header .site-title a:hover{color:#e6e6e6}#menu{padding-left:.9375rem;padding-right:.9375rem;width:75%;float:left}#menu a{color:#fff}#menu a:hover{color:#e6e6e6}#menu ul{list-style:none;padding:0;margin:0;line-height:1}#menu ul li a{display:block}#menu .main-menu{text-align:right;display:none;padding-top:2.625rem}@media only screen and (min-width:64.063em){#menu .main-menu{display:block;padding-top:0}}@media only screen and (min-width:64.063em){#menu .main-menu li{float:left}}#menu .main-menu li a{display:block;padding:1.125rem .625rem}#menu .main-menu li.menu-item-has-children:hover .sub-menu{display:block}@media only screen and (min-width:64.063em){#menu .sub-menu{display:none;position:absolute;background-color:#333}#menu .sub-menu li{float:none}#menu .sub-menu li a{text-align:left;padding-right:.625rem;border-left:4px solid transparent}#menu .sub-menu li a:hover{border-left:4px solid #008CBA}#menu .sub-menu li:first-child a{padding-left:.625rem}}#menu .user-menu-wrap{display:none}@media only screen and (min-width:64.063em){#menu .user-menu-wrap{display:block;font-size:.875rem;position:absolute;top:0;right:1rem;margin-top:.375rem}#menu .user-menu-wrap:hover .profile-badge{background-color:#f7f7f7}}#menu .user-menu-wrap .profile-badge{display:block;height:2.5rem;text-align:right;padding:4px}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .profile-badge{background-color:#fff;border-radius:3.125rem;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}}#menu .user-menu-wrap .profile-badge img{max-height:100%;border-radius:50%}#menu .user-menu-wrap .user-menu{text-align:right;position:relative;z-index:1}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .user-menu{display:none;background-color:#fff;overflow:hidden;font-size:.875rem;margin-top:.4375rem;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}#menu .user-menu-wrap .user-menu a{color:#333;border-left:4px solid transparent}#menu .user-menu-wrap .user-menu a:hover{background-color:#f7f7f7;border-left:4px solid #baefff}}#menu .user-menu-wrap .user-menu li a{padding:1.125rem .625rem}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .user-menu li a{padding-left:1rem;padding-right:1rem}}#menu .user-menu-wrap .icon-down{display:none;font-size:.75rem;font-style:normal;padding-left:.375rem;-webkit-transform:rotate(90deg);transform:rotate(90deg);top:-3px;position:relative;color:#ccc}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .icon-down{display:inline-block}}#menu .user-menu-wrap .profile-inner{display:inline-block;padding-left:.625rem;padding-right:.25rem}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .profile-inner{padding:0 .625rem;color:#333}}#menu .menu-toggle{position:absolute;right:1rem;top:.875rem}@media only screen and (min-width:64.063em){#menu .menu-toggle{display:none}}#menu .menu-toggle svg{width:32px;height:24px}#menu .menu-toggle g{fill:#fff}#menu .menu-toggle:hover g{fill:#e6e6e6}.container{width:100%;margin:0 auto;max-width:78.125rem}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}#content{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left;margin-top:1rem}@media only screen and (min-width:64.063em){#content{padding-left:.9375rem;padding-right:.9375rem;width:66.66667%;float:left}}.front-page .introduction{position:relative}.front-page #content .introduction{padding-left:1rem}.front-page #content .activities-wrap .post{padding-left:0}.text-body{margin-bottom:2rem;position:relative}.entry-title,.entry-meta{display:inline-block}.entry-meta{margin-bottom:.625rem;font-weight:300;color:#666;clear:both}.entry-content{margin-top:1.25rem}.entry-content.excerpt p{margin-bottom:8px}.entry-category{font-weight:300;color:#666}.entry-category .dashicons-tag{font-size:1.125rem;vertical-align:baseline;position:relative;top:3px;left:-2px}.entry-category .label-category{font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:2px 7px 7px;font-size:.875rem;background-color:#ff4b33;color:#fff;border-radius:4px;margin-bottom:8px}.read-more{padding:10px 16px;margin-bottom:8px}.actions-container{text-align:right}.actions-container:before,.actions-container:after{content:" ";display:table}.actions-container:after{clear:both}.comments-link{float:left;padding-top:1.25rem}.page-login #content{width:100%;float:left}.page-login .introduction,.page-login .login-form{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}@media only screen and (min-width:40.063em){.page-login .login-form{max-width:400px}}.page-login .login-form .login-remember{display:inline-block;padding:6px 0}.page-login .login-form .login-submit{display:inline-block;float:right}.page-login .login-form input[type=checkbox]{margin:0;position:relative;top:2px}.page-login .login-form input[type=submit]{margin-bottom:0}.page-login .login-form p{margin:0}@media only screen and (min-width:64.063em){.page-login .introduction,.page-login .login-form{padding-left:.9375rem;padding-right:.9375rem;width:50%;float:left}}.page-user-search #content{width:100%;float:left}.page-user-search .search-form{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}.page-user-search .search-form table{width:100%}.page-user-search .search-about{width:100%;float:left;margin-top:2rem}.page-user-search .meta{margin-bottom:1rem;font-style:italic;text-align:right}.page-user-search .filters .groups{padding-left:0;padding-right:0;width:33.33333%;float:left}.page-user-search .filters .roles{padding-left:.9375rem;padding-right:.9375rem;width:66.66667%;float:left}.page-user-search .filters .roles ul li{margin-left:4px}.page-user-search .filters .roles ul li:first-child{margin-left:0}.profile .page-title{margin-top:1rem}.profile .page-title,.profile .profile-details,.profile .account-details{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}@media only screen and (min-width:64.063em){.profile .profile-details,.profile .account-details{padding-left:.9375rem;padding-right:.9375rem;width:50%;float:left}}.profile .account-details .inner{padding-left:1rem;padding-right:1rem}.profile h5{margin-top:.5rem}.profile .label-email-type{margin-left:2px;font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:4px 4px 5px;font-size:.6875rem;background-color:#eee;color:#333;border-radius:2px}.profile .label-email-type.mailman{color:#006887}.sidebar{padding-left:0;padding-right:0;width:100%;float:left;font-weight:500;padding-top:1rem}@media only screen and (min-width:64.063em){.sidebar{padding-left:.9375rem;padding-right:.9375rem;width:33.33333%;float:left;font-weight:300}}.sidebar h2{padding-left:1rem;padding-right:1rem}@media only screen and (min-width:64.063em){.sidebar h2{padding-left:0;padding-right:0}}.sidebar h2,.sidebar h2 a.rsswidget{font-size:1.25rem;margin-bottom:0}.sidebar h2 a.rsswidget{font-weight:400}.sidebar .searchform{padding-left:1rem;padding-right:1rem}@media only screen and (min-width:64.063em){.sidebar .searchform{padding-left:0;padding-right:0}}.sidebar .searchform input[type=text]{width:75%;margin:0;display:block;float:left}.sidebar .searchform input[type=submit]{padding:0 8px;margin:0;text-align:center;line-height:2.3125rem;border:none;display:block;float:left;width:25%}.sidebar .widgettitle{clear:both}.sidebar .rsswidget img{display:none}.sidebar a.rsswidget,.sidebar .rss-date,.sidebar li.recentcomments a{font-size:.875rem}.sidebar ul{list-style:none;padding:0;margin:0}@media only screen and (min-width:64.063em){.sidebar ul{list-style:disc outside none}}.sidebar ul li{display:block;padding:1rem}.sidebar ul li:nth-child(even){background-color:#f5f5f5}@media only screen and (min-width:64.063em){.sidebar ul li:nth-child(even){background-color:transparent}}@media only screen and (min-width:64.063em){.sidebar ul li{display:list-item;padding:0;margin-left:1.25rem}}.card,.front-page .introduction{padding-top:.625rem;padding-bottom:.625rem;background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.text-body{padding:.625rem 1rem}.text-body,.page-login .login-form,.page-user-search .search-form{background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.page-login .login-form,.page-user-search .search-form{padding-top:.625rem;padding-bottom:.625rem}.page-user-search .search-about{padding:.625rem .9375rem}.page-user-search .search-about,.profile .profile-details .inner{background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.profile .profile-details .inner{padding:.625rem 1rem}.profile .account-details .inner{padding-top:.625rem;padding-bottom:.625rem;background-color:#fff;border:1px solid #eee;border-radius:2px}.profile .account-details .inner,.card-z1{box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}.card-z2{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.love{color:#faafba}.credits-wrap{width:100%;margin:0 auto;max-width:78.125rem}.credits-wrap:before,.credits-wrap:after{content:" ";display:table}.credits-wrap:after{clear:both}.credits-wrap .credits{margin-top:25px;margin-bottom:25px;padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left;text-align:center;color:#666;font-size:.75rem}.fadein{-webkit-animation:fadein 1.5s 1;animation:fadein 1.5s 1}@-webkit-keyframes fadein{from{opacity:0;top:-10px}to{opacity:1;top:0}}@keyframes fadein{from{opacity:0;top:-10px}to{opacity:1;top:0}}.dismiss{position:absolute;display:block;top:0;right:0;font-size:1.875rem;color:#ccc;padding:7px}.dismiss-button{padding:.8em 1.2em}.vcard{margin:0;border:0;padding:0}.visible{display:block!important}.button-alt{border-width:0;cursor:pointer;font-family:"Open Sans",sans-serif;font-weight:400;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:.4375rem .875rem .5rem;background-color:#eee;color:#333;border-radius:.3125rem;transition:background-color 300ms ease-out;border:1px solid transparent}.button-alt:hover,.button-alt:focus{background-color:#bebebe;color:#333}.button-alt:hover{background-color:#ccc}.active{background-color:#008CBA;color:#fff}.active:hover{color:#fff;background-color:#006887} \ No newline at end of file +/*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}kbd,pre,samp{font-family:monospace,monospace}button{font:inherit}input,optgroup{margin:0}input,optgroup,select,textarea{color:inherit;font:inherit}button{overflow:visible}button,select{text-transform:none}html input[type="button"],input[type="reset"]{-webkit-appearance:button;cursor:pointer}input[type="submit"]{cursor:pointer}html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;zoom:1;*display:inline;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;box-sizing:border-box;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:23px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url('../images/chosen-sprite.png') -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover,.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url('../images/chosen-sprite.png') no-repeat 0 2px}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type="text"]{box-sizing:border-box;margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:#fff url('../images/chosen-sprite.png') no-repeat 100% -20px;background:url('../images/chosen-sprite.png') no-repeat 100% -20px;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;box-sizing:border-box;margin:0;padding:0;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type="text"]{margin:1px 0;padding:5px;height:36px;outline:0;border:0!important;background:transparent!important;box-shadow:none;color:#666;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-field .default{color:#999}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 0 3px 5px;padding:3px 20px 3px 5px;border:1px solid #aaa;border-radius:3px;background-color:#e4e4e4;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url('../images/chosen-sprite.png') -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;border-bottom-right-radius:0;border-bottom-left-radius:0;background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type="text"]{color:#111!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single,.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type="text"]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single-nosearch .chosen-search,.chosen-rtl .chosen-drop{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type="text"]{padding:4px 5px 4px 20px;background:#fff url('../images/chosen-sprite.png') no-repeat -30px -20px;background:url('../images/chosen-sprite.png') no-repeat -30px -20px;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:144dpi){.chosen-rtl .chosen-search input[type="text"],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-container-single .chosen-search input[type="text"],.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span{background-image:url('../images/chosen-sprite@2x.png') !important;background-size:52px 37px!important;background-repeat:no-repeat!important}}meta.foundation-version{font-family:"/5.4.2/"}meta.foundation-mq-small{font-family:"/only screen/";width:0}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{box-sizing:border-box}html,body{font-size:100%}body{background:#fafafa;color:#000;padding:0;margin:0;font-family:"Open Sans",sans-serif;font-weight:400;font-style:normal;line-height:150%;position:relative;cursor:auto}a:hover{cursor:pointer}img{max-width:100%;height:auto;-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}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px}select,.row{width:100%}.row{margin:0 auto;max-width:78.125rem}.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:0 -.9375rem;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:.9375rem;padding-right:.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:.9375rem;padding-right:.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:.9375rem;padding-right:.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:.9375rem;padding-right:.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}}[class*="block-grid-"]{display:block;padding:0;margin:0 -.625rem}[class*="block-grid-"]:before{content:" ";display:table}[class*="block-grid-"]:after{content:" ";display:table;clear:both}[class*="block-grid-"]>li{display:block;height:auto;float:left;padding: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}}@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}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}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}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}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}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}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}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}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,.touch .show-for-touch{display:inherit!important}.touch .hide-for-touch{display:none!important}table.hide-for-touch,.touch table.show-for-touch{display:table}thead.hide-for-touch,.touch thead.show-for-touch{display:table-header-group!important}tbody.hide-for-touch,.touch tbody.show-for-touch{display:table-row-group!important}tr.hide-for-touch,.touch tr.show-for-touch{display:table-row!important}td.hide-for-touch,.touch td.show-for-touch,th.hide-for-touch,.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}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}}.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{margin:0}div,dl{padding:0}dt,dd{margin:0}dt,dd,ul,ol{padding:0}li{margin:0}li,h1,h2,h3,h4,h5,h6{padding:0}pre{margin:0}pre,form,p,th,td{padding:0}th,td{margin:0}a{color:#e68c1e;text-decoration:none;line-height:inherit}a:hover,a:focus{color:#ca7916}a img{border:none}p{font-family:inherit;font-weight:400;font-size:1rem;margin:0 0 1.25rem;text-rendering:optimizeLegibility}p,p.lead{line-height:1.6}p.lead{font-size:1.21875rem}p aside{font-size:.875rem;line-height:1.35;font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Open Sans",sans-serif;font-weight:400;font-style:normal;color:#000;text-rendering:optimizeLegibility;margin:.2rem 0 .5rem;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:60%;color:#595959;line-height:0}h1{font-size:2.125rem}h2{font-size:1.6875rem}h3{font-size:1.375rem}h4,h5{font-size:1.125rem}h6{font-size:1rem}.subheader{line-height:1.4;color:#595959;font-weight:400;margin-top:.2rem;margin-bottom:.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:700}strong,b,small{line-height:inherit}small{font-size:60%}code{font-family:Consolas,'Liberation Mono',Courier,monospace;font-weight:400;color:#333;background-color:#9ee8ff;border-width:1px;border-style:solid;border-color:#75dfff;padding:.125rem .3125rem .0625rem}ul,ol,dl{font-size:1rem;line-height:1.6;list-style-position:outside;font-family:inherit}dl{margin:0 0 1.25rem}ul{margin:0 0 1.25rem 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:0 0 1.25rem 1.4rem}ol li ul,ol li ol{margin-left:1.25rem;margin-bottom:0}dl dt{margin-bottom:.3rem;font-weight:700}dl dd{margin-bottom:.75rem}abbr,acronym{font-size:90%;color:#000;border-bottom:1px dotted #ddd;cursor:help}acronym{text-transform:uppercase}abbr{text-transform:none}blockquote{margin:0 0 1.25rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #ddd}blockquote cite{display:block;font-size:.8125rem;color:#3b3b3b}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:#3b3b3b}blockquote,blockquote p{line-height:1.6;color:#595959}.vcard{display:inline-block;border:1px solid #ddd}.vcard li{margin:0;display:block}.vcard .fn{font-size:.9375rem}.vcard .fn,.vevent .summary,.vevent abbr{font-weight:700}.vevent abbr{cursor:default;text-decoration:none;border:none;padding: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{@page{margin:.5cm}*{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}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}}button,.button,input[type=submit]{border-style:solid;border-width:0;cursor:pointer;font-family:"Open Sans",sans-serif;font-weight:400;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:1rem 2rem 1.0625rem;font-size:1rem;background-color:#e68c1e;border-color:#bc7114;color:#fff;transition:background-color 300ms ease-out}button:hover,button:focus,.button:hover,input[type=submit]:hover,.button:focus,input[type=submit]:focus{background-color:#bc7114;color:#fff}button.secondary,.button.secondary,input.secondary[type=submit]{background-color:#008CBA;border-color:#007295;color:#fff}button.secondary:hover,button.secondary:focus,.button.secondary:hover,input.secondary[type=submit]:hover,.button.secondary:focus,input.secondary[type=submit]:focus{background-color:#007295;color:#fff}button.success,.button.success,input.success[type=submit]{background-color:#43AC6A;border-color:#368a54;color:#fff}button.success:hover,button.success:focus,.button.success:hover,input.success[type=submit]:hover,.button.success:focus,input.success[type=submit]:focus{background-color:#368a54;color:#fff}button.alert,.button.alert,input.alert[type=submit]{background-color:#f04124;border-color:#cf280e;color:#fff}button.alert:hover,button.alert:focus,.button.alert:hover,input.alert[type=submit]:hover,.button.alert:focus,input.alert[type=submit]:focus{background-color:#cf280e;color:#fff}button.large,.button.large,input.large[type=submit]{padding:1.125rem 2.25rem 1.1875rem;font-size:1.25rem}button.small,.button.small,input.small[type=submit]{padding:.875rem 1.75rem .9375rem;font-size:.8125rem}button.tiny,.button.tiny,input.tiny[type=submit]{padding:.625rem 1.25rem .6875rem;font-size:.6875rem}button.expand,.button.expand,input.expand[type=submit]{padding-right:0;padding-left:0;width:100%}button.left-align,.button.left-align,input.left-align[type=submit]{text-align:left;text-indent:.75rem}button.right-align,.button.right-align,input.right-align[type=submit]{text-align:right;padding-right:.75rem}button.radius,#menu .user-menu-wrap button.user-menu,button.dismiss-button,.button.radius,#menu .user-menu-wrap .button.user-menu,input.user-menu[type=submit],.page-login .login-form input.button[type=submit],input[type=submit],input.radius[type=submit],#menu .user-menu-wrap input[type=submit].user-menu,.page-login .login-form input[type=submit],input[type=submit].dismiss-button,.button.dismiss-button,input.dismiss-button[type=submit]{border-radius:3px}button.round,.button.round,input.round[type=submit]{border-radius:1000px}button.disabled,button[disabled],.button.disabled,input.disabled[type=submit],.button[disabled],input[disabled][type=submit]{background-color:#e68c1e;border-color:#bc7114;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled:hover,button.disabled:focus,button[disabled]:hover,button[disabled]:focus,.button.disabled:hover,input.disabled[type=submit]:hover,.button.disabled:focus,input.disabled[type=submit]:focus,.button[disabled]:hover,input[disabled][type=submit]:hover,.button[disabled]:focus,input[disabled][type=submit]:focus{background-color:#bc7114;color:#fff;background-color:#e68c1e}button.disabled.secondary,button[disabled].secondary,.button.disabled.secondary,input.disabled.secondary[type=submit],.button[disabled].secondary,input[disabled].secondary[type=submit]{background-color:#008CBA;border-color:#007295;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.secondary:hover,button.disabled.secondary:focus,button[disabled].secondary:hover,button[disabled].secondary:focus,.button.disabled.secondary:hover,input.disabled.secondary[type=submit]:hover,.button.disabled.secondary:focus,input.disabled.secondary[type=submit]:focus,.button[disabled].secondary:hover,input[disabled].secondary[type=submit]:hover,.button[disabled].secondary:focus,input[disabled].secondary[type=submit]:focus{background-color:#007295;color:#fff;background-color:#008CBA}button.disabled.success,button[disabled].success,.button.disabled.success,input.disabled.success[type=submit],.button[disabled].success,input[disabled].success[type=submit]{background-color:#43AC6A;border-color:#368a54;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.success:hover,button.disabled.success:focus,button[disabled].success:hover,button[disabled].success:focus,.button.disabled.success:hover,input.disabled.success[type=submit]:hover,.button.disabled.success:focus,input.disabled.success[type=submit]:focus,.button[disabled].success:hover,input[disabled].success[type=submit]:hover,.button[disabled].success:focus,input[disabled].success[type=submit]:focus{background-color:#368a54;color:#fff;background-color:#43AC6A}button.disabled.alert,button[disabled].alert,.button.disabled.alert,input.disabled.alert[type=submit],.button[disabled].alert,input[disabled].alert[type=submit]{background-color:#f04124;border-color:#cf280e;color:#fff;cursor:default;opacity:.7;box-shadow:none}button.disabled.alert:hover,button.disabled.alert:focus,button[disabled].alert:hover,button[disabled].alert:focus,.button.disabled.alert:hover,input.disabled.alert[type=submit]:hover,.button.disabled.alert:focus,input.disabled.alert[type=submit]:focus,.button[disabled].alert:hover,input[disabled].alert[type=submit]:hover,.button[disabled].alert:focus,input[disabled].alert[type=submit]:focus{background-color:#cf280e;color:#fff;background-color:#f04124}button::-moz-focus-inner{border:0;padding:0}@media only screen and (min-width:40.063em){button,.button,input[type=submit]{display:inline-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;float:none;display:inline-block}.button-group>li>button,.button-group>li .button,.button-group>li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group>li:first-child button,.button-group>li:first-child .button,.button-group>li:first-child input[type=submit]{border-left:0}.button-group.stack>li{float:none;display:inline-block;display:block;margin:0}.button-group.stack>li>button,.button-group.stack>li .button,.button-group.stack>li input[type=submit]{border-left:1px solid}.button-group.stack>li:first-child button,.button-group.stack>li:first-child .button,.button-group.stack>li:first-child input[type=submit]{border-left:0}.button-group.stack>li>button,.button-group.stack>li .button,.button-group.stack>li input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.stack>li:first-child button,.button-group.stack>li:first-child .button,.button-group.stack>li:first-child input[type=submit]{border-top:0}.button-group.stack-for-small>li{margin:0 -2px;float:none;display:inline-block}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button,.button-group.stack-for-small>li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button,.button-group.stack-for-small>li:first-child input[type=submit]{border-left:0}@media only screen and (max-width:40em){.button-group.stack-for-small>li{float:none;display:inline-block;display:block;margin:0}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button,.button-group.stack-for-small>li input[type=submit]{border-left:1px solid}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button,.button-group.stack-for-small>li:first-child input[type=submit]{border-left:0}.button-group.stack-for-small>li>button,.button-group.stack-for-small>li .button,.button-group.stack-for-small>li input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.stack-for-small>li:first-child button,.button-group.stack-for-small>li:first-child .button,.button-group.stack-for-small>li:first-child input[type=submit]{border-top:0}}.button-group.radius>*,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button{margin:0 -2px;float:none;display:inline-block}.button-group.radius>*>button,.button-group.radius>*>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*>.button-group.user-menu,.button-group.radius>*>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*>input.button-group[type=submit],.button-group.radius>*>.button-group.dismiss-button,.button-group.radius>* .button,.button-group.radius>* #menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>* .button-group.user-menu,.button-group.radius>* .page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>* input.button-group[type=submit],.button-group.radius>* .button-group.dismiss-button,.button-group.radius>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.radius>*:first-child button,.button-group.radius>*:first-child .button,.button-group.radius>*:first-child #menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:first-child .button-group.user-menu,.button-group.radius>*:first-child .page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:first-child input.button-group[type=submit],.button-group.radius>*:first-child .button-group.dismiss-button,.button-group.radius>*:first-child input[type=submit]{border-left:0}.button-group.radius>*,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*>a,.button-group.radius>*>button,.button-group.radius>*>.button,.button-group.radius>*>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*>.button-group.user-menu,.button-group.radius>*>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*>input.button-group[type=submit],.button-group.radius>*>.button-group.dismiss-button,.button-group.radius>*>input[type=submit]{border-radius:0}.button-group.radius>*:first-child,.button-group.radius>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*:first-child>a,.button-group.radius>*:first-child>button,.button-group.radius>*:first-child>.button,.button-group.radius>*:first-child>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:first-child>.button-group.user-menu,.button-group.radius>*:first-child>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:first-child>input.button-group[type=submit],.button-group.radius>*:first-child>.button-group.dismiss-button,.button-group.radius>*:first-child>input[type=submit]{-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>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>.button-group.user-menu,.button-group.radius>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>input.button-group[type=submit],.button-group.radius>.button-group.dismiss-button,.button-group.radius>*:last-child>a,.button-group.radius>*:last-child>button,.button-group.radius>*:last-child>.button,.button-group.radius>*:last-child>#menu .user-menu-wrap .button-group.user-menu,#menu .user-menu-wrap .button-group.radius>*:last-child>.button-group.user-menu,.button-group.radius>*:last-child>.page-login .login-form input.button-group[type=submit],.page-login .login-form .button-group.radius>*:last-child>input.button-group[type=submit],.button-group.radius>*:last-child>.button-group.dismiss-button,.button-group.radius>*:last-child>input[type=submit]{-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>*,.button-group.radius.stack>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>.button-group.stack.user-menu,.button-group.radius.stack>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>input.button-group.stack[type=submit],.button-group.radius.stack>.button-group.stack.dismiss-button{float:none;display:inline-block;display:block;margin:0}.button-group.radius.stack>*>button,.button-group.radius.stack>*>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*>.button-group.stack.user-menu,.button-group.radius.stack>*>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*>input.button-group.stack[type=submit],.button-group.radius.stack>*>.button-group.stack.dismiss-button,.button-group.radius.stack>* .button,.button-group.radius.stack>* #menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>* .button-group.stack.user-menu,.button-group.radius.stack>* .page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>* input.button-group.stack[type=submit],.button-group.radius.stack>* .button-group.stack.dismiss-button,.button-group.radius.stack>* input[type=submit]{border-left:1px solid}.button-group.radius.stack>*:first-child button,.button-group.radius.stack>*:first-child .button,.button-group.radius.stack>*:first-child #menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*:first-child .button-group.stack.user-menu,.button-group.radius.stack>*:first-child .page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*:first-child input.button-group.stack[type=submit],.button-group.radius.stack>*:first-child .button-group.stack.dismiss-button,.button-group.radius.stack>*:first-child input[type=submit]{border-left:0}.button-group.radius.stack>*>button,.button-group.radius.stack>*>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*>.button-group.stack.user-menu,.button-group.radius.stack>*>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*>input.button-group.stack[type=submit],.button-group.radius.stack>*>.button-group.stack.dismiss-button,.button-group.radius.stack>* .button,.button-group.radius.stack>* #menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>* .button-group.stack.user-menu,.button-group.radius.stack>* .page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>* input.button-group.stack[type=submit],.button-group.radius.stack>* .button-group.stack.dismiss-button,.button-group.radius.stack>* input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.radius.stack>*:first-child button,.button-group.radius.stack>*:first-child .button,.button-group.radius.stack>*:first-child #menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*:first-child .button-group.stack.user-menu,.button-group.radius.stack>*:first-child .page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*:first-child input.button-group.stack[type=submit],.button-group.radius.stack>*:first-child .button-group.stack.dismiss-button,.button-group.radius.stack>*:first-child input[type=submit]{border-top:0}.button-group.radius.stack>*,.button-group.radius.stack>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>.button-group.stack.user-menu,.button-group.radius.stack>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>input.button-group.stack[type=submit],.button-group.radius.stack>.button-group.stack.dismiss-button,.button-group.radius.stack>*>a,.button-group.radius.stack>*>button,.button-group.radius.stack>*>.button,.button-group.radius.stack>*>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*>.button-group.stack.user-menu,.button-group.radius.stack>*>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*>input.button-group.stack[type=submit],.button-group.radius.stack>*>.button-group.stack.dismiss-button,.button-group.radius.stack>*>input[type=submit]{border-radius:0}.button-group.radius.stack>*:first-child,.button-group.radius.stack>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>.button-group.stack.user-menu,.button-group.radius.stack>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>input.button-group.stack[type=submit],.button-group.radius.stack>.button-group.stack.dismiss-button,.button-group.radius.stack>*:first-child>a,.button-group.radius.stack>*:first-child>button,.button-group.radius.stack>*:first-child>.button,.button-group.radius.stack>*:first-child>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*:first-child>.button-group.stack.user-menu,.button-group.radius.stack>*:first-child>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*:first-child>input.button-group.stack[type=submit],.button-group.radius.stack>*:first-child>.button-group.stack.dismiss-button,.button-group.radius.stack>*:first-child>input[type=submit]{-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>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>.button-group.stack.user-menu,.button-group.radius.stack>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>input.button-group.stack[type=submit],.button-group.radius.stack>.button-group.stack.dismiss-button,.button-group.radius.stack>*:last-child>a,.button-group.radius.stack>*:last-child>button,.button-group.radius.stack>*:last-child>.button,.button-group.radius.stack>*:last-child>#menu .user-menu-wrap .button-group.stack.user-menu,#menu .user-menu-wrap .button-group.radius.stack>*:last-child>.button-group.stack.user-menu,.button-group.radius.stack>*:last-child>.page-login .login-form input.button-group.stack[type=submit],.page-login .login-form .button-group.radius.stack>*:last-child>input.button-group.stack[type=submit],.button-group.radius.stack>*:last-child>.button-group.stack.dismiss-button,.button-group.radius.stack>*:last-child>input[type=submit]{-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;float:none;display:inline-block}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* .button,.button-group.radius.stack-for-small>* #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>* .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>* .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>* input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>* .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button,.button-group.radius.stack-for-small>*:first-child #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:first-child .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:first-child input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:first-child input[type=submit]{border-left:0}.button-group.radius.stack-for-small>*,.button-group.radius.stack-for-small>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*>a,.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>.button,.button-group.radius.stack-for-small>*>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*>input[type=submit]{border-radius:0}.button-group.radius.stack-for-small>*:first-child,.button-group.radius.stack-for-small>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.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,.button-group.radius.stack-for-small>*:first-child>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:first-child>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:first-child>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:first-child>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:first-child>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:first-child>input[type=submit]{-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>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.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,.button-group.radius.stack-for-small>*:last-child>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:last-child>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:last-child>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:last-child>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:last-child>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:last-child>input[type=submit]{-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>*{float:none;display:inline-block;display:block;margin:0}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* .button,.button-group.radius.stack-for-small>* #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>* .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>* .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>* input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>* .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* input[type=submit]{border-left:1px solid}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button,.button-group.radius.stack-for-small>*:first-child #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:first-child .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:first-child input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:first-child input[type=submit]{border-left:0}.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* .button,.button-group.radius.stack-for-small>* #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>* .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>* .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>* input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>* .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>* input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.radius.stack-for-small>*:first-child button,.button-group.radius.stack-for-small>*:first-child .button,.button-group.radius.stack-for-small>*:first-child #menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:first-child .page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:first-child input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:first-child .button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:first-child input[type=submit]{border-top:0}.button-group.radius.stack-for-small>*,.button-group.radius.stack-for-small>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*>a,.button-group.radius.stack-for-small>*>button,.button-group.radius.stack-for-small>*>.button,.button-group.radius.stack-for-small>*>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*>input[type=submit]{border-radius:0}.button-group.radius.stack-for-small>*:first-child,.button-group.radius.stack-for-small>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.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,.button-group.radius.stack-for-small>*:first-child>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:first-child>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:first-child>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:first-child>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:first-child>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:first-child>input[type=submit]{-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>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>.button-group.stack-for-small.dismiss-button,.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,.button-group.radius.stack-for-small>*:last-child>#menu .user-menu-wrap .button-group.stack-for-small.user-menu,#menu .user-menu-wrap .button-group.radius.stack-for-small>*:last-child>.button-group.stack-for-small.user-menu,.button-group.radius.stack-for-small>*:last-child>.page-login .login-form input.button-group.stack-for-small[type=submit],.page-login .login-form .button-group.radius.stack-for-small>*:last-child>input.button-group.stack-for-small[type=submit],.button-group.radius.stack-for-small>*:last-child>.button-group.stack-for-small.dismiss-button,.button-group.radius.stack-for-small>*:last-child>input[type=submit]{-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;float:none;display:inline-block}.button-group.round>*>button,.button-group.round>* .button,.button-group.round>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.round>*:first-child button,.button-group.round>*:first-child .button,.button-group.round>*:first-child input[type=submit]{border-left:0}.button-group.round>*,.button-group.round>*>a,.button-group.round>*>button,.button-group.round>*>.button,.button-group.round>*>input[type=submit]{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,.button-group.round>*:first-child>input[type=submit]{-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,.button-group.round>*:last-child>input[type=submit]{-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>*{float:none;display:inline-block;display:block;margin:0}.button-group.round.stack>*>button,.button-group.round.stack>* .button,.button-group.round.stack>* input[type=submit]{border-left:1px solid}.button-group.round.stack>*:first-child button,.button-group.round.stack>*:first-child .button,.button-group.round.stack>*:first-child input[type=submit]{border-left:0}.button-group.round.stack>*>button,.button-group.round.stack>* .button,.button-group.round.stack>* input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.round.stack>*:first-child button,.button-group.round.stack>*:first-child .button,.button-group.round.stack>*:first-child input[type=submit]{border-top:0}.button-group.round.stack>*,.button-group.round.stack>*>a,.button-group.round.stack>*>button,.button-group.round.stack>*>.button,.button-group.round.stack>*>input[type=submit]{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,.button-group.round.stack>*:first-child>input[type=submit]{-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,.button-group.round.stack>*:last-child>input[type=submit]{-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;float:none;display:inline-block}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button,.button-group.round.stack-for-small>* input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button,.button-group.round.stack-for-small>*:first-child input[type=submit]{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,.button-group.round.stack-for-small>*>input[type=submit]{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,.button-group.round.stack-for-small>*:first-child>input[type=submit]{-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,.button-group.round.stack-for-small>*:last-child>input[type=submit]{-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>*{float:none;display:inline-block;display:block;margin:0}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button,.button-group.round.stack-for-small>* input[type=submit]{border-left:1px solid}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button,.button-group.round.stack-for-small>*:first-child input[type=submit]{border-left:0}.button-group.round.stack-for-small>*>button,.button-group.round.stack-for-small>* .button,.button-group.round.stack-for-small>* input[type=submit]{border-top:1px solid;border-color:rgba(255,255,255,.5);border-left-width:0;margin:0;display:block}.button-group.round.stack-for-small>*:first-child button,.button-group.round.stack-for-small>*:first-child .button,.button-group.round.stack-for-small>*:first-child input[type=submit]{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,.button-group.round.stack-for-small>*>input[type=submit]{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,.button-group.round.stack-for-small>*:first-child>input[type=submit]{-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,.button-group.round.stack-for-small>*:last-child>input[type=submit]{-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;float:none;display:inline-block;width:50%}.button-group.even-2 li>button,.button-group.even-2 li .button,.button-group.even-2 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-2 li:first-child button,.button-group.even-2 li:first-child .button,.button-group.even-2 li:first-child input[type=submit]{border-left:0}.button-group.even-2 li button,.button-group.even-2 li .button,.button-group.even-2 li input[type=submit]{width:100%}.button-group.even-3 li{margin:0 -2px;float:none;display:inline-block;width:33.33333%}.button-group.even-3 li>button,.button-group.even-3 li .button,.button-group.even-3 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-3 li:first-child button,.button-group.even-3 li:first-child .button,.button-group.even-3 li:first-child input[type=submit]{border-left:0}.button-group.even-3 li button,.button-group.even-3 li .button,.button-group.even-3 li input[type=submit]{width:100%}.button-group.even-4 li{margin:0 -2px;float:none;display:inline-block;width:25%}.button-group.even-4 li>button,.button-group.even-4 li .button,.button-group.even-4 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-4 li:first-child button,.button-group.even-4 li:first-child .button,.button-group.even-4 li:first-child input[type=submit]{border-left:0}.button-group.even-4 li button,.button-group.even-4 li .button,.button-group.even-4 li input[type=submit]{width:100%}.button-group.even-5 li{margin:0 -2px;float:none;display:inline-block;width:20%}.button-group.even-5 li>button,.button-group.even-5 li .button,.button-group.even-5 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-5 li:first-child button,.button-group.even-5 li:first-child .button,.button-group.even-5 li:first-child input[type=submit]{border-left:0}.button-group.even-5 li button,.button-group.even-5 li .button,.button-group.even-5 li input[type=submit]{width:100%}.button-group.even-6 li{margin:0 -2px;float:none;display:inline-block;width:16.66667%}.button-group.even-6 li>button,.button-group.even-6 li .button,.button-group.even-6 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-6 li:first-child button,.button-group.even-6 li:first-child .button,.button-group.even-6 li:first-child input[type=submit]{border-left:0}.button-group.even-6 li button,.button-group.even-6 li .button,.button-group.even-6 li input[type=submit]{width:100%}.button-group.even-7 li{margin:0 -2px;float:none;display:inline-block;width:14.28571%}.button-group.even-7 li>button,.button-group.even-7 li .button,.button-group.even-7 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-7 li:first-child button,.button-group.even-7 li:first-child .button,.button-group.even-7 li:first-child input[type=submit]{border-left:0}.button-group.even-7 li button,.button-group.even-7 li .button,.button-group.even-7 li input[type=submit]{width:100%}.button-group.even-8 li{margin:0 -2px;float:none;display:inline-block;width:12.5%}.button-group.even-8 li>button,.button-group.even-8 li .button,.button-group.even-8 li input[type=submit]{border-left:1px solid;border-color:rgba(255,255,255,.5)}.button-group.even-8 li:first-child button,.button-group.even-8 li:first-child .button,.button-group.even-8 li:first-child input[type=submit]{border-left:0}.button-group.even-8 li button,.button-group.even-8 li .button,.button-group.even-8 li input[type=submit]{width:100%}.button-bar:before,.button-bar:after{content:" ";display:table}.button-bar:after{clear:both}.button-bar .button-group{float:left;margin-right:.625rem}.button-bar .button-group div{overflow:hidden}form{margin:0 0 1rem}form .row .row{margin:0 -.5rem}form .row .row .column,form .row .row .columns{padding: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:.5rem}label{font-size:.875rem;color:#4d4d4d;cursor:pointer;display:block;font-weight:400;line-height:1.5;margin-bottom:0}label.right{float:none!important;text-align:right}label.inline{margin:0 0 1rem;padding:.5625rem 0}label small{text-transform:capitalize;color:#676767}select::-ms-expand{display:none}.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:.875rem;height:2.3125rem;line-height:2.3125rem}.postfix.button,input.postfix[type=submit],.prefix.button,input.prefix[type=submit]{padding:0;text-align:center;line-height:2.125rem;border:none}.prefix.button.radius,#menu .user-menu-wrap .prefix.button.user-menu,input.prefix.user-menu[type=submit],.page-login .login-form input.prefix.button[type=submit],input.prefix[type=submit],input.prefix.radius[type=submit],#menu .user-menu-wrap input.prefix[type=submit].user-menu,.page-login .login-form input.prefix[type=submit],input.prefix[type=submit].dismiss-button,.prefix.button.dismiss-button,input.prefix.dismiss-button[type=submit]{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,#menu .user-menu-wrap .postfix.button.user-menu,input.postfix.user-menu[type=submit],.page-login .login-form input.postfix.button[type=submit],input.postfix[type=submit],input.postfix.radius[type=submit],#menu .user-menu-wrap input.postfix[type=submit].user-menu,.page-login .login-form input.postfix[type=submit],input.postfix[type=submit].dismiss-button,.postfix.button.dismiss-button,input.postfix.dismiss-button[type=submit]{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,input.prefix.round[type=submit]{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,input.postfix.round[type=submit]{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:0;background-color:#fff;font-family:inherit;border:1px solid #ccc;box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:rgba(0,0,0,.75);display:block;font-size:.875rem;margin:0 0 1rem;padding:.5rem;height:2.3125rem;width:100%;box-sizing:border-box;transition:box-shadow .45s,border-color .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;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,#menu .user-menu-wrap input[type="text"].user-menu,.page-login .login-form input[type="text"][type=submit],input[type="text"].dismiss-button,input[type="password"].radius,#menu .user-menu-wrap input[type="password"].user-menu,.page-login .login-form input[type="password"][type=submit],input[type="password"].dismiss-button,input[type="date"].radius,#menu .user-menu-wrap input[type="date"].user-menu,.page-login .login-form input[type="date"][type=submit],input[type="date"].dismiss-button,input[type="datetime"].radius,#menu .user-menu-wrap input[type="datetime"].user-menu,.page-login .login-form input[type="datetime"][type=submit],input[type="datetime"].dismiss-button,input[type="datetime-local"].radius,#menu .user-menu-wrap input[type="datetime-local"].user-menu,.page-login .login-form input[type="datetime-local"][type=submit],input[type="datetime-local"].dismiss-button,input[type="month"].radius,#menu .user-menu-wrap input[type="month"].user-menu,.page-login .login-form input[type="month"][type=submit],input[type="month"].dismiss-button,input[type="week"].radius,#menu .user-menu-wrap input[type="week"].user-menu,.page-login .login-form input[type="week"][type=submit],input[type="week"].dismiss-button,input[type="email"].radius,#menu .user-menu-wrap input[type="email"].user-menu,.page-login .login-form input[type="email"][type=submit],input[type="email"].dismiss-button,input[type="number"].radius,#menu .user-menu-wrap input[type="number"].user-menu,.page-login .login-form input[type="number"][type=submit],input[type="number"].dismiss-button,input[type="search"].radius,#menu .user-menu-wrap input[type="search"].user-menu,.page-login .login-form input[type="search"][type=submit],input[type="search"].dismiss-button,input[type="tel"].radius,#menu .user-menu-wrap input[type="tel"].user-menu,.page-login .login-form input[type="tel"][type=submit],input[type="tel"].dismiss-button,input[type="time"].radius,#menu .user-menu-wrap input[type="time"].user-menu,.page-login .login-form input[type="time"][type=submit],input[type="time"].dismiss-button,input[type="url"].radius,#menu .user-menu-wrap input[type="url"].user-menu,.page-login .login-form input[type="url"][type=submit],input[type="url"].dismiss-button,input[type="color"].radius,#menu .user-menu-wrap input[type="color"].user-menu,.page-login .login-form input[type="color"][type=submit],input[type="color"].dismiss-button,textarea.radius,#menu .user-menu-wrap textarea.user-menu,textarea.dismiss-button{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,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,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:0}textarea[rows]{height:auto}select{-webkit-appearance:none!important;-webkit-border-radius:0;background-color:#FAFAFA;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);background-position:100% center;background-repeat:no-repeat;border:1px solid #ccc;padding:.5rem;font-size:.875rem;color:rgba(0,0,0,.75);line-height:normal;border-radius:0;height:2.3125rem}select.radius,#menu .user-menu-wrap select.user-menu,select.dismiss-button{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}input[type="checkbox"]+label,input[type="radio"]+label{display:inline-block;margin-left:.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:700;background:#fff;padding:0 .1875rem;margin:0 0 0 -.1875rem}[data-abide] .error small.error,[data-abide] .error span.error,[data-abide] span.error,[data-abide] small.error{display:block;padding:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;font-style:italic;background:#f04124;color:#fff}[data-abide] span.error,[data-abide] small.error{display:none}span.error,small.error{display:block;padding:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;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:.375rem .5625rem .5625rem;margin-top:-1px;margin-bottom:1rem;font-size:.75rem;font-weight:400;font-style:italic;background:#f04124;color:#fff}.error>label>small{color:#676767;background:0 0;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}.label{font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:.25rem .5rem .375rem;font-size:.6875rem;background-color:#e68c1e;color:#fff}.label.radius,#menu .user-menu-wrap .label.user-menu,.page-login .login-form input.label[type=submit],.label.dismiss-button{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:#008CBA;color:#fff}table{background:#fff;margin-bottom:1.25rem;border:solid 1px #ddd;table-layout:fixed;width:100%}table caption{background:0 0;color:#222;font-size:1rem;font-weight:700}table thead{background:#F5F5F5}table thead tr th,table thead tr td{padding:.625rem 1rem .5625rem;font-size:.875rem;font-weight:700;color:#222}table tfoot{background:#F5F5F5}table tfoot tr th,table tfoot tr td{padding:.625rem 1rem .5625rem;font-size:.875rem;font-weight:700;color:#222}table tr th,table tr td{padding:.75rem 1rem;font-size:.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}body h1,body h2,body h3,body h4,body h5,body h6{font-weight:800}#site-header{background-color:#333;box-shadow:rgba(0,0,0,.3)0 1px 2px 0}#site-header #header-container{width:100%;margin:0 auto;max-width:78.125rem;position:relative;z-index:1}#site-header #header-container:before{content:" ";display:table}#site-header #header-container:after{content:" ";display:table;clear:both}#site-header .site-title{padding-left:.9375rem;padding-right:.9375rem;width:25%;float:left}#site-header .site-title a{display:block;padding-top:1.125rem;padding-bottom:1.125rem;color:#fff;line-height:1}#site-header .site-title a:hover{color:#e6e6e6}#menu{padding-left:.9375rem;padding-right:.9375rem;width:75%;float:left}#menu a{color:#fff}#menu a:hover{color:#e6e6e6}#menu ul{list-style:none;padding:0;margin:0;line-height:1}#menu ul li a{display:block}#menu .main-menu{text-align:right;display:none;padding-top:2.625rem}@media only screen and (min-width:64.063em){#menu .main-menu{display:block;padding-top:0}}@media only screen and (min-width:64.063em){#menu .main-menu li{float:left}}#menu .main-menu li a{display:block;padding:1.125rem .625rem}#menu .main-menu li.menu-item-has-children:hover .sub-menu{display:block}@media only screen and (min-width:64.063em){#menu .sub-menu{display:none;position:absolute;background-color:#333}#menu .sub-menu li{float:none}#menu .sub-menu li a{text-align:left;padding-right:.625rem;border-left:4px solid transparent}#menu .sub-menu li a:hover{border-left:4px solid #008CBA}#menu .sub-menu li:first-child a{padding-left:.625rem}}#menu .user-menu-wrap{display:none}@media only screen and (min-width:64.063em){#menu .user-menu-wrap{display:block;font-size:.875rem;position:absolute;top:0;right:1rem;margin-top:.375rem}#menu .user-menu-wrap:hover .profile-badge{background-color:#f7f7f7}}#menu .user-menu-wrap .profile-badge{display:block;height:2.5rem;text-align:right;padding:4px}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .profile-badge{background-color:#fff;border-radius:3.125rem;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}}#menu .user-menu-wrap .profile-badge img{max-height:100%;border-radius:50%}#menu .user-menu-wrap .user-menu{text-align:right;position:relative;z-index:1}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .user-menu{display:none;background-color:#fff;overflow:hidden;font-size:.875rem;margin-top:.4375rem;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}#menu .user-menu-wrap .user-menu a{color:#333;border-left:4px solid transparent}#menu .user-menu-wrap .user-menu a:hover{background-color:#f7f7f7;border-left:4px solid #baefff}}#menu .user-menu-wrap .user-menu li a{padding:1.125rem .625rem}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .user-menu li a{padding-left:1rem;padding-right:1rem}}#menu .user-menu-wrap .icon-down{display:none;font-size:.75rem;font-style:normal;padding-left:.375rem;-webkit-transform:rotate(90deg);transform:rotate(90deg);top:-3px;position:relative;color:#ccc}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .icon-down{display:inline-block}}#menu .user-menu-wrap .profile-inner{display:inline-block;padding-left:.625rem;padding-right:.25rem}@media only screen and (min-width:64.063em){#menu .user-menu-wrap .profile-inner{padding:0 .625rem;color:#333}}#menu .menu-toggle{position:absolute;right:1rem;top:.875rem}@media only screen and (min-width:64.063em){#menu .menu-toggle{display:none}}#menu .menu-toggle svg{width:32px;height:24px}#menu .menu-toggle g{fill:#fff}#menu .menu-toggle:hover g{fill:#e6e6e6}.container{width:100%;margin:0 auto;max-width:78.125rem}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}#content{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left;margin-top:1rem}@media only screen and (min-width:64.063em){#content{padding-left:.9375rem;padding-right:.9375rem;width:66.66667%;float:left}}.front-page .introduction{position:relative}.front-page #content .introduction{padding-left:1rem}.front-page #content .activities-wrap .post{padding-left:0}.text-body{margin-bottom:2rem;position:relative}.entry-title,.entry-meta{display:inline-block}.entry-meta{margin-bottom:.625rem;font-weight:300;color:#666;clear:both}.entry-content{margin-top:1.25rem}.entry-content.excerpt p{margin-bottom:8px}.entry-category{font-weight:300;color:#666}.entry-category .dashicons-tag{font-size:1.125rem;vertical-align:baseline;position:relative;top:3px;left:-2px}.entry-category .label-category{font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:2px 7px 7px;font-size:.875rem;background-color:#ff4b33;color:#fff;border-radius:4px;margin-bottom:8px}.read-more{padding:10px 16px;margin-bottom:8px}.actions-container{text-align:right}.actions-container:before,.actions-container:after{content:" ";display:table}.actions-container:after{clear:both}.comments-link{float:left;padding-top:1.25rem}.page-login #content{width:100%;float:left}.page-login .introduction,.page-login .login-form{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}@media only screen and (min-width:40.063em){.page-login .login-form{max-width:400px}}.page-login .login-form .login-remember{display:inline-block;padding:6px 0}.page-login .login-form .login-submit{display:inline-block;float:right}.page-login .login-form input[type=checkbox]{margin:0;position:relative;top:2px}.page-login .login-form input[type=submit]{margin-bottom:0}.page-login .login-form p{margin:0}@media only screen and (min-width:64.063em){.page-login .introduction,.page-login .login-form{padding-left:.9375rem;padding-right:.9375rem;width:50%;float:left}}.page-user-search #content{width:100%;float:left}.page-user-search .search-form{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}.page-user-search .search-form table{width:100%}.page-user-search .search-about{width:100%;float:left;margin-top:2rem}.page-user-search .meta{margin-bottom:1rem;font-style:italic;text-align:right}.page-user-search .filters .groups{padding-left:0;padding-right:0;width:33.33333%;float:left}.page-user-search .filters .roles{padding-left:.9375rem;padding-right:.9375rem;width:66.66667%;float:left}.page-user-search .filters .roles ul li{margin-left:4px}.page-user-search .filters .roles ul li:first-child{margin-left:0}.profile .page-title{margin-top:1rem}.profile .page-title,.profile .profile-details,.profile .account-details{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}@media only screen and (min-width:64.063em){.profile .profile-details,.profile .account-details{padding-left:.9375rem;padding-right:.9375rem;width:50%;float:left}}.profile .account-details .inner{padding-left:1rem;padding-right:1rem}.profile h5{margin-top:.5rem}.profile .label-email-type{margin-left:2px;font-weight:400;font-family:"Open Sans",sans-serif;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline-block;position:relative;margin-bottom:inherit;padding:4px 4px 5px;font-size:.6875rem;background-color:#eee;color:#333;border-radius:2px}.profile .label-email-type.mailman{color:#006887}.page-mailinglists .page-title,.page-mailinglists .sort-by,.page-mailinglists .lists-list-wrap,.page-mailinglists .list-members-wrap{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left}.page-mailinglists .list-members-wrap{font-size:1rem}.page-mailinglists .toptoptop{padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left;margin-top:1.125rem}@media only screen and (min-width:64.063em){.page-mailinglists .lists-list-wrap,.page-mailinglists .list-members-wrap{padding-left:.9375rem;padding-right:.9375rem;width:50%;float:left}.page-mailinglists .list-members-button{display:none}}.page-mailinglists .lists-list ul{list-style:none;margin:0}.page-mailinglists .lists-list li{list-style:none;padding:10px;display:block;position:relative;line-height:1.15}.page-mailinglists .lists-list li:nth-child(odd){background-color:#eee}.page-mailinglists .lists-list .button-alt{color:#666;background-color:transparent}.page-mailinglists .lists-list .button-alt:hover{background-color:#ccc}.page-mailinglists .list-members ul{list-style:none;margin:0}.page-mailinglists .list-members li{list-style:none}.page-mailinglists .list-members li:nth-child(odd){background-color:#eee}.page-mailinglists .list-members li a{padding:8px 10px;display:block;position:relative}.page-mailinglists .list-num-members{font-size:.875rem;color:#666}.page-mailinglists .email-aliases,.page-mailinglists .email-mailman{position:absolute;right:16px;top:8px}.page-mailinglists .email-aliases .dashicons,.page-mailinglists .email-mailman .dashicons{font-size:1.125rem;vertical-align:baseline;position:relative;top:4px;left:-3px}.sidebar{padding-left:0;padding-right:0;width:100%;float:left;font-weight:500;padding-top:1rem}@media only screen and (min-width:64.063em){.sidebar{padding-left:.9375rem;padding-right:.9375rem;width:33.33333%;float:left;font-weight:300}}.sidebar h2{padding-left:1rem;padding-right:1rem}@media only screen and (min-width:64.063em){.sidebar h2{padding-left:0;padding-right:0}}.sidebar h2,.sidebar h2 a.rsswidget{font-size:1.25rem;margin-bottom:0}.sidebar h2 a.rsswidget{font-weight:400}.sidebar .searchform{padding-left:1rem;padding-right:1rem}@media only screen and (min-width:64.063em){.sidebar .searchform{padding-left:0;padding-right:0}}.sidebar .searchform input[type=text]{width:75%;margin:0;display:block;float:left}.sidebar .searchform input[type=submit]{padding:0 8px;margin:0;text-align:center;line-height:2.3125rem;border:none;display:block;float:left;width:25%}.sidebar .widgettitle{clear:both}.sidebar .rsswidget img{display:none}.sidebar a.rsswidget,.sidebar .rss-date,.sidebar li.recentcomments a{font-size:.875rem}.sidebar ul{list-style:none;padding:0;margin:0}@media only screen and (min-width:64.063em){.sidebar ul{list-style:disc outside none}}.sidebar ul li{display:block;padding:1rem}.sidebar ul li:nth-child(even){background-color:#f5f5f5}@media only screen and (min-width:64.063em){.sidebar ul li:nth-child(even){background-color:transparent}}@media only screen and (min-width:64.063em){.sidebar ul li{display:list-item;padding:0;margin-left:1.25rem}}.card,.front-page .introduction{padding-top:.625rem;padding-bottom:.625rem;background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.text-body{padding:.625rem 1rem}.text-body,.page-login .login-form,.page-user-search .search-form{background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.page-login .login-form,.page-user-search .search-form{padding-top:.625rem;padding-bottom:.625rem}.page-user-search .search-about{padding:.625rem .9375rem}.page-user-search .search-about,.profile .profile-details .inner{background-color:#fff;border:1px solid #eee;box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0;border-radius:2px}.profile .profile-details .inner{padding:.625rem 1rem}.profile .account-details .inner{padding-top:.625rem;padding-bottom:.625rem;background-color:#fff;border:1px solid #eee;border-radius:2px}.profile .account-details .inner,.card-z1{box-shadow:rgba(0,0,0,.14902)0 1px 0 0,rgba(0,0,0,.09804)0 1px 2px 0}.card-z2{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.love{color:#faafba}.credits-wrap{width:100%;margin:0 auto;max-width:78.125rem}.credits-wrap:before,.credits-wrap:after{content:" ";display:table}.credits-wrap:after{clear:both}.credits-wrap .credits{margin-top:25px;margin-bottom:25px;padding-left:.9375rem;padding-right:.9375rem;width:100%;float:left;text-align:center;color:#666;font-size:.75rem}.fadein{-webkit-animation:fadein 1.5s 1;animation:fadein 1.5s 1}@-webkit-keyframes fadein{from{opacity:0;top:-10px}to{opacity:1;top:0}}@keyframes fadein{from{opacity:0;top:-10px}to{opacity:1;top:0}}.dismiss{position:absolute;display:block;top:0;right:0;font-size:1.875rem;color:#ccc;padding:7px}.dismiss-button{padding:.8em 1.2em}.vcard{margin:0;border:0;padding:0}.visible{display:block!important}.button-alt{border-width:0;cursor:pointer;font-family:"Open Sans",sans-serif;font-weight:400;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:.4375rem .875rem .5rem;background-color:#eee;color:#333;border-radius:.3125rem;transition:background-color 300ms ease-out;border:1px solid transparent}.button-alt:hover,.button-alt:focus{background-color:#bebebe;color:#333}.button-alt:hover{background-color:#ccc}.active{background-color:#008CBA;color:#fff}.active:hover{color:#fff;background-color:#006887} \ No newline at end of file diff --git a/wp-content/themes/aktiv2014/gulpfile.js b/wp-content/themes/aktiv2014/gulpfile.js index 80eb62c..3387f5e 100644 --- a/wp-content/themes/aktiv2014/gulpfile.js +++ b/wp-content/themes/aktiv2014/gulpfile.js @@ -11,10 +11,10 @@ gulp.task('styles', function () { return gulp.src('app/styles/main.scss') .pipe($.sass({ includePaths: ['app/bower_components/foundation/scss'], - errLogToConsole: true -// sourceComments: 'map' // TODO does not work yet + errLogToConsole: true, + sourceComments: 'map' // TODO does not work yet })) - .pipe($.autoprefixer('last 1 version')) +// .pipe($.autoprefixer('last 1 version')) .pipe(gulp.dest('dist/styles')) .pipe($.size()); }); @@ -32,7 +32,6 @@ gulp.task('diststyles', function () { gulp.task('vendorscripts', function () { var wiredep = require('wiredep')(); - return gulp.src(wiredep.js) .pipe($.concat('vendor.js')) .pipe(gulp.dest('dist/scripts')) diff --git a/wp-content/themes/aktiv2014/page-email-proxy.php b/wp-content/themes/aktiv2014/page-email-proxy.php index 84f9a08..451cee0 100644 --- a/wp-content/themes/aktiv2014/page-email-proxy.php +++ b/wp-content/themes/aktiv2014/page-email-proxy.php @@ -18,11 +18,25 @@ if(!wp_verify_nonce($_GET['_wpnonce'], $nonce_action)) { } $args = $_GET; + +$endpoint_map = array( + 'search' => 'email_search.php', + 'list' => 'email_list.php' +); + +$do = "search"; +if( isset($args['do']) ) { + $do = $args['do']; + unset($_GET['do']); + if( !in_array($do, array('search', 'list')) ) { + die(json_encode(array('result' => 'Invalid do value: '.$do))); + } +} $args = array_merge($args, array('apikey' => EMAIL_API_KEY)); // FIXME on error //wp_mail( $to, $subject, $message, $headers); -$ch = curl_init(EMAIL_URL.'email_search.php?'.http_build_query($args)); +$ch = curl_init(EMAIL_URL.$endpoint_map[$do].'?'.http_build_query($args)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_ENCODING ,""); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=UTF-8')); diff --git a/wp-content/themes/aktiv2014/page-mailinglists.php b/wp-content/themes/aktiv2014/page-mailinglists.php new file mode 100644 index 0000000..08bfc3d --- /dev/null +++ b/wp-content/themes/aktiv2014/page-mailinglists.php @@ -0,0 +1,38 @@ + + + + +
    + +

    + +
    + +
    + +
    +
    +
    +
    +
    +
    +
    +
    + + + +
    + +