/* typography */
html,
body {
  font: 1em/1.5 Arial, Helvetica, sans-serif;
  color: #332929;
  font-weight: 400;
}

.pdf-file:after,
.video-link:after,
[href$=".pdf"]:after,
[href$=".jpg"]:after {
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: normal;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.4;
}

.csp-body-font,
.content-heading,
.group-header {
  font-size: 16px;
  font-size: 1rem;
}

.csp-small-font {
  font-size: 12px;
  font-size: 0.75rem;
}

.ia-treasurer-announce,
.article-footnotes,
label[for=remember] {
  font-size: 14px;
  font-size: 0.875rem;
}

.title-font {
  font-size: 27px;
  font-size: 1.6875rem;
}

.panel-title,
.navmenu-fixed-left.offcanvas-xs li > a {
  font-size: 15px;
  font-size: 0.9375rem;
}

.csp-slideIn .panel > .list-group,
.csp-slideIn .panel > .panel-collapse > .list-group {
  font-size: 16px;
  font-size: 1rem;
}

.content-heading {
  font-weight: 700;
  line-height: 1.5;
}

.list-heading,
.phone {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3334;
}

.csp-content h1,
.csp-content .topic-heading,
.csp-content .lead-in {
  font-family: "EB Garamond", Georgia, serif;
}

.csp-content .panel-title a,
.csp-content .portfolio-row .content-heading,
.csp-content .portfolio-heading {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.3334;
}

.csp-content .topic-heading-secondary,
.csp-content .chart-heading {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3334;
}

.csp-content .lead-in {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.3334;
  color: #555;
}

.csp-content h1 {
  font-size: 40px;
  font-size: 2.5rem;
  line-height: 1.1852;
  font-weight: 300;
  margin-top: 0.5em;
}

.csp-content .panel-title a {
  line-height: 1.2;
}

.portfolio-row .content-heading {
  font-weight: normal;
}

.csp-xref-heading {
  font-size: 22px;
  font-size: 1.375rem;
  font-family: "EB Garamond", Georgia, serif;
}

.topic-heading,
.aside-section-head,
.csp-faqList dt {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 300;
}

.csp-faqList dt,
.csp-content .panel-title a {
  font-size: 20px;
  font-size: 1.25rem;
}

.csp-aside .aside-section-head {
  font-family: "EB Garamond", Georgia, serif;
}

.csp-xref-topic-heading {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 18px;
  font-size: 1.125rem;
}

.enroll-step {
  font-family: "EB Garamond", Georgia, serif;
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 1.3334;
}

.enroll-step:before {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.166666666666667;
}

@media (min-width: 48em) {
  .enroll-step:before {
    font-size: 42px;
    font-size: 2.625rem;
  }
}

/* _base */
a {
  color: #3d75d0;
}

a:visited {
  color: #712599;
}

.inline-link {
  display: inline;
  text-decoration: underline;
}

.color-accent-text {
  color: #1579BE;
}

.nobreak {
  white-space: nowrap;
}

.skipToContent {
  position: absolute;
  top: 0;
  left: -8em;
  z-index: 9;
  display: block;
  text-align: center;
  background: #fff;
  padding: 0.25em 0.75em;
  transition: transform 0.5s;
}

.skipToContent:focus {
  transform: translateX(8em);
}

.logos {
  padding: 0.5em 0 0;
}

@media (min-width: 48em) {
  .logos {
    padding: 0.8125em 0 0.375em;
  }
}

.logos .csp-logo {
  display: inline-block;
  width: 94px;
  height: 35px;
  margin-right: 0.5em;
  vertical-align: bottom;
  background: url(../img/csi_logos_sprite_darker.png) no-repeat;
  background-size: cover;
  background-position: 0 -28px;
  margin-bottom: 5px;
}

.logos .csp-logo:hover, .logos .csp-logo:focus {
  text-decoration: none;
}

@media (min-width: 30em) {
  .logos .csp-logo {
    margin-right: 1em;
  }
}

@media (min-width: 48em) {
  .logos .csp-logo {
    width: 262px;
    height: 77px;
    background-position: 0 0;
    margin-bottom: 0;
    transform: translateX(-8px);
  }
}

.plan-name {
  background: #0a79c8;
  color: white;
  margin-top: 2px;
  padding: 0.125em 0 0.125em 15px;
}

.plan-name sup {
  top: -2px;
}

@media (min-width: 48em) {
  .plan-name {
    display: none;
  }
}

.br-responsive {
  display: none;
}

.csp-officials {
  display: inline-block;
  color: #1579BE;
  line-height: 15px;
  /*margin-bottom: 2px;*/
}

@media (min-width: 48em) {
  .csp-officials {
    display: none;
  }
}

@media (min-width: 360px) and (max-width: 420px) {
  .csp-officials .br-responsive {
    display: block;
  }
}

.csp-content-aside {
  margin-bottom: 2em;
}

@media (min-width: 48em) {
  .csp-content-aside .csp-content {
    /* NOT on home page */
    padding-right: 7%;
  }
}

.sr-text {
  position: absolute;
  display: inline-block;
  direction: ltr;
  text-indent: -9999em;
  white-space: nowrap;
  width: 0;
}

.layerLink {
  border-bottom: 1px dotted;
}

.layerLink:hover, .layerLink:focus {
  border: 0;
}

.pdf-file,
.video-link,
[href$=".pdf"],
[href$=".jpg"] {
  /*position: relative;*/
}

.pdf-file:after,
.video-link:after,
[href$=".pdf"]:after,
[href$=".jpg"]:after {
  color: #fff;
  font-style: normal;
  margin-left: 0.5em;
  display: inline-block;
  letter-spacing: 1px;
  padding: 1px 2px 0;
  background: #3d75d0;
  position: relative;
  top: -3px;
  /*   position: absolute;
    top: 1px;
    right: -3.33333em;*/
}

.pdf-file:hover:after, .pdf-file:focus:after,
.video-link:hover:after,
.video-link:focus:after,
[href$=".pdf"]:hover:after,
[href$=".pdf"]:focus:after,
[href$=".jpg"]:hover:after,
[href$=".jpg"]:focus:after {
  background: #23527c;
}

.pdf-file:after,
[href$=".pdf"]:after {
  content: "PDF";
}

.video-link:after {
  content: "VIDEO";
}

[href$=".jpg"]:after {
  content: "JPEG";
}

.external-link {
  /*background: url(../img/external_link_2x.png) no-repeat right 3px;*/
  background: url(../img/external_link.svg) no-repeat right 3px;
  background-size: 0.75em 0.75em;
  padding-right: 1.142857em;
}

.external-link.footerlink {
  padding-right: 1.25em;
  background-position: 98% center;
}

.external-link.image-link {
  background: none;
  padding-right: 0;
}

/* svg icon styles */
.svg-sprite {
  display: none;
}

.external-link-icon {
  width: 0.75em;
  height: 0.75em;
  margin-left: 0.5em;
  fill: currentColor;
}

.external-link-icon + .svg-fallback {
  display: none;
}

.svg-fallback {
  width: 0.75em;
  height: 0.75em;
  margin-left: 0.5em;
}

.modal-content {
  border-radius: 0;
}

/* footnotes, disclosures in a modal layer */
.modal-body .disclaimer {
  background: #ececec;
  margin-top: 30px;
  margin: 30px -15px -15px;
  padding-left: 15px;
  padding-right: 15px;
}

@media print {
  .utilityBar,
  .utility-footer,
  .csp-facetBar,
  .csp-footer-nav,
  .related-links,
  .accountButton {
    display: none !important;
  }
}

.csp-content {
  outline: 0;
}

.csp-content .page-heading {
  margin-bottom: 48px;
  margin-bottom: 3rem;
}

.csp-content p,
.csp-content ul,
.csp-content ol,
.csp-content dd {
  margin: 0 0 0.7142857142857143em;
}

.csp-content ul {
  padding-left: 1.071428571428571em;
}

.csp-content ol {
  padding-left: 1.357142857142857em;
}

.csp-content li {
  margin: 0 auto 0.7142857142857143em;
}

.csp-content h1 {
  margin-top: 0.5263157895em;
}

.csp-content .lead-in {
  margin-bottom: 2.6315789474em;
}

.csp-content .lead-in-img {
  margin: 3.25em 0 2em;
}

@media (min-width: 48em) {
  .csp-content .lead-in-img {
    float: right;
    margin: 3.125em 0 1.5em 2em;
  }
}

.csp-content .ia-treasurer-announce {
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 0.3571428571em;
  margin-top: 1.7857142857em;
  letter-spacing: 1px;
}

.csp-content .ia-treasurer-announce + h1 {
  margin-top: 0;
}

.csp-content .content-section {
  margin-top: 1.875em;
}

.csp-content .topic-heading-secondary {
  color: #ae332a;
  margin-top: 30px;
}

.csp-content .heading-link {
  margin-bottom: 0;
  margin-top: 2.142857142857143em;
}

.csp-content .content-intro {
  margin-bottom: 2.1428571429em;
}

.csp-content img + p {
  margin-top: 0.7857142857142857em;
}

.csp-content .topic-heading {
  margin: 1.7857142857em 0 0.5em;
}

.csp-content .topic-heading + .topic-heading-secondary {
  margin-top: 0;
}

.csp-content .topic-heading.col-heading {
  margin-top: 0;
}

.csp-content .topic-heading + .content-heading {
  margin-top: 0;
}

.csp-content .standalone-link {
  margin-top: 0.7142857142857143em;
}

.csp-content .standalone-link.totop-link {
  margin-top: 2.142857142857143em;
}

.csp-content .standalone-link + p:not(.standalone-link) {
  margin-top: 2.142857142857143em;
}

.csp-content .table {
  margin-top: 1em;
  border-bottom: 1px solid #999;
}

.csp-content .table th,
.csp-content .table td {
  padding: 11px 8px;
  border-color: #a0a0a0;
}

.csp-content .table th {
  font-weight: normal;
}

.csp-content .table th:first-child {
  padding-left: 0;
}

.csp-content .table th[role="rowheader"] {
  font-weight: bold;
}

@media (min-width: 30em) {
  .csp-content .heading-image {
    float: right;
    width: 50%;
    margin: 6px 0 1em 2em;
  }
}

.csp-content .heading-image + h2 {
  margin-top: 2rem;
}

.table-2col [scope="row"] {
  width: 25%;
}

.content-heading {
  font-weight: bold;
  margin: 2em 0 0.5882352941em;
}

.topic-heading-secondary + .content-heading {
  margin-top: 0.5714285714285714em;
  /* 8px */
}

.topic-heading-secondary + .topic-subhead {
  margin-top: 0.75em;
}

.chart-caption {
  color: #666;
}

[class^='col-'] > .content-heading:first-child {
  margin-top: 0;
}

[class^='col-sm']:nth-child(n+2) > .content-heading {
  margin-top: 30px;
}

@media (min-width: 48em) {
  [class^='col-sm']:nth-child(n+2) > .content-heading {
    margin-top: 0;
  }
}

.csp-faq .csp-content li > p {
  margin-top: 0.7142857142857143em;
}

.csp-faqList dt {
  font-weight: normal;
  color: #ae332a;
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.25em;
  margin: 1.875em 0 0.3125em;
}

.csp-faqList dt:first-child {
  margin-top: 0;
}

.csp-xref {
  background: #ececec;
  padding-bottom: 10px;
}

.csp-xref .csp-xref-heading {
  color: #3f9700;
  margin-bottom: 0.9285714286em;
}

.heading-note {
  display: block;
}

img[role="rowheader"] {
  margin-bottom: 10px;
}

.csp-tbl-responsive {
  margin-top: 3.125rem;
}

@media (min-width: 48em) {
  .csp-tbl-responsive {
    margin-left: 15px;
  }
}

.csp-tbl-responsive .csp-col-heading {
  display: none;
}

@media (min-width: 48em) {
  .csp-tbl-responsive .csp-col-heading {
    display: block;
    text-transform: uppercase;
  }
}

@media (min-width: 48em) {
  .csp-tbl-responsive .row {
    border-bottom: 1px solid #999;
    padding-top: 0.625rem;
  }
  .csp-tbl-responsive .row > div:first-child {
    padding-left: 0;
  }
}

.csp-tbl-responsive .row .content-heading {
  margin: 1.5em 0 0.5882352941em;
}

@media (min-width: 48em) {
  .csp-tbl-responsive .row .content-heading {
    margin-top: 0;
  }
}

.csp-tbl-responsive .col-description {
  font-weight: bold;
}

@media (min-width: 48em) {
  .csp-tbl-responsive .col-description {
    display: none;
  }
}

.disclaimer {
  color: #444;
  padding: 2.142857142857143em 0;
}

.disclaimer-prominent {
  font-weight: bold;
}

.disclaimer-dire {
  font-style: italic;
}

.csp-callout {
  background: #ececec;
  border: 1px solid #ccc;
  margin: 3em 0 0;
  padding: 1em 0;
}

.csp-callout .topic-heading {
  font-size: 3rem;
  margin-top: 0.5em;
}

.csp-callout > .col-xs-6 {
  width: 100%;
}

@media (min-width: 30em) {
  .csp-callout > .col-xs-6 {
    width: 50%;
  }
}

/* _nav: utility bar, slide-in, facet bar */
.csp-utilityBar > li > a:hover,
.csp-utilityBar > li > a:focus,
.utilityBar .headerNav .accountLink:hover,
.utilityBar .headerNav .accountLink:focus {
  background: transparent;
  text-decoration: underline;
}

.csp-utilityBar .utilityLink,
.csp-utilityBar .utilityLink-offBar,
.csp-utilityBar .facet4,
.csp-slideIn .facet4,
.csp-slideIn .nav-heading {
  display: none;
}

.csp-slideIn .csp-utilityNav {
  margin: 0;
}

.csp-slideIn {
  background: #666;
  background: #6c6c6c;
}

.csp-slideIn.in {
  height: calc(100% - 32px);
  /* for firefox/android */
}

.csp-slideIn .mainNav {
  background: #3a3939;
}

.offcanvas-xs {
  display: none;
}

.navmenu {
  width: 320px;
}

.navmenu-fixed-left {
  top: 32px !important;
  /* !important = fix for iOS 7 */
}

.navmenu-fixed-left.offcanvas-xs li > a {
  line-height: 1.2;
  color: #fff;
}

.navmenu-fixed-left.offcanvas-xs li > a:hover, .navmenu-fixed-left.offcanvas-xs li > a:focus {
  background: #e9e9e9;
  color: #333;
}

.navmenu-fixed-left.offcanvas-xs li > a:hover:before, .navmenu-fixed-left.offcanvas-xs li > a:hover:after, .navmenu-fixed-left.offcanvas-xs li > a:focus:before, .navmenu-fixed-left.offcanvas-xs li > a:focus:after {
  background: #333;
}

.navmenu-fixed-left.offcanvas-xs > .mainNav {
  margin-bottom: 0;
}

.navmenu-fixed-left.offcanvas-xs > .mainNav > li > a,
.navmenu-fixed-left.offcanvas-xs > .utilityNav > li > a {
  padding: 12px 15px;
}

/************** slide-in menu colors, states:  */
.navmenu.offcanvas-xs .navmenu-nav > li > a:hover,
.navmenu.offcanvas-xs .navmenu-nav > li > a:focus {
  background: #e9e9e9;
  color: #333;
}

.navmenu-default .navmenu-nav > .open > a {
  background: transparent;
  color: #333;
}

.navmenu-default .navmenu-nav > .open > a:hover, .navmenu-default .navmenu-nav > .open > a:focus {
  text-decoration: underline;
}

.navmenu-default .navmenu-nav > .open > a:hover:before, .navmenu-default .navmenu-nav > .open > a:hover:after, .navmenu-default .navmenu-nav > .open > a:focus:before, .navmenu-default .navmenu-nav > .open > a:focus:after {
  background: #333;
}

.navmenu .dropdown {
  background: #3a3939;
}

.navmenu .dropdown.open {
  background: #e9e9e9;
}

.navmenu .dropdown.open a {
  color: #333;
}

.mainNav .dropdown-menu {
  border: 0;
  border-radius: 0;
  border-top: 7px solid #ae332a;
}

.navmenu-fixed-left .dropdown .dropdown-toggle:before,
.navmenu-fixed-left .dropdown .dropdown-toggle:after {
  content: " ";
  position: absolute;
  background: #fff;
}

.navmenu-fixed-left .dropdown .dropdown-toggle:before {
  height: 16px;
  width: 2px;
  right: 18px;
  top: 12px;
  transition: -webkit-transform 0.5s linear;
  transition: transform 0.5s linear;
}

.navmenu-fixed-left .dropdown.open .dropdown-toggle:before {
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.navmenu-fixed-left .dropdown .dropdown-toggle:after {
  height: 2px;
  width: 16px;
  top: 19px;
  right: 11px;
}

.navmenu-fixed-left .dropdown.open .dropdown-toggle:before,
.navmenu-fixed-left .dropdown.open .dropdown-toggle:after {
  background: #333;
}

.utilityNav {
  display: block;
  background: #6c6c6c;
}

.utilityBar {
  width: 100%;
  background: #333333;
}

@media screen and (min-width: 550px) {
  .csp-utilityBar .utilityLink {
    display: block;
  }
}

.facet-home .csp-facetBar {
  margin-bottom: 0;
}

.csp-facetBar {
  display: none;
  border-bottom: 7px solid #dadada;
}

.csp-facetBar .navbar {
  margin-bottom: 0;
}

.csp-facetBar .nav > li > a:focus,
.csp-facetBar .nav > li > a:hover {
  background: white;
  color: #ae332a;
}

.csp-facetBar > .container {
  border: 0;
  border-radius: 0;
  padding-right: 0;
  padding-left: 0;
}

@media (min-width: 768px) {
  .csp-facetBar {
    display: block;
  }
  .csp-facetBar .br-responsive {
    display: block;
  }
}

.csp-facetBar .nav-heading {
  display: none;
}

.csp-facetBar a {
  color: #555;
}

.csp-facetBar .mainNav {
  height: 60px;
  width: 100%;
}

.csp-facetBar .mainNav > li {
  width: 25%;
}

@media (min-width: 768px) {
  .csp-facetBar .mainNav > li > a {
    padding: 10px 15px;
  }
}

.csp-facetBar .dropdown-toggle:focus {
  outline: auto;
}

.csp-facetBar .facet4 a:hover:after, .csp-facetBar .facet4 a:focus:after {
  content: '';
  height: 7px;
  width: 100%;
  background: #ae332a;
  position: absolute;
  bottom: -7px;
  left: 15px;
}

.dropdown-menu {
  left: 15px;
  width: 100%;
  box-shadow: 0 7px 10px rgba(0, 0, 0, 0.175);
}

.dropdown-menu > li > a {
  /*color: #4576b5;
    color: #1f6aff;*/
  color: #555;
  padding: 4px 15px;
  white-space: normal;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  background: #dadada;
}

.navbar-nav.mainNav .dropdown-toggle:hover + .dropdown-menu,
.dropdown-menu:hover {
  display: block;
}

.facet-basics .csp-facetBar .facet1 > a,
.facet-choose .csp-facetBar .facet2 > a,
.facet-investments .csp-facetBar .facet3 > a,
.facet-start .csp-facetBar .facet4 > a {
  background: white;
  color: #ae332a;
  /* urhere facet */
}

.facet-basics .csp-facetBar .facet1 > a:hover, .facet-basics .csp-facetBar .facet1 > a:focus,
.facet-choose .csp-facetBar .facet2 > a:hover,
.facet-choose .csp-facetBar .facet2 > a:focus,
.facet-investments .csp-facetBar .facet3 > a:hover,
.facet-investments .csp-facetBar .facet3 > a:focus,
.facet-start .csp-facetBar .facet4 > a:hover,
.facet-start .csp-facetBar .facet4 > a:focus {
  border-bottom: 0;
}

.facet-basics .csp-facetBar .facet1:after,
.facet-choose .csp-facetBar .facet2:after,
.facet-investments .csp-facetBar .facet3:after,
.facet-start .csp-facetBar .facet4:after {
  content: '';
  height: 7px;
  width: 100%;
  background: #ae332a;
  position: absolute;
  bottom: -7px;
  left: 15px;
}

.csp-pageHeader + div {
  margin-top: 0;
}

@media (min-width: 48em) {
  .csp-pageHeader + div {
    margin-top: 1em;
  }
}

.csp-home .csp-pageHeader + div {
  margin-top: 0;
}

.csp-pageHeader {
  position: relative;
}

.csp-pageHeader .headerNav {
  position: static;
  background: transparent;
  width: auto;
  float: right;
}

.csp-pageHeader .headerNav a {
  color: #fff;
  /*font-weight: bold;*/
  border-radius: 0;
}

.csp-pageHeader .navbar-toggle {
  position: absolute;
  top: 0;
  left: 15px;
  z-index: 1;
  text-indent: 1.25em;
  float: none;
  color: #fff;
  margin: 0;
  border: 0;
  padding: 7px 10px;
}

.csp-pageHeader .navbar-toggle:hover, .csp-pageHeader .navbar-toggle:focus {
  outline: auto;
  outline: 1px dotted;
}

.csp-pageHeader .navbar-toggle:before, .csp-pageHeader .navbar-toggle:after,
.csp-pageHeader .navbar-toggle .icon-bar {
  content: " ";
  position: absolute;
  left: 0;
  width: 16px;
  height: 3px;
  border-radius: 1px;
  background: #fff;
  transition: transform 0.5s linear;
}

.csp-pageHeader .navbar-toggle:before {
  top: 7px;
}

.csp-pageHeader .navbar-toggle:after {
  bottom: 8px;
}

.csp-pageHeader .navbar-toggle .icon-bar {
  display: inline-block;
  top: 14px;
}

.csp-pageHeader .navbar-toggle.menu-open:before {
  transform: translateY(7px) rotate(45deg);
}

.csp-pageHeader .navbar-toggle.menu-open:after {
  transform: translateY(-7px) rotate(-45deg);
}

.csp-pageHeader .navbar-toggle.menu-open .icon-bar {
  opacity: 0;
}

.nav-pills > li {
  float: left;
}

.headerNav {
  position: absolute;
  background: #000;
  top: 0;
  width: 100%;
  margin-left: -15px;
  padding-left: 6px;
}

.headerNav > li > a {
  padding: 7px 10px;
}

.csp-aside {
  margin-top: 3.75em;
}

@media (min-width: 768px) {
  .csp-aside {
    margin-top: 0;
  }
}

.csp-aside h2 {
  margin-bottom: 0.5em;
}

.csp-aside h3 {
  margin-top: 1em;
  margin-bottom: 0.5em;
}

.csp-aside p {
  margin-bottom: 0.5em;
}

.csp-aside .phone {
  line-height: 1.5;
  margin-bottom: 0.33333em;
  color: #333 !important;
}

.csp-aside ul {
  padding-left: 0;
}

.csp-aside li {
  position: relative;
  margin-bottom: 1.0714285714em;
  padding: 0 0 0.125em 0;
  list-style: none;
}

.csp-aside li .standalone-link {
  margin: 0.5em 0 0.7142857142857143em;
}

.csp-aside li .standalone-link :last-child {
  margin-bottom: 0;
}

.csp-aside .list-heading {
  margin-bottom: 0.5882352941em;
}

.csp-aside .ia-treasurer {
  text-align: left;
}

.csp-aside .ia-treasurer img {
  float: left;
  width: 60px;
  height: 60px;
}

.csp-aside .ia-treasurer p {
  margin: -5px 0 0 5em;
}

/* footer */
.csp-footer {
  margin-top: 1.5em;
}

.csp-footer a {
  color: #1068cd;
}

.csp-footer a:hover, .csp-footer a:focus {
  color: #23527c;
}

.csp-footer .footerlink {
  color: #333;
  /*    .external-link-icon {
      margin-left: 0;
    }*/
}

.csp-footer .footerlink:hover, .csp-footer .footerlink:focus {
  color: #333;
}

.csp-footer .footerlink.pdf-file:after,
.csp-footer .footerlink a[href$=".pdf"]:after {
  background: #333;
}

.footer-nav-wrapper {
  background: #ececec;
  padding: 0 15px;
}

.footer-wrapper {
  padding: 0 15px;
}

.csp-footer-nav {
  /*  margin-left: 0;
  margin-right: 0*/
  line-height: 1.285714285714286em;
  margin-top: 2.142857142857143em;
  padding-bottom: 2.142857142857143em;
}

@media (min-width: 30em) {
  .csp-footer-nav {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
  }
}

@media (min-width: 48em) {
  .csp-footer-nav {
    display: block;
  }
}

.csp-footer-nav > ul {
  margin-top: 20px;
}

@media (min-width: 30em) {
  .csp-footer-nav > ul {
    width: 49%;
    margin-top: 0;
  }
  .csp-footer-nav > ul:nth-child(3), .csp-footer-nav > ul:nth-child(4) {
    margin-top: 20px;
  }
}

@media (min-width: 48em) {
  .csp-footer-nav > ul {
    width: 25%;
    margin-top: 0;
  }
  .csp-footer-nav > ul:nth-child(3), .csp-footer-nav > ul:nth-child(4) {
    margin-top: 0;
  }
}

.csp-footer-nav > ul:first-child {
  margin-top: 0;
}

.csp-footer-nav .accountLink,
.csp-footer-nav .logonLink,
.csp-footer-nav .br-responsive {
  display: none;
}

.csp-footer-nav li > a {
  padding: 4px 0;
}

.csp-footer-nav li > a:hover, .csp-footer-nav li > a:focus {
  text-decoration: underline;
  background-color: transparent;
}

.utility-footer {
  padding: 0;
  text-align: center;
}

.csp-utility-social-footer {
  border-top: 1px solid #ccc;
  padding: 1.875em 0 2.25em;
}

.footerlink {
  font-weight: bold;
  /*  display: block;
  padding: 0.5em 0 0.3333em;

  @media (min-width: $xs) {*/
  display: inline-block;
  border-right: 1px solid;
  line-height: 1;
  margin: 0.5em 0.25em 0.5em 0;
  padding: 0 0.5em 0 0;
}

.footerlink:last-child {
  border: 0;
}

.csp-social {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

@media (min-width: 48em) {
  .csp-social {
    padding-left: inherit;
    padding-right: inherit;
  }
}

.csp-social ul {
  padding-left: 0;
}

.csp-social li {
  list-style: none;
  display: inline-block;
}

.csp-social a {
  display: inline-block;
  padding: 1.5em;
}

.csp-social img {
  width: 22px;
  height: 22px;
}

.csp-footnotes {
  color: #666;
  margin-bottom: 1.714285714285714em;
}

.csp-footnotes p:first-child {
  border-top: 1px solid #ccc;
  padding-top: 1.125em;
}

.nav-heading,
.strong-nav > li > a {
  font-weight: bold;
  padding: 6px 0;
}

.nav-heading {
  color: #1d1d1d;
}

/* used on home page only */
.csp-home .csp-facetBar .navbar {
  margin-bottom: 0;
}

@media screen and (min-width: 30em) {
  .csp-home .csp-content {
    margin-left: 15px;
    margin-right: 15px;
  }
}

@media screen and (min-width: 48em) {
  .csp-home .csp-content {
    margin-left: auto;
    margin-right: auto;
  }
}

.csp-home .csp-content .col-sm-1 {
  height: 50px;
}

.csp-home .enroll-now {
  display: block;
  margin: 0 0 0.8125em;
  padding: 0 15px 40px;
}

.csp-home .enroll-now:hover, .csp-home .enroll-now:focus {
  text-decoration: none;
}

@media (min-width: 30em) {
  .csp-home .enroll-now {
    margin-left: -15px;
    margin-right: -15px;
  }
}

@media (min-width: 48em) {
  .csp-home .enroll-now {
    border-bottom: 1px solid #ccc;
    margin-bottom: 56px;
  }
}

.csp-home .enroll-now .br-responsive {
  display: none;
}

@media (min-width: 48em) {
  .csp-home .enroll-now .br-responsive {
    display: block;
  }
}

.csp-home .enroll-now h2 {
  margin: 0;
  padding-left: 0;
  margin-bottom: 30px;
}

.csp-home .enroll-now .enroll-steps {
  padding-left: 0;
  padding-right: 0;
  margin-top: 30px;
}

@media (min-width: 48em) {
  .csp-home .enroll-now .enroll-steps {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-top: 0;
  }
}

.csp-home .enroll-step {
  position: relative;
  display: block;
  color: #333;
  margin-top: 1em;
  margin-bottom: 1.5em;
  padding-left: 3em;
}

.csp-home .enroll-step:first-child {
  margin-top: 0;
  margin-left: 0;
}

@media (min-width: 48em) {
  .csp-home .enroll-step {
    padding-left: 3.75em;
    padding-right: 10px;
    width: 31.5%;
    margin: 0;
    float: left;
  }
  .csp-home .enroll-step:last-child {
    width: 35%;
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 0;
  }
}

@media (min-width: 75em) {
  .csp-home .enroll-step {
    padding-top: 12px;
  }
}

.csp-home .enroll-step:before {
  font-weight: 300;
  background: #b2d235;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  position: absolute;
  left: 0;
  top: -7px;
  width: 40px;
  height: 40px;
  line-height: 38px;
}

@media (min-width: 48em) {
  .csp-home .enroll-step:before {
    top: -5px;
    width: 52px;
    height: 52px;
    line-height: 49px;
  }
}

@media (min-width: 75em) {
  .csp-home .enroll-step:before {
    top: -2px;
  }
}

.csp-home .enroll-step:nth-of-type(1):before {
  content: "1";
}

.csp-home .enroll-step:nth-of-type(2):before {
  content: "2";
}

.csp-home .enroll-step:nth-of-type(3):before {
  content: "3";
}

.csp-home .social {
  margin-top: 1em;
}

@media (min-width: 48em) {
  .csp-home .social {
    margin-top: 0;
  }
}

.csp-home .social img {
  height: 30px;
  width: 30px;
}

.csp-home .social a {
  display: inline-block;
  padding: 12px 19px 5px 0;
}

.csp-home .content-disclaimers {
  display: block;
  line-height: 1.5;
  color: #666;
  border-top: 1px solid #ccc;
  padding-top: 14px;
  /*margin-top: 46px;
    margin-bottom: 7px;
    margin-left: 0;
    margin-right: 0;*/
  margin: 46px 0 7px;
}

@media (min-width: 30em) {
  .csp-home .content-disclaimers {
    margin-left: -15px;
    margin-right: -15px;
  }
}

@media (min-width: 48em) {
  .csp-home .disclaimer-dire.flush-edges {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.account-owners h2 {
  font-size: 18px;
  font-size: 1.125rem;
  width: 100%;
  line-height: 1.2222;
  margin-top: 0;
}

.account-owners input {
  border: 0;
  border-radius: 0;
}

.account-owners [type=submit] {
  background: #0a79c8;
  color: #fff;
  height: 2em;
  width: 4em;
}

.account-owners [type=text] {
  height: 2em;
  padding: 0 0.25em;
  width: 65%;
  width: calc(100% - 48px);
}

.account-owners [for="input-username"] {
  display: block;
  margin-bottom: 0;
}

.account-owners label {
  font-weight: normal;
}

.logon-wrapper {
  width: 100%;
  display: block;
  border: 1px solid #999;
  background: #0a79c8;
}

@media (min-width: 48em) {
  .main-message {
    display: flex;
    flex-flow: row nowrap;
  }
}

.ia-treasurer,
.ia-message {
  text-align: center;
}

.csp-home .accountButton {
  margin: 0;
  color: white;
}

@media (min-width: 30em) {
  .csp-home .accountButton {
    display: inline-block;
    padding-left: 2em;
    padding-right: 2em;
  }
}

@media (min-width: 48em) {
  .csp-aside .accountButton {
    margin-top: 10px;
  }
}

.ia-message h1 {
  margin: 0 auto 0.5em;
}

.ia-message p {
  color: #555;
  /*margin-bottom: 2.5em;*/
}

@media (min-width: 48em) {
  .ia-message p {
    /*margin-bottom: 1.25em;*/
  }
}

@media (min-width: 48em) {
  .ia-message {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: space-between;
  }
  .ia-message h1 {
    width: 75%;
  }
  .ia-message p {
    font-size: 22px;
    font-size: 1.375rem;
  }
  .ia-message .accountButton {
    width: 30%;
    width: calc(33.3333% - 20px);
    padding-left: 0;
    padding-right: 0;
  }
}

.ia-treasurer {
  border: 0;
  margin-top: 0;
  padding-bottom: 0;
}

.ia-treasurer > div {
  padding: 1em 20px 0.5em;
  border: 1px solid #ccc;
  border-width: 0 0 1px 0;
  padding-top: 9px;
  padding-bottom: 40px;
  margin-top: 40px;
}

@media (min-width: 48em) {
  .ia-treasurer > div {
    border-width: 0 1px;
    padding: 20px;
    margin-top: 0;
  }
}

.ia-treasurer img {
  display: inline-block;
  height: 114px;
  width: 114px;
}

.ia-featured-links {
  margin-top: 40px;
}

.ia-featured-links > div {
  margin-bottom: 2.5em;
}

.ia-featured-links > div:last-child {
  margin-bottom: 0;
}

@media (min-width: 30em) {
  .ia-featured-links > div {
    /* this is for IE9 which doesn't understand display: flex */
    display: inline-block;
    vertical-align: top;
    width: 49%;
  }
}

@media (min-width: 48em) {
  .ia-featured-links > div {
    width: 25%;
    margin-bottom: 0;
  }
}

@media (min-width: 30em) {
  .ia-featured-links {
    margin-top: 60px;
    display: flex;
    flex-flow: row wrap;
  }
  .ia-featured-links > div {
    width: 49%;
  }
}

@media (min-width: 30em) and (min-width: 48em) {
  .ia-featured-links > div {
    width: 25%;
    margin-bottom: 0;
  }
}

@media (min-width: 48em) {
  .ia-featured-links {
    display: block;
  }
}

.plan-credits {
  clear: both;
  margin: 2em 0 3em;
  border-top: 1px solid #ccc;
  padding-top: 2em;
  text-align: center;
}

@media (min-width: 48em) {
  .plan-credits {
    text-align: left;
    margin-left: -15px;
    margin-right: -15px;
  }
}

@media (min-width: 48em) {
  .plan-credits > div {
    height: 48px;
  }
}

.plan-credits a {
  display: block;
  padding: 1em 0;
}

.csp-billboard-secondary + .plan-credits {
  border-top: 0;
  padding-top: 0;
}

.investment-mgr img {
  width: 143px;
  height: 40px;
}

@media (min-width: 48em) {
  .investment-mgr a {
    height: 100%;
    background: url(../img/logo_vanguard_001_2x.png) no-repeat;
    background-position: bottom 1px right;
    background-size: 143px 40px;
  }
  .investment-mgr img {
    display: none;
  }
}

.program-mgr img {
  width: 100%;
  height: 28px;
}

@media (min-width: 48em) {
  .program-mgr {
    padding-bottom: 2px;
  }
  .program-mgr a {
    height: 100%;
    background: url(../img/logo_ascensus_2x.png) no-repeat bottom center;
    background-size: 273px 28px;
  }
  .program-mgr img {
    display: none;
  }
}

/* .csp-billboard-caption .csp-billboard-headline {
  margin-bottom: 3%;
}

.csp-billboard-short.csp-billboard .csp-billboard-caption .csp-billboard-headline {
  margin-bottom: 3%;
} */

@media (min-width: 30em) {
  .csp-billboard-short.csp-billboard .csp-billboard-caption {
    top: 0;
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
  }
  .csp-billboard-short.csp-billboard .csp-billboard-caption .csp-billboard-headline {
    margin-bottom: 3%;
  /*  width: 100%; */
  }
}

.home2 .ia-treasurer a {
  display: block;
}

.home2 .ia-treasurer img {
  height: 112px;
  width: 80px;
}

/******* "billboard/jumbotron" system *********/
.csp-billboard {
  position: relative;
  padding: 0;
  margin-bottom: 2em;
  background: #fff;
  overflow: hidden;
}

@media (min-width: 768px) {
  .csp-billboard {
    margin-bottom: 3.75em;
  }
}

.csp-billboard a {
 /* background: #114ce6;*/
  display: block;
  overflow: hidden;
 /* height: calc(46vh - 170px); */
}

.csp-billboard a:hover, .csp-billboard a:focus {
  text-decoration: none;
}

/* @media (max-width: 480px) {
  .csp-billboard a {
    height: calc(41vh - 175px);
  }
}

@media (max-width: 320px) {
  .csp-billboard a {
    height: calc(44vh - 175px);
  }
}
 */
.csp-billboard a .csp-billboard-body {
  color: #fff;
}

.csp-billboard a .csp-billboard-body:last-child {
  margin-bottom: 0;
}

@media (min-width: 480px) {
  .csp-billboard a .csp-billboard-body {
     color: #ffe674;
  }
}

.csp-billboard .csp-billboard-caption {
  text-align: center;
}

@media (min-width: 480px) {
  .csp-billboard .csp-billboard-caption {
    background: transparent;
    position: absolute;
    left: 0;
    right: 15px;
    top: 12%;
    padding: 0 0 0 15px;
    color: #fff;
  }
}

@media (min-width: 768px) {
  .csp-billboard .csp-billboard-caption {
    left: 15px;
  }
}

@media (min-width: 992px) {
  .csp-billboard .csp-billboard-caption {
    top: 15%;
  }
}

@media (min-width: 1200px) {
  .csp-billboard .csp-billboard-caption {
    top: 20%;
  }
}

.csp-billboard .csp-billboard-headline {
  font-family: "EB Garamond", Georgia, serif;
  font-weight: 300;
  font-size: 40px;
  font-size: 2.5rem;
  color: white;
  line-height: 1.1;
  margin-top: 0;
  margin-bottom: 0.5em;
  padding-top: 20px;
}

.csp-billboard .csp-billboard-headline sup {
  font-size: 50%;
  vertical-align: middle;
}

@media (min-width: 480px) {
  .csp-billboard .csp-billboard-headline {
    font-size: 36px;
    font-size: 2.25rem;
    color: #ffe674;
    padding-top: 0;
  }
}

@media (min-width: 768px) {
  .csp-billboard .csp-billboard-headline {
    font-size: 42px;
    font-size: 2.625rem;
  }
}

@media (min-width: 992px) {
  .csp-billboard .csp-billboard-headline {
    font-size: 54px;
    font-size: 3.375rem;
  }
}

.csp-billboard .csp-billboard-body {
  font-weight: 400;
  line-height: 1.285714285714286;
 /*  color: white; */
}

@media (min-width: 768px) {
  .csp-billboard .csp-billboard-body {
    font-size: 20px;
    font-size: 22px;
    font-size: 1.375rem;
  }
}

.csp-billboard-caption {
  background: #0a79c8;
  color: #fff;
  padding-bottom: 2em;
 /*  position: absolute;
  top: 0; */
}

.csp-billboard-secondary {
  margin: 2em -15px;
}

@media (min-width: 480px) {
  .csp-billboard-secondary {
    margin-left: -30px;
    margin-right: -30px;
  }
}

@media (min-width: 768px) {
  .csp-billboard-secondary {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.csp-billboard-secondary .csp-billboard-caption {
  text-align: left;
  background: #333333;
  text-align: center;
  padding: 0 15px 20px;
  width: auto;
}

@media (min-width: 480px) {
  .csp-billboard-secondary .csp-billboard-caption {
    background: transparent;
    padding: 0;
  }
}

.csp-billboard-secondary .csp-billboard-caption .csp-billboard-headline {
  color: #ffe674;
  font-size: 28px;
  font-size: 1.75rem;
}

@media (min-width: 480px) {
  .csp-billboard-secondary .csp-billboard-caption .csp-billboard-headline {
    color: white;
  }
}

@media (min-width: 768px) {
  .csp-billboard-secondary .csp-billboard-caption .csp-billboard-headline {
    font-size: 34px;
    font-size: 2.125rem;
  }
}

.csp-billboard-secondary a .csp-billboard-body {
  color: white;
}

@media (min-width: 480px) {
  .csp-billboard-secondary a .csp-billboard-body {
    color: #ffe674;
  }
}

.csp-billboard-secondary .csp-billboard-body {
  width: 100%;
  max-width: none;
}

.csp-billboard-hero-right .csp-hero {
  width: 140%;
  float: right;
}

@media (min-width: 30em) {
  .csp-billboard-hero-right .csp-hero {
    width: 115%;
    float: none;
  }
}

@media (min-width: 48em) {
  .csp-billboard-hero-right .csp-hero {
    width: 100%;
  }
}

@media (min-width: 30em) {
  .csp-billboard-hero-right.csp-billboard-secondary .csp-billboard-caption {
    left: 15px;
  }
}

.csp-billboard-hero-right .csp-billboard-caption {
  clear: both;
  /* the hero-right image is float:right */
}

@media (min-width: 30em) {
  .csp-billboard-hero-right .csp-billboard-caption {
    text-align: left;
  }
}

@media (min-width: 30em) {
  .csp-billboard-hero-right .csp-billboard-headline {
    width: 55%;
  }
}

@media (min-width: 48em) {
  .csp-billboard-hero-right .csp-billboard-headline {
    width: 40%;
  }
}

@media (min-width: 30em) {
  .csp-billboard-hero-right .csp-billboard-body {
    width: 55%;
    max-width: 18em;
  }
}

@media (min-width: 48em) {
  .csp-billboard-hero-right .csp-billboard-body {
    width: 45%;
  }
}

@media (min-width: 62em) {
  .csp-billboard-hero-right .csp-billboard-body {
    width: 35%;
  }
}

.csp-billboard-hero-left .csp-hero {
  float: none;
  width: 140%;
}

@media (min-width: 30em) {
  .csp-billboard-hero-left .csp-hero {
    float: right;
    width: 110%;
  }
}

@media (min-width: 48em) {
  .csp-billboard-hero-left .csp-hero {
    float: none;
    width: 100%;
  }
}

@media (min-width: 30em) {
  .csp-billboard-hero-left .csp-billboard-caption {
    right: 1%;
    left: 50%;
    padding: 0;
    text-align: left;
  }
}

@media (min-width: 48em) {
  .csp-billboard-hero-left .csp-billboard-caption {
    right: 4%;
  }
}

@media (min-width: 62em) {
  .csp-billboard-hero-left .csp-billboard-caption {
    right: 5%;
  }
}

.csp-billboard-alert .csp-hero {
  display: none;
}

.csp-billboard-alert .csp-billboard-caption {
  background: transparent;
}

@media (min-width: 480px) {
  .csp-billboard-alert .csp-billboard-caption {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    padding: 0 15px;
  }
}

.csp-billboard-alert .csp-billboard-headline {
  color: #ffe674;
  padding-top: 40px;
}

@media (min-width: 480px) and (max-width: 768px) {
  .csp-billboard-alert .csp-billboard-headline {
    font-size: 38px;
    font-size: 2.375rem;
  }
}

@media (min-width: 480px) {
  .csp-billboard-alert .csp-billboard-headline {
    padding-top: 0;
  }
}

.csp-billboard-alert a {
  background: #ececec;
}

@media (min-width: 480px) {
  .csp-billboard-alert a {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}

.csp-billboard-alert a .csp-billboard-body {
  color: white;
}

.ny-sweepstakes .csday-logo {
  color: #84D0FF;
  font-weight: bold;
  text-align: center;
  margin: 1em auto 0;
}

.ny-sweepstakes .csday-logo img {
  width: 35%;
}

@media (min-width: 480px) {
  .ny-sweepstakes .csp-billboard-caption {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .ny-sweepstakes.csp-billboard-hero-right .csp-billboard-caption {
    height: 100%;
    top: 0;
  }
  .ny-sweepstakes .csday-logo {
    width: 20%;
    margin: 0 1em 0.5em 0;
    text-align: left;
  }
  .ny-sweepstakes .csday-logo img {
    width: 90%;
  }
  .ny-sweepstakes .csp-billboard-message {
    max-width: 55%;
  }
  .ny-sweepstakes.csp-billboard-hero-right .csp-billboard-headline {
    width: 100%;
  }
  .ny-sweepstakes.csp-billboard-hero-right .csp-billboard-body {
    width: 95%;
    max-width: 20em;
  }
}

@media (min-width: 768px) {
  .ny-sweepstakes .csday-logo {
    font-size: 1.25em;
    margin-right: 1em;
  }
  .ny-sweepstakes .csp-billboard-message {
    width: 40%;
  }
}

@media (min-width: 992px) {
  .ny-sweepstakes .csday-logo {
    width: 12.5%;
  }
  .ny-sweepstakes .csday-logo img {
    width: 100%;
  }
  .ny-sweepstakes .csp-billboard-message {
    width: 50%;
  }
}

@media (min-width: 1200px) {
  .ny-sweepstakes .csday-logo {
    width: 12.5%;
  }
  .ny-sweepstakes .csday-logo img {
    width: 100%;
  }
  .ny-sweepstakes.csp-billboard-hero-right .csp-billboard-body {
    max-width: 100%;
  }
}

.accountButton {
  position: relative;
  bottom: auto;
  right: auto;
  font-weight: bold;
  color: white;
  text-align: center;
  padding-top: 1em;
  padding-bottom: 1em;
  display: block;
  background: #538300;
  border-radius: 0;
}

.accountButton:hover, .accountButton:focus {
  background: #3f6201;
  color: white;
  text-decoration: none;
}

.accountButton:active {
  background: #1579BE;
}

.accountButton:visited {
  color: white;
}

.csp-aside > .accountButton,
.csp-form .accountButton {
  margin: 1.875em 0;
}

.csp-form {
  margin-top: 20px;
  border-bottom: 1px solid #999;
  padding-bottom: 3.75em;
}

@media (min-width: 48em) {
  .csp-form {
    border-bottom: 0;
    padding-bottom: 0;
  }
}

.csp-form label {
  font-weight: normal;
  display: block;
  margin-bottom: 0;
}

.csp-form .form-control {
  line-height: 1.5;
  height: auto;
  border-radius: 0;
  box-shadow: none;
}

.csp-form .button-link {
  background: transparent;
  color: #3d75d0;
}

.csp-form .button-link:hover, .csp-form .button-link:focus {
  color: #23527c;
  text-decoration: underline;
}

.csp-form input,
.csp-form select {
  background: #E3E3E3;
  border: 0;
  padding: 4px;
}

.csp-form select {
  height: 29px;
  height: 1.8125rem;
  /* to match input height */
  width: auto;
}

.csp-form select:focus {
  font-size: 14px;
  font-size: 0.875rem;
  /* to prevent font-size from jumping on focus to 1rem in iOS */
}

.csp-form [type=submit] {
  padding-left: 2em;
  padding-right: 2em;
  border: 0;
}

.csp-form p {
  margin: 20px 0;
}

.csp-form fieldset > p:first-child {
  margin-top: 0;
}

.friend-data {
  border-bottom: 1px solid #666;
  padding-bottom: 1em;
  margin-bottom: 0.5em;
}

.button-link[type=reset] {
  float: right;
}

.csp-form .button-link {
  padding-left: 0;
  padding-right: 0;
}

.csp-form .preview-disclosures {
  margin-top: 40px;
}

/* _charts */
.pf-description .pie-chart {
  display: inline-block;
  float: left;
  margin-right: 1em;
  margin-bottom: 0.5em;
}

@media (min-width: 62em) {
  .pf-description .pie-chart {
    margin-right: 2em;
  }
}

.pie-chart {
  height: 60px;
  height: 3.75rem;
  width: 60px;
  width: 3.75rem;
  background: url(../img/csi529_pies.png) no-repeat;
  background-size: cover;
}

.portfolio-individual div:first-child {
  padding-left: 0;
}

.portfolio-individual.portfolio-row {
  border-top-style: solid;
}

.portfolio-individual .pie-chart {
  display: inline-block;
  float: left;
  margin-right: 1em;
  margin-bottom: 1em;
  height: 40px;
  height: 2.5rem;
  width: 40px;
  width: 2.5rem;
}

.portfolio-individual .stocks20-bonds80 {
  background-position: 0 -40px;
}

.portfolio-individual .stocks60-bonds40 {
  background-position: 0 -80px;
}

.portfolio-individual .stocks40-bonds60 {
  background-position: 0 -120px;
}

.portfolio-individual .stocks75-bonds25 {
  background-position: 0 -160px;
}

.portfolio-individual .stocks80-bonds20 {
  background-position: 0 -200px;
}

.portfolio-individual .bonds75-cash25 {
  background-position: 0 -240px;
}

.portfolio-individual .cash100 {
  background-position: 0 -280px;
}

.portfolio-individual .bonds100 {
  background-position: 0 -320px;
}

.stocks100 {
  background-position: 0 0;
}

.stocks20-bonds80 {
  background-position: 0 -60px;
}

.stocks60-bonds40 {
  background-position: 0 -120px;
}

.stocks40-bonds60 {
  background-position: 0 -180px;
}

.stocks75-bonds25 {
  background-position: 0 -240px;
}

.stocks80-bonds20 {
  background-position: 0 -300px;
}

.bonds75-cash25 {
  background-position: 0 -360px;
}

.cash100 {
  background-position: 0 -420px;
}

.csp-content .group-header {
  font-weight: bold;
  margin-top: 30px;
}

@media (min-width: 48em) {
  .csp-content .group-header {
    margin-top: 0;
  }
}

.csp-content .chart-heading {
  font-weight: 700;
  line-height: 1.5;
  margin-top: 2.5em;
}

.csp-content .chart-heading + .portfolio-row {
  margin-top: 0;
}

.risk-description {
  width: 175px;
}

.risk-description .risk-ramp {
  font-size: 1.25em;
  margin-top: -6px;
  margin-bottom: 6px;
}

.risk-description .risk-ramp span {
  display: inline-block;
  width: 1.75em;
  line-height: 2;
  text-align: center;
  border-bottom: 1px solid;
}

.risk-description .risk-ramp .risk-indicator {
  border-bottom: 7px solid;
  line-height: 1.7;
}

.risk-description .risk-moderate {
  text-align: center;
}

.risk-description .risk-aggressive {
  text-align: right;
}

.topic-heading + .row {
  margin-top: 1.7857142857em;
}

.portfolio-heading {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 0.5em;
}

.topic-heading + .portfolio-row,
.content-heading + .portfolio-row {
  border-top-style: solid;
}

.content-heading + .portfolio-row {
  border-top-style: solid;
  margin-top: 0;
}

.portfolio-row {
  border-top: 1px dashed #ccc;
  padding: 1.125em 0 0;
  margin: 2em 0 0;
}

.portfolio-row > div {
  padding-left: 0;
}

.portfolio-row [class^='col-sm'] {
  padding-left: 0;
}

@media (min-width: 48em) {
  .portfolio-row [class^='col-sm'] {
    padding-left: 15px;
  }
}

.portfolio-row + hr {
  border-top: 1px solid #ccc;
}

.portfolio-heading + .portfolio-row {
  border: none;
  padding-top: 0;
  margin-top: 0;
}

.portfolio-row .col-xs-4,
.portfolio-row .col-xs-8 {
  width: 100%;
  padding-left: 0;
}

@media (min-width: 420px) {
  .portfolio-row .col-xs-4 {
    width: 33.3333333%;
  }
  .portfolio-row .col-xs-8 {
    width: 66.66%;
    padding-left: 15px;
  }
  .portfolio-row .col-xs-4:first-child {
    padding-left: 0;
  }
  .piechart-key > p {
    padding-left: 1em;
  }
}

@media (min-width: 480px) {
  .piechart-key > p {
    padding-left: 1.5em;
  }
}

@media (min-width: 768px) {
  .portfolio-row .col-sm-3:first-child {
    padding-left: 0;
  }
}

.csp-ifthen {
  border-top: 1px solid #ccc;
  padding-top: 1em;
  margin-top: 1.375em;
}

.csp-ifthen:first-of-type {
  margin-top: 1.875em;
}

.portfolio-row-notop-rule {
  border-top: 0;
}

.csp-ifthen, .portfolio-row {
  margin-left: 0;
  margin-right: 0;
}

.csp-ifthen > div, .portfolio-row > div {
  padding-left: 0;
}

.asset-gamut {
  max-width: 480px;
  margin: 2em 0;
  font-weight: bold;
}

.asset-gamut .gamut-description {
  margin: 2em 0;
  line-height: 24px;
}

.asset-gamut .gamut-description span {
  display: inline-block;
  padding: 0.125em 0;
  width: 10%;
}

.asset-gamut .gamut-description span:first-child {
  float: left;
}

.asset-gamut .gamut-description span:nth-child(2) {
  width: 70%;
  margin: 0 5%;
  text-align: center;
  position: relative;
  background: #dadada;
}

.asset-gamut .gamut-description span:nth-child(2):before, .asset-gamut .gamut-description span:nth-child(2):after {
  content: "";
  position: absolute;
  top: 0;
  border: 14px solid transparent;
}

.asset-gamut .gamut-description span:nth-child(2):before {
  left: -25px;
  border-right: 12px solid #dadada;
}

.asset-gamut .gamut-description span:nth-child(2):after {
  right: -25px;
  border-left: 12px solid #dadada;
}

.asset-gamut .gamut-description span:last-child {
  float: right;
  text-align: right;
}

.asset-classes {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.asset-classes div {
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  position: relative;
  width: 28vw;
  height: 28vw;
}

@media (min-width: 30em) {
  .asset-classes div {
    height: 140px;
    width: 140px;
  }
}

.asset-classes div span {
  color: white;
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.cashpie {
  background: #538300;
}

.bondpie {
  background: #1579be;
}

.stockpie {
  background: #ba3830;
}

.abt {
  margin-top: 2.5em;
  font-size: 12px;
}

@media (max-width: 991px) {
  .abt {
    font-size: 14px;
  }
}

.abt .track {
  display: none;
  /*font-size: 12px;*/
}

.abt .track .heading-note {
  /*font-size: 12px;*/
}

.abt .track.is-selected {
  display: block;
}

@media (min-width: 62em) {
  .abt .track.is-selected {
    display: flex;
  }
}

@media (min-width: 62em) {
  .abt .track {
    display: block;
  }
}

.abt .m {
  font-size: 14px;
}

@media (min-width: 62em) {
  .abt .m {
    display: none !important;
  }
}

.abt .track-name {
  display: none;
}

@media (min-width: 62em) {
  .abt .track-name {
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin-top: 0.75em;
  }
}

.abt .abt-heading {
  display: none;
  position: relative;
}

@media (min-width: 62em) {
  .abt .abt-heading {
    display: block;
    /*font-size: 12px;*/
  }
  .abt .abt-heading.row {
    border-bottom: 1px solid #ccc;
  }
  .abt .abt-heading:after {
    content: '';
    position: absolute;
    height: 0;
    width: 0;
    top: 0;
    border: 24px solid transparent;
    right: -44px;
    border-left: 20px solid #dadada;
  }
  .abt .abt-heading > div {
    background: #dadada;
  }
  .abt .abt-heading > div:first-child {
    background: transparent;
  }
}

.abt > .row {
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 62em) {
  .abt > .row {
    display: flex;
    flex-flow: row nowrap;
    border-bottom: 1px solid #ccc;
  }
  .abt > .row.track {
    padding: 0.5em 0;
  }
}

@media (min-width: 62em) {
  .abt > .row > div {
    width: 16.666667%;
    padding: 0.5em 0.25em;
  }
  .abt > .row > div:first-child {
    font-weight: bold;
    padding-left: 0;
  }
}

@media (min-width: 62em) {
  .abt .a {
    position: absolute;
    display: inline-block;
    direction: ltr;
    text-indent: -9999em;
    white-space: nowrap;
    width: 0;
  }
}

.abt .c label {
  margin-bottom: 0;
  font-weight: normal;
}

.abt .c select {
  font-weight: bold;
  font-size: 16px;
  display: block;
}

@media (min-width: 62em) {
  .abt .fl {
    display: flex;
    flex-flow: column nowrap;
  }
  .abt .fl > * {
    /*outline: 1px dotted;*/
  }
}

.abt .fl .pie-chart {
  display: inline-block;
  float: left;
  margin-right: 1em;
}

@media (min-width: 62em) {
  .abt .fl .pie-chart {
    display: block;
    float: none;
    margin-bottom: 1em;
    margin-right: 0;
  }
}

.abt .fl .d {
  font-weight: bold;
  margin-bottom: 0;
  line-height: 1.25;
}

.abt .e {
  display: block;
  margin-left: 5em;
}

@media (min-width: 62em) {
  .abt .e {
    /*font-size: 12px;*/
    margin-left: 0;
  }
}

.abt .pf {
  display: flex;
  flex-flow: row nowrap;
}

.abt .pf > div {
  width: 67%;
  border-bottom: 1px solid #ccc;
  padding: 0.5em 0 0.5em 3.5%;
}

@media (min-width: 62em) {
  .abt .pf > div {
    width: 100%;
    border: 0;
    padding: 0;
  }
}

.abt .pf > div:first-child {
  width: 33%;
  max-width: 12rem;
  border-right: 1px solid #ccc;
  padding-left: 0;
  padding-right: 0.25em;
}

@media (min-width: 62em) {
  .abt .pf > div:first-child {
    width: 100%;
    border: 0;
  }
}

.abt.show-all-tracks .track {
  display: block;
}

@media (min-width: 62em) {
  .abt.show-all-tracks .track {
    display: flex;
  }
}

.abt.show-all-tracks .track .pf:first-of-type {
  border-top: 1px solid #ccc;
}

@media (min-width: 62em) {
  .abt.show-all-tracks .track .pf:first-of-type {
    border-top: 0;
  }
}

.abt.show-all-tracks .track-name {
  display: block;
  margin-top: 0.75em;
  padding: 0.5em 0;
  max-height: 100px;
  margin-bottom: 0;
  border-bottom: 1px solid #ccc;
}

@media (min-width: 62em) {
  .abt.show-all-tracks .track-name {
    border: 0;
  }
}

.abt2 {
  font-size: 14px;
}

@media (min-width: 62em) {
  .abt2 {
    font-size: 16px;
  }
}

.abt2 .track {
  display: none;
}

.abt2 .track.is-selected {
  display: block;
}

@media (min-width: 62em) {
  .abt2 .track.is-selected {
    display: flex;
  }
}

@media (min-width: 62em) {
  .abt2 .track {
    display: block;
  }
}

.abt2.show-all-tracks .track {
  display: block;
}

@media (min-width: 62em) {
  .abt2.show-all-tracks .track {
    display: flex;
  }
}

.abt2.show-all-tracks .track .pf:first-of-type {
  border-top: 1px solid #ccc;
}

@media (min-width: 62em) {
  .abt2.show-all-tracks .track .pf:first-of-type {
    border-top: 0;
  }
}

.abt2.show-all-tracks .track-name {
  display: block;
  margin-top: 0.75em;
  padding: 0.5em 0;
  max-height: 100px;
}

@media (min-width: 62em) {
  .abt2 .m {
    display: none !important;
  }
}

.abt2 .track-name {
  overflow: hidden;
  margin-top: 0;
  max-height: 0;
  padding: 0;
  font-weight: bold;
  width: 100%;
  margin-bottom: 0;
}

@media (min-width: 62em) {
  .abt2 .track-name {
    border-bottom: 1px solid #ccc;
    padding: 1.5em 0 0.5em;
    margin-top: auto;
    max-height: 100px;
  }
}

@media (min-width: 62em) {
  .abt2 .track-name {
    display: block;
    font-weight: bold;
    margin-top: 0.75em;
  }
}

.abt2 .abt-heading {
  display: none;
  position: relative;
}

@media (min-width: 62em) {
  .abt2 .abt-heading {
    display: block;
  }
  .abt2 .abt-heading.row {
    border-bottom: 1px solid #ccc;
  }
  .abt2 .abt-heading:after {
    content: '';
    position: absolute;
    height: 0;
    width: 0;
    top: 0;
    border: 24px solid transparent;
    right: -44px;
    border-left: 20px solid #dadada;
  }
  .abt2 .abt-heading > div {
    background: #dadada;
  }
  .abt2 .abt-heading > div:first-child {
    background: transparent;
  }
}

.abt2 > .row {
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 62em) {
  .abt2 > .row {
    display: flex;
    flex-flow: row wrap;
    border-bottom: 1px solid #ccc;
  }
  .abt2 > .row.track {
    padding: 0.5em 0;
  }
}

@media (min-width: 62em) {
  .abt2 > .row > div {
    width: 20%;
    padding: 0.5em 0.25em;
  }
}

@media (min-width: 62em) {
  .abt2 .b {
    font-size: 0.875em;
  }
  .abt2 .b .sr-text {
    display: block;
    position: relative;
    width: auto;
    text-indent: 0;
  }
}

.abt2 .c label {
  margin-bottom: 0;
  font-weight: normal;
}

.abt2 .c select {
  font-weight: bold;
  border-radius: 0;
  font-size: 16px;
  display: block;
}

@media (min-width: 62em) {
  .abt2 .fl {
    display: flex;
    flex-flow: column nowrap;
  }
}

.abt2 .fl .pie-chart {
  display: inline-block;
  float: left;
  margin-right: 0.8571428571em;
}

@media (min-width: 62em) {
  .abt2 .fl .pie-chart {
    display: block;
    float: none;
    margin-bottom: 1em;
    margin-right: 0;
  }
}

.abt2 .fl .d {
  margin-bottom: 0;
}

.abt2 .d {
  font-weight: bold;
}

.abt2 .e {
  display: block;
  margin-left: 4.5rem;
}

@media (min-width: 62em) {
  .abt2 .e {
    margin-left: 0;
  }
}

.abt2 .pf {
  display: flex;
  flex-flow: row nowrap;
}

@media (min-width: 62em) {
  .abt2 .pf {
    display: block;
  }
}

.abt2 .pf > div {
  width: 67%;
  border-bottom: 1px solid #ccc;
  padding: 0.5em 0 0.5em 3.5%;
}

@media (min-width: 62em) {
  .abt2 .pf > div {
    width: 100%;
    border: 0;
    padding: 0;
  }
}

.abt2 .pf > div:first-child {
  width: 33%;
  max-width: 12rem;
  border-right: 1px solid #ccc;
  padding-left: 0;
  padding-right: 0.25em;
}

@media (min-width: 62em) {
  .abt2 .pf > div:first-child {
    width: 100%;
    border: 0;
  }
}

.abt2 .heading-note {
  display: none;
}

.ia-card {
  background: #999;
  height: 72px;
  width: 56px;
  background: url(../img/ia-giftcard_sprite.jpg) no-repeat;
  background-size: cover;
  border: 1px solid #ccc;
  display: inline-block;
  float: left;
  margin-right: 1em;
  margin-bottom: 0.5em;
}

@media (min-width: 62em) {
  .ia-card {
    margin-right: 2em;
  }
}

.ia-card {
  float: none;
  height: 102px;
  width: 79px;
}

.ia-card-bday {
  background-position: 0 0;
}

.ia-card-bday-cupcake {
  background-position: 0 -100px;
}

.ia-card-bday-present {
  background-position: 0 -200px;
}

.ia-card-congrats {
  background-position: 0 -300px;
}

.ia-card-congrats-scrambled {
  background-position: 0 -400px;
}

.ia-card-congrats-image {
  background-position: 0 -500px;
}

.ia-card-congrats-balloons {
  background-position: 0 -600px;
}

.ia-card-holiday-happy {
  background-position: 0 -700px;
}

.ia-card-holiday-snowflake {
  background-position: 0 -800px;
}

.ia-card-holiday-lights {
  background-position: 0 -900px;
}

.ia-card-holiday-present {
  background-position: 0 -1000px;
}

.ia-card-superheros {
  background-position: 0 -1100px;
}

.ia-card-present {
  background-position: 0 -1200px;
}

.ia-card-stripes {
  background-position: 0 -1300px;
}

.ia-card-bubbles {
  background-position: 0 -1400px;
}

.ia-card-bluebg {
  background-position: 0 -1500px;
}

.chart-heading + .ia-card-group {
  border-top: 1px solid #999;
}

.ia-card-group {
  /*  .ia-card {
    float: none;
    height: 102px;
    width: 79px;  // H, W include 2px for borders
  }*/
}

@media (min-width: 400px) {
  .ia-card-group {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: stretch;
  }
}

@media (min-width: 640px) {
  .ia-card-group {
    justify-content: flex-start;
  }
}

.ia-card-group > div {
  padding: 0;
  border-top: 1px dashed #ccc;
  padding: 1em 0 0.5em 1em;
}

.ia-card-group > div:first-child {
  border-top: 0;
}

@media (min-width: 400px) {
  .ia-card-group > div {
    width: 49%;
    border: 0;
    margin-top: 1em;
    margin-bottom: 1em;
    padding: 0;
    display: inline-block;
    display: flex;
    flex-flow: column nowrap;
  }
}

@media (min-width: 640px) {
  .ia-card-group > div {
    width: 32%;
    margin-right: 2%;
    /*      &:nth-child(3n) {
        margin-right:0;
      }
      &:nth-last-child(3) {
        margin-right:0;
      }*/
  }
  .ia-card-group > div:last-child {
    margin-right: 0;
  }
  .ia-card-group > div:nth-last-child(3) {
    margin-right: 0;
  }
  .ia-card-group > div:first-child, .ia-card-group > div:nth-child(2) {
    margin-right: 2%;
  }
}

.ia-card-group > div p:first-child {
  flex-grow: 2;
}

.ia-card-group + hr {
  border-top: 1px solid #999;
  margin-top: 0;
}

.chart-heading + .ia-card-group-rows {
  border-top: 1px solid #999;
}

.ia-card-group-rows .ia-card-row:first-child > div:first-child {
  border-top: 0;
}

@media (min-width: 400px) {
  .ia-card-group-rows .ia-card-row {
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    padding-top: 1em;
  }
  .ia-card-group-rows .ia-card-row:nth-child(n+2) {
    border-top: 1px dashed #ccc;
  }
}

.ia-card-group-rows .ia-card-row > div {
  /*outline: 1px solid #ccc;*/
  padding: 1em 0 0.5em 1em;
  border-top: 1px dashed #ccc;
}

@media (min-width: 400px) {
  .ia-card-group-rows .ia-card-row > div {
    width: 49%;
    padding: 0.5em 0.5em 0.5em 0;
    border-top: 0;
    display: inline-block;
    display: flex;
    flex-flow: column nowrap;
  }
}

@media (min-width: 640px) {
  .ia-card-group-rows .ia-card-row > div {
    width: 33%;
  }
}

.ia-card-group-rows .ia-card-row > div p:first-child {
  flex-grow: 2;
}

.ia-card-group-rows + hr {
  border-top: 1px solid #999;
  margin-top: 0;
}

/* _accordion */
/* panels are in accordions */
.panel-group {
  margin-bottom: 0;
}

.panel-group .panel {
  border-radius: 0;
  box-shadow: none;
  border: 0;
}

.panel-group .panel + .panel {
  margin-top: 0;
}

.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 0;
}

.panel-heading {
  padding: 0;
}

.panel-title {
  color: #333;
  position: relative;
}

.panel-title a {
  display: inline-block;
  line-height: 1.2;
  padding: 12px 15px;
  width: 100%;
}

.panel-title a:before, .panel-title a:after {
  content: " ";
  position: absolute;
}

.panel-title a:before {
  height: 2px;
  width: 16px;
  top: 19px;
  right: 11px;
  transition: transform 0.5s linear;
}

.panel-title a:after {
  height: 2px;
  width: 16px;
  top: 19px;
  right: 11px;
}

.panel-title .collapsed:before {
  transform: rotate(-90deg);
}

.csp-content {
  /* articles accordion */
}

.csp-content .list-group {
  padding-left: 0;
}

.csp-content .list-group .standalone-link {
  list-style: none;
}

.csp-content .list-group .standalone-link:last-child {
  margin-bottom: 0;
}

.csp-content .panel-title {
  margin-bottom: 0;
}

.csp-content .panel-title a {
  background: transparent;
  color: #ae332a;
  padding: 10px 0 0;
  border-top: 1px solid #ccc;
}

.csp-content .panel-title a:before, .csp-content .panel-title a:after {
  background: #1d3c9b;
}

.csp-content .panel-title .collapsed:after,
.csp-content .panel-title .collapsed:before {
  background: #1d3c9b;
}

.csp-content .panel-group {
  margin-top: 54px;
  padding-bottom: 9px;
  border-bottom: 1px solid #ccc;
}

.csp-content .panel + .panel {
  margin-top: 10px;
}

.csp-content .panel-collapse.in {
  padding-bottom: 5px;
}

.csp-slideIn .panel-title .collapsed {
  background: #3a3939;
  color: #fff;
}

.csp-slideIn .panel-title .collapsed:hover, .csp-slideIn .panel-title .collapsed:focus {
  text-decoration: none;
  background: #e9e9e9;
  color: #333;
}

.csp-slideIn .panel-title .collapsed:hover:after, .csp-slideIn .panel-title .collapsed:hover:before, .csp-slideIn .panel-title .collapsed:focus:after, .csp-slideIn .panel-title .collapsed:focus:before {
  background: #333;
}

.csp-slideIn .panel-title .collapsed:after, .csp-slideIn .panel-title .collapsed:before {
  background: #fff;
}

.csp-slideIn .panel-title .collapsed:before {
  transform: rotate(-90deg);
}

.csp-slideIn .panel-title a {
  display: inline-block;
  line-height: 1.2;
  padding: 12px 15px;
  width: 100%;
  background: #e9e9e9;
  color: #333;
}

.csp-slideIn .panel-title a:before, .csp-slideIn .panel-title a:after {
  content: " ";
  position: absolute;
  background: #333;
}

.csp-slideIn .panel > .list-group,
.csp-slideIn .panel > .panel-collapse > .list-group {
  background: #e9e9e9;
  padding-bottom: 5px;
}

.csp-slideIn .panel .list-group > li > a {
  display: inline-block;
  width: 100%;
  color: #333;
  text-indent: 2.857142857142857em;
  padding: 8px 0;
}

/******* individual article pages ******/
.csp-article .article-title {
  margin-bottom: 1.111111111111111em;
}

.article-content .topic-heading {
  margin: 1.7857142857em 0 0.8928571429em;
}

.article-date {
  font-weight: bold;
}

.share-article {
  float: right;
  display: inline-block;
  padding-left: 2em;
  background: url(../img/share-icon_2x.png) no-repeat center left;
  background-size: 14px 14px;
}

.article-footnotes {
  margin-top: 30px;
}

/* videos in articles */
.video-wrapper-16x9 {
  display: block;
  position: relative;
  padding-bottom: 56.25%;
  /* 360 x 640 = 9:16  */
}

.video-player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fb-share,
.tw-share {
  display: inline-block;
  padding-left: 2em;
  background-repeat: no-repeat;
  background-position: center left;
  background-size: 22px 22px;
}

.tw-share {
  background-image: url(../img/twitter_22x22_2x.png);
}

.fb-share {
  margin-right: 3em;
  background-image: url(../img/facebook_22x22_2x.png);
}

/* final css chunk */
@media (min-width: 30em) {
  .csp-content .flush-edges {
    margin-left: -15px;
    margin-right: -15px;
  }
}

@media (min-width: 48em) {
  .csp-content .flush-edges {
    margin-left: 0;
    margin-right: 0;
  }
}

a[href^='tel:'] {
  color: #332929 !important;
  text-decoration: none;
  pointer-events: none;
  cursor: text;
}

.no-touchevents a[href^="tel:"] {
    pointer-events: none;
    cursor: text;
}

@media (min-width: 48em) and (max-width: 74.9375em) {
  .forms-page .portfolio-row .pdf-file:after {
    margin-left: 0 !important;
  }
}

.ia-deductions {
  margin: 1.375em 0 1em;
}

.ia-deductions img {
  width: 300px;
  height: auto;
}

.ia-deductions figcaption {
  margin: 1em 0;
}

.ia-deductions figcaption p {
  margin-bottom: 0;
}

@media (max-width: 27.4375em) {
  .ia-deductions figcaption p {
    font-size: 4vw;
  }
}

@media (min-width: 27.5em) {
  .ia-deductions figcaption p {
    word-spacing: 6px;
  }
}

@media (max-width: 27.4375em) {
  .ia-deductions figcaption small {
    font-size: 3.9vw;
  }
}

/* don't let the 2x images get too big! */
#chart_compounding {
  width: 384px;
}

#chart_tuition {
  width: 623px;
}

#chart_earnings {
  width: 586px;
}

#chart_save_borrow {
  width: 526px;
}
