.js-accordion {
  color: var(--dfeh-color-black);
}

button.js-accordion__header {
    display: block !important;
    border: 0;
    background: none;
    font-size:  var(--dfeh-font-size-large);
    padding: 20px 0;
    text-align: left;
    width: 100%;
    font-weight: var(--dfeh-font-weight-bold);
}

.js-accordion__header[aria-expanded="false"] {
    border-bottom: 2px solid var(--dfeh-color-gold);
}

.buttoned-accordion .js-accordion__header:after {
    font-weight: var(--dfeh-font-weight-faded);
    line-height: 1.3;
    right: 20px;
    position: absolute;
    font-size: var(--dfeh-font-size-massive);
    color: var(--dfeh-color-aqua);
}

.buttoned-accordion .js-accordion__header[aria-expanded="false"] {
    color:var(--dfeh-color-aqua);
}

.buttoned-accordion .js-accordion__header[aria-expanded="true"]:after {
    content: "—";
    font-size: 20px;
    font-weight: 600;
    line-height: 2.5;
    right: 22px;
}

.buttoned-accordion .js-accordion__header[aria-expanded="false"]:after {
    content: "+";
}


.boxed-accordion .js-accordion__header {
  padding-left: 20px;
  padding-right: 45px;
  border: 1px solid var(--dfeh-color-gold);
}

.boxed-accordion .js-accordion__header[aria-expanded="true"] {
  border-bottom: none;
}

.boxed-accordion .js-accordion__panel {
  padding-left: 20px;
  border: 1px solid var(--dfeh-color-gold);
  border-top: none;
}

.boxed-accordion .js-accordion__panel[aria-expanded="false"],
.boxed-accordion .js-accordion__panel[aria-hidden="true"] {
  border: none;
}

.dashed-accordion .js-accordion__header {
  margin-left: var(--dfeh-indent-single);
}

.dashed-accordion .js-accordion__header:before {
  float: left;
  margin-left: calc(-1 * var(--dfeh-indent-single));
  content: "-";  
  line-height: 14px;
  font-weight: 400;
  font-size: 80px;
  color: var(--dfeh-color-gold);
}

.dashed-accordion .js-accordion__panel {
  margin-left: var(--dfeh-indent-single);
}

.js-accordion__panel {
  display: block;
  overflow: hidden;
  opacity: 1;
  -webkit-transition: visibility 0s ease, max-height 1s ease, opacity 1s ease ;
  transition: visibility 0s ease, max-height 1s ease, opacity 1s ease ;
  max-height: 100em;
  /* magic number for max-height = enough height */
  visibility: visible;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  margin: 0;
  padding: 0;
  border-bottom: 2px solid var(--dfeh-color-gold);
  padding-bottom: var(--dfeh-spacing-single);
}

.js-accordion__panel[aria-hidden=true] {
  display: block;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition-delay: 1s, 0s, 0s;
  transition-delay: 1s, 0s, 0s;
  padding: 0;
}

.js-accordion__panel[role="tabpanel"] .js-accordion__header {
  display: none;
}

.hardware-accelerated,
.js-accordion__panel {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
}


.js-accordion.noUnderline .js-accordion__header[aria-expanded="false"] {
  border-bottom: none;
}