diff --git a/.gitignore b/.gitignore index 7dccd97..5ddb409 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,8 @@ lib-cov *.out *.pid *.gz +/node_modules/ + pids logs diff --git a/LICENSE-MIT b/LICENSE-MIT index e98edaa..d73cb1a 100644 --- a/LICENSE-MIT +++ b/LICENSE-MIT @@ -1,4 +1,4 @@ -Copyright (c) 2012 Matt McManus +Copyright (c) 2013 Francois-Guillaume Ribreau Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation diff --git a/README.md b/README.md index 098e90d..9b91c6f 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,17 @@ -# dox-foundation +# doxx -Use [dox](https://github.com/visionmedia/dox) to automatically generate beautiful html documentation. +Use [dox](https://github.com/visionmedia/dox) to automatically generate beautiful html documentation. Doxx is a total refactoring of [dox-foundation](https://github.com/punkave/dox-foundation/). -Outputted HTML is based on templates and css from [ZURB's Foundation](http://foundation.zurb.com/) and syntax highlighting is done by [Prism.js](http://prismjs.com/). +Outputted HTML is by default based on templates and css from [ZURB's Foundation](http://foundation.zurb.com/) and syntax highlighting is done by [Prism.js](http://prismjs.com/). ## Installation -Install the module with: `npm install dox-foundation -g` +Install the module with: `npm install doxx -g` ## Documentation ``` -$ dox-foundation --help +$ doxx --help - Usage: dox-foundation [options] + Usage: doxx [options] Options: @@ -27,31 +27,19 @@ $ dox-foundation --help Examples: - # stdin - $ dox-foundation > myfile.html - - # operates over stdio - $ dox-foundation < myfile.js > myfile.html - # parse a whole folder - $ dox-foundation --source lib --target docs + $ doxx --source lib --target docs ``` ## Contributing In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [grunt](https://github.com/cowboy/grunt). ## Release History -* *0.0.1* - Initial release -* *0.2.0* - Readable output -* *0.3.0* - Support for folder parsing -* *0.4.0* - Improved project navigation, major refactor of folder code - -## Thanks & Contributors - -* Thanks to [dox-basic](https://github.com/jepso/dox-basic) for the inspiration and much of the original code. -* [@sdepold](https://github.com/sdepold) -* [@fgribreau](https://twitter.com/fgribreau) +* *0.0.1* - (dox-foundation) Initial release +* *0.2.0* - (dox-foundation) Readable output +* *0.3.0* - (dox-foundation) Support for folder parsing +* *0.4.0* - (dox-foundation) Improved project navigation, major refactor of folder code +* *0.5.0* - Initial release of doxx ## License -Copyright (c) 2012 P'unk Avenue -Licensed under the MIT license. +Copyright (c) 2013 Francois-Guillaume Ribreau diff --git a/bin/dox-foundation b/bin/dox-foundation deleted file mode 100755 index eddf24f..0000000 --- a/bin/dox-foundation +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/bin/env node - -/** - * Module dependencies. - */ - -var program = require('commander'), - util = require('util'), - fs = require('fs'), - path = require('path'), - dox = require('dox'), - formatter = require('../lib/dox-foundation'); - -/** - * Options & Defaults - */ - -var ignoredDirs = 'test,public,static,views,templates'; - -program - .version(formatter.version) - .option('-r, --raw', 'output \'raw\' comments, leaving the markdown intact') - .option('-d, --debug', 'output parsed comments for debugging') - .option('-t, --title ', 'The title for the page produced') - .option('-s, --source ', 'The folder which should get parsed') - .option('-i, --ignore ', 'Comma seperated list of directories to ignore. Default: ' + ignoredDirs) - .option('-T, --target ', 'The folder which will contain the results. Default: /docs') - .option('--template ', 'The jade template file to use'); - -// examples -program.on('--help', function(){ - console.log(' Examples:'); - console.log(''); - console.log(' # stdin'); - console.log(' $ dox-foundation > myfile.html'); - console.log(''); - console.log(' # operates over stdio'); - console.log(' $ dox-foundation < myfile.js > myfile.html'); - console.log(''); - console.log(' # parse a whole folder'); - console.log(' $ dox-foundation --source ./lib --target ./docs'); -}); - -// parse argv -program.parse(process.argv); - -if(program.template){ - formatter.template = fs.readFileSync(program.template).toString(); -} - -// If the program specifies a source directory -if (program.source) { - var target = path.resolve(process.cwd(), program.target) || process.cwd() + '/docs', - source = path.resolve(process.cwd(), program.source), - ignore = program.ignore || ignoredDirs; - - // Cleanup and turn into an array the ignoredDirs - ignore = ignore.trim().replace(' ','').split(','); - - // Find, cleanup and validate all potential files - var files = formatter.collectFiles(source, ignore); - formatter.createTargetFolders(target, files); - - // Dox all those files - files = formatter.doxFiles(source, target, { raw: program.raw }, files) - - files.push({ - sourceFile: 'index.html', - targetFile: 'index.html', - dox: [] - }); - - var options = { - title: program.title || require(process.cwd() + '/package').name - }; - - // Render and save each file - files.forEach(function(file) { - options.subTitle = file.sourceFile; - - var output = formatter.parse(file, files, options); - - fs.writeFileSync(target + '/' + file.targetFile, output); - }); - -} else { - // process stdin - - var buf = ''; - process.stdin.setEncoding('utf8'); - process.stdin.on('data', function(chunk){ buf += chunk; }); - process.stdin.on('end', function(){ - // Run the buffer through Dox - var obj = dox.parseComments(buf, { raw: program.raw }); - // If debug, just throw out the dox json - if (program.debug) { - process.stdout.write(util.inspect(obj, false, Infinity, true) + '\n'); - } else { - // Run the json to be formatted and dumped to stdout - var output = formatter.parse(obj, { title: program.title, folderStructure: null }); - process.stdout.write(output); - } - }).resume(); -} diff --git a/bin/doxx b/bin/doxx new file mode 100755 index 0000000..b7fcd75 --- /dev/null +++ b/bin/doxx @@ -0,0 +1,89 @@ +#!/usr/bin/env node + +var program = require('commander'), + fs = require('fs'), + path = require('path'), + _ = require('lodash'), + + dir = require('../lib/dir'), + parse = require('../lib/parser'), + compile = require('../lib/compile'), + symbols = require('../lib/symbols'), + + version = require('../package').version; + +/** + * Options & Defaults + */ +var ignoredDirs = 'test,public,static,views,templates'; + +program + .version(version) + // .option('-r, --raw', 'output \'raw\' comments, leaving the markdown intact') + .option('-d, --debug', 'output parsed comments for debugging') + .option('-t, --title ', 'The title for the page produced') + .option('-s, --source ', 'The folder which should get parsed') + .option('-i, --ignore ', 'Comma seperated list of directories to ignore. Default: ' + ignoredDirs) + .option('-T, --target ', 'The folder which will contain the results. Default: /docs') + .option('--template ', 'The jade template file to use'); + +function showHelp(){ + console.log(' Examples:\n'); + console.log(' # parse a whole folder'); + console.log(' $ doxx --source ./lib --target ./docs'); +} + +// examples +program.on('--help', showHelp); + +// parse argv +program.parse(process.argv); + +if(program.template){ + compile.tpl = fs.readFileSync(program.template).toString(); +} + +if (!program.source) { + console.error(" Error you must define a source\n"); + return showHelp(); +} + +var target = path.resolve(process.cwd(), program.target) || process.cwd() + '/docs', + source = path.resolve(process.cwd(), program.source), + ignore = program.ignore || ignoredDirs; + +// Cleanup and turn into an array the ignoredDirs +ignore = ignore.trim().replace(' ','').split(','); + +// Find, cleanup and validate all potential files +var files = dir.collectFiles(source, ignore); + +dir.createTargetFolders(target, files); + +// Parse each file +files = files.map(function(file) { + var dox = parse(path.join(source, file), {}); + return { + name: file, + dox: dox, + symbols: symbols(dox) + }; +}); + +// Compute all symboles +var allSymbols = files.reduce(function(m, a, b){ + m = (a.symbols || []).concat(b.symbols || []); + return m; +}, []); + +// Render and write each file +files.forEach(function(file){ + + var options = _.extend({}, file, { + title: program.title || require(process.cwd() + '/package').name, + allSymbols: allSymbols + }); + + var compiled = compile(options); + fs.writeFileSync(path.join(target, file.name+".html"), compiled); +}); diff --git a/grunt.js b/grunt.js index 8f65bef..6f1b5a3 100644 --- a/grunt.js +++ b/grunt.js @@ -32,5 +32,4 @@ module.exports = function(grunt) { // Default task. grunt.registerTask('default', 'lint'); - -}; \ No newline at end of file +}; diff --git a/lib/compile.js b/lib/compile.js new file mode 100644 index 0000000..4ec0d2f --- /dev/null +++ b/lib/compile.js @@ -0,0 +1,20 @@ +var jade = require('jade'), + fs = require('fs'), + path = require('path'); + _ = require('lodash'); + +/** + * Compile + * @param {Object} options + * @return {String} + */ +function compile(options){ + return jade.compile(compile.tpl,{})(options); +} + +/** + * Template used to produce the documentation + */ +compile.tpl = fs.readFileSync(path.resolve(__dirname,'../views/template.jade')).toString(); + +module.exports = compile; diff --git a/lib/dir.js b/lib/dir.js new file mode 100644 index 0000000..46abdda --- /dev/null +++ b/lib/dir.js @@ -0,0 +1,46 @@ +var fs = require('fs'), + path = require('path'), + path = require('path'), + mkdirp = require('mkdirp'), + findit = require('findit'), + _ = require('lodash'); + +/* + * Create an array of all the right files in the source dir + */ +exports.collectFiles = function(source, options, callback) { + var dirtyFiles = findit.findSync(source), // tee hee! + ignore = options.ignore || [], + files = []; + + dirtyFiles.forEach(function(file){ + file = path.relative(source, file); + + var doNotIgnore = _.all(ignore, function(d){ + // return true if no part of the path is in the ignore list + return (file.indexOf(d) === -1); + }); + + if ((file.substr(-2) === 'js') && doNotIgnore) { + files.push(file); + } + }); + + return files; +}; + +/* + * Make sure the folder structure in target mirrors source + */ +exports.createTargetFolders = function(target, files) { + var folders = []; + + files.forEach(function(file){ + var folder = file.substr(0, file.lastIndexOf('/')); + + if ((folder !== '') && (folders.indexOf(folder) === -1)) { + folders.push(folder); + mkdirp.sync(target + '/' + folder); + } + }); +}; diff --git a/lib/dox-foundation.js b/lib/dox-foundation.js deleted file mode 100644 index 29df45b..0000000 --- a/lib/dox-foundation.js +++ /dev/null @@ -1,119 +0,0 @@ -/*! - * Load Dependancies - */ -var fs = require('fs'), - path = require('path'), - jade = require('jade'), - path = require('path'), - mkdirp = require('mkdirp'), - dox = require('dox'), - _ = require('underscore'), - pkg = require('../package'); - -/** - * Parser name - */ -exports.name = pkg.name; - -/** - * Parser version - */ -exports.version = pkg.version; - -/** - * Template used to produce the documentation - */ -exports.template = fs.readFileSync(path.resolve(__dirname,'../views/template.jade')).toString(); - -/** - * Parse source code to produce documentation - */ -exports.parse = function(file, files, options){ - options = options || { title: 'Documentation' }; - file.dox = file.dox.filter(exports.shouldPass); - options.comments = file.dox; - - options.structure = files.map(function(file){ - var names = []; - - file.dox.forEach(function(method){ - if (method.ctx) names.push(method.ctx.name); - }); - - return { source: file.sourceFile, target: file.targetFile, methods: names }; - }); - - return jade.compile(exports.template)(options); -}; - -/** - * Test if a method should be ignored or not - * @param {Object} method - * @return {Boolean} true if the method is not private nor must be ignored - */ -exports.shouldPass = function(method){ - if(method.isPrivate){return false;} - if(method.ignore){return false;} - - return method.tags.filter(function(tag){ - return tag.type === "private" || tag.type === "ignore"; - }).length === 0; -}; - -/* - * Create an array of all the right files in the source dir - */ -exports.collectFiles = function(source, options, callback) { - var dirtyFiles = require('findit').findSync(source), // tee hee! - ignore = options.ignore || [], - files = []; - - dirtyFiles.forEach(function(file){ - file = path.relative(source, file); - - var doNotIgnore = _.all(ignore, function(d){ - // return true if no part of the path is in the ignore list - return (file.indexOf(d) === -1); - }) - - if ((file.substr(-2) === 'js') && doNotIgnore) { - files.push(file); - } - }) - - return files; -}; - -/* - * Make sure the folder structure in target mirrors source - */ -exports.createTargetFolders = function(target, files) { - var folders = []; - - files.forEach(function(file){ - var folder = file.substr(0, file.lastIndexOf('/')) - - if ((folder !== '') && (folders.indexOf(folder) === -1)) { - folders.push(folder); - mkdirp.sync(target + '/' + folder); - } - }) -}; - -/* - * Dox all the files found by collectFiles - */ -exports.doxFiles = function(source, target, options, files) { - files = files.map(function(file) { - try { - var content = fs.readFileSync(source + '/' + file).toString(); - return { - sourceFile: file, - targetFile: file.replace(source, target) + '.html', - dox: dox.parseComments(content, options) - }; - } catch(e) { console.log(e); } - }); - - return files; -}; diff --git a/lib/parser.js b/lib/parser.js new file mode 100644 index 0000000..f7cd723 --- /dev/null +++ b/lib/parser.js @@ -0,0 +1,66 @@ +var _ = require('lodash'), + dox = require('dox'), + fs = require('fs'); + + + + + +/** + * Parse a file and returns a generic format + * @param {String} filepath + * @param {Object} options + * @return {Object} + */ +module.exports = function parse(filepath){ + var json = null; + + try{ + json = dox.parseComments(fs.readFileSync(filepath).toString(), {raw: false}); + } catch(e) { + console.error("doxx:", e); + return {}; + } + + // json now contains an array of tags + // { + // tags:[] + // description:{ + // full:"" + // summary:"" + // body:"" + // } + // ignore:false + // isPrivate:false + // ctx:{ + // type:"declaration" + // name:"" + // value:[] + // string:"" + // } + // } + function hasParams(tag){ + return tag.type === 'param'; + } + + return json.filter(shouldPass).map(function(symbol){ + if(symbol.tags.length > 0 && symbol.tags.filter(hasParams).length > 0){ + symbol.hasParams = true; + } + return symbol; + }); +}; + +/** + * Test if a method should be ignored or not + * @param {Object} method + * @return {Boolean} true if the method is not private nor must be ignored + */ +function shouldPass(method){ + if(method.isPrivate){return false;} + if(method.ignore){return false;} + + return method.tags.filter(function(tag){ + return tag.type === "private" || tag.type === "ignore"; + }).length === 0; +} diff --git a/lib/symbols.js b/lib/symbols.js new file mode 100644 index 0000000..22748f6 --- /dev/null +++ b/lib/symbols.js @@ -0,0 +1,16 @@ +var _ = require('lodash'); +/** + * Return the structure of a dox + * @param {Object} dox dox json + * @return {Array} array of symbols + */ +module.exports = function structure(dox){ + return _.compact(dox.map(function(method){ + if (!method.ctx){return null;} + + return { + name:method.ctx.name, + type:method.ctx.type + }; + })) || []; +}; diff --git a/package.json b/package.json index 7bf63b3..7bca18c 100644 --- a/package.json +++ b/package.json @@ -1,49 +1,37 @@ { - "name": "dox-foundation", - "description": "HTML output for Dox documentation generator", - "version": "0.4.0", - "homepage": "https://github.com/punkave/dox-foundation", + "name": "doxx", + "description": "Generic, template based, HTML output for Dox documentation generator", + "version": "0.5.0", + "homepage": "https://github.com/FGRibreau/doxx", "author": { - "name": "Matt McManus", - "email": "mcmanus@punkave.com" + "name": "FG Ribreau", + "email": "github@fgribreau.com" }, - "contributors": [ - { - "name": "Sascha Depold", - "email": "sascha@depold.com" - }, - { - "name": "Francois-Guillaume Ribreau", - "email": "npm@fgribreau.com" - } - ], "repository": { "type": "git", - "url": "git://github.com/punkave/dox-foundation.git" + "url": "git://github.com/FGRibreau/doxx.git" }, "bugs": { - "url": "https://github.com/punkave/dox-foundation/issues" + "url": "https://github.com/FGRibreau/doxx/issues" }, - "licenses": [ - { + "licenses": [{ "type": "MIT", - "url": "https://github.com/punkave/dox-foundation/blob/master/LICENSE-MIT" - } - ], - "main": "lib/dox-foundation", + "url": "https://github.com/FGRibreau/doxx/blob/master/LICENSE-MIT" + }], + "main": "lib/doxx", "bin": { - "dox-foundation": "./bin/dox-foundation" + "doxx": "./bin/doxx" }, "engines": { "node": ">= 0.6.0" }, "dependencies": { - "underscore": "*", - "dox": "0.3.3", - "commander": "0.5.2", - "jade": "*", - "mkdirp": "*", - "findit": "~0.1.2" + "dox": "~0.3.3", + "commander": "~0.5.2", + "jade": "~0.28.1", + "mkdirp": "~0.3.4", + "findit": "~0.1.2", + "lodash": "~1.0.0-rc.3" }, "devDependencies": { "grunt": "~0.3.15" @@ -51,6 +39,7 @@ "keywords": [ "dox", "jsdox", + "documentor", "documentation", "docs", "dox" diff --git a/views/template.jade b/views/template.jade index f0c2af3..1ea531a 100644 --- a/views/template.jade +++ b/views/template.jade @@ -1,90 +1,117 @@ +mixin iForSymbolType(symbol) + i(class=["alert", "alert-"+(symbol.type === "function" || symbol.type === "method" ? "info":"success")]) + +mixin labelForSymbolType(symbol) + div(class=["label", "label-"+(symbol.ctx.type === "function" || symbol.ctx.type === "method" ? "info":"success"), "radius", "ctx-type"])= symbol.ctx.type + doctype 5 html head meta(name='viewport', content='width=device-width', charset='utf-8') - title= title - script(src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js") - - // Foundation CSS + link(rel="stylesheet", href="http://twitter.github.com/bootstrap/assets/css/bootstrap.css") + link(rel="stylesheet", href="http://twitter.github.com/bootstrap/assets/css/bootstrap-responsive.css") + link(rel="stylesheet", href="http://twitter.github.com/bootstrap/assets/css/docs.css") style - *,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%}body{background:#fff;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;font-weight:normal;font-style:normal;font-size:14px;line-height:1;color:#222;position:relative;-webkit-font-smoothing:antialiased}a img{border:none}a{color:#2ba6cb;text-decoration:none;line-height:inherit}a:hover{color:#2795b6}a:focus{color:#2ba6cb;outline:none}p a,p a:visited{line-height:inherit}.left{float:left}.right{float:right}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.hide{display:none !important}.highlight{background:#ff9}#googlemap img,object,embed{max-width:none}#map_canvas embed{max-width:none}#map_canvas img{max-width:none}#map_canvas object{max-width:none}figure{margin:0}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;font-size:14px;direction:ltr}p{font-family:inherit;font-weight:normal;font-size:14px;line-height:1.6;margin-bottom:17px}p.lead{font-size:17.5px;line-height:1.6;margin-bottom:17px}aside p{font-size:13px;line-height:1.35;font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;font-weight:bold;font-style:normal;color:#222;text-rendering:optimizeLegibility;line-height:1.1;margin-bottom:14px;margin-top:14px}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:60%;color:#6f6f6f;line-height:0}h1{font-size:44px}h2{font-size:37px}h3{font-size:27px}h4{font-size:23px}h5{font-size:17px}h6{font-size:14px}hr{border:solid #ddd;border-width:1px 0 0;clear:both;margin:22px 0 21px;height:0}.subheader{line-height:1.3;color:#6f6f6f;font-weight:300;margin-bottom:17px}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:60%;line-height:inherit}code{font-weight:bold;background:#ff9}ul,ol,dl{font-size:14px;line-height:1.6;margin-bottom:17px;list-style-position:outside}ul li ul,ul li ol{margin-left:20px;margin-bottom:0}ul.square,ul.circle,ul.disc{margin-left:17px}ul.square{list-style-type:square}ul.square li ul{list-style:inherit}ul.circle{list-style-type:circle}ul.circle li ul{list-style:inherit}ul.disc{list-style-type:disc}ul.disc li ul{list-style:inherit}ul.no-bullet{list-style:none}ul.large li{line-height:21px}ol{margin-left:20px}ol li ul,ol li ol{margin-left:20px;margin-bottom:0}blockquote,blockquote p{line-height:1.5;color:#6f6f6f}blockquote{margin:0 0 17px;padding:9px 20px 0 19px;border-left:1px solid #ddd}blockquote cite{display:block;font-size:13px;color:#555}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:#555}abbr,acronym{text-transform:uppercase;font-size:90%;color:#222;border-bottom:1px solid #ddd;cursor:help}abbr{text-transform:none}.print-only{display:none !important}@media print{*{background:transparent !important;color:black !important;box-shadow:none !important;text-shadow:none !important;filter:none !important;-ms-filter:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.hide-on-print{display:none !important}.print-only{display:block !important}.hide-for-print{display:none !important}.show-for-print{display:inherit !important}}form{margin:0 0 19.41641px}.row form .row{margin:0 -6px}.row form .row .column,.row form .row .columns{padding:0 6px}.row form .row.collapse{margin:0}.row form .row.collapse .column,.row form .row.collapse .columns{padding:0}label{font-size:14px;color:#4d4d4d;cursor:pointer;display:block;font-weight:500;margin-bottom:3px}label.right{float:none;text-align:right}label.inline{line-height:32px;margin:0 0 12px 0}.prefix,.postfix{display:block;position:relative;z-index:2;text-align:center;width:100%;padding-top:0;padding-bottom:0;height:32px;line-height:31px}a.button.prefix,a.button.postfix{padding-left:0;padding-right:0;text-align:center}span.prefix,span.postfix{background:#f2f2f2;border:1px solid #ccc}.prefix{left:2px;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px;overflow:hidden}.postfix{right:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}input[type="text"],input[type="password"],input[type="date"],input[type="datetime"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="time"],input[type="url"],textarea{background-color:#fff;font-family:inherit;border:1px solid #ccc;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);color:rgba(0,0,0,0.75);display:block;font-size:14px;margin:0 0 12px 0;padding:6px;height:32px;width:100%;-webkit-transition:all 0.15s linear;-moz-transition:all 0.15s linear;-o-transition:all 0.15s linear;transition:all 0.15s linear}input[type="text"].oversize,input[type="password"].oversize,input[type="date"].oversize,input[type="datetime"].oversize,input[type="email"].oversize,input[type="number"].oversize,input[type="search"].oversize,input[type="tel"].oversize,input[type="time"].oversize,input[type="url"].oversize,textarea.oversize{font-size:17px;padding:4px 6px}input[type="text"]:focus,input[type="password"]:focus,input[type="date"]:focus,input[type="datetime"]: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{background:#fafafa;outline:none !important;border-color:#b3b3b3}input[type="text"][disabled],input[type="password"][disabled],input[type="date"][disabled],input[type="datetime"][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}textarea{height:auto}select{width:100%}fieldset{border:solid 1px #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;padding:12px 12px 0;margin:18px 0}fieldset legend{font-weight:bold;background:#fff;padding:0 3px;margin:0;margin-left:-3px}.error input,input.error,.error textarea,textarea.error{border-color:#c60f13;background-color:rgba(198,15,19,0.1)}.error label,label.error{color:#c60f13}.error small,small.error{display:block;padding:6px 4px;margin-top:-13px;margin-bottom:12px;background:#c60f13;color:#fff;font-size:12px;font-weight:bold;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.error textarea:focus,textarea.error:focus{background:#fafafa;border-color:#b3b3b3}form.custom span.custom{display:inline-block;width:16px;height:16px;position:relative;top:2px;border:solid 1px #ccc;background:#fff}form.custom span.custom.radio{-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px}form.custom span.custom.checkbox:before{content:"";display:block;line-height:0.8;height:14px;width:14px;text-align:center;position:absolute;top:0;left:0;font-size:14px;color:#fff}form.custom span.custom.radio.checked:before{content:"";display:block;width:8px;height:8px;-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px;background:#222;position:relative;top:3px;left:3px}form.custom span.custom.checkbox.checked:before{content:"\00d7";color:#222}form.custom div.custom.dropdown{display:block;position:relative;width:auto;height:28px;margin-bottom:9px;margin-top:2px}form.custom div.custom.dropdown ul{overflow-y:auto;max-height:200px}form.custom div.custom.dropdown a.current{display:block;width:auto;line-height:26px;min-height:28px;padding:0;padding-left:6px;padding-right:38px;border:solid 1px #ddd;color:#141414;background-color:#fff;white-space:nowrap}form.custom div.custom.dropdown a.selector{position:absolute;width:27px;height:28px;display:block;right:0;top:0;border:solid 1px #ddd}form.custom div.custom.dropdown a.selector:after{content:"";display:block;content:"";display:block;width:0;height:0;border:solid 5px;border-color:#aaa transparent transparent transparent;position:absolute;left:50%;top:50%;margin-top:-2px;margin-left:-5px}form.custom div.custom.dropdown:hover a.selector:after,form.custom div.custom.dropdown.open a.selector:after{content:"";display:block;width:0;height:0;border:solid 5px;border-color:#222 transparent transparent transparent}form.custom div.custom.dropdown.open ul{display:block;z-index:10}form.custom div.custom.dropdown.small{width:134px !important}form.custom div.custom.dropdown.medium{width:254px !important}form.custom div.custom.dropdown.large{width:434px !important}form.custom div.custom.dropdown.expand{width:100% !important}form.custom div.custom.dropdown.open.small ul{width:134px !important}form.custom div.custom.dropdown.open.medium ul{width:254px !important}form.custom div.custom.dropdown.open.large ul{width:434px !important}form.custom div.custom.dropdown.open.expand ul{width:100% !important}form.custom div.custom.dropdown ul{position:absolute;width:auto;display:none;margin:0;left:0;top:27px;margin:0;padding:0;background:#fff;background:rgba(255,255,255,0.95);border:solid 1px #ccc}form.custom div.custom.dropdown ul li{color:#555;font-size:13px;cursor:pointer;padding:3px;padding-left:6px;padding-right:38px;min-height:18px;line-height:18px;margin:0;white-space:nowrap;list-style:none}form.custom div.custom.dropdown ul li.selected{background:#cdebf5;color:#000}form.custom div.custom.dropdown ul li.selected:after{content:"\2013";position:absolute;right:10px}form.custom div.custom.dropdown ul li:hover{background-color:#cdebf5;color:#000}form.custom div.custom.dropdown ul li:hover:after{content:"\2013";position:absolute;right:10px;color:#a3dbec}form.custom div.custom.dropdown ul li.selected:hover{background:#cdebf5;cursor:default;color:#000}form.custom div.custom.dropdown ul li.selected:hover:after{color:#000}form.custom div.custom.dropdown ul.show{display:block}form.custom .custom.disabled{background-color:#ddd}@-moz-document url-prefix(){form.custom div.custom.dropdown a.selector{height:30px}}.lt-ie9 form.custom div.custom.dropdown a.selector{height:30px}.row{width:940px;max-width:100%;min-width:768px;margin:0 auto}.row .row{width:auto;max-width:none;min-width:0;margin:0 -15px}.row.collapse .column,.row.collapse .columns{padding:0}.row .row{width:auto;max-width:none;min-width:0;margin:0 -15px}.row .row.collapse{margin:0}.column,.columns{float:left;min-height:1px;padding:0 15px;position:relative}.column.centered,.columns.centered{float:none;margin:0 auto}[class*="column"]+[class*="column"]:last-child{float:right}[class*="column"]+[class*="column"].end{float:left}.one,.row .one{width:8.33333%}.two,.row .two{width:16.66667%}.three,.row .three{width:25%}.four,.row .four{width:33.33333%}.five,.row .five{width:41.66667%}.six,.row .six{width:50%}.seven,.row .seven{width:58.33333%}.eight,.row .eight{width:66.66667%}.nine,.row .nine{width:75%}.ten,.row .ten{width:83.33333%}.eleven,.row .eleven{width:91.66667%}.twelve,.row .twelve{width:100%}.row .offset-by-one{margin-left:8.33333%}.row .offset-by-two{margin-left:16.66667%}.row .offset-by-three{margin-left:25%}.row .offset-by-four{margin-left:33.33333%}.row .offset-by-five{margin-left:41.66667%}.row .offset-by-six{margin-left:50%}.row .offset-by-seven{margin-left:58.33333%}.row .offset-by-eight{margin-left:66.66667%}.row .offset-by-nine{margin-left:75%}.row .offset-by-ten{margin-left:83.33333%}.push-two{left:16.66667%}.pull-two{right:16.66667%}.push-three{left:25%}.pull-three{right:25%}.push-four{left:33.33333%}.pull-four{right:33.33333%}.push-five{left:41.66667%}.pull-five{right:41.66667%}.push-six{left:50%}.pull-six{right:50%}.push-seven{left:58.33333%}.pull-seven{right:58.33333%}.push-eight{left:66.66667%}.pull-eight{right:66.66667%}.push-nine{left:75%}.pull-nine{right:75%}.push-ten{left:83.33333%}.pull-ten{right:83.33333%}img,object,embed{max-width:100%;height:auto}object,embed{height:100%}img{-ms-interpolation-mode:bicubic}#map_canvas img,.map_canvas img{max-width:none!important}.row{*zoom:1}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.block-grid{display:block;overflow:hidden;padding:0}.block-grid>li{display:block;height:auto;float:left}.block-grid.one-up{margin:0;margin:0 -8px}.block-grid.one-up>li{width:100%;padding:0 0 15px;padding:0 8px 8px}.block-grid.two-up{margin:0 -15px;margin:0 -8px}.block-grid.two-up>li{width:50%;padding:0 15px 15px;padding:0 8px 8px}.block-grid.two-up>li:nth-child(2n+1){clear:both}.block-grid.three-up{margin:0 -12px;margin:0 -8px}.block-grid.three-up>li{width:33.33333%;padding:0 12px 12px;padding:0 8px 8px}.block-grid.three-up>li:nth-child(3n+1){clear:both}.block-grid.four-up{margin:0 -10px}.block-grid.four-up>li{width:25%;padding:0 10px 10px}.block-grid.four-up>li:nth-child(4n+1){clear:both}.block-grid.five-up{margin:0 -8px}.block-grid.five-up>li{width:20%;padding:0 8px 8px}.block-grid.five-up>li:nth-child(5n+1){clear:both}.block-grid.six-up{margin:0 -8px}.block-grid.six-up>li{width:16.66667%;padding:0 8px 8px}.block-grid.six-up>li:nth-child(6n+1){clear:both}.block-grid.seven-up{margin:0 -8px}.block-grid.seven-up>li{width:14.28571%;padding:0 8px 8px}.block-grid.seven-up>li:nth-child(7n+1){clear:both}.block-grid.eight-up{margin:0 -8px}.block-grid.eight-up>li{width:12.5%;padding:0 8px 8px}.block-grid.eight-up>li:nth-child(8n+1){clear:both}.block-grid.nine-up{margin:0 -8px}.block-grid.nine-up>li{width:11.11111%;padding:0 8px 8px}.block-grid.nine-up>li:nth-child(9n+1){clear:both}.block-grid.ten-up{margin:0 -8px}.block-grid.ten-up>li{width:10%;padding:0 8px 8px}.block-grid.ten-up>li:nth-child(10n+1){clear:both}.block-grid.eleven-up{margin:0 -8px}.block-grid.eleven-up>li{width:9.09091%;padding:0 8px 8px}.block-grid.eleven-up>li:nth-child(11n+1){clear:both}.block-grid.twelve-up{margin:0 -8px}.block-grid.twelve-up>li{width:8.33333%;padding:0 8px 8px}.block-grid.twelve-up>li:nth-child(12n+1){clear:both}.button{width:auto;background:#2ba6cb;border:1px solid #1e728c;-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;color:#fff;cursor:pointer;display:inline-block;font-family:inherit;font-size:14px;font-weight:bold;line-height:1;margin:0;outline:none;padding:10px 20px 11px;position:relative;text-align:center;text-decoration:none;-webkit-transition:background-color 0.15s ease-in-out;-moz-transition:background-color 0.15s ease-in-out;-o-transition:background-color 0.15s ease-in-out;transition:background-color 0.15s ease-in-out}.button:hover{color:#fff;background-color:#2284a1}.button:active{-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.2) inset;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.2) inset;box-shadow:0 1px 0 rgba(0,0,0,0.2) inset}.button:focus{-webkit-box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset;color:#fff}.button.large{font-size:17px;padding:15px 30px 16px}.button.medium{font-size:14px}.button.small{font-size:11px;padding:7px 14px 8px}.button.tiny{font-size:10px;padding:5px 10px 6px}.button.expand{width:100%;text-align:center}.button.primary{background-color:#2ba6cb;border:1px solid #1e728c}.button.primary:hover{background-color:#2284a1}.button.primary:focus{-webkit-box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 0 4px #2ba6cb,0 1px 0 rgba(255,255,255,0.5) inset}.button.success{background-color:#5da423;border:1px solid #396516}.button.success:hover{background-color:#457a1a}.button.success:focus{-webkit-box-shadow:0 0 5px #5da423,0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 0 5px #5da423,0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 0 5px #5da423,0 1px 0 rgba(255,255,255,0.5) inset}.button.alert{background-color:#c60f13;border:1px solid #7f0a0c}.button.alert:hover{background-color:#970b0e}.button.alert:focus{-webkit-box-shadow:0 0 4px #c60f13,0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 0 4px #c60f13,0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 0 4px #c60f13,0 1px 0 rgba(255,255,255,0.5) inset}.button.secondary{background-color:#e9e9e9;color:#1d1d1d;border:1px solid #c3c3c3}.button.secondary:hover{background-color:#d0d0d0}.button.secondary:focus{-webkit-box-shadow:0 0 5px #e9e9e9,0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 0 5px #e9e9e9,0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 0 5px #e9e9e9,0 1px 0 rgba(255,255,255,0.5) inset}.button.radius{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}.button.round{-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px}.button.full-width{width:100%;text-align:center;padding-left:0px !important;padding-right:0px !important}.button.left-align{text-align:left;text-indent:12px}.button.disabled,.button[disabled]{opacity:0.6;cursor:default;background:#2ba6cb;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.button.disabled :hover,.button[disabled] :hover{background:#2ba6cb}.button.disabled.success,.button[disabled].success{background-color:#5da423}.button.disabled.success:hover,.button[disabled].success:hover{background-color:#5da423}.button.disabled.alert,.button[disabled].alert{background-color:#c60f13}.button.disabled.alert:hover,.button[disabled].alert:hover{background-color:#c60f13}.button.disabled.secondary,.button[disabled].secondary{background-color:#e9e9e9}.button.disabled.secondary:hover,.button[disabled].secondary:hover{background-color:#e9e9e9}input[type=submit].button,button.button{-webkit-appearance:none}@-moz-document url-prefix(){button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner{border:none;padding:0}input[type="submit"].tiny.button{padding:3px 10px 4px}input[type="submit"].small.button{padding:5px 14px 6px}input[type="submit"].button,input[type=submit].medium.button{padding:8px 20px 9px}input[type="submit"].large.button{padding:13px 30px 14px}}.button.dropdown{position:relative;padding-right:44px}.button.dropdown.large{padding-right:60px}.button.dropdown.small{padding-right:28px}.button.dropdown.tiny{padding-right:20px}.button.dropdown:after{content:"";display:block;width:0;height:0;border:solid 6px;border-color:#fff transparent transparent transparent;position:absolute;top:50%;right:20px;margin-top:-2px}.button.dropdown.large:after{content:"";display:block;width:0;height:0;border:solid 7px;border-color:#fff transparent transparent transparent;margin-top:-3px;right:30px}.button.dropdown.small:after{content:"";display:block;width:0;height:0;border:solid 5px;border-color:#fff transparent transparent transparent;margin-top:-2px;right:14px}.button.dropdown.tiny:after{content:"";display:block;width:0;height:0;border:solid 4px;border-color:#fff transparent transparent transparent;margin-top:-1px;right:10px}.button.dropdown>ul{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:none;position:absolute;left:-1px;background:#fff;background:rgba(255,255,255,0.95);list-style:none;margin:0;padding:0;border:1px solid #ccc;border-top:none;min-width:100%;z-index:40}.button.dropdown>ul li{width:100%;cursor:pointer;padding:0;min-height:18px;line-height:18px;margin:0;white-space:nowrap;list-style:none}.button.dropdown>ul li a{display:block;color:#555;font-size:13px;font-weight:normal;padding:6px 14px;text-align:left}.button.dropdown>ul li:hover{background-color:#e3f4f9;color:#222}.button.dropdown>ul li.divider{min-height:0;padding:0;height:1px;margin:4px 0;background:#ededed}.button.dropdown.up>ul{border-top:1px solid #ccc;border-bottom:none}.button.dropdown ul.no-hover.show-dropdown{display:block !important}.button.dropdown:hover>ul.no-hover{display:none}.button.dropdown.split{padding:0;position:relative}.button.dropdown.split:after{display:none}.button.dropdown.split:hover{background-color:#2ba6cb}.button.dropdown.split.alert:hover{background-color:#c60f13}.button.dropdown.split.success:hover{background-color:#5da423}.button.dropdown.split.secondary:hover{background-color:#e9e9e9}.button.dropdown.split>a{color:#fff;display:block;padding:10px 50px 11px 20px;padding-left:20px;padding-right:50px;-webkit-transition:background-color 0.15s ease-in-out;-moz-transition:background-color 0.15s ease-in-out;-o-transition:background-color 0.15s ease-in-out;transition:background-color 0.15s ease-in-out}.button.dropdown.split>a:hover{background-color:#2284a1}.button.dropdown.split.large>a{padding:15px 75px 16px 30px;padding-left:30px;padding-right:75px}.button.dropdown.split.small>a{padding:7px 35px 8px 14px;padding-left:14px;padding-right:35px}.button.dropdown.split.tiny>a{padding:5px 25px 6px 10px;padding-left:10px;padding-right:25px}.button.dropdown.split>span{background-color:#2ba6cb;position:absolute;right:0;top:0;height:100%;width:30px;border-left:1px solid #1e728c;-webkit-box-shadow:1px 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:1px 1px 0 rgba(255,255,255,0.5) inset;box-shadow:1px 1px 0 rgba(255,255,255,0.5) inset;-webkit-transition:background-color 0.15s ease-in-out;-moz-transition:background-color 0.15s ease-in-out;-o-transition:background-color 0.15s ease-in-out;transition:background-color 0.15s ease-in-out}.button.dropdown.split>span:hover{background-color:#2284a1}.button.dropdown.split>span:after{content:"";display:block;width:0;height:0;border:solid 6px;border-color:#fff transparent transparent transparent;position:absolute;top:50%;left:50%;margin-left:-6px;margin-top:-2px}.button.dropdown.split.secondary>span:after{content:"";display:block;width:0;height:0;border:solid 6px;border-color:#1d1d1d transparent transparent transparent}.button.dropdown.split.large span{width:45px}.button.dropdown.split.small span{width:21px}.button.dropdown.split.tiny span{width:15px}.button.dropdown.split.large span:after{content:"";display:block;width:0;height:0;border:solid 7px;border-color:#fff transparent transparent transparent;margin-top:-3px;margin-left:-7px}.button.dropdown.split.small span:after{content:"";display:block;width:0;height:0;border:solid 4px;border-color:#fff transparent transparent transparent;margin-top:-1px;margin-left:-4px}.button.dropdown.split.tiny span:after{content:"";display:block;width:0;height:0;border:solid 3px;border-color:#fff transparent transparent transparent;margin-top:-1px;margin-left:-3px}.button.dropdown.split.alert>span{background-color:#c60f13;border-left-color:#7f0a0c}.button.dropdown.split.success>span{background-color:#5da423;border-left-color:#396516}.button.dropdown.split.secondary>span{background-color:#e9e9e9;border-left-color:#c3c3c3}.button.dropdown.split.secondary>a{color:#1d1d1d}.button.dropdown.split.alert>a:hover,.button.dropdown.split.alert>span:hover{background-color:#970b0e}.button.dropdown.split.success>a:hover,.button.dropdown.split.success>span:hover{background-color:#457a1a}.button.dropdown.split.secondary>a:hover,.button.dropdown.split.secondary>span:hover{background-color:#d0d0d0}ul.button-group{list-style:none;padding:0;margin:0 0 12px;*zoom:1}ul.button-group:before,ul.button-group:after{content:" ";display:table}ul.button-group:after{clear:both}ul.button-group li{padding:0;margin:0 0 0 -1px;float:left}ul.button-group li:first-child{margin-left:0}ul.button-group.radius li a.button,ul.button-group.radius li a.button.radius,ul.button-group.radius li a.button-rounded,ul.button-group.radius li input[type="submit"].button,ul.button-group.radius li input[type="submit"].button.radius,ul.button-group.radius li input[type="submit"].button-rounded{-webkit-border-radius:0px;-moz-border-radius:0px;-ms-border-radius:0px;-o-border-radius:0px;border-radius:0px}ul.button-group.radius li:first-child a.button,ul.button-group.radius li:first-child a.button.radius,ul.button-group.radius li:first-child input[type="submit"].button,ul.button-group.radius li:first-child input[type="submit"].button.radius{-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}ul.button-group.radius li:first-child a.button.rounded,ul.button-group.radius li:first-child input[type="submit"].button.rounded{-moz-border-radius-topleft:1000px;-webkit-border-top-left-radius:1000px;border-top-left-radius:1000px;-moz-border-radius-bottomleft:1000px;-webkit-border-bottom-left-radius:1000px;border-bottom-left-radius:1000px}ul.button-group.radius li:last-child a.button,ul.button-group.radius li:last-child a.button.radius,ul.button-group.radius li:last-child input[type="submit"].button,ul.button-group.radius li:last-child input[type="submit"].button.radius{-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}ul.button-group.radius li:last-child a.button.rounded,ul.button-group.radius li:last-child input[type="submit"].button.rounded{-moz-border-radius-topright:1000px;-webkit-border-top-right-radius:1000px;border-top-right-radius:1000px;-moz-border-radius-bottomright:1000px;-webkit-border-bottom-right-radius:1000px;border-bottom-right-radius:1000px}ul.button-group.even .button{width:100%}ul.button-group.even.two-up li{width:50%}ul.button-group.even.three-up li{width:33.3%}ul.button-group.even.three-up li:first-child{width:33.4%}ul.button-group.even.four-up li{width:25%}ul.button-group.even.five-up li{width:20%}div.button-bar{overflow:hidden}div.button-bar ul.button-group{float:left;margin-right:8px}div.button-bar ul.button-group:last-child{margin-left:0}.nav-bar{height:40px;background:#4d4d4d;margin-left:0;margin-top:20px;padding:0}.nav-bar>li{float:left;display:block;position:relative;padding:0;margin:0;border:1px solid #333;border-right:none;line-height:38px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,0.2) inset;-moz-box-shadow:1px 0 0 rgba(255,255,255,0.2) inset;box-shadow:1px 0 0 rgba(255,255,255,0.2) inset}.nav-bar>li:first-child{-webkit-box-shadow:0 0 0;-moz-box-shadow:0 0 0;box-shadow:0 0 0}.nav-bar>li:last-child{border-right:solid 1px #333;-webkit-box-shadow:1px 0 0 rgba(255,255,255,0.2) inset,1px 0 0 rgba(255,255,255,0.2);-moz-box-shadow:1px 0 0 rgba(255,255,255,0.2) inset,1px 0 0 rgba(255,255,255,0.2);box-shadow:1px 0 0 rgba(255,255,255,0.2) inset,1px 0 0 rgba(255,255,255,0.2)}.nav-bar>li.active{background:#2ba6cb;border-color:#2284a1}.nav-bar>li.active>a{color:#fff;cursor:default}.nav-bar>li.active:hover{background:#2ba6cb;cursor:default}.nav-bar>li:hover{background:#333}.nav-bar>li>a{color:#e6e6e6}.nav-bar>li ul{margin-bottom:0}.nav-bar>li .flyout{display:none}.nav-bar>li.has-flyout>a:first-child{padding-right:40px;position:relative}.nav-bar>li.has-flyout>a:first-child:after{content:"";display:block;width:0;height:0;border:solid 4px;border-color:#e6e6e6 transparent transparent transparent;position:absolute;right:20px;top:17px}.nav-bar>li.has-flyout>a.flyout-toggle{border-left:0 !important;position:absolute;right:0;top:0;padding:20px;z-index:2;display:block}.nav-bar>li.has-flyout.is-touch>a:first-child{padding-right:55px}.nav-bar>li.has-flyout.is-touch>a.flyout-toggle{border-left:1px dashed #666}.nav-bar>li>a:first-child{position:relative;padding:0 20px;display:block;text-decoration:none;font-size:14px}.nav-bar>li>input{margin:0 10px}.nav-bar.vertical{height:auto;margin-top:0}.nav-bar.vertical>li{float:none;border-bottom:none;border-right:solid 1px #333;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-bar.vertical>li.has-flyout>a:first-child:after{content:"";display:block;width:0;height:0;border:solid 4px;border-color:transparent transparent transparent #e6e6e6}.nav-bar.vertical>li .flyout{left:100%;top:-1px}.nav-bar.vertical>li .flyout.right{left:auto;right:100%}.nav-bar.vertical>li.active{border-right:solid 1px #2284a1}.nav-bar.vertical>li:last-child{border-bottom:solid 1px #333}.flyout{background:#f2f2f2;padding:20px;margin:0;border:1px solid #d9d9d9;position:absolute;top:39px;left:-1px;width:250px;z-index:40;-webkit-box-shadow:0 1px 5px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 5px rgba(0,0,0,0.1);box-shadow:0 1px 5px rgba(0,0,0,0.1)}.flyout p{line-height:1.2;font-size:13px}.flyout *:first-child{margin-top:0}.flyout *:last-child{margin-bottom:0}.flyout.small{width:166.66667px}.flyout.large{width:437.5px}.flyout.right{left:auto;right:-2px}.flyout.left{right:auto;left:-2px}.flyout.up{top:auto;bottom:39px}ul.flyout,.nav-bar li ul{padding:0;list-style:none}ul.flyout li,.nav-bar li ul li{border-left:solid 3px #CCC}ul.flyout li a,.nav-bar li ul li a{background:#f2f2f2;border:1px solid #e6e6e6;border-width:1px 1px 0 0;color:#555;display:block;font-size:14px;height:auto;line-height:1;padding:15px 20px;-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 1px 0 rgba(255,255,255,0.5) inset}ul.flyout li a:hover,.nav-bar li ul li a:hover{background:#ebebeb;color:#333}ul.flyout li.active,.nav-bar li ul li.active{margin-top:0;border-top:1px solid #4d4d4d;border-left:4px solid #1a1a1a}ul.flyout li.active a,.nav-bar li ul li.active a{background:#4d4d4d;border:none;color:#fff;height:auto;margin:0;position:static;top:0;-webkit-box-shadow:0 0 0;-moz-box-shadow:0 0 0;box-shadow:0 0 0}.orbit-wrapper{width:1px;height:1px;position:relative}.orbit{width:1px;height:1px;position:relative;overflow:hidden;margin-bottom:17px}.orbit.with-bullets{margin-bottom:40px}.orbit .orbit-slide{max-width:100%;position:absolute;top:0;left:0}.orbit a.orbit-slide{border:none;line-height:0;display:none}.orbit div.orbit-slide{width:100%;height:100%;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0}div.orbit-wrapper div.timer{width:40px;height:40px;overflow:hidden;position:absolute;top:10px;right:10px;opacity:.6;cursor:pointer;z-index:31}div.orbit-wrapper span.rotator{display:block;width:40px;height:40px;position:absolute;top:0;left:-20px;background:url('../images/foundation/orbit/rotator-black.png') no-repeat;z-index:3}div.orbit-wrapper span.rotator.move{left:0}div.orbit-wrapper span.mask{display:block;width:20px;height:40px;position:absolute;top:0;right:0;z-index:2;overflow:hidden}div.orbit-wrapper span.mask.move{width:40px;left:0;background:url('../images/foundation/orbit/timer-black.png') repeat 0 0}div.orbit-wrapper span.pause{display:block;width:40px;height:40px;position:absolute;top:0;left:0;background:url('../images/foundation/orbit/pause-black.png') no-repeat;z-index:4;opacity:0}div.orbit-wrapper span.pause.active{background:url('../images/foundation/orbit/pause-black.png') no-repeat 0 -40px}div.orbit-wrapper div.timer:hover span.pause,div.orbit-wrapper span.pause.active{opacity:1}.orbit-caption{display:none;font-family:inherit}.orbit-wrapper .orbit-caption{background:#000;background:rgba(0,0,0,0.6);z-index:30;color:#fff;text-align:center;padding:7px 0;font-size:13px;position:absolute;right:0;bottom:0;width:100%}div.orbit-wrapper div.slider-nav{display:block}div.orbit-wrapper div.slider-nav span{width:39px;height:50px;text-indent:-9999px;position:absolute;z-index:30;top:50%;margin-top:-25px;cursor:pointer}div.orbit-wrapper div.slider-nav span.right{background:url('../images/foundation/orbit/right-arrow.png');background-size:100%;right:0}div.orbit-wrapper div.slider-nav span.left{background:url('../images/foundation/orbit/left-arrow.png');background-size:100%;left:0}.lt-ie9 div.orbit-wrapper div.slider-nav span.right{background:url('../images/foundation/orbit/right-arrow-small.png')}.lt-ie9 div.orbit-wrapper div.slider-nav span.left{background:url('../images/foundation/orbit/left-arrow-small.png')}ul.orbit-bullets{position:absolute;z-index:30;list-style:none;bottom:-40px;left:50%;margin-left:-50px;padding:0}ul.orbit-bullets li{float:left;margin-left:5px;cursor:pointer;color:#999;text-indent:-9999px;background:url('../images/foundation/orbit/bullets.jpg') no-repeat 4px 0;width:13px;height:12px;overflow:hidden}ul.orbit-bullets li.active{color:#222;background-position:-8px 0}ul.orbit-bullets li.has-thumb{background:none;width:100px;height:75px}ul.orbit-bullets li.active.has-thumb{background-position:0 0;border-top:2px solid #000}.orbit-slide-counter{position:absolute;bottom:0;z-index:99;background:rgba(0,0,0,0.7);color:#fff;padding:5px}div.orbit img.fluid-placeholder{visibility:hidden;position:static;display:block;width:100%}div.orbit,div.orbit-wrapper{width:100% !important}.lt-ie9 .timer{display:none !important}.lt-ie9 div.caption{background:#000;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000,endColorstr=#99000000);zoom:1}@media only screen and (max-width: 767px){div.orbit.orbit-stack-on-small img.fluid-placeholder{visibility:visible}div.orbit.orbit-stack-on-small .orbit-slide{position:static;margin-bottom:10px}}.reveal-modal-bg{position:fixed;height:100%;width:100%;background:#000;background:rgba(0,0,0,0.45);z-index:40;display:none;top:0;left:0}.reveal-modal{background:#fff;visibility:hidden;display:none;top:100px;left:50%;margin-left:-260px;width:520px;position:absolute;z-index:41;padding:30px;-webkit-box-shadow:0 0 10px rgba(0,0,0,0.4);-moz-box-shadow:0 0 10px rgba(0,0,0,0.4);box-shadow:0 0 10px rgba(0,0,0,0.4)}.reveal-modal .close-reveal-modal{font-size:22px;font-size:2.2rem;line-height:.5;position:absolute;top:8px;right:11px;color:#aaa;text-shadow:0 -1px 1px rgba(0,0,0,0.6);font-weight:bold;cursor:pointer}.reveal-modal.small{width:30%;margin-left:-15%}.reveal-modal.medium{width:40%;margin-left:-20%}.reveal-modal.large{width:60%;margin-left:-30%}.reveal-modal.xlarge{width:70%;margin-left:-35%}.reveal-modal.expand{width:90%;margin-left:-45%}.reveal-modal .row{min-width:0;margin-bottom:10px}.reveal-modal>:first-child{margin-top:0}.reveal-modal>:last-child{margin-bottom:0}@media print{.reveal-modal{border:solid 1px #000;background:#fff !important}}.tabs{list-style:none;border-bottom:solid 1px #e6e6e6;display:block;height:40px;padding:0;margin-bottom:20px}.tabs.contained{margin-bottom:0;margin-left:0}.tabs dt,.tabs li.section-title{color:#b3b3b3;cursor:default;display:block;float:left;font-size:12px;height:40px;line-height:40px;padding:0;padding-right:9px;padding-left:20px;font-weight:normal;width:auto;text-transform:uppercase}.tabs dt:first-child,.tabs li.section-title:first-child{padding:0;padding-right:9px}.tabs dd,.tabs li{display:block;float:left;padding:0;margin:0}.tabs dd a,.tabs li a{color:#6f6f6f;display:block;font-size:14px;height:40px;line-height:40px;padding:0px 23.8px}.tabs dd a:focus,.tabs li a:focus{font-weight:bold;color:#2ba6cb}.tabs dd.active,.tabs li.active{border-top:3px solid #2ba6cb;margin-top:-3px}.tabs dd.active a,.tabs li.active a{cursor:default;color:#3c3c3c;background:#fff;border-left:1px solid #e6e6e6;border-right:1px solid #e6e6e6;font-weight:bold}.tabs dd:first-child,.tabs li:first-child{margin-left:0}.tabs.vertical{height:auto;border-bottom:1px solid #e6e6e6}.tabs.vertical dt,.tabs.vertical dd,.tabs.vertical li{float:none;height:auto}.tabs.vertical dd,.tabs.vertical li{border-left:3px solid #ccc}.tabs.vertical dd a,.tabs.vertical li a{background:#f2f2f2;border:none;border:1px solid #e6e6e6;border-width:1px 1px 0 0;color:#555;display:block;font-size:14px;height:auto;line-height:1;padding:15px 20px;-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.5) inset;box-shadow:0 1px 0 rgba(255,255,255,0.5) inset}.tabs.vertical dd.active,.tabs.vertical li.active{margin-top:0;border-top:1px solid #4d4d4d;border-left:4px solid #1a1a1a}.tabs.vertical dd.active a,.tabs.vertical li.active a{background:#4d4d4d;border:none;color:#fff;height:auto;margin:0;position:static;top:0;-webkit-box-shadow:0 0 0;-moz-box-shadow:0 0 0;box-shadow:0 0 0}.tabs.vertical dd:first-child a.active,.tabs.vertical li:first-child a.active{margin:0}.tabs.pill{border-bottom:none;margin-bottom:10px}.tabs.pill dd,.tabs.pill li{margin-right:10px}.tabs.pill dd:last-child,.tabs.pill li:last-child{margin-right:0}.tabs.pill dd a,.tabs.pill li a{-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px;background:#e6e6e6;height:26px;line-height:26px;color:#666}.tabs.pill dd.active,.tabs.pill li.active{border:none;margin-top:0}.tabs.pill dd.active a,.tabs.pill li.active a{background-color:#2ba6cb;border:none;color:#fff}.tabs.pill.contained{border-bottom:solid 1px #eee;margin-bottom:0}.tabs.pill.two-up dd,.tabs.pill.two-up li,.tabs.pill.three-up dd,.tabs.pill.three-up li,.tabs.pill.four-up dd,.tabs.pill.four-up li,.tabs.pill.five-up dd,.tabs.pill.five-up li{margin-right:0}.tabs.two-up dt a,.tabs.two-up dd a,.tabs.two-up li a,.tabs.three-up dt a,.tabs.three-up dd a,.tabs.three-up li a,.tabs.four-up dt a,.tabs.four-up dd a,.tabs.four-up li a,.tabs.five-up dt a,.tabs.five-up dd a,.tabs.five-up li a{padding:0 17px;text-align:center;overflow:hidden}.tabs.two-up dt,.tabs.two-up dd,.tabs.two-up li{width:50%}.tabs.three-up dt,.tabs.three-up dd,.tabs.two-up li{width:33.33%}.tabs.four-up dt,.tabs.four-up dd,.tabs.two-up li{width:25%}.tabs.five-up dt,.tabs.five-up dd,.tabs.two-up li{width:20%}ul.tabs-content{display:block;margin:0 0 20px;padding:0}ul.tabs-content>li{display:none}ul.tabs-content>li.active{display:block}ul.tabs-content.contained{padding:0}ul.tabs-content.contained>li{border:solid 0 #e6e6e6;border-width:0 1px 1px 1px;padding:20px}ul.tabs-content.contained.vertical>li{border-width:1px 1px 1px 1px}.no-js ul.tabs-content>li{display:block}div.alert-box{display:block;padding:6px 7px 7px;font-weight:bold;font-size:14px;color:#fff;background-color:#2ba6cb;border:1px solid rgba(0,0,0,0.1);margin-bottom:12px;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;text-shadow:0 -1px rgba(0,0,0,0.3);position:relative}div.alert-box.success{background-color:#5da423;color:#fff;text-shadow:0 -1px rgba(0,0,0,0.3)}div.alert-box.alert{background-color:#c60f13;color:#fff;text-shadow:0 -1px rgba(0,0,0,0.3)}div.alert-box.secondary{background-color:#e9e9e9;color:#505050;text-shadow:0 1px rgba(255,255,255,0.3)}div.alert-box a.close{color:#333;position:absolute;right:4px;top:-1px;font-size:17px;opacity:0.2;padding:4px}div.alert-box a.close:hover,div.alert-box a.close:focus{opacity:0.4}.label{padding:1px 4px 2px;font-size:12px;font-weight:bold;text-align:center;text-decoration:none;line-height:1;white-space:nowrap;display:inline;position:relative;bottom:1px;color:#fff;background:#2ba6cb}.label.radius{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}.label.round{padding:1px 7px 2px;-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px}.label.alert{background-color:#c60f13}.label.success{background-color:#5da423}.label.secondary{background-color:#e9e9e9;color:#505050}.has-tip{border-bottom:dotted 1px #ccc;cursor:help;font-weight:bold;color:#333}.has-tip:hover{border-bottom:dotted 1px #196177;color:#2ba6cb}.has-tip.tip-left,.has-tip.tip-right{float:none !important}.tooltip{display:none;background:#000;background:rgba(0,0,0,0.85);position:absolute;color:#fff;font-weight:bold;font-size:12px;padding:5px;z-index:999;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px;line-height:normal}.tooltip>.nub{display:block;width:0;height:0;border:solid 5px;border-color:transparent transparent #000 transparent;border-color:transparent transparent rgba(0,0,0,0.85) transparent;position:absolute;top:-10px;left:10px}.tooltip.tip-override>.nub{border-color:transparent transparent #000 transparent !important;border-color:transparent transparent rgba(0,0,0,0.85) transparent !important;top:-10px !important}.tooltip.tip-top>.nub{border-color:#000 transparent transparent transparent;border-color:rgba(0,0,0,0.85) transparent transparent transparent;top:auto;bottom:-10px}.tooltip.tip-left,.tooltip.tip-right{float:none !important}.tooltip.tip-left>.nub{border-color:transparent transparent transparent #000;border-color:transparent transparent transparent rgba(0,0,0,0.85);right:-10px;left:auto}.tooltip.tip-right>.nub{border-color:transparent #000 transparent transparent;border-color:transparent rgba(0,0,0,0.85) transparent transparent;right:auto;left:-10px}.tooltip.noradius{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;-o-border-radius:0;border-radius:0}.tooltip.opened{color:#2ba6cb !important;border-bottom:dotted 1px #196177 !important}.tap-to-close{display:block;font-size:10px;font-size:1rem;color:#888;font-weight:normal}.panel{background:#f2f2f2;border:solid 1px #e6e6e6;margin:0 0 22px 0;padding:20px}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.panel.callout{background:#2ba6cb;color:#fff;border-color:#2284a1;-webkit-box-shadow:inset 0px 1px 0px rgba(255,255,255,0.5);-moz-box-shadow:inset 0px 1px 0px rgba(255,255,255,0.5);box-shadow:inset 0px 1px 0px rgba(255,255,255,0.5)}.panel.callout a{color:#fff}.panel.callout .button{background:#fff;border:none;color:#2ba6cb;text-shadow:none}.panel.callout .button:hover{background:rgba(255,255,255,0.8)}.panel.radius{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}ul.accordion{margin:0 0 22px 0;border-bottom:1px solid #e9e9e9}ul.accordion>li{list-style:none;margin:0;padding:0;border-top:1px solid #e9e9e9}ul.accordion>li>div.title{cursor:pointer;background:#f6f6f6;padding:15px;margin:0;position:relative;border-left:1px solid #e9e9e9;border-right:1px solid #e9e9e9;-webkit-transition:0.15s background linear;-moz-transition:0.15s background linear;-o-transition:0.15s background linear;transition:0.15s background linear}ul.accordion>li>div.title h1,ul.accordion>li>div.title h2,ul.accordion>li>div.title h3,ul.accordion>li>div.title h4,ul.accordion>li>div.title h5{margin:0}ul.accordion>li>div.title:after{content:"";display:block;width:0;height:0;border:solid 6px;border-color:transparent #9d9d9d transparent transparent;position:absolute;right:15px;top:21px}ul.accordion>li .content{display:none;padding:15px}ul.accordion>li.active{border-top:3px solid #2ba6cb}ul.accordion>li.active .title{background:#fff;padding-top:13px}ul.accordion>li.active .title:after{content:"";display:block;width:0;height:0;border:solid 6px;border-color:#9d9d9d transparent transparent transparent}ul.accordion>li.active .content{background:#fff;display:block;border-left:1px solid #e9e9e9;border-right:1px solid #e9e9e9}ul.side-nav{display:block;list-style:none;margin:0;padding:17px 0}ul.side-nav li{display:block;list-style:none;margin:0 0 7px 0}ul.side-nav li a{display:block}ul.side-nav li.active a{color:#4d4d4d;font-weight:bold}ul.side-nav li.divider{border-top:1px solid #e6e6e6;height:0;padding:0}dl.sub-nav{display:block;width:auto;overflow:hidden;margin:-4px 0 18px;margin-right:0;margin-left:-9px;padding-top:4px}dl.sub-nav dt,dl.sub-nav dd{float:left;display:inline;margin-left:9px;margin-bottom:10px}dl.sub-nav dt{color:#999;font-weight:normal}dl.sub-nav dd a{text-decoration:none;-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px}dl.sub-nav dd.active a{font-weight:bold;background:#2ba6cb;color:#fff;padding:3px 9px;cursor:default}ul.pagination{display:block;height:24px;margin-left:-5px}ul.pagination li{float:left;display:block;height:24px;color:#999;font-size:14px;margin-left:5px}ul.pagination li a{display:block;padding:1px 7px 1px;color:#555}ul.pagination li:hover a,ul.pagination li a:focus{background:#e6e6e6}ul.pagination li.unavailable a{cursor:default;color:#999}ul.pagination li.unavailable:hover a,ul.pagination li.unavailable a:focus{background:transparent}ul.pagination li.current a{background:#2ba6cb;color:#fff;font-weight:bold;cursor:default}ul.pagination li.current a:hover{background:#2ba6cb}ul.breadcrumbs{display:block;background:#f6f6f6;padding:6px 10px 7px;border:1px solid #e9e9e9;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;overflow:hidden;margin-left:0}ul.breadcrumbs li{margin:0;padding:0 12px 0 0;float:left;list-style:none}ul.breadcrumbs li a,ul.breadcrumbs li span{text-transform:uppercase;font-size:11px;font-size:1.1rem;padding-left:12px}ul.breadcrumbs li:first-child a,ul.breadcrumbs li:first-child span{padding-left:0}ul.breadcrumbs li:before{content:"/";color:#aaa}ul.breadcrumbs li:first-child:before{content:" "}ul.breadcrumbs li.current a{cursor:default;color:#333}ul.breadcrumbs li:hover a,ul.breadcrumbs li a:focus{text-decoration:underline}ul.breadcrumbs li.current:hover a,ul.breadcrumbs li.current a:focus{text-decoration:none}ul.breadcrumbs li.unavailable a{color:#999}ul.breadcrumbs li.unavailable:hover a,ul.breadcrumbs li.unavailable a:focus{text-decoration:none;color:#999;cursor:default}ul.inline-list,ul.link-list{margin:0 0 17px -22px;padding:0;list-style:none;overflow:hidden}ul.inline-list>li,ul.link-list>li{list-style:none;float:left;margin-left:22px;display:block}ul.inline-list>li>*,ul.link-list>li>*{display:block}.keystroke,kbd{font-family:"Consolas", "Menlo", "Courier", monospace;font-size:13px;padding:2px 4px 0px;margin:0;background:#ededed;border:solid 1px #dbdbdb;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}.th{display:block}.th img{display:block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.2);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.2);box-shadow:0 0 0 1px rgba(0,0,0,0.2);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;-webkit-transition-property:box-shadow;-moz-transition-property:box-shadow;-o-transition-property:box-shadow;transition-property:box-shadow;-webkit-transition-duration:300ms;-moz-transition-duration:300ms;-o-transition-duration:300ms;transition-duration:300ms}.th:hover img{-webkit-box-shadow:0 0 6px 1px rgba(43,166,203,0.5);-moz-box-shadow:0 0 6px 1px rgba(43,166,203,0.5);box-shadow:0 0 6px 1px rgba(43,166,203,0.5)}.flex-video{position:relative;padding-top:25px;padding-bottom:67.5%;height:0;margin-bottom:16px;overflow:hidden}.flex-video.widescreen{padding-bottom:57.25%}.flex-video.vimeo{padding-top:0}.flex-video iframe,.flex-video object,.flex-video embed,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}table{background:#fff;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;margin:0 0 18px;border:1px solid #ddd}table thead,table tfoot{background:#f5f5f5}table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;font-size:14px;line-height:18px;text-align:left}table thead tr th,table tfoot tr td{padding:8px 10px 9px;font-size:14px;font-weight:bold;color:#222}table thead tr th:first-child,table tfoot tr td:first-child{border-left:none}table thead tr th:last-child,table tfoot tr td:last-child{border-right:none}table tbody tr.even,table tbody tr.alt{background:#f9f9f9}table tbody tr:nth-child(even){background:#f9f9f9}table tbody tr td{color:#333;padding:9px 10px;vertical-align:top;border:none}ul.vcard{display:inline-block;margin:0 0 12px 0;border:1px solid #ddd;padding:10px}ul.vcard li{margin:0;display:block}ul.vcard li.fn{font-weight:bold;font-size:15px}p.vevent span.summary{font-weight:bold}p.vevent abbr{cursor:default;text-decoration:none;font-weight:bold;border:none;padding:0 1px}div.progress{padding:2px;margin-bottom:10px;border:1px solid #ccc;height:25px}div.progress .meter{background:#2ba6cb;height:100%;display:block;width:50%}div.progress.secondary .meter{background:#e9e9e9}div.progress.success .meter{background:#5da423}div.progress.alert .meter{background:#c60f13}div.progress.radius{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}div.progress.radius .meter{-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}div.progress.round{-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px}div.progress.round .meter{-webkit-border-radius:1000px;-moz-border-radius:1000px;-ms-border-radius:1000px;-o-border-radius:1000px;border-radius:1000px}.pricing-table{border:solid 1px #ddd;margin-left:0;margin-bottom:20px}.pricing-table *{list-style:none;line-height:1}.pricing-table .title{background-color:#ddd;padding:15px 20px;text-align:center;color:#333;font-weight:bold;font-size:16px}.pricing-table .price{background-color:#eee;padding:15px 20px;text-align:center;color:#333;font-weight:normal;font-size:20px}.pricing-table .description{background-color:#fff;padding:15px;text-align:center;color:#777;font-size:12px;font-weight:normal;line-height:1.4;border-bottom:dotted 1px #ddd}.pricing-table .bullet-item{background-color:#fff;padding:15px;text-align:center;color:#333;font-size:14px;font-weight:normal;border-bottom:dotted 1px #ddd}.pricing-table .cta-button{background-color:#f5f5f5;text-align:center;padding:20px}.top-bar-js-breakpoint{width:940px !important;visibility:hidden}.contain-to-grid{width:100%;background:#222}.fixed{width:100%;left:0;position:fixed;top:0;z-index:99}.top-bar{background:#222;height:45px;line-height:45px;margin:0 0 30px;padding:0;width:100%}.contain-to-grid .top-bar{max-width:940px;margin:0 auto}.top-bar>ul .name h1{line-height:45px;margin:0}.top-bar>ul .name h1 a{font-weight:bold;padding:0 22.5px;font-size:17px !important}.top-bar>ul .name img{margin-top:-5px;vertical-align:middle}.top-bar.expanded{height:inherit}.top-bar ul{margin-left:0;display:inline;height:45px;line-height:45px;list-style:none}.top-bar ul>li{float:left}.top-bar ul>li a:not(.button){color:#fff;display:block;font-size:13px;font-weight:bold;height:45px;line-height:45px;padding:0 15px}.top-bar ul>li:not(.name):hover,.top-bar ul>li:not(.name).active{background:#000}.top-bar ul>li:not(.name):hover a,.top-bar ul>li:not(.name).active a{color:#d9d9d9}.top-bar ul>li.divider{background:#000;-webkit-box-shadow:1px 0 0 rgba(255,255,255,0.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,0.1);box-shadow:1px 0 0 rgba(255,255,255,0.1);height:100%;margin-right:1px;width:1px}.top-bar ul>li.has-button a.button{margin:0 11.25px}.top-bar ul>li.has-button:hover{background:#222}.top-bar ul>li.has-button:hover a{color:#fff}.top-bar ul>li.search{padding:0 15px}.top-bar ul>li.search form{display:inline-block;margin-bottom:0;vertical-align:middle;width:200px}.top-bar ul>li.search form input[type=text]{-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;float:left;font-size:13px;margin-top:-1px;height:22.5px}.top-bar ul>li.search form input[type=text]+.button{border-left:none;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;float:left;font-size:12px;margin-top:-1px;padding:5px 12px 4px}.top-bar ul>li.search form input[type=search]{font-size:16px;margin-bottom:0}.top-bar ul>li.search:hover{background:#222}.top-bar ul>li.toggle-topbar{display:none}.top-bar ul>li.has-dropdown{position:relative}.top-bar ul>li.has-dropdown:hover>.dropdown{display:block;visibility:visible}.top-bar ul>li.has-dropdown a{padding-right:33.75px}.top-bar ul>li.has-dropdown a:after{content:"";display:block;width:0;height:0;border:solid 5px;border-color:#fff transparent transparent transparent;margin-right:15px;margin-top:-2.5px;position:absolute;right:0;top:50%}.top-bar ul>li.has-dropdown .dropdown{background:#222;left:0;margin:0;padding:9px 0 0 0;position:absolute;visibility:hidden;z-index:99}.top-bar ul>li.has-dropdown .dropdown li{background:#222;line-height:1;min-width:100%;padding-bottom:5px}.top-bar ul>li.has-dropdown .dropdown li a{color:#fff;font-weight:normal;height:100%;line-height:1;padding:5px 17px 5px 15px;white-space:nowrap}.top-bar ul>li.has-dropdown .dropdown li a:after{border:none}.top-bar ul>li.has-dropdown .dropdown li a:hover{background:#3c3c3c}.top-bar ul>li.has-dropdown .dropdown li label{color:#6f6f6f;font-size:10px;font-weight:bold;margin:0;padding-left:15px;text-transform:uppercase}.top-bar ul>li.has-dropdown .dropdown li.divider{border-top:solid 1px #000;-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.1) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.1) inset;box-shadow:0 1px 0 rgba(255,255,255,0.1) inset;height:10px;padding:0;width:100%}.top-bar ul>li.has-dropdown .dropdown li:last-child{padding-bottom:10px}.top-bar ul>li.has-dropdown .dropdown li.active a{background:#000}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown>a{padding-right:30px}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown>a:after{border:none;content:"\00bb";right:5px;top:6px}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown .dropdown{position:absolute;left:100%;top:0}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown:hover>.dropdown{display:block}.top-bar ul.left{float:left;width:auto;margin-bottom:0}.top-bar ul.right{float:right;width:auto;margin-bottom:0}.top-bar ul.right .has-dropdown .dropdown{left:auto;right:-1px}.top-bar ul.right .has-dropdown .dropdown li.has-dropdown>.dropdown{right:100%;left:auto;width:100%}.top-bar .js-generated{display:none}@-moz-document url-prefix(){.top-bar ul li .button.small{padding-bottom:6px}.top-bar ul li.search form input[type=search]{font-size:14px;height:22px;padding:3px}}.lt-ie9 .top-bar ul li a{color:#fff;display:block;font-weight:bold;font-size:13px;height:45px;line-height:45px;padding:0 15px}.lt-ie9 .top-bar ul li a.button{height:auto;line-height:30px;margin-top:7px}.lt-ie9 .top-bar ul li a:hover{color:#ccc}.lt-ie9 .top-bar ul li a img{margin-top:-5px;vertical-align:middle}.lt-ie9 .top-bar ul li a.active{background:#151515;color:#d9d9d9}.lt-ie9 .top-bar ul li.has-dropdown{padding-right:33.75px}.lt-ie9 .top-bar ul li.has-dropdown>ul li{padding-right:0}#joyRideTipContent{display:none}.joyride-tip-guide{display:none;position:absolute;background:#000;background:rgba(0,0,0,0.8);color:#fff;width:300px;z-index:101;top:0;left:0;font-family:inherit;font-weight:normal;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.joyride-content-wrapper{padding:18px 20px 24px}.joyride-tip-guide span.joyride-nub{display:block;position:absolute;left:22px;width:0;height:0;border:solid 14px}.joyride-tip-guide span.joyride-nub.top{border-color:#000;border-color:rgba(0,0,0,0.8);border-top-color:transparent !important;border-left-color:transparent !important;border-right-color:transparent !important;top:-28px;bottom:none}.joyride-tip-guide span.joyride-nub.bottom{border-color:#000;border-color:rgba(0,0,0,0.8) !important;border-bottom-color:transparent !important;border-left-color:transparent !important;border-right-color:transparent !important;bottom:-28px;bottom:none}.joyride-tip-guide span.joyride-nub.right{border-color:#000;border-color:rgba(0,0,0,0.8) !important;border-top-color:transparent !important;border-right-color:transparent !important;border-bottom-color:transparent !important;top:22px;bottom:none;left:auto;right:-28px}.joyride-tip-guide span.joyride-nub.left{border-color:#000;border-color:rgba(0,0,0,0.8) !important;border-top-color:transparent !important;border-left-color:transparent !important;border-bottom-color:transparent !important;top:22px;left:-28px;right:auto;bottom:none}.joyride-tip-guide h1,.joyride-tip-guide h2,.joyride-tip-guide h3,.joyride-tip-guide h4,.joyride-tip-guide h5,.joyride-tip-guide h6{line-height:1.25;margin:0;font-weight:bold;color:#fff}.joyride-tip-guide p{margin:0 0 18px 0;font-size:14px;line-height:1.3}.joyride-timer-indicator-wrap{width:50px;height:3px;border:solid 1px #555;position:absolute;right:17px;bottom:16px}.joyride-timer-indicator{display:block;width:0;height:inherit;background:#666}.joyride-close-tip{position:absolute;right:10px;top:10px;color:#777 !important;text-decoration:none;font-size:20px;font-weight:normal;line-height:.5 !important}.joyride-close-tip:hover{color:#eee !important}.joyride-modal-bg{position:fixed;height:100%;width:100%;background:transparent;background:rgba(0,0,0,0.5);z-index:100;display:none;top:0;left:0;cursor:pointer}.clearing-blackout{background:#000;background:rgba(0,0,0,0.8);position:fixed;width:100%;height:100%;top:0;left:0;z-index:999}.clearing-blackout .clearing-close{display:block}.clearing-container{position:relative;z-index:999;height:100%;overflow:hidden}.visible-img{height:75%;position:relative}.visible-img img{position:absolute;left:50%;top:50%;margin-left:-50%;max-height:100%;max-width:100%}.visible-img .clearing-caption{color:#fff;margin-bottom:0;text-align:center;position:absolute;bottom:0;background:#000;background:rgba(0,0,0,0.7);width:100%;padding:10px 100px}.clearing-close{z-index:999;position:absolute;top:10px;right:20px;font-size:30px;line-height:1;color:#fff;display:none}.clearing-close:hover{color:#ccc}.clearing-main-left,.clearing-main-right{position:absolute;top:50%;margin-top:-16px}.clearing-main-left.disabled,.clearing-main-right.disabled{opacity:0.5}.clearing-main-left:active,.clearing-main-right:active{margin-top:-15px}.clearing-main-left{left:10px;content:"";display:block;width:0;height:0;border:solid 16px;border-color:transparent #fff transparent transparent}.clearing-main-right{right:10px;content:"";display:block;width:0;height:0;border:solid 16px;border-color:transparent transparent transparent #fff}.block-grid.three-up>li:nth-child(3n+1){clear:none}ul[data-clearing] li{cursor:pointer;display:block}ul[data-clearing] li.clearing-feature ~ li{display:none}.clearing-assembled .clearing-container .carousel{background:#000;background:rgba(0,0,0,0.75);height:150px;margin-top:5px}.clearing-assembled .clearing-container .visible-img{background:#000;background:rgba(0,0,0,0.75);overflow:hidden}.clearing-assembled .clearing-container ul[data-clearing]{z-index:999;width:200%;height:100%;margin-left:0;position:relative;left:0}.clearing-assembled .clearing-container ul[data-clearing] li{display:block;width:175px;height:inherit;padding:0;float:left;overflow:hidden;background:#222;margin-right:1px;position:relative}.clearing-assembled .clearing-container ul[data-clearing] li.fix-height img{min-height:100%;height:100%;max-width:none}.clearing-assembled .clearing-container ul[data-clearing] li img{cursor:pointer !important;min-width:100% !important}.clearing-assembled .clearing-container ul[data-clearing] li.visible{border-top:4px solid #fff}.show-for-small,.show-for-medium,.show-for-medium-down,.hide-for-large,.hide-for-large-up,.show-for-xlarge,.show-for-print{display:none !important}.hide-for-small,.hide-for-medium,.hide-for-medium-down,.show-for-large,.show-for-large-up,.hide-for-xlarge,.hide-for-print{display:inherit !important}@media only screen and (min-width: 1441px){.hide-for-small,.hide-for-medium,.hide-for-medium-down,.hide-for-large,.show-for-large-up,.show-for-xlarge{display:inherit !important}.show-for-small,.show-for-medium,.show-for-medium-down,.show-for-large,.hide-for-large-up,.hide-for-xlarge{display:none !important}}@media only screen and (max-width: 1279px) and (min-width: 768px){.hide-for-small,.show-for-medium,.show-for-medium-down,.hide-for-large,.hide-for-large-up,.hide-for-xlarge{display:inherit !important}.show-for-small,.hide-for-medium,.hide-for-medium-down,.show-for-large,.show-for-large-up,.show-for-xlarge{display:none !important}}@media only screen and (max-width: 767px){.show-for-small,.hide-for-medium,.show-for-medium-down,.hide-for-large,.hide-for-large-up,.hide-for-xlarge{display:inherit !important}.hide-for-small,.show-for-medium,.hide-for-medium-down,.show-for-large,.show-for-large-up,.show-for-xlarge{display:none !important}}.show-for-landscape,.hide-for-portrait{display:inherit !important}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:inherit !important}.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.show-for-portrait,.hide-for-landscape{display:inherit !important}.hide-for-portrait,.show-for-landscape{display:none !important}}.show-for-touch{display:none !important}.hide-for-touch{display:inherit !important}.touch .show-for-touch{display:inherit !important}.touch .hide-for-touch{display:none !important}table.show-for-xlarge,table.show-for-large,table.hide-for-small,table.hide-for-medium{display:table !important}@media only screen and (max-width: 1279px) and (min-width: 768px){.touch table.hide-for-xlarge,.touch table.hide-for-large,.touch table.hide-for-small,.touch table.show-for-medium{display:table !important}}@media only screen and (max-width: 767px){table.hide-for-xlarge,table.hide-for-large,table.hide-for-medium,table.show-for-small{display:table !important}}@media only screen and (max-device-width: 1280px){.touch .nav-bar li.has-flyout>a{padding-right:36px !important}}@media only screen and (max-device-width: 800px), only screen and (device-width: 1024px) and (device-height: 600px), only screen and (width: 1280px) and (orientation: landscape), only screen and (device-width: 800px), only screen and (max-width: 767px){.flex-video{padding-top:0}}@media only screen and (max-width: 1279px) and (min-width: 768px){.touch .nav-bar li a{font-size:13px}.touch .nav-bar li.has-flyout>a.flyout-toggle{padding:20px !important}.touch .nav-bar li.has-flyout>a{padding-right:36px !important}.clearing-main-right,.clearing-main-left{height:100%;width:40px;top:0;border:none}.clearing-main-right:before,.clearing-main-left:before{position:absolute;top:50%}.clearing-main-left{left:0}.clearing-main-left:before{left:5px;content:"";display:block;width:0;height:0;border:solid 16px;border-color:transparent #fff transparent transparent}.clearing-main-right{height:100%;right:0}.clearing-main-right:before{content:"";display:block;width:0;height:0;border:solid 16px;border-color:transparent transparent transparent #fff}}@media only screen and (max-width: 767px){.left,.right{float:none}body{-webkit-text-size-adjust:none;-ms-text-size-adjust:none;width:100%;min-width:0;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.row{width:auto;min-width:0;margin-left:0;margin-right:0}.column,.columns{width:auto !important;float:none}.column:last-child,.columns:last-child{float:none}[class*="column"]+[class*="column"]:last-child{float:none}.column:before,.columns:before,.column:after,.columns:after{content:"";display:table}.column:after,.columns:after{clear:both}.offset-by-one,.offset-by-two,.offset-by-three,.offset-by-four,.offset-by-five,.offset-by-six,.offset-by-seven,.offset-by-eight,.offset-by-nine,.offset-by-ten{margin-left:0 !important}.push-two,.push-three,.push-four,.push-five,.push-six,.push-seven,.push-eight,.push-nine,.push-ten{left:auto}.pull-two,.pull-three,.pull-four,.pull-five,.pull-six,.pull-seven,.pull-eight,.pull-nine,.pull-ten{right:auto}.row .mobile-one{width:25% !important;float:left;padding:0 15px}.row .mobile-one:last-child{float:right}.row .mobile-one.end{float:left}.row.collapse .mobile-one{padding:0}.row .mobile-two{width:50% !important;float:left;padding:0 15px}.row .mobile-two:last-child{float:right}.row .mobile-two.end{float:left}.row.collapse .mobile-two{padding:0}.row .mobile-three{width:75% !important;float:left;padding:0 15px}.row .mobile-three:last-child{float:right}.row .mobile-three.end{float:left}.row.collapse .mobile-three{padding:0}.row .mobile-four{width:100% !important;float:left;padding:0 15px}.row .mobile-four:last-child{float:right}.row .mobile-four.end{float:left}.row.collapse .mobile-four{padding:0}.push-one-mobile{left:25%}.pull-one-mobile{right:25%}.push-two-mobile{left:50%}.pull-two-mobile{right:50%}.push-three-mobile{left:75%}.pull-three-mobile{right:75%}.block-grid.mobile>li{float:none;width:100%;margin-left:0}.block-grid>li{clear:none !important}.block-grid.mobile-one-up>li{width:100%}.block-grid.mobile-two-up>li{width:50%}.block-grid.mobile-two-up>li:nth-child(2n+1){clear:both}.block-grid.mobile-three-up>li{width:33.33333%}.block-grid.mobile-three-up>li:nth-child(3n+1){clear:both}.block-grid.mobile-four-up>li{width:25%}.block-grid.mobile-four-up>li:nth-child(4n+1){clear:both}.block-grid.mobile-five-up>li{width:20%}.block-grid.mobile-five-up>li:nth-child(5n+1){clear:both}.block-grid.mobile-six-up>li{width:16.66667%}.block-grid.mobile-six-up>li:nth-child(6n+1){clear:both}.block-grid.mobile-seven-up>li{width:14.28571%}.block-grid.mobile-seven-up>li:nth-child(7n+1){clear:both}.block-grid.mobile-eight-up>li{width:12.5%}.block-grid.mobile-eight-up>li:nth-child(8n+1){clear:both}.block-grid.mobile-nine-up>li{width:11.11111%}.block-grid.mobile-nine-up>li:nth-child(9n+1){clear:both}.block-grid.mobile-ten-up>li{width:10%}.block-grid.mobile-ten-up>li:nth-child(10n+1){clear:both}.block-grid.mobile-eleven-up>li{width:9.09091%}.block-grid.mobile-eleven-up>li:nth-child(11n+1){clear:both}.block-grid.mobile-twelve-up>li{width:8.33333%}.block-grid.mobile-twelve-up>li:nth-child(12n+1){clear:both}label.right{text-align:left}input[type="text"].one,.row input[type="text"].one,input[type="password"].one,.row input[type="password"].one,input[type="date"].one,.row input[type="date"].one,input[type="datetime"].one,.row input[type="datetime"].one,input[type="email"].one,.row input[type="email"].one,input[type="number"].one,.row input[type="number"].one,input[type="search"].one,.row input[type="search"].one,input[type="tel"].one,.row input[type="tel"].one,input[type="time"].one,.row input[type="time"].one,input[type="url"].one,.row input[type="url"].one,textarea.one,.row textarea.one{width:100% !important}input[type="text"].two,.row input[type="text"].two,input[type="password"].two,.row input[type="password"].two,input[type="date"].two,.row input[type="date"].two,input[type="datetime"].two,.row input[type="datetime"].two,input[type="email"].two,.row input[type="email"].two,input[type="number"].two,.row input[type="number"].two,input[type="search"].two,.row input[type="search"].two,input[type="tel"].two,.row input[type="tel"].two,input[type="time"].two,.row input[type="time"].two,input[type="url"].two,.row input[type="url"].two,textarea.two,.row textarea.two{width:100% !important}input[type="text"].three,.row input[type="text"].three,input[type="password"].three,.row input[type="password"].three,input[type="date"].three,.row input[type="date"].three,input[type="datetime"].three,.row input[type="datetime"].three,input[type="email"].three,.row input[type="email"].three,input[type="number"].three,.row input[type="number"].three,input[type="search"].three,.row input[type="search"].three,input[type="tel"].three,.row input[type="tel"].three,input[type="time"].three,.row input[type="time"].three,input[type="url"].three,.row input[type="url"].three,textarea.three,.row textarea.three{width:100% !important}input[type="text"].four,.row input[type="text"].four,input[type="password"].four,.row input[type="password"].four,input[type="date"].four,.row input[type="date"].four,input[type="datetime"].four,.row input[type="datetime"].four,input[type="email"].four,.row input[type="email"].four,input[type="number"].four,.row input[type="number"].four,input[type="search"].four,.row input[type="search"].four,input[type="tel"].four,.row input[type="tel"].four,input[type="time"].four,.row input[type="time"].four,input[type="url"].four,.row input[type="url"].four,textarea.four,.row textarea.four{width:100% !important}input[type="text"].five,.row input[type="text"].five,input[type="password"].five,.row input[type="password"].five,input[type="date"].five,.row input[type="date"].five,input[type="datetime"].five,.row input[type="datetime"].five,input[type="email"].five,.row input[type="email"].five,input[type="number"].five,.row input[type="number"].five,input[type="search"].five,.row input[type="search"].five,input[type="tel"].five,.row input[type="tel"].five,input[type="time"].five,.row input[type="time"].five,input[type="url"].five,.row input[type="url"].five,textarea.five,.row textarea.five{width:100% !important}input[type="text"].six,.row input[type="text"].six,input[type="password"].six,.row input[type="password"].six,input[type="date"].six,.row input[type="date"].six,input[type="datetime"].six,.row input[type="datetime"].six,input[type="email"].six,.row input[type="email"].six,input[type="number"].six,.row input[type="number"].six,input[type="search"].six,.row input[type="search"].six,input[type="tel"].six,.row input[type="tel"].six,input[type="time"].six,.row input[type="time"].six,input[type="url"].six,.row input[type="url"].six,textarea.six,.row textarea.six{width:100% !important}input[type="text"].seven,.row input[type="text"].seven,input[type="password"].seven,.row input[type="password"].seven,input[type="date"].seven,.row input[type="date"].seven,input[type="datetime"].seven,.row input[type="datetime"].seven,input[type="email"].seven,.row input[type="email"].seven,input[type="number"].seven,.row input[type="number"].seven,input[type="search"].seven,.row input[type="search"].seven,input[type="tel"].seven,.row input[type="tel"].seven,input[type="time"].seven,.row input[type="time"].seven,input[type="url"].seven,.row input[type="url"].seven,textarea.seven,.row textarea.seven{width:100% !important}input[type="text"].eight,.row input[type="text"].eight,input[type="password"].eight,.row input[type="password"].eight,input[type="date"].eight,.row input[type="date"].eight,input[type="datetime"].eight,.row input[type="datetime"].eight,input[type="email"].eight,.row input[type="email"].eight,input[type="number"].eight,.row input[type="number"].eight,input[type="search"].eight,.row input[type="search"].eight,input[type="tel"].eight,.row input[type="tel"].eight,input[type="time"].eight,.row input[type="time"].eight,input[type="url"].eight,.row input[type="url"].eight,textarea.eight,.row textarea.eight{width:100% !important}input[type="text"].nine,.row input[type="text"].nine,input[type="password"].nine,.row input[type="password"].nine,input[type="date"].nine,.row input[type="date"].nine,input[type="datetime"].nine,.row input[type="datetime"].nine,input[type="email"].nine,.row input[type="email"].nine,input[type="number"].nine,.row input[type="number"].nine,input[type="search"].nine,.row input[type="search"].nine,input[type="tel"].nine,.row input[type="tel"].nine,input[type="time"].nine,.row input[type="time"].nine,input[type="url"].nine,.row input[type="url"].nine,textarea.nine,.row textarea.nine{width:100% !important}input[type="text"].ten,.row input[type="text"].ten,input[type="password"].ten,.row input[type="password"].ten,input[type="date"].ten,.row input[type="date"].ten,input[type="datetime"].ten,.row input[type="datetime"].ten,input[type="email"].ten,.row input[type="email"].ten,input[type="number"].ten,.row input[type="number"].ten,input[type="search"].ten,.row input[type="search"].ten,input[type="tel"].ten,.row input[type="tel"].ten,input[type="time"].ten,.row input[type="time"].ten,input[type="url"].ten,.row input[type="url"].ten,textarea.ten,.row textarea.ten{width:100% !important}input[type="text"].eleven,.row input[type="text"].eleven,input[type="password"].eleven,.row input[type="password"].eleven,input[type="date"].eleven,.row input[type="date"].eleven,input[type="datetime"].eleven,.row input[type="datetime"].eleven,input[type="email"].eleven,.row input[type="email"].eleven,input[type="number"].eleven,.row input[type="number"].eleven,input[type="search"].eleven,.row input[type="search"].eleven,input[type="tel"].eleven,.row input[type="tel"].eleven,input[type="time"].eleven,.row input[type="time"].eleven,input[type="url"].eleven,.row input[type="url"].eleven,textarea.eleven,.row textarea.eleven{width:100% !important}input[type="text"].twelve,.row input[type="text"].twelve,input[type="password"].twelve,.row input[type="password"].twelve,input[type="date"].twelve,.row input[type="date"].twelve,input[type="datetime"].twelve,.row input[type="datetime"].twelve,input[type="email"].twelve,.row input[type="email"].twelve,input[type="number"].twelve,.row input[type="number"].twelve,input[type="search"].twelve,.row input[type="search"].twelve,input[type="tel"].twelve,.row input[type="tel"].twelve,input[type="time"].twelve,.row input[type="time"].twelve,input[type="url"].twelve,.row input[type="url"].twelve,textarea.twelve,.row textarea.twelve{width:100% !important}.button{display:block}button.button,input[type="submit"].button{width:100%;padding-left:0;padding-right:0}.button-group button.button,.button-group input[type="submit"].button{width:auto;padding:10px 20px 11px}.button-group button.button.large,.button-group input[type="submit"].button.large{padding:15px 30px 16px}.button-group button.button.medium,.button-group input[type="submit"].button.medium{padding:10px 20px 11px}.button-group button.button.small,.button-group input[type="submit"].button.small{padding:7px 14px 8px}.button-group button.button.tiny,.button-group input[type="submit"].button.tiny{padding:5px 10px 6px}.button-group.even button.button,.button-group.even input[type="submit"].button{width:100%;padding-left:0;padding-right:0}.nav-bar{height:auto}.nav-bar>li{float:none;display:block;border-right:none}.nav-bar>li>a.main{text-align:left;border-top:1px solid #ddd;border-right:none}.nav-bar>li:first-child>a.main{border-top:none}.nav-bar>li.has-flyout>a.flyout-toggle{position:absolute;right:0;top:0;padding:22px;z-index:2;display:block}.nav-bar>li.has-flyout.is-touch>a.flyout-toggle span{content:"";width:0;height:0;display:block}.nav-bar>li.has-flyout>a.flyout-toggle:hover span{border-top-color:#141414}.nav-bar.vertical>li.has-flyout>.flyout{left:0}.flyout{position:relative;width:100% !important;top:auto;margin-right:-2px;border-width:1px 1px 0 1px}.flyout.right{float:none;right:auto;left:-1px}.flyout.small,.flyout.large{width:100% !important}.flyout p:last-child{margin-bottom:18px}.reveal-modal-bg{position:absolute}.reveal-modal,.reveal-modal.small,.reveal-modal.medium,.reveal-modal.large,.reveal-modal.xlarge{width:80%;top:15px;left:50%;margin-left:-40%;padding:20px;height:auto}.clearing-container{margin:0}.clearing-close{z-index:99;font-size:37px;top:0px;right:5px}.clearing-caption{position:fixed;bottom:0;left:0;padding:10px !important;line-height:1.3}.clearing-main-right,.clearing-main-left{display:none}.clearing-blackout.clearing-assembled .visible-img,.clearing-blackout.clearing-assembled .clearing-container{height:100%}.clearing-blackout.clearing-assembled ul[data-clearing]{display:none}.joyride-tip-guide{width:95% !important;left:2.5% !important;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.joyride-tip-guide-wrapper{width:100%}.tabs.mobile{width:auto;margin:20px -20px 40px;border-bottom:solid 1px #ccc;height:auto;margin:20px -15px 0px -15px}.tabs.mobile dt,.tabs.mobile li,.tabs.mobile dd{float:none;height:auto}.tabs.mobile dd a,.tabs.mobile li a{font-size:15px;display:block;width:auto;height:auto;padding:18px 20px;margin:0;color:#555;line-height:1;border:none;border-left:none;border-right:none;border-top:1px solid #ccc;background:#fff}.tabs.mobile dd a.active,.tabs.mobile li a.active{border:none;background:#2ba6cb;color:#fff;margin:0;position:static;top:0;height:auto}.tabs.mobile dd:first-child,.tabs.mobile li:first-child{padding-left:20px !important}.tabs.mobile dd:first-child a.active,.tabs.mobile li:first-child a.active{margin:0}.tabs.mobile+.tabs-content.contained{margin-left:-15px;margin-right:-15px}.contained.mobile{margin-bottom:0}.contained.tabs.mobile dd a,.contained.tabs.mobile li a{padding:18px 20px}.tabs.mobile+ul.contained{margin-left:-20px;margin-right:-20px;border-width:0 0 1px 0}.tooltip{font-size:14;line-height:1.4;padding:7px 10px 9px 10px;left:50% !important;max-width:80% !important;margin-left:-40%;font-size:110%}.tooltip>.nub,.tooltip.top>.nub,.tooltip.left>.nub,.tooltip.right>.nub{border-color:transparent transparent #000 transparent;border-color:transparent transparent rgba(0,0,0,0.85) transparent;top:-12px;left:10px}}@media only screen and (max-width: 940px){.top-bar{margin-bottom:0;overflow:hidden;height:45px;background:#222}.top-bar .js-generated{display:block}.contain-to-grid .top-bar{width:auto}.top-bar section{left:0;position:relative;width:auto;-webkit-transition:left 300ms;-moz-transition:left 300ms;-o-transition:left 300ms;transition:left 300ms}.top-bar ul{width:100%;height:100%;margin-bottom:0;display:block}.top-bar ul>li{float:none}.top-bar ul>li.active,.top-bar ul>li:hover{background:#151515}.top-bar ul>li.name{background:#000;height:45px}.top-bar ul>li.name h1{line-height:1}.top-bar ul>li.name h1 a{color:#fff;display:block;line-height:45px !important;padding-left:15px;height:45px}.top-bar ul>li:hover a,.top-bar ul>li.active a{color:#fff}.top-bar ul>li a:not(.button){color:#fff}.top-bar ul>li.toggle-topbar{cursor:pointer;display:block;height:45px;position:absolute;right:0;top:0;width:50%}.top-bar ul>li.toggle-topbar a{content:"";display:block;width:0;height:0;border:solid 8px;border-color:#fff transparent transparent transparent;padding:0;position:absolute;top:50%;right:22.5px;margin-top:-4px}.top-bar ul>li.toggle-topbar:hover{background:inherit}.top-bar ul>li.toggle-topbar a{padding:0 !important}.top-bar ul>li.divider{border-bottom:solid 1px #3c3c3c;border-top:solid 1px #000;clear:both;height:1px !important;margin:8px 0 !important;width:100%}.top-bar ul>li.search{padding:0 22.5px}.top-bar ul>li.search form{width:100%}.top-bar ul>li.search form input[type=text]{width:75%}.top-bar ul>li.search form .button{top:0;width:25%}.top-bar ul>li.has-dropdown a{padding-right:33.75px}.top-bar ul>li.has-dropdown a:after{content:"";display:block;width:0;height:0;border:solid 5px;border-color:transparent transparent transparent rgba(255,255,255,0.5);margin-right:15px;margin-top:-4.5px;position:absolute;top:50%}.top-bar ul>li.has-dropdown:hover>.dropdown{display:block;visibility:hidden}.top-bar ul>li.has-dropdown .dropdown{visibility:hidden;z-index:0 !important}.top-bar ul>li.has-dropdown.moved{position:static}.top-bar ul>li.has-dropdown.moved .dropdown{top:0;visibility:visible}.top-bar ul>li.has-dropdown.moved .dropdown li label{margin-bottom:6px;padding-top:6px !important;font-size:11px}.top-bar ul>li.has-dropdown.moved .dropdown li:not(.title){padding-bottom:0}.top-bar ul>li.has-dropdown.moved .dropdown li:not(.title) a{padding:8px 22.5px;font-size:14px}.top-bar ul>li.has-dropdown.moved .dropdown li a,.top-bar ul>li.has-dropdown.moved .dropdown li label{padding:0 22.5px}.top-bar ul>li.has-dropdown.moved .dropdown li a:hover{background:#3c3c3c;display:block}.top-bar ul>li.has-dropdown.moved .dropdown li.divider{border-bottom:solid 1px rgba(255,255,255,0.1);margin-top:8px !important;margin-bottom:8px !important}.top-bar ul>li.has-dropdown.moved .back.title{padding-bottom:0}.top-bar ul>li.has-dropdown.moved .back.title a:before{position:absolute;top:50%;left:17.5px;margin-top:-5px;width:0;height:0;content:"";display:block;width:0;height:0;border:solid 5px;border-color:transparent #fff transparent transparent}.top-bar ul>li.has-dropdown.moved .back.title h5{margin:0;padding-left:15px;position:relative}.top-bar ul>li.has-dropdown.moved .back.title h5 a{background:transparent;padding-top:8px;padding-bottom:8px;font-size:23px;font-weight:bold}.top-bar ul>li.has-dropdown .dropdown li{background:transparent}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown .dropdown{left:100% !important;top:0;right:auto !important}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown>a{padding-right:33.75px}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown>a:after{content:"";margin-right:15px;content:"";display:block;width:0;height:0;border:solid 5px;border-color:transparent transparent transparent rgba(255,255,255,0.5);position:absolute;top:50%;margin-top:-4.5px}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown>a li a:hover{background:#3c3c3c}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown.moved{position:static}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown.moved .dropdown{top:0;visibility:visible}.top-bar ul>li.has-dropdown .dropdown li.has-dropdown:hover{display:block}.top-bar ul.left,.top-bar ul.right{float:none;width:100%}.top-bar ul.left>li,.top-bar ul.right>li{display:block;float:none;margin:0 !important}.top-bar ul.left>li.has-dropdown .dropdown,.top-bar ul.right>li.has-dropdown .dropdown{left:100% !important;top:0;right:auto !important}.top-bar section>ul li a:not(.button){padding-left:22.5px !important}.top-bar.expanded{height:100%}.top-bar.expanded ul li.toggle-topbar a{content:"";display:block;width:0;height:0;border:solid 8px;border-color:transparent transparent rgba(255,255,255,0.5) transparent;top:auto;bottom:50%;margin-bottom:-4px}.top-bar ul li.has-button{padding:5px 15px}.top-bar ul li .button.small{margin:0 !important;display:inline-block;width:100%}.top-bar ul>li.has-button a.button{margin:0}} - - // Prism CSS - style - code[class*="language-"],pre[class*="language-"]{color:black;text-shadow:0 1px white;font-family:Consolas,Monaco,'Andale Mono',monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*="language-"]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*="language-"],pre[class*="language-"]{background:#f5f2f0}:not(pre)>code[class*="language-"]{padding:.1em;border-radius:.3em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:slategray}.token.punctuation{color:#999}.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number{color:#905}.token.selector,.token.attr-name,.token.string{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#a67f59;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.regex,.token.important{color:#e90}.token.important{font-weight:bold}.token.entity{cursor:help} - - // Custom Styles - style - #nav {position:relative} - #nav > ul > li {margin: 0 0 4px;} - #nav > ul > li > ul > li {margin: 0 0 2px;} - #nav > ul > li > ul > li > a {font-size:.9em} - #nav > ul > li > ul {display: none;} - #nav > ul > li.active > ul {display: block;} - #nav > ul > li > a {font-size: 1.1em;} - code { - background: transparent; - line-height: 1.3em; + body > .navbar .brand { + float:left; + text-shadow: rgba(255, 255, 255, 0.0980392) 0px 1px 0px, rgba(255, 255, 255, 0.4) 0px 0px 30px; + color: white; + margin-left:0px; + font-weight:normal; + } + + .bs-docs-sidenav i{ + width: 8px; + height: 8px; + padding: 0px; + margin: 0px; + display: inline-block; + margin-right:0.5em; } - .comment { position:relative;margin-bottom:3em; } - .comment h1 {font-size:2rem} - .comment h2 {font-size:1.8rem} - div.description {margin: 14px 0; padding-top: 14px; border-top:1px solid #eee; border-bottom:1px solid #eee; } - .tags {} - .tags .types {color:#666} + + code[class*="language-"],pre[class*="language-"]{color:black;text-shadow:0 1px white;font-family:Consolas,Monaco,'Andale Mono',monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*="language-"]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*="language-"],pre[class*="language-"]{background:#f5f2f0}:not(pre)>code[class*="language-"]{padding:.1em;border-radius:.3em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:slategray}.token.punctuation{color:#999}.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number{color:#905}.token.selector,.token.attr-name,.token.string{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#a67f59;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.regex,.token.important{color:#e90}.token.important{font-weight:bold}.token.entity{cursor:help} + div.description {margin: 14px 0; padding-top: 14px; border-top:1px solid #eee; border-bottom:1px solid #eee; } + .tags {} .ctx-type { float:right; margin-top:8px } - body - .row - .twelve.columns - h1.pagetitle= title - .row - #nav.three.columns - ul.side-nav - mixin subnav(files) - each file in files - if file.methods.length - li - a(href=file.target)=file.source - ul - each method in file.methods - li - a(href=file.target+'#'+method)= method - - if locals.structure - mixin subnav(structure) + body(data-spy="scroll", data-target=".bs-docs-sidebar") + div.navbar.navbar-inverse.navbar-fixed-top + div.navbar-inner + div.container + a.brand Doxx + div.nav-collapse.collapse + ul.nav.pull-right.sponsored + + + header.jumbotron.subhead#overview + div.container + h1= title + p.lead + + .container + .row + .span3.bs-docs-sidebar + ul.nav.nav-list.bs-docs-sidenav.affix-top + each symbol in symbols + li + a(href='#'+symbol.name) + mixin iForSymbolType(symbol) + | #{symbol.name} + + .span9 + each symbol in dox + if symbol.ctx + section(id=symbol.ctx.name) + mixin labelForSymbolType(symbol) + //- .label.radius.ctx-type=symbol.ctx.type + h1= symbol.ctx.name + h5.subheader= symbol.ctx.string - .nine.columns - each comment in comments - .comment - if comment.ctx - .label.radius.ctx-type=comment.ctx.type - h1(id=comment.ctx.name)= comment.ctx.name - h5.subheader= comment.ctx.string - .tags - ul.no-bullet - each tag in comment.tags - unless tag.type == 'api' - li - strong="@"+tag.type + ": " - if tag.types - span.types=' {'+tag.types + '} ' - if tag.name - span.name=tag.name+' ' - if tag.description - span.description=tag.description - if tag.local - span.local= tag.local - .description - !=comment.description.full + if symbol.hasParams + //- First show options + table.table.table-bordered.table-striped + thead + tr + th(style="width:20%") Option name + th(style="width:20%") Type + th Description + tbody + each tag in symbol.tags + if tag.type == 'param' + tr + td= tag.name + td= tag.types + td= tag.description - if comment.code - pre - code.language-javascript - !=comment.code - // Foundation JS - script(src='http://cdnjs.cloudflare.com/ajax/libs/foundation/3.2.2/javascripts/foundation.min.js') + .description + !=symbol.description.full + + //- if symbol.code + //- pre + //- code.language-javascript + //- !=symbol.code + + footer.footer + div.container + p Documentation generated with + a(href="https://github.com/FGRibreau/doxx") Doxx + | created by + a.twitter-follow-button(href='https://twitter.com/FGRibreau',data-show-count='false') Francois-Guillaume Ribreau + p Doxx is sponsored by + a.bringr(href='http://bringr.net/?btt', title="Outil d'analyse des réseaux sociaux") Bringr + | and + a.redsmin(href='https://redsmin.com/?btt', title="Full Redis GUI") Redsmin + p Theme borrowed from Twitter Bootstrap + + script(src="http://platform.twitter.com/widgets.js") + script(src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js") + script(src="http://leaverou.github.com/prefixfree/prefixfree.js") + script(src="http://twitter.github.com/bootstrap/assets/js/bootstrap-transition.js") + script(src="http://twitter.github.com/bootstrap/assets/js/bootstrap-scrollspy.js") + script(src="http://twitter.github.com/bootstrap/assets/js/bootstrap-dropdown.js") + script(src="http://twitter.github.com/bootstrap/assets/js/bootstrap-collapse.js") + script(src="http://twitter.github.com/bootstrap/assets/js/bootstrap-affix.js") script /** @@ -97,18 +124,14 @@ html Prism.languages.clike={comment:{pattern:/(^|[^\\])(\/\*[\w\W]*?\*\/|\/\/.*?(\r?\n|$))/g,lookbehind:!0},string:/("|')(\\?.)*?\1/g,keyword:/\b(if|else|while|do|for|return|in|instanceof|function|new|try|catch|finally|null|break|continue)\b/g,"boolean":/\b(true|false)\b/g,number:/\b-?(0x)?\d*\.?[\da-f]+\b/g,operator:/[-+]{1,2}|!|=?<|=?>|={1,2}|(&){1,2}|\|?\||\?|\*|\//g,ignore:/&(lt|gt|amp);/gi,punctuation:/[{}[\];(),.:]/g};; Prism.languages.javascript=Prism.languages.extend("clike",{keyword:/\b(var|let|if|else|while|do|for|return|in|instanceof|function|new|with|typeof|try|catch|finally|null|break|continue)\b/g,number:/\b(-?(0x)?\d*\.?[\da-f]+|NaN|-?Infinity)\b/g});Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/g,lookbehind:!0}});Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/(<|<)script[\w\W]*?(>|>)[\w\W]*?(<|<)\/script(>|>)/ig,inside:{tag:{pattern:/(<|<)script[\w\W]*?(>|>)|(<|<)\/script(>|>)/ig,inside:Prism.languages.markup.tag.inside},rest:Prism.languages.javascript}}});; - // App js script $(function(){ - $('pre').addClass('language-javascript'); - $('#nav > ul > li > a[href$="'+location.pathname.substring(location.pathname.lastIndexOf('/')+1, location.pathname.length)+'"]').parent().addClass('active') - $(window).scroll(function() { - if ($(this).scrollTop() > 64) { - var offset = '-' + $('#nav li.active').position().top + 'px' - $("#nav").css({ "position": "fixed", "top": offset }); - } else { - $("#nav").css({ "position": "static" }); //same here - } + var $window = $(window); + $('.bs-docs-sidenav').affix({ + offset: { + top: function () { return $window.width() <= 980 ? 280 : 200 } + , bottom: 50 + } }); })