/* Reset */
html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input { margin: 0; padding: 0; }
h1,h2,h3,h4,h5,h6,pre,code,address,caption,cite,code,em,strong,th { font-size: 1em; font-weight: normal; font-style: inherit; }
ul,ol { list-style: none; }
fieldset,img { border: none; }
caption,th { text-align: left; }
table { border-collapse: collapse; border-spacing: 0; }
object{ outline: 0; }
strong, b, strong *, b * { font-weight: bold !important; }
em, i, em *, i * { font-style: italic !important; }
a:focus, input:focus{ outline-style: none; }

body{ font-family: 'Arial', sans-serif; font-size: 14px; line-height: 21px; color: #444; min-width: 960px; background: #e4e4e4; position: relative; }

/* Links */
a{ color: #364f9f; text-decoration: none; }
a:hover{ color: #6990fe; text-decoration: underline; }

/* Generic */
.gray{ color: #888; }

/* Clearfix */
.clear:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.clear { display: inline-block; }
html[xmlns] .clear { display: block; }
* html .clear { height: 1%; }

/* Clear both */
.clear-both{ clear: both; }

/* Alignment */
.pull-right{ text-align: right; }

/* Understated */
.understated{ color: #666; font-size: 12px; }

/* Pro/Pro premium badge */
.pro-badge{ font-size: 9px; color: #fff; background: #ff443f; text-transform: uppercase; line-height: 1; padding: 1px 3px; font-family: 'Lucida Grande', 'Lucida Sans Unicode', sans-serif; border-radius: 3px; vertical-align: middle; }

.highlight{ background: #FFD400 !important; padding: 2px; line-height: 1; display: inline-block; }

.remove-icon{ width: 15px; height: 15px; background: #ccc; color: #fff; text-align: center; box-sizing: border-box; display: inline-block; border-radius: 100px; font-size: 12px; padding: 2px 0 0 0; line-height: 1; vertical-align: baseline; margin-left: 5px; cursor: pointer; }
    .remove-icon:hover{ background: #aaa; }

/* Header */
div.header{ background: #fff; position: relative; padding: 10px 0; }

.header div.user{ position: absolute; top: 10px; right: 10px; }
    .header ul{ overflow: hidden; }
    .header li{ float: left; display: inline; margin-left: 20px; padding-left: 23px; background: url('/images/new_design/icons.png') no-repeat; }
        .header li.profile{ background-position: 0 1px; }
        .header li.cart{ background-position: 0 -20px; }
        .header li.logout{ background-position: 0 -40px; }
        .header li a{ color: #039; text-transform: uppercase; font-size: 11px; text-decoration: none; }
    .header .user p{ font-size: 12px; text-align: right; padding-top: 8px; }
        .header .user p a{ font-weight: bold; }

.header div.login{ position: absolute; top: 10px; right: 10px; }
    .header .login h3{ font-size: 13px; line-height: 1em; text-transform: uppercase; margin-bottom: 7px; margin-top: 5px; letter-spacing: 1px; color: #555; }
    .header .login input[type="text"], .header .login input[type="password"]{ border: #ccc 1px solid; font-family: 'Arial', sans-serif; padding: 3px 3px 1px 3px; font-size: 12px; line-height: 1em; width: 110px; border-radius: 3px; background: #f5f5f5; }
        .header .login input[type="text"]:focus, .header .login input[type="password"]:focus{ background: #fff; border-color: #aaa; }
    .header .login input[type="submit"]{ background: #364f9f; color: #fff; text-transform: uppercase; border: #364f9f 1px solid; border-radius: 3px; padding: 4px 5px 3px 5px; font-family: 'Arial', sans-serif; font-size: 11px; line-height: 1em; position: relative; top: -1px; cursor: pointer; }
    .header .login li{ margin-left: 10px; }
    .header .login li:first-child{ margin-left: 0; }
    .header .login form{ margin-bottom: 4px; }

.header div.info{ background: #f5f5f9; position: absolute; top: 10px; right: 350px; width: 300px; padding: 8px; border-radius: 3px; text-align: right; }
    .header .info p{ font-size: 12px; line-height: 18px;}
    .header .info h2{ color: #415BB8; font-weight: bold; text-transform: uppercase; }
    .header .info.free-trial{ background: #f8f9fb url('/images/new_design/free-trial.jpg') 0 50% no-repeat; padding-left: 100px; }

/* Navigation & Search */
div.navigation{ background: #364f9f; position: relative; float: left; width: 100%; }

    /* Navigation */
    .navigation a{ color: #fff; }
    .navigation ul{ display: block; float: left; }
    .navigation > ul > li{ display: inline; float: left; border-right: #313e8f 1px solid; position: relative; }
    .navigation > ul > li > a{ font-size: 13px; text-transform: uppercase; padding: 14px 17px; display: block; line-height: 1em; text-decoration: none; }
    .navigation ul ul{ display: none; }
    .navigation > ul > li:hover > a{ background: #6b85ff; }
    .navigation > ul > li:hover > ul{ display: block; position: absolute; z-index: 1; top: 40px; right: 0; background: #4556b6; left: 0; width: 220px; font-size: 12px; }
        .navigation ul ul li{ position: relative; }
        .navigation ul ul li a{ border-bottom: #3746a0 1px solid; display: block; padding: 8px; line-height: 1em; text-decoration: none; background: url('/images/new_design/icons.png') 0 -55px no-repeat; padding-left: 20px; }
        .navigation ul ul li:hover a{ background-color: #6b85ff; }
    .navigation ul ul li:hover ul{ display: block; position: absolute; z-index: 1; left: 200px; top: 0; width: 220px;}
    .navigation ul ul li:hover ul a{ background-color: #4556b6; }
    .navigation ul ul li:hover ul a:hover{ background-color: #6b85ff; }

    /* Search */
    .navigation div.search{ position: absolute; right: 10px; top: 9px; padding-left: 30px; background: url('/images/new_design/icons.png') 0 -89px no-repeat; }
    .navigation .search input[type="text"]{ background: #f9f9f9; border: #e3eafb 1px solid; font-family: 'Arial', sans-serif; width: 150px; padding: 4px 5px 2px 5px; line-height: 1em; font-size: 12px; border-radius: 3px; }
    .navigation .search input[type="submit"]{ background: #5e6fcc; font-family: 'Arial', sans-serif; padding: 5px 8px 5px 8px; line-height: 1em; font-size: 12px; border: 0; color: #fff; text-transform: uppercase; vertical-align: middle; display: inline-block; border-radius: 3px; position: relative; top: -1px; cursor: pointer; }
    .navigation .search input[type="submit"]:hover{ background-color: #6a7cdf; }

/* Advertising */
div.ad-skyscraper{ float: right; margin-right: 10px; }
div.ad-skyscraper.left{ float: left; margin-right: 0; margin-right: 10px; }
div.ad-leaderboard{ text-align: center; margin-bottom: 5px; }


div.main{ padding: 10px 0; float: left; width: 100%; }
    .main div.sidebar{ width: 190px; float: left; margin-left: 10px; }
    .main div.main-wrapper{ padding: 0 10px 0 210px; }
    .main div.container{ border: #ccc 1px solid; background: #fff; border-radius: 3px; box-shadow: 0 1px 2px 0 #ddd; padding: 15px; }

    /* 3 Column layout: Sidebar, Content, Advertisement */
    .main.middle div.main-wrapper{ padding: 0 140px 300px 210px; }

    /* 3 Column fixed layout: Advertisement, Fixed Content, Advertisement; */
    .main.fixed{ text-align: center; }
    .main.fixed div.main-wrapper{ width: 960px; margin: auto; padding: 0 140px; }
    .main.fixed .ad-skyscraper{ margin-right: -130px; }
    .main.fixed .ad-skyscraper.left{ margin-right: 0; margin-left: -130px; }

    /* One Column Layout */
    .main.full div.main-wrapper{ padding: 0 10px; }

    /* Sidebar Boxes */
    div.side-box{ font-size: 11px; line-height: 14px; border-radius: 2px; overflow: hidden; box-shadow: 0 1px 3px 0 #ddd; margin-bottom: 10px; }
    .side-box h3{ background: #364F9F url('/images/new_design/icons.png') no-repeat; font-size: 12px; color: #fff; line-height: 1em; padding: 9px 10px 8px 34px; position: relative; }
        .side-box h3.weekly-updates{ background-position: 8px -116px;}
        .side-box h3.blog{ background-position: 6px -145px;}
        .side-box h3.social{ background-position: 8px -175px;}
        .side-box h3 a.rss{ display: block; position: absolute; top: 8px; right: 8px; width: 14px; height: 14px;  text-indent: -5000px; background: url('/images/new_design/icons.png') -3px -210px no-repeat; opacity: .4; }
            .side-box h3 a.rss:hover{ opacity: .8; }
    .side-box div.content{ background: #fff; padding: 10px; }
    .side-box ul{ padding-top: 6px; }
    .side-box ul:first-child{ padding-top: 0; margin-top: -8px; }
    .side-box li{ padding-top: 4px; }
    .side-box h4{ font-weight: bold; font-size: 12px; padding-top: 4px; }
    .side-box div.meta{ color: #888; padding-top: 2px; }
    .side-box div.more{ padding-top: 4px; border-top: #ddd 1px solid; margin-top: 8px; text-align: right; }

/* Columns layout */
div.columns-layout{ padding: 10px 0; width: 100%; box-sizing: border-box; }
    .columns-layout div.col{ width: 50%; float: left; display: inline;  }
    .columns-layout .col div.wrapper{ padding: 0 10px; }

/* Hint */
div.hint{ position: absolute; font-family: 'Lucida Grande', 'Lucida Sans Unicode', sans-serif; font-size: 11px; padding-bottom: 5px; z-index: 1300; }
    .hint p{ background: #303539; padding: 8px 10px; color: #fff; line-height: 14px; border-radius: 3px; max-width: 200px; }
    .hint em{ display: block; position: absolute; width: 10px; height: 5px; position: absolute; bottom: 0; left: 50%; margin-left: -5px; background: url('/images/new_design/icons.png') 0 -240px no-repeat; }


/* Share / Report */
div.share-report{ text-align: right; padding-right: 10px; font-size: 12px; }
    .share-report a{ padding-left: 20px; margin-left: 10px; color: #888; }
    .share-report a.innacuracy{ background: url('/images/new_design/icons.png') 0 -443px no-repeat; }
    .share-report div.share-elem{ display: inline-block; }

.footnote{ font-size: 11px; font-style: italic; }

div.right-select{ text-align: right; padding: 20px 0 0 0; font-size: 12px; }
    .right-select select{ margin-left: 5px; }

div.flash{ padding: 14px; border-radius: 4px; position: relative; margin: 10px 0 5px 0; }
    .flash.error{ background: #fbc9c9; }
    .flash.success{ background: #daf6c7; }
    .flash p{ margin: 0; padding: 0; }
    .flash ul{ padding: 5px 0 0 0; }
    .flash li{ list-style-type: disc; list-style-position: inside; padding-left: 20px; }

/* Nested list */
.nested-list li{ list-list-style-position: outside; margin-top: 5px; line-height: 1.4em; }
    .nested-list li:first-child{ margin-top: 0; }
    .nested-list li ul{ margin-left: 20px; margin-top: 5px; }
    .nested-list li li{ list-style-position: outside; padding-left: 10px; padding-left: 0; }
    .nested-list li .icon-right, .nested-list li .icon-down{ display: inline-block; width: 10px; height: 15px;  background: url('/images/new_design/icons.png') no-repeat; vertical-align: middle; position: relative; left: -10px; margin-right: -10px; }
    .nested-list li .icon-right{ background-position: -5px -560px; }
    .nested-list li .icon-down{ background-position: -5px -578px; }
    .nested-list li .magnify{ display: inline-block; margin-left: 3px; color: #aaa; text-decoration: none; cursor: pointer; letter-spacing: 1px; }
        .nested-list li .magnify:hover{ color: #999; }

/* Box */
div.box{ border: #d9dbdf 1px solid; border-radius: 4px; overflow: hidden; padding-bottom: 10px; margin-bottom: 20px; box-shadow: 0 1px 2px 0 #ddd; }
    .box h2{ border-bottom: #d9dbdf 1px solid; padding: 9px 10px; font-weight: bold; background: #f5f8ff; position: relative; font-size: 16px; font-weight: bold; }
        .box h2 a.all{ position: absolute; top: 9px; right: 10px; font-size: 12px; font-weight: normal; }
        .box h2 i{ float: left; display: inline; width: 20px; height: 20px; background: url('/images/new_design/icons.png') no-repeat; margin-right: 5px; }
        .box h2 i.speaker{ background-position: 0 -260px;}
        .box h2 i.ticket{ background-position: 0 -280px;}
        .box h2 i.person-plus{ background-position: 0 -300px;}
        .box h2 i.person-minus{ background-position: 0 -320px;}
        .box h2 i.document{ background-position: 0 -380px;}
        .box h2 i.eye{ background-position: 0 -340px;}
        .box h2 i.airplane{ background-position: 0 -360px;}
        .box h2 i.cake{ background-position: 0 -420px;}
        .box h2 i.kst{ background-position: 0 -400px;}

    .box .stats{ font-size: 11px; padding: 10px 0 0 10px; margin-bottom: -5px; color: #666; }

    .box .actions{ padding: 10px 10px 0 10px; border-top: #ddd 1px solid; margin-top: 10px; text-align: right; }
        .box .actions.top{ margin-top: 0; border-top: 0; text-align: left; border-bottom: #eee 1px solid; padding-bottom: 10px; }
    .box .actions a{ position: static; margin: 0; display: inline-block; }

    .box .padded{ padding: 10px 10px 0 10px; }
    .box .padded .table{ margin-top: 10px; }

    .box .bullet-list{ padding: 10px 10px 0 30px; }
        .box .bullet-list li{ list-style-type: disc; list-style-position: outside; margin-top: 5px; line-height: 1.4em; }
            .box .bullet-list li:first-child{ margin-top: 0; }
            .box .bullet-list li ul{ margin-left: 20px; margin-top: 5px; }
            .box .bullet-list li li{ list-style-type: circle; list-style-position: outside; padding-left: 10px; padding-left: 0; }

    .box .nested-list{ padding: 10px 10px 0 30px; }

    .box .col-list li{ display: inline-block; width: 48%; padding-right: 10px; box-sizing: border-box; line-height: 1.3em; margin-top: 5px; vertical-align: top; }
        .box .col-list li img{ display: inline-block; vertical-align: middle; margin-right: 5px; }

    .box li.title{ border: #d9dbdf solid; border-width: 1px 0; padding: 8px 10px; background: #fefefe; margin-top: 16px; line-height: 1em; }
    .box .title h3{ font-weight: bold; color: #666; font-size: 12px; }
    .box li.item{ padding: 13px 40px 0 10px; position: relative; }

    .box .item-list.cols .item{ display: inline-block; vertical-align: top; width: 48%; padding: 10px 10px 0 10px; box-sizing: border-box; }
        .box .item-list.cols .item .meta{ font-size: 12px; margin-top: 0; padding-top: 0; line-height: 1.5em; }
        .box .item-list.cols .item h4{ font-size: 13px; margin-top: 0; }

    .box .item div.meta{ font-size: 11px; font-style: italic; line-height: 15px; padding-top: 6px; color: #666; }
        .box .item-list div.meta strong{ font-style: italic !important; }
        .box .item-list div.meta .red{ color: #ff443f; }
        .box .item-list h4{ font-size: 14px; font-weight: bold; }
        .box .item-list div.classification{ font-size: 13px; padding-top: 5px; line-height: 1.3em; }
        .box .item-list div.indented{ padding-left: 20px; }
        .box .item-list div.indented-small{ padding-left: 10px; }
    .box ul li.title:first-child{ margin-top: 0; border-top: 0; }
    .box .right-padded{ padding-right: 80px; }
    .box .item-list div.more{ position: absolute; right: 10px; bottom: 0; font-size: 12px; }
        .box .item-list .more a.icon{ display: inline-block; position: relative; top: 1px; margin-left: 8px; }
    .box div.all{ border-top: #ddd 1px solid; padding: 10px; text-align: right; font-weight: bold; font-size: 12px; line-height: 1em; margin-top: 10px; background: #f5f5f5; margin-bottom: -10px; clear: both; }
    .box .item-list h5{ font-size: 12px; font-weight: bold; line-height: 1em; }
    .box .item-list p{ font-size: 12px; line-height: 18px; padding-top: 2px; }

    .box span.timeline{ font-size: 9px; font-family: 'Lucida Grande', 'Lucida Sans Unicode', sans-serif; background: #fb8300; border-radius: 3px; color: #fff; font-weight: normal; padding: 2px 3px; display: inline-block; line-height: 1em; position: relative; top: -2px; margin-right: 4px; }
    .box span.timeline.new{ background: #2486ea; }

    .box .post-list li.item{ padding-top: 10px; }
    .box .post-list h4{ font-size: 13px; font-weight: bold; line-height: 19px; }
    .box .post-list div.meta{ padding-top: 1px; }

    .box span.label{ color: #888; font-weight: normal; }
    .box span.label-fixed{ width: 80px; float: left; }

    .box .list-subtitle{ padding: 0 10px; font-weight: bold; font-size: 13px; margin: 10px 0 -10px 0; }

    .box .item-list-filters{ position: relative; padding: 0 10px; }
        .box .item-list-filters .right{ position: absolute; top: 0; right: 10px; }
        .box .footnote{ padding: 10px; margin: 0; }

/* Image links (2 cols) */
.image-links li{ display: inline-block; width: 48%; vertical-align: middle; margin-top: 10px; }
    .box .image-links{ padding-top: 0; }
    .image-links li a{ display: inline-block; vertical-align: middle; line-height: 1; }
    .image-links li .img{ margin-right: 5px; }
        .image-links li img{ display: block; }

/* Tabs */
div.tabs{ border-bottom: #ddd 1px solid; padding: 10px 0 0 10px; }
    .tabs ul{ overflow: hidden; position: relative; top: 1px; }
    .tabs li{ float: left; display: inline; margin-right: 5px; }
    .tabs a, .tabs span.disabled{ border: transparent 1px solid; border-radius: 3px 3px 0 0; display: block; font-size: 13px; padding: 8px; line-height: 1em; }
    .tabs span.disabled{ color: #bbb; }
    .tabs .active a{ border-color: #ddd; border-bottom-color: #fff; color: #444; text-decoration: none; }

/* Title Tabs */
.title-tabs{ border-bottom: #ddd 1px solid; font-size: 13px; font-weight: bold; display: block; }
    .title-tabs a{ color: #444; text-decoration: none; }
    .title-tabs li{ display: inline-block; padding: 10px 0; margin-left: 10px; position: relative; top: 1px; z-index: 1; border-bottom: transparent 1px solid; }
        .title-tabs li:first-child{ margin-left: 0; }
    .title-tabs li.active, .title-tabs li:hover{ border-bottom: #364f9f 1px solid; }
        .title-tabs .active a{ color: #364f9f; }    
        .title-tabs li:hover a{ color: #364f9f; }

/* Plain text */
div.text-block{ font-size: 14px; line-height: 21px; font-family: 'Georgia', sans-serif; padding-top: 10px; }
    div.text-block.sans{ font-family: 'Arial', sans-serif; }
        .text-block h3{ font-size: 18px; font-weight: bold; }
            .text-block p{ padding-top: 10px; }

.chart-wrapper{ margin-top: 50px; }
.subnote{ font-style: italic; font-size: 13px; padding-top: 10px; }

/* Split features (3 cols: Salaries) */
div.features-split{ width: 100%; padding-top: 20px; }
    .features-split div.col{ float: left; display: inline; width: 33%; padding: 0 20px; box-sizing: border-box; }
    .features-split div.col:first-child{ padding-left: 0; }
    .features-split div.col:last-child{ padding-right: 0; }
    .features-split h3{ font-weight: bold; border-bottom: #eee 1px solid; }
        .features-split h3 span{ display: inline-block; border-bottom: #ff0000 1px solid; position: relative; top: 1px; padding: 0 0 6px 0; }
        .features-split ul{ padding-top: 10px; font-size: 13px; padding-left: 20px; }
        .features-split ul li{ list-style-type: disc; list-style-position: outside; padding-top: 8px; line-height: 18px; }
    .features-split .form div.input{ padding-top: 10px; }
    .features-split .form input[type="text"], .features-split .form .btn.gray{ font-family: 'Arial', sans-serif; font-size: 12px; padding: 5px; border: #ddd 1px solid; border-radius: 4px; box-sizing: border-box; width: 100%; }
    .features-split .form .date input[type="text"]{ width: 80%; border-radius: 4px 0 0 4px; }
    .features-split .form .date .btn.gray{ width: 20%; border-color: #aaa; border-radius: 0 4px 4px 0; }
    .features-split .form .submit{ padding-top: 10px;  }

/* Salaries, Generic */
div.section{ padding: 20px 0; position: relative; }
    .section h2{ font-size: 24px; font-weight: bold; position: relative; }
        .section h2 .btn{ position: absolute; top: 0; right: 0; }
        .section h2 .select{ position: absolute; top: 0; right: 0; font-size: 12px; font-weight: normal; }
    .section h3{ font-size: 20px; padding: 20px 0 0 0; font-weight: bold; margin-bottom: -15px; position: relative; }
        .section .what{ font-size: 13px; color: #999; font-weight: normal; margin-left: 10px; }
        .section h3 .btn{ position: absolute; top: 20px; right: 0; }
        .section h3 .right{ position: absolute; top: 20px; right: 0; font-size: 12px; }
        .section h3.no-margin{ margin-bottom: 0; }
    select.select-menu{ position: absolute; top: 20px; right: 0; }
    .section div.tabs{ padding-top: 20px; }
    .section h4{ font-size: 16px; font-weight: bold; padding: 30px 0 10px 0;}
        .section .box .item-list h4{ padding: 0; }
    .section h4.no-bottom-margin{ padding-bottom: 0; margin-bottom: -10px; }
    .section h5{ font-weight: bold; font-size: 14px; padding: 20px 0 0 0;}
    .section .box h2{ font-size: 13px; padding: 10px; line-height: 1em;  }
    .section .box .tabs{ padding-top: 10px; }
    .section div.columns-layout{ padding-top: 20px; font-size: 12px; }
        .section .columns-layout div.col:first-child div.wrapper{ padding-left: 0; }
        .section .columns-layout div.col:last-child div.wrapper{ padding-right: 0; }
        .section div.columns-layout .col div.columns-layout{ padding-top: 0; }
    .section .table{ margin-top: 20px; }

.section div.meta{ padding-top: 8px; font-size: 13px; }
.section div.download{ background: #eee; padding: 15px; margin-top: 15px; border-radius: 4px; }
    .section .download .actions{ padding: 10px 0 0 0; margin-top: 10px; border-top: #ddd 1px solid; }
    .section .download .icon{ display: inline-block; width: 16px; height: 16px; vertical-align: middle; position: relative; top: -2px; margin-right: 3px; }

.text-page h2{ font-size: 30px; font-weight: bold; line-height: 1em; padding-bottom: 5px; padding-top: 20px; }
    .text-page h2:first-child{ padding-top: 10px; }
    .text-page p{ font-family: 'Georgia', sans-serif; font-size: 16px; line-height: 24px; padding-top: 15px; }
    .text-page h3{ font-size: 20px; padding: 20px 0 0 0; font-weight: bold; margin: 0; }
    .text-page ul li{ display: list-item; list-style-type: disc; list-style-position: outside; padding-top: 5px; }
    .text-page ul{ padding-left: 40px; padding-top: 12px; }

/* Profile header */
.profile-header .img{ width: 90px; float: left; display: inline; margin-right: 20px; }
    .profile-header .img img{ display: block; width: 100%; }
.profile-header .info{ width: calc(100% - 110px); float: left; display: inline; }
    .profile-header .info .actions{ display: block; padding-top: 10px; }

/* Simple list: title > ul */
div.list{ padding-top: 20px; }
    .list h3{ font-size: 18px; font-weight: bold; padding-bottom: 15px; }
    .list ul{ padding-left: 30px; }
    .list li{ list-style-type: disc; line-height: 1em; padding-top: 10px; }

/* Editable people */
.people-editable{ border-top: #ddd 1px solid; padding-top: 10px; margin-top: 10px;  }
    .people-editable .person{ margin-top: 5px; }
        .people-editable .person .small{ font-size: 12px; margin-left: 15px; }
    .people-editable .person:first-child{ margin-top: 0; }

/* People */
ul.people{ overflow: hidden; padding: 0 0 20px 0; -webkit-column-count: 4; -moz-column-count: 4; column-count: 4; -webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px; }
    .people li{ font-size: 13px; padding-top: 5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    ul.people.cols-3{ -webkit-column-count: 3; -moz-column-count: 3; column-count: 3;  }
    .people .icon, .people-detailed .icon{ display: inline-block; width: 17px; height: 16px; }
    .people .secondary{ font-size: 12px; padding-left: 10px; padding-top: 3px; }
    .people .fade{ color: #999; }

/* Detailed People (Representatives) */
ul.people-detailed{ overflow: hidden; padding: 10px 0 20px 0; -webkit-column-count: 3; -moz-column-count: 3; column-count: 3; -webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px; }
    ul.people-detailed.cols-2{ -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; }
    ul.people-detailed.no-padding{ padding: 0; }
    ul.people-detailed.full-padding{ padding: 0 20px; }
    .people-detailed li{ display: inline-block; padding-top: 15px; width: 100%; }
    .people-detailed a.img{ float: left; display: inline; width: 33px; height: 33px; margin-right: 43px; overflow: hidden; border-radius: 4px; }
        .people-detailed .img img{ width: 100%; height: auto; display: block; }
    .people-detailed div.info{ float: left; display: inline; margin-left: -33px; width: calc(100% - 43px); }
        .people-detailed div.info.no-image{ float: none; display: inline-block; margin-left: 0; width: 100%; }
        .people-detailed div.info.border{ border: #ddd 1px solid; padding: 10px; border-radius: 4px; box-sizing: border-box; }
        @media screen and (min-width: 1180px){ .people-detailed div.info.no-image .secondary{ padding-right: 50px; } }
        @media screen and (min-width: 1280px){ .people-detailed div.info.no-image .secondary{ padding-right: 100px; } }
        .people-detailed .info a{ display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; line-height: 1em; }
        .people-detailed .info div.meta{ font-size: 12px; line-height: 1em; padding-top: 5px; }
        .people-detailed .info div.properties{ font-size: 12px; line-height: 1em; padding-top: 0; }
            .people-detailed .info .properties span{ display: block; padding-top: 5px; }
                .people-detailed .info .properties span span{ display: inline; }
            .people-detailed .info .properties span.heading{ font-weight: bold; text-transform: uppercase; padding-top: 15px; font-size: 11px; }
            .people-detailed .info .properties span.label{ color: #888; padding-top: 10px; }
            .people-detailed .info .properties span.value{ padding-top: 5px; }
        .people-detailed .info div.secondary{ font-size: 11px; line-height: 16px; padding-top: 3px; }
        .people-detailed .info span.fade{ color: #999; font-style: italic; }
        .people-detailed .info strong{ margin-left: 4px; }
            .people-detailed .info strong:first-child{ margin-left: 0; }
        .people-detailed .info .meta .icon{ position: relative; top: -4px; }
        .people-detailed.checkable input[type="checkbox"]{ float: left; display: inline; margin: 10px 5px 0 0; }
        .people-detailed.checkable div.info{ width: calc(100% - 63px); }
    .columns-layout .box .people-detailed{ -webkit-column-count: 1; -moz-column-count: 1; column-count: 1; -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; padding-bottom: 0; }
        .columns-layout .box .people-detailed li{ padding: 10px; width: auto; display: block; overflow: hidden; }
        .columns-layout .box .people-detailed.boxed li{ width: 49%; }
           .columns-layout .box .people-detailed.columns li{ display: inline-block; width: 49%; box-sizing: border-box; margin: 0; vertical-align: top; }
        .columns-layout .box .people-detailed .meta{ line-height: 1.4em; }
            .columns-layout .box .people-detailed a{ display: inline; }
            .columns-layout .box .people-detailed .primary{ display: block; font-size: 14px; line-height: 1em; margin: 0; padding: 0; }

/* People detailed in boxes */
.people-detailed.boxed{ -webkit-column-count: initial; -moz-column-count: initial; column-count: initial; -webkit-column-gap: initial; -moz-column-gap: initial; column-gap: initial; overflow: hidden; margin: 0 10px; }
    .people-detailed.boxed.no-margin{ margin: 0; }
    .people-detailed.boxed li{ float: left; display: inline; width: 49%; border: #eee 1px solid; box-sizing: border-box; padding: 10px; margin: 10px 1% 0 1%; }
    .people-detailed.boxed li:nth-child(odd){ margin-left: 0; }
    .people-detailed.boxed li:nth-child(even){ margin-right: 0; }

.section .people-grouped h4{ padding: 0; margin: 10px 0 0 10px; font-size: 13px; }
.section .people-grouped.box h2{ font-size: 14px; }
.section .people-grouped h3{ margin: 0; }
    .section .boxed{ padding: 0; }

/* Alternative pagination (A-Z) */
.alt-pagination{ background: #f9f9f9; border: #ddd 1px solid; border-radius: 3px; text-align: center; padding: 14px; font-size: 13px; line-height: 1em; box-shadow: 0 1px 2px 0 #eee; margin-top: 20px; margin-bottom: 5px; }
    .alt-pagination a{ margin: 0 2px; padding: 4px; }
    .alt-pagination a.active{ background: #364f9f; color: #fff; padding: 4px; border-radius: 3px; }

/* Browse Map: Salaries by state */
.browse-map{ overflow: hidden; padding-top: 20px; }
    .browse-map div.map{ width: 70%; float: left; display: inline; min-height: 500px; position: relative; }
    .browse-map div.state-list{ width: 30%; float: left; display: inline; }
    .browse-map .state-list h3{ font-weight: bold; padding-bottom: 20px; font-size: 14px; }
    .browse-map .state-list ul{ height: 400px; border: #ddd 1px solid; overflow-x: hidden; overflow-y: auto; border-radius: 4px; }
    .browse-map .state-list a{ display: block; padding: 10px; font-size: 13px; line-height: 1em; }
    .browse-map .state-list a:hover{ background: #eee; }

/* Map styling */
.browse-map .state { fill:#798088; stroke:#fff; stroke-width:2px; stroke-opacity:1; }
    .browse-map .state:hover{ fill: #35529d; cursor: pointer; }
    .browse-map .state.active{ fill: #35529d; }
.browse-map .territory { fill:#798088; stroke:#fff; stroke-width:2px; stroke-opacity:1; }
.map-hint{ display: none; position: absolute; top: 0; left: 0; background: #fff; border: #ddd 2px solid; border-radius: 4px; font-weight: bold; font-size: 12px; padding: 10px; line-height: 1em; }

/* Box split in half */
div.box.split{ padding-bottom: 0; }
    .box.split div.half{ width: 50%; float: left; display: inline; }
    .box.split .half div.wp{ padding: 10px; }
    .box.split .half:last-child div.wp{ padding-right: 15px; }
    .box.split h3{ font-weight: bold; padding-bottom: 3px; }
        .box.split .half h3{ font-size: 13px; padding-top: 0; }
        .box.split .half .bullet-list{ margin-top: 10px; }
    .box.split h4{ font-size: 12px; font-weight: bold; }
    .box.split h5{ font-size: 12px; font-weight: bold; font-style: italic; }
    .box.split p{ font-size: 11px; line-height: 15px; }
        .box.split p.large{ font-size: 13px; line-height: 19px; margin-top: 10px; }
            .box.split p.large:first-child{ margin-top: 0; }
    .box.split div.more{ font-size: 12px; padding-top: 4px; }
    .box span.person-type{ font-size: 11px; font-style: italic; color: #555; font-weight: normal; }
        .box .person-type strong{ font-style: italic; }
        .box .person-type.d strong{ color: #342496; }
        .box .person-type.r strong{ color: #ce0011; }
    .box li.browse{ font-size: 12px; padding: 12px; }

/* Item list split in half */
.box .item-list.split li.item{ float: left; display: inline; width: 50%; padding: 5px 0 0 0; margin: 0; }
    .box .item-list.split .item div.wp{ padding: 8px 10px 0 10px; }
    .box .item-list.split .item h4{ font-size: 14px; line-height: 1em; }
    .box .item-list.split .item .meta{ padding-top: 3px; }
    .box .item-list.split{ padding-top: 3px; padding-bottom: 5px; overflow: hidden; }

.box ul.simple-list{ padding-left: 10px; font-size: 13px; }
    .box .simple-list li{ padding-top: 4px; }

.box .address{ overflow: hidden; padding: 10px 10px 20px 10px; }
    .box .address .img{ width: 200px; float: left; display: inline; }
        .box .address .img img{ width: 100%; display: block; }
    .box .address .text{ width: calc(100% - 220px); margin-left: 20px; float: left; display: inline; }

span.hint{ border-bottom: #aaa 1px dotted; }

.hidden{ display: none; }

/* Page title block */
.page-title h2{ font-size: 24px; line-height: 1em; font-weight: bold; }
    .page-title .meta{ font-size: 13px; margin-top: 10px; position: relative; }
    .page-title .meta .icon{ width: 14px; height: 14px; vertical-align: middle; display: inline-block; position: relative; top: -2px; margin-right: 5px; }
    .page-title .meta .right{ position: absolute; top: 0; right: 0; }

/* Big items */
.big-items div.item{ padding: 15px; border-top: #ddd 1px solid; position: relative; }
    .big-items div.item.right{ text-align: right; }
    .big-items div.item.item-heading{ padding: 10px 15px; }
    .big-items div.item.item-heading h3{ font-size: 14px; padding: 0; margin: 0; line-height: 1; }
    .big-items div.item.item-heading h3 .right{ font-weight: normal; top: 2px; }
    .big-items.compact{ margin-top: 10px; }
        .big-items.compact div.item{ padding: 10px 0; border-color: #eee; line-height: 1; }
        .big-items.compact div.item.separated{ border-color: #ccc; border-width: 2px 0 0 0; }
        .big-items.compact div.footnote{ margin-top: 0; line-height: 1em; padding-bottom: 10px; }
.big-items p{ font-size: 14px; line-height: 21px; }
.big-items h3{ font-size: 18px; font-weight: bold; line-height: 1.3em; padding-bottom: 5px; margin-bottom: 0; }
    .big-items h3 .right{ font-size: 12px; position: absolute; bottom: 6px; right: 0; }
.big-items h4{ font-size: 16px; font-weight: bold; line-height: 1.4em; padding-bottom: 2px; padding-top: 0; }
    .big-items h4 .light{ font-weight: normal; }
.big-items h5{ font-size: 14px; font-weight: normal; padding: 3px 0; }
.big-items div.secondary{ padding-top: 4px; font-size: 12px; line-height: 18px; }
.big-items div.secondary.before{ padding-top: 0; padding-bottom: 4px; }
.big-items div.text-block{ padding-top: 0; margin-bottom: 5px; }
.big-items .label{ color: #999; }
    .big-items .item div.actions{ position: absolute; right: 15px; bottom: 15px; font-size: 12px; line-height: 1em; }
    .big-items .item .actions a{ float: left; margin-left: 10px; }
    .big-items .item .actions a.icon{ position: relative; top: -2px; }
.big-items .img-info{ overflow: hidden; }
    .big-items .img-info div.img, .big-items .img-info div.info{ float: left; display: inline; }
    .big-items .img-info div.img{ margin-right: -140px; }
    .big-items .img-info div.info{ margin-left: 140px; }
    .big-items div.empty{ margin-top: 0; }

/* Colored items */
.item-blue, .table .row-blue td, .table .row-blue th{ background: #e2ebf8 !important; }
.item-green, .table .row-green td, .table .row-green th{ background: #e9f6e1 !important; }
.item-orange, .table .row-orange td, .table .row-orange th{ background: #fdf1e8 !important; }
.item-yellow, .table .row-yellow td, .table .row-yellow th{ background: #fefcde !important; }
.item-red, .table .row-red td, .table .row-red th{ background: #ffdede !important; }
.item-gray, .table .row-gray td, .table .row-gray th{ background: #f2f2f2 !important; }

/* Pagination */
div.pagination{ padding: 25px 0 5px 0; position: relative; font-size: 13px; }
    .pagination div.pages{ text-align: right; position: absolute; bottom: 10px; right: 0; }
    .pagination .pages a{ border: #ddd 1px solid; padding: 4px 8px; border-radius: 3px; line-height: 1em; color: #777; text-decoration: none; }
    .pagination .pages a:hover{ border-color: #bbb;}
    .pagination .pages a.active{ border-color: #ddd; color: #999; background: #eee; }
    .pagination .results div{ float: left; display: inline; }
    .pagination div.perpage, .pagination div.sort{ padding-left: 10px; margin-left: 10px; border-left: #ddd 1px solid; }

    div.pagination.invert{ padding: 20px 0; border-top: #eee 1px solid; }
        div.pagination.invert.no-border{ border-top: 0; }
        .pagination.invert .results{ position: absolute; top: 20px; right: 0; }
        .pagination.invert div.pages{ text-align: left; position: static; }
    
    .box div.pagination.invert{ padding: 10px; margin-top: 20px; }
    .box .pagination.invert .results{ right: 10px; top: 10px; }

/* Filters */
div.filters{ background: #f9f9f9; border-radius: 4px; margin: 15px 0 0 0; border: #ddd 1px solid; box-shadow: 0 1px 2px 0 #eee; overflow: hidden; }
    .filters .info-block{ padding: 0 0 10px 0; margin: 0 0 10px 0; border-bottom: #ddd 1px solid; }
    .filters .people-detailed{ padding: 0; }
        .filters .people-detailed li{ padding-top: 10px; }
    .filters .info{ font-size: 13px; padding: 0 0 10px 0;  color: #666; } 
    .filters div.inner{ padding: 15px; display: block; }
    .filters div.clear{ width: 100%; box-sizing: border-box; }
    .section .filters h4{ font-size: 13px; padding: 0 0 5px 0; }
    .filters div.element{ float: left; display: inline; width: 33%; margin-bottom: 10px; }
    .filters div.element.hidden{ display: none; }
    .filters div.element.w25{ width: 25%; }
    .filters div.element.w20{ width: 20%; }
    .filters div.element.w50{ width: 50%; }
    .filters div.element.w75{ width: 75%; }
    .filters div.element.w70{ width: 70%; }
    .filters div.element.w30{ width: 30%; }
    .filters div.element.w100{ width: 100%; }
    .filters .search{ padding: 0; overflow: hidden; margin: 0; }
        .filters .search div.input{ width: 100%; overflow: hidden; }
            .filters .search input[type="text"]{ width: calc(100% - 125px); float: left; display: inline; margin-right: 10px; }
            .filters .search .btn{ width: 100px; float: left; display: inline; margin: 0; }
    .filters div.radios{ padding-top: 10px; }
        .filters .radios div.input{ float: left; display: inline; width: 35%; }
        .filters .radios input{ float: left; display: inline; margin: 3px 5px 0 0; }
        .filters .element .radios label{ display: inline; margin-right: 20px; }
        .filters .element .radios .boxes label{ font-weight: normal; }
        .filters .element .radios input{ display: inline; float: none; }
    .filters div.element:last-child div.input{ padding-right: 0; }
        .filters div.element.clearboth{ clear: both; }
    .filters div.input{ padding-right: 30px; }
    .filters .input label{ display: block; font-size: 13px; font-weight: bold; }
    .filters .input label.inline{ display: inline; font-weight: normal; }
    .filters .input input[type="text"]{ font-family: 'Arial', sans-serif; font-size: 13px; border: #ccc 1px solid; border-radius: 4px; padding: 5px; }
    .filters .period input{ width: 70px; }
    .filters .period input[type="radio"]{ width: auto; margin-left: 15px; margin-top: 10px; }
    .filters .period span{ font-size: 12px; }
    .filters div.checkbox{ padding-top: 18px; }
        .filters .checkbox label{ display: inline; font-weight: normal; }
        .filters .checkbox input{ position: relative; top: -1px; }
    .filters .submit, .form-box .filters .submit{ text-align: right; background: #eee; border-top: #ddd 1px solid; padding: 8px 15px; }
        .filters .submit .btn{ position: static; }
        .filters .submit.left{ text-align: left; position: relative; }
        .filters .submit.left .right{ position: absolute; top: 8px; right: 15px; }
            .filters .submit.left .right .btn{ margin-left: 10px; }
    div.filters.simple{ padding: 10px; position: relative; }
        .filters.simple select{ min-width: 200px; margin-right: 10px; }
    div.filters.no-margin{ margin-top: 0; }
    .filters .inline-checkboxes input[type="checkbox"]{ display: inline; margin: 0 3px 0 10px; width: auto; }
    .filters .input.inline-checkboxes label{ display: inline; }

    .filters .subgroup{ background: #fff; border: #ddd 1px solid; box-sizing: border-box; border-radius: 4px; margin: 5px 0 20px 0; }

    .filters div.checklist{ background: #fff; border: #ddd 1px solid; padding: 5px 10px 10px 10px; font-size: 12px; margin-right: 15px; height: 200px; overflow-x: hidden; overflow-y: auto; border-radius: 4px; }
    .filters .checklist div.checkbox{ padding-top: 5px; }
    .checklist input[type="checkbox"], .checklist input[type="radio"]{ margin-right: 5px; display: inline-block; }
    .checklist div.checkbox.secondary{ padding-left: 20px; }

    .filters .inline div.input{ padding-top: 15px; }
    .filters .inline div.input.separator{ padding-top: 15px; margin-top: 15px; border-top: #eee 1px solid; }
    .filters .inline div.input:first-child{ padding-top: 0; }
    .filters .inline .input label{ display: inline-block; width: 250px; font-weight: normal; }
    .filters .inline .input input[type="text"]{ display: inline-block; width: 50%; }
        .filters .inline .input input[type="text"].w100{ width: 100%; }
    .filters .inline .boxes{ display: inline-block; width: 60%; }
    .filters .inline .input .boxes input[type="radio"]{ display: inline-block; float: none; }
    .filters .inline .input .boxes label{ display: inline-block; width: auto; margin-right: 15px; }

    .filters .text-button{ margin-top: 15px; overflow: hidden; }
    .filters .text-button input[type="text"]{ width: 80%; width: calc(100% - 100px); float: left; display: inline; }
    .filters .text-button .btn{ width: 70px; float: left; display: inline; margin-left: 10px; }

    .filters .more-options{ text-align: center; border-top: #ddd 1px solid; margin-top: 40px; }
         .filters .more-options span{ position: relative; font-size: 12px; color: #364F9F; background: #f9f9f9; padding: 5px 20px; top: -12px; cursor: pointer; font-weight: bold; }
            .filters .more-options span:hover{ text-decoration: underline; }

    .search-options-split{ overflow: hidden; position: relative; }
        .search-options-split .or{ position: absolute; width: 40px; height: 40px; border: #ddd 1px solid; background: #fff; top: 180px; left: 50%; margin-left: -20px; border-radius: 40px; text-align: center; color: #999; }
            .search-options-split .or span{ display: block; padding-top: 9px; font-style: italic; }
        .search-options-split div.col{ width: 50%; float: left; display: inline; box-sizing: border-box; padding-left: 50px; }
        .search-options-split div.col.first{ padding-right: 50px; padding-left: 0; border-right: #ddd 1px solid; }
        .search-options-split div.submit{ padding: 10px 0 30px 0; background: none; text-align: left; }
        .filters .search-options-split div.checklist{ margin-right: 0; }
        .search-options-split h3{ font-size: 16px; font-weight: bold; }
        .search-options-split h4{ font-size: 13px; font-weight: bold; padding-bottom: 5px; }
        .search-options-split h5{ font-size: 13px; font-weight: bold; font-style: italic; padding: 20px 0 0 0;}
        .search-options-split div.group{ margin-top: 15px; }
        .search-options-split .footnote{ font-size: 12px; text-align: center; padding-bottom: 20px; }

    .filters .small-checkbox{ padding: 10px 0; font-size: 12px; }
    .filters .small-checkbox input{ margin-right: 5px; margin-top: 4px; display: inline-block; vertical-align: top; display: inline-block; }
    .filters .small-checkbox label{ display: inline-block; width: 90%; vertical-align: top; }

    .all-none{ font-size: 11px; }
    .all-none span{ cursor: pointer; }
    .all-none span:hover{ text-decoration: underline; }



/* Indented list: Committees */
ul.indented{ padding: 20px 0; }
    .indented ul{ padding-left: 40px; }
    .indented a.bold{ font-weight: bold; }
    .indented li{ padding: 10px 0 0 0; }
    .indented li{ font-size: 16px; }
        .indented li li{ font-size: 14px; list-style-type: disc; }
        .indented li.nobullet{ list-style-type: none; }
    .indented a.img{ display: inline-block; width: 35px; height: 35px; vertical-align: middle; border-radius: 4px; margin-right: 8px; overflow: hidden; }
        .indented .img img{ max-width: 100%; display: block; }

/* Empty */
div.empty{ margin: 30px 0 0 0; padding: 15px; background: #eee; color: #999; font-size: 14px; line-height: 1em; border-radius: 4px; }
    
/* Buttons */
.btn{ display: inline-block; background: #364f9f; color: #fff; outline: none; line-height: 1em; padding: 6px 12px; border: none; border-radius: 4px; font-family: 'Arial', sans-serif; font-size: 14px; cursor: pointer; text-decoration: none !important; }
    .btn:hover{ background: #415DB8; }
.btn.gray{ background: #aaa; color: #fff !important; border: #aaa 1px solid; box-shadow: none; }
    .btn.gray:hover{ background: #999; color: #fff !important; }
.btn.green{ background: #50ac3a; color: #fff !important; border: #50ac3a 1px solid; box-shadow: none; }
    .btn.green:hover{ background: #57B641; color: #fff !important; }

.btn.small{ font-size: 12px; line-height: 1; padding: 6px 10px 5px 10px; }

/* Big submit: bottom of the page */
div.big-submit{ border-top: #eee 1px solid; text-align: center; margin-top: 20px; padding-top: 20px; }
    .big-submit .btn{ position: static; }

/* Table */
table.table{ margin-top: 15px; width: 100%; }
    .table td, .table th{ padding: 5px; font-size: 12px; line-height: 18px; vertical-align: top; }
        .table th{ font-weight: bold; font-size: 11px; text-transform: uppercase; }
        .table th a span{ font-family: 'Verdana', 'Tahoma', sans-serif; }
        .table td{ border-top: #ddd 1px solid; }
        .table .icon{ display: block; }
        .table .file-list{ line-height: 25px; }
            .table .file-list .icon{ display: inline-block; width: 16px; height: 16px; vertical-align: middle; position: relative; top: -2px; margin-right: 3px; }
            .table .file-list ul{ overflow: hidden; }
            .table .file-list li{ float: left; display: inline; width: 50%; }
            .table .file-list li .pro-badge{ margin-left: 5px; }
            .table .file-list li .btn{ font-family: 'Lucida Grande', 'Lucida Sans Unicode', sans-serif; font-size: 10px; padding: 2px 4px; line-height: 1; margin-left: 5px; display: inline-block; }
        .table h4{ padding: 0; font-size: 14px; line-height: 1.3em; }
    
        .table .strong{ font-weight: bold; }
        .table .right{ text-align: right; }
        .table .center{ text-align: center; }
            .table .center .icon{ margin: auto; margin-top: 5px; }
        .table.striped tr:nth-child(odd) td{ background: #f6f6f6; }
        .table .secondary{ font-weight: normal; padding-left: 10px; }
        .table .tiny{ font-size: 10px; font-family: 'Lucida Grande', sans-serif; }
        .table .total td{ border-color: #aaa; padding: 10px 5px 20px 5px; font-weight: bold; background: #fff !important; }
        table p.info{ padding-top: 5px; font-size: 13px; color: #666; }

    .table.key-value td{ width: 70%; }
    .table.key-value td:first-child{ width: 30%; color: #999; }
 
div.table-blocks{ position: relative; padding-top: 20px; margin-top: 10px; }
    .table-blocks .blocks{ overflow: hidden; -webkit-column-count: 2; -moz-coulmn-count: 2; column-count: 2; -webkit-column-gap: 50px; -moz-column-gap: 50px; column-gap: 50px; }
    .table-blocks .table th, .table-blocks .table td{ font-size: 13px; }
    .table-blocks div.table-block{ width: 100%; box-sizing: border-box; display: inline-block; }
    .table-blocks h4{ padding-bottom: 0; padding-top: 0; }

div.inner-navigation{ background: #eee; width: 100%; height: auto; margin-top: 20px; border-radius: 5px 5px 0 0; border-bottom: #ddd 1px solid; }
    .inner-navigation li{ float: left; display: inline; position: relative; }
    .inner-navigation a{ display: block; line-height: 1em; padding: 12px 15px; color: #444; text-decoration: none; border-bottom: #ddd 1px solid; position: relative; top: 1px; }
    .inner-navigation a:hover, .inner-navigation .active a{ background-color: #f5f5f5; border-bottom-color: #364f9f; color: #364f9f; }
    .inner-navigation .disabled a{ color: #bbb; }
    .inner-navigation .disabled a:hover{ border-bottom-color: #bbb; }

    .inner-navigation .blue.active a, .inner-navigation .blue a:hover{ color: #3dace5; border-color: #3dace5; }
    .inner-navigation .green.active a, .inner-navigation .green a:hover{ color: #75c123; border-color: #75c123; }
    .inner-navigation .burgundy.active a, .inner-navigation .burgundy a:hover{ color: #c9351c; border-color: #c9351c; }
    .inner-navigation .pink.active a, .inner-navigation .pink a:hover{ color: #e83b84; border-color: #e83b84; }
    .inner-navigation .light-blue.active a, .inner-navigation .light-blue a:hover{ color: #5b63f3; border-color: #5b63f3; }
    .inner-navigation .yellow.active a, .inner-navigation .yellow a:hover{ color: #d1b600; border-color: #d1b600; }
    .inner-navigation .purple.active a, .inner-navigation .purple a:hover{ color: #6122e1; border-color: #6122e1; }
    .inner-navigation .red.active a, .inner-navigation .red a:hover{ color: #f71a2f; border-color: #f71a2f; }
    .inner-navigation .orange.active a, .inner-navigation .orange a:hover{ color: #f98407; border-color: #f98407; }

    .inner-navigation a.pro{ background: url('/images/new_design/nav-icons.png') right 8px no-repeat; color: #bbb; padding-right: 40px; }
    .inner-navigation a.pro:hover{ color: #bbb; }
    .inner-navigation li li a.pro{ color: #bbb !important; background-position: right 6px; }
    .inner-navigation li li a.disabled{ color: #bbb !important; }

    .inner-navigation li ul{ display: none; }
    .inner-navigation li:hover ul{ display: block; position: absolute; top: 40px; left: 0; box-shadow: 0 1px 2px 0 #ddd; background: #f5f5f5; font-size: 13px; border: #ddd 1px solid; border-width: 0 1px 1px 1px; z-index: 1; }
    .inner-navigation li li{ display: block; float: none; }
    .inner-navigation li li a{ min-width: 200px; border: 0; padding: 10px 15px; line-height: 1em; font-size: 13px; color: #444 !important; }
    .inner-navigation li li a:hover{ background-color: #fff; border: 0; }

/* FAQs */
.faq div.question, .section .faq div.question{ padding: 20px 0 10px 0; }
    .section .faq h3{ font-size: 18px; font-weight: bold; line-height: 1em; padding: 0 0 20px 0; }

.next-prev-nav{ padding: 10px 0; border-top: #ddd 1px solid; margin-top: 10px; position: relative; }
    .next-prev-nav .next{ position: absolute; top: 10px; right: 0; }

.simple-list li{ list-style-type: disc; list-style-position: inside; padding: 3px 0; }
    .simple-list li ul{ padding-left: 20px; }
.basic-list li{ margin-top: 5px; }
    .basic-list li:first-child{ margin-top: 0; }
    .basic-list li input[type="text"]{ width: 100%; }

/* Icons */
.icon{ width: 16px; height: 16px; background: url('/images/new_design/icons.png') no-repeat; }
    .icon.pdf{ background-position: -3px -465px; }
    .icon.ical{ background-position: -3px -495px; }
    .icon.kst{ background-position: -2px -516px; }
    .icon.money{ background-position: -2px -534px; }

/* Header - App Specific */
div.header{ padding: 30px 0 0 0; box-shadow: 0 1px 3px 0 #ccc; }
 .header div.width{ padding: 20px; }
 .header div.right{ right: 20px; top: 26px;}

/* Footer - App Specific */
.footer{ padding: 0 20px; }
 .footer div.width{ position: relative; }





/* Page title block */
.page-title h2{ font-size: 24px; line-height: 1em; font-weight: bold; }



/* Filters */
div.filters{ background: #f9f9f9; border-radius: 4px; margin: 15px 0 0 0; border: #ddd 1px solid; box-shadow: 0 1px 2px 0 #eee; overflow: hidden; }
    .filters div.inner{ padding: 15px; display: block; }
    .filters div.clear{ width: 100%; }
    .filters div.element{ float: left; display: inline; width: 33%; margin-bottom: 10px; }
    .filters div.element.w50{ width: 50%; }
    .filters div.element.w100{ width: 100%; }
    .filters div.element.single div.input{ padding-right: 15px !important; }
    .filters div.radios{ padding-top: 10px; }
        .filters .element div.radios{ padding-top: 0; }
        .filters .radios div.input{ float: left; display: inline; width: 35%; }
        .filters .radios input{ float: left; display: inline; margin: 3px 5px 0 0; }
    .filters div.element:last-child div.input{ padding-right: 0; }
        .filters div.element.clearboth{ clear: both; }
    .filters div.input{ padding-right: 30px; }
    .filters .input label{ display: block; font-size: 13px; font-weight: bold; }
    .filters .input label.inline{ display: inline; font-weight: normal; }
    .filters .select select, .filters .text input, .filters input.w100{ display: block; width: 100%; }
    .filters .input input[type="text"]{ font-family: 'Arial', sans-serif; font-size: 13px; border: #ccc 1px solid; border-radius: 4px; padding: 5px; }
    .filters .period input{ width: 70px; }
    .filters .period input[type="radio"]{ width: auto; margin-left: 15px; margin-top: 10px; }
    .filters .period span{ font-size: 12px; }
    .filters div.checkbox{ padding-top: 18px; }
        .filters .checkbox label{ display: inline; font-weight: normal; }
        .filters .checkbox input{ position: relative; top: -1px; }
    .filters .submit{ text-align: right; background: #eee; border-top: #ddd 1px solid; padding: 8px 15px; }
    div.filters.simple{ padding: 10px; position: relative; }
        .filters.simple select{ min-width: 200px; margin-right: 10px; }


/* Buttons */
.btn{ display: inline-block; background: #364f9f; color: #fff; outline: none; line-height: 1em; padding: 6px 12px; border: none; border-radius: 4px; font-family: 'Arial', sans-serif; font-size: 14px; cursor: pointer; text-decoration: none !important; }
    .btn:hover{ background: #415DB8; }
.btn.gray{ background: #aaa; color: #fff !important; border: #aaa 1px solid; box-shadow: none; }
    .btn.gray:hover{ background: #999; color: #fff !important; }


/* Pricing */
div.pricing{ margin: 30px auto; max-width: 1180px; min-width: 960px; position: relative; padding: 0 20px; }
    .pricing h2{ text-align: center; font-size: 30px; font-family: 'Roboto Slab', serif; font-weight: 300; line-height: 1em; padding: 13px 0; }
    .pricing h2 .legi{ color: #6A93FD; }
    .pricing h2 .storm{ color: #828691; }
    .pricing .best-value{ position: absolute; left: 0; top: 73px; width: 20%; height: 37px;  background: url('/images/new_design/best-value.png') 50% 0 no-repeat; text-indent: -5000px; z-index: 1; margin-left: 17px; }

div.pricing-table{ margin: 30px 0 0 0; background: #fff; border: #ddd 1px solid; border-radius: 4px; overflow: hidden; position: relative; box-shadow: 0 1px 2px 0 #ddd; }
    .pricing-table td, .pricing-table th{ width: 20%;  vertical-align: top; }
    .pricing-table td{ border-left: #eee 1px solid;  }
    .pricing-table td:first-child, .pricing-table th:first-child{ width: 20%; border-left: 0; }

    .pricing th{ text-align: center; padding: 35px 15px 25px 15px;}
    .pricing th span{ display: block; }
    
    .pricing th.green{ background: #50ac3a; color: #fff; }
    .pricing th.blue{ background: #4c7de3; color: #fff; }
    .pricing th.dark{ background: #3b3c45; color: #fff; }
    .pricing th.light{ background: #D7DAF0; }
    .pricing th.gray{ background: #aaa; color: #fff; }

    .pricing th .name{ font-size: 15px; line-height: 1em; font-weight: bold; text-transform: uppercase; }
    .pricing .price{ font-family: 'Roboto Slab'; font-weight: 300; font-size: 18px; line-height: 1em; padding: 12px 0 10px 0; }
    .pricing .price small{ font-size: 12px; opacity: .8; }
    .pricing .price-info{ font-size: 13px; opacity: .8; font-family: 'Roboto Slab'; font-weight: 400; }
    .pricing .users{ font-size: 13px; padding-top: 4px; }

    .pricing .description td{ padding: 15px; font-size: 13px; line-height: 18px; background: #f5f5f5; font-family: 'Roboto Slab'; font-weight: 400; }

    .pricing .features td{ padding: 15px; font-size: 13px; line-height: 1.4em; }
    .pricing .features li{ padding-top: 10px; list-style-type: disc; list-style-position: outside; }
    .pricing .features li.strong{ font-weight: bold; }
    .pricing .features ul{ padding-left: 20px; }
    .pricing .features .plus{ background: #f5f5f5; margin-top: 15px; border-radius: 4px; overflow: hidden; margin-bottom: 5px; }
    .pricing .features .plus ul{ padding: 10px 15px 15px 30px; }
    .pricing .features .plus li{ padding-top: 5px; }
    .pricing .features h4{ font-weight: bold; font-size: 13px;background: rgb(80, 172, 58); color: #fff; padding: 8px 15px; text-transform: uppercase; }

    .pricing .discount-wrapper td{ border-top: #eee 1px solid; border-bottom: #eee 1px solid;  }
    .pricing .discount{ padding: 15px; font-size: 13px; text-align: center; background: #CDEFC5; color: rgb(51, 119, 35); }

    .pricing .demo em{ display: block; text-align: center; color: #aaa; padding: 5px 0 0 0; }
    .pricing .demo td{ padding: 20px 15px 5px 15px; }
    .pricing .actions td{ padding: 0 15px 20px 15px; }
    .pricing .btn{ display: block; width: auto; text-align: center; font-size: 13px; line-height: 1em; padding: 10px 0; text-transform: uppercase; }

    .pricing .select-users td{ border-top: #eee 1px solid; padding: 20px; }
        .pricing .select-users div.input{ margin-top: 10px; position: relative; font-size: 13px; }
        .pricing .select-users span.cost{ position: absolute; top: 0; right: 0; }

    .pricing .select td{ text-align: center; border-bottom: #eee 1px solid; padding: 10px 0; }
    .pricing .select input[type="radio"]{ display: none; }
    .pricing .select div.check-box{ width: 30px; height: 30px; border: #ddd 2px solid; overflow: hidden; position: relative; cursor: pointer; border-radius: 5px; margin: auto; }
        .pricing .select div.check-box:hover{ border-color: #ccc; }
        .pricing .select .check-box div.check{ width: 14px; height: 14px; position: absolute; top: -15px; left: 8px; background: url('/images/new_design/nav-icons.png') 0 -379px no-repeat; border-radius: 4px; transition: top .2s; }
        .pricing .select .check-box.checked{ border-color: #50ac3a !important; }
            .pricing .select .check-box.checked div.check{ top: 8px; }

    .pricing table .footnote{ line-height: 15px; }


/* Full form container: wrapper for form-box below */
.full-form-container{ padding: 30px 0; }
    .full-form-container h2{ text-align: center; font-size: 30px; font-family: 'Roboto Slab', serif; font-weight: 300; line-height: 1em; padding: 13px 0; }
    .full-form-container h2 .legi{ color: #6A93FD; }
    .full-form-container h2 .storm{ color: #828691; }
    .full-form-container h2 sup{ text-transform: uppercase; font-family: 'Arial', sans-serif; color: #ff443f; font-size: 18px; font-weight: bold; }

    .full-form-container div.pricing{ width: 960px; margin-top: 40px; }
    .full-form-container .pricing .best-value{ top: -13px; width: 25%; }

    .full-form-container .big-submit{ text-align: center; padding-top: 10px; border-top: 0; }
        .full-form-container .big-submit .btn{ font-size: 18px; padding: 10px 18px; }


/* Form box: Used for subscription form, etc */
div.form-box{ background: #fff; border: #ddd 1px solid; border-radius: 4px; overflow: hidden; box-shadow: 0 1px 2px 0 #ddd; width: 960px; margin: 20px auto 20px auto; }
    div.form-box.small{ width: 500px; }
    .form-box .table-wrapper{ padding: 20px 20px 0 20px; }
    .form-box div.form-wrapper{ border-top: #ddd 1px solid; }
    .form-box .cols div.col{ float: left; display: inline; width: 50%; box-sizing: border-box; }
    .form-box .fields{ padding: 20px; position: relative; }
        .form-box .fields.smaller div.input{ width: 60%; }
    .form-box .fields h3{ font-family: 'Roboto Slab', serif; font-size: 18px; padding: 30px 0 10px 0; }
    .form-box .fields.not-inline h3{ padding-bottom: 0; }
    .form-box .fields h3:first-child{ padding-top: 0; }
    .form-box .fields h4{ font-family: 'Roboto Slab', serif; font-size: 16px; padding: 20px 0 0 0; }
    .form-box input[type="text"], .form-box input[type="password"], .form-box input[type="email"], .form-box input[type="url"], .form-box textarea{ border: #ddd 1px solid; font-family: 'Arial', sans-serif; font-size: 13px; padding: 8px; border-radius: 4px; box-sizing: border-box; }
    .form-box input[type="text"]:focus, .form-box input[type="password"]:focus, .form-box input[type="email"]:focus, .form-box textarea:focus{ border-color: #c9c9c9; }
        .form-box div.input{ margin-top: 10px; }
            .form-box .filters .inline div.input{ margin-top: 0; }
        .form-box .not-inline .input label, .form-box .not-inline .input input[type="text"], .form-box .not-inline .input input[type="email"], .form-box .not-inline .input input[type="password"], .form-box .not-inline .input textarea{ display: block; float: none; width: 100%; }
        .form-box .not-inline .input.checkbox label{ display: inline-block; width: auto; padding-left: 5px; }
        .form-box .input label{ float: left; display: inline; width: 40%; font-size: 13px; padding: 5px 0; }
        .form-box .input label.error{ clear: both; float: none; padding-left: 40%; display: block; }
        .form-box .not-inline .input label.error{ padding-left: 0; }
        .form-box .input input[type="text"], .form-box .input input[type="password"], .form-box .input input[type="email"], .form-box .input input[type="url"], .form-box .input textarea, .form-box .input .inline-items{ display: inline; width: 60%; }
            .form-box .input .inline-items select, .form-box .input .inline-items input[type="checkbox"], .form-box .input .inline-items label{ display: inline; float: none; width: auto; font-weight: normal; }
        .form-box .input input[type="text"].small{ width: 20%; }
        .form-box .input textarea{ height: 120px; }
        .form-box select{ width: 60%; box-sizing: border-box; font-size: 13px; font-family: 'Arial', sans-serif; border: #ddd 1px solid; background: #fff; padding: 5px; display: inline-block; }
            .form-box select.no-width{ width: auto;  }
        .form-box .expiration select{ width: 20%; margin-right: 5px; }
        .form-box .inline-radios{ padding-top: 10px; }
        .form-box .inline-radios .title{ display: block; padding-bottom: 5px; }
        .form-box .inline-radios label{ margin-right: 20px; }
        .form-box .inline-radios input{ margin-right: 5px; }
    .form-box div.checkbox{ clear: both; padding-top: 5px; }
    .form-box .terms{ clear: both; padding-top: 10px; }
        .form-box .terms label{ display: inline-block; width: 90%; vertical-align: top; padding-left: 5px; font-size: 13px; }
    .form-box .footnote{ line-height: 16px; padding-top: 10px; }
    .form-box .submit{ padding: 15px 0 0 0; border-top: #ddd 1px dotted; margin-top: 15px; position: relative; }
        .form-box .submit .right{ position: absolute; top: 18px; right: 0; }
    .form-box .required label:after{ content: ' *'; color: red; }
    .form-box .text-block{ padding-top: 0px; }
        .form-box .col .text-block{ padding-top: 10px; }
        .form-box .text-block p:first-child{ padding-top: 0px; }
        .form-box div.dependent{ clear: both; }

    .form-box .single label{ width: auto; display: inline-block; float: none; margin-right: 10px; }
    .form-box .single input[type="text"]{ width: 180px; display: inline-block; margin-right: 10px; }
    .form-box .single input[type="button"]{ padding: 9px; display: inline-block; }
    .form-box .single select.small{ width: auto; }

    .form-box .tip{ font-size: 13px; padding-left: 40%; }
    .form-box .not-inline .tip{ padding-left: 0; }
    .form-box .tip.small{ font-size: 12px; line-height: 1.5em; padding-top: 5px; color: #666; }
    .form-box label.error{ font-size: 12px; padding-left: 40%; font-size: 11px; color: red; }

    .form-box div.total{ position: absolute; bottom: 5px; right: 0; font-family: 'Roboto Slab'; color: #828691; font-size: 18px; font-weight: 300; padding: 20px; text-align: right; }
    .form-box .total p{ padding-top: 14px; line-height: 1; }
    .form-box .total p.small{ font-size: 14px; }
    .form-box .total p.big{ padding-top: 20px; }
    .form-box .total .small strong{ font-size: 14px; }
    .form-box .total strong{ font-weight: 300; font-size: 30px; margin-left: 5px; color: #000; }
    .form-box .table div.total{ position: static; text-align: right; padding: 10px 0; }
        .form-box .table .total strong{ font-size: 24px; }
        .form-box .table .subtotal{ vertical-align: bottom; padding: 10px 0; }
        .form-box .table .subtotal strong{ font-size: 16px; font-family: 'Roboto Slab'; margin-left: 5px; }

/* Map elements */
.leaflet-container .people-detailed{ font-size: 14px; line-height: 21px; }
.leaflet-container a{ font-weight: normal; color: #364f9f; }
.leaflet-container ul.people-detailed{ overflow: hidden; padding: 0; -webkit-column-count: 1; -moz-column-count: 1; column-count: 1; -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; } 
.leaflet-container .people-detailed li{ padding-top: 10px; }
    .leaflet-container .people-detailed li:first-child{ padding-top: 0; }
.leaflet-container div.actions{ padding-top: 10px; }
    .leaflet-container a.btn{ color: #fff !important; }
        
/* Steps: Used for 4-step registration */
ul.steps{ overflow: hidden; }
    .steps li{ float: left; display: inline; width: 25%; box-sizing: border-box; text-align: center; line-height: 1em; background: url('/images/new_design/step-separator.gif') right 50% no-repeat; padding: 23px 9px 23px 0; }
        .steps li a{ color: #444; }
    .steps.small li{ width: 20%; background: url('/images/new_design/step-separator.gif') right 50% no-repeat; padding: 15px 9px 15px 0; font-size: 12px; }
    .steps.small.has-links li{ padding: 0; }
        .steps.small.has-links li a, .steps.small.has-links li span.link{ padding: 15px 9px 15px 0; display: block; }
    .steps li:last-child{ background: none; padding-right: 0; }
    .steps li.active{ background: #4c7de3 url('/images/new_design/step-active.gif') right 50% no-repeat; color: #fff; }
        .steps .active a, .steps .active span.link{ color: #fff; }
        .steps li.active:last-child{ background-image: none; }
    .steps li.before{ background-image: url('/images/new_design/step-before.gif'); }
    .steps li.before-active{ color: #fff; background: #4c7de3 url('/images/new_design/step-before-active.gif') right 50% no-repeat; }
        .steps .before-active a{ color: #fff; }

/* PDF */
.pdf-display{ background: #fff; padding: 20px; }
    .pdf-display .top{ background: #fff; max-width: 960px; margin: auto; }
        .pdf-display .top .heading{ border-bottom: #ddd 1px solid; padding-bottom: 20px; width: 100%; }
            .pdf-display .top .heading h2{ font-size: 24px; font-weight: bold; width: 50%; float: left; display: inline; line-height: 1; padding: 15px 0; }
            .pdf-display .top .heading .download{ float: left; display: inline; width: 50%; background: #eee; border-radius: 5px; font-size: 13px; overflow: hidden; padding: 10px; box-sizing: border-box; }
                .pdf-display .top .heading .download img{ float: left; display: inline; margin: 3px 10px 0 0;}
        .pdf-display .browse-search{ width: 100%; padding: 20px 0; }
            .pdf-display .browse-search .search, .pdf-display .browse-search .browse{ float: left; display: inline; width: 50%; }
            .pdf-display .browse-search input[type="text"]{ font-size: 14px; font-family: 'Arial', sans-serif; padding: 5px; border: #ddd 1px solid; border-radius: 4px;}
                .pdf-display .browse-search input[type="text"].small{ width: 50px; text-align: center; }
                .pdf-display .browse-search input[type="text"].search{ width: calc(100% - 150px); margin-right: 5px; }
            .pdf-display .browse-search .label{ font-weight: bold; margin-right: 10px; }
            .pdf-display .browse-search .search .hint{ display: inline-block; margin-left: 10px }

.responsive-split{ overflow: hidden; }
    .responsive-split div.col{ float: left; display: inline; width: 50%; }

@media screen and (max-width: 1180px){
    .responsive-split div.col{ float: none; display: block; width: auto; }
}