/*Affects the numbered line, stops it working*/
.gem-c-step-nav__step {
  position: relative;
  padding-left: 45px;
  list-style: none
}

/*Connects the circles with lines*/
.gem-c-step-nav__step:after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 0;
  height: 100%;
  border-left: solid 2px #b1b4b6;
  background: #ffffff;
  left: 0;
  margin-left: 12px;
  top: 15px
}

/*Gives the last step a horizontal bar (end of the line)*/
.gem-c-step-nav__step:last-child:before {
  content: "";
  position: absolute;
  z-index: 6;
  bottom: 0;
  left: 0;
  margin-left: 6.5px;
  width: 13px;
  height: 0;
  border-bottom: solid 2px #b1b4b6
}

/*Moves the horizontal bar to be perpendicular to the vertical line*/
.gem-c-step-nav__step:last-child:after {
  height: -webkit-calc(100% - 15px);
  height: calc(100% - 15px)
}

/*Circles the step numbers, and aligns them to the vertical line*/
.gem-c-step-nav__circle {
  box-sizing: border-box;
  position: absolute;
  z-index: 5;
  top: 15px;
  left: 0;
  width: 26px;
  height: 26px;
  color: #0b0c0c;
  background: #ffffff;
  border-radius: 100px;
  text-align: center
}

/*Circles the numbers*/
.gem-c-step-nav__circle--number {
  font-family: 'Roboto', helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  font-weight: bold;
  line-height: 23px;
  border: solid 2px #b1b4b6
}

/*Removes every character except the number in the circle*/
.gem-c-step-nav__circle-step-label,
.gem-c-step-nav__circle-step-colon {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

/*Draws the horizontal lines between each step*/
.gem-c-step-nav__header {
  padding-bottom: 5px;
  padding-top: 5px;
  border-top: solid 2px #b1b4b6;
  width: calc(100% - 15px);
}

.gem-c-step-nav__final {
  border-bottom: solid 2px #b1b4b6;
}

/*Gives the step titles the gov font, and reduces space between writing*/
.gem-c-step-nav__title {
  color: #0b0c0c;
  font-family: 'Roboto', helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 700;
  font-weight: bold;
  line-height: 1.4;
  margin: 0
}

/*Gives the writing within each step the govuk font, and reduces line gaps*/
.gem-c-step-nav__panel {
  color: #0b0c0c;
  font-family: 'Roboto', helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.3;
  width: 200px;
  margin-bottom: 0px;
}

/*Reduces padding between the writing in each step*/
.gem-c-step-nav__paragraph {
  margin: 0;
  font-size: inherit
}

/*Removes the numbering of the data within each step*/
.gem-c-step-nav__list {
  padding: 0;
  list-style: none
}

/*Adds dashes where appropriate*/
.gem-c-step-nav__context:before {
  content: " \2013\00a0"
}

/*Adds padding to the data in the sections*/
.gem-c-step-nav__list-item {
  margin-bottom: 10px
}

.gem-c-step-nav__content {
  height: 1.5em;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}

.gem-c-step-nav__content * {
  text-decoration: none !important;
  cursor: default !important;
}

.gem-c-step-nav__content a.govuk-link,
.gem-c-step-nav__content a.govuk-link * {
  cursor: pointer !important;
}

.gem-c-step-nav__content a.govuk-link:hover:not(:focus).govuk-accordion__section-green,
.gem-c-step-nav__content a.govuk-link:hover:not(:focus) .govuk-accordion__section-green {
  color: var(--govuk-colour-green-shade-50);
}

.gem-c-step-nav__content a.govuk-link:hover:not(:focus).govuk-accordion__section-red,
.gem-c-step-nav__content a.govuk-link:hover:not(:focus) .govuk-accordion__section-red {
  color: var(--govuk-colour-red-shade-50);
}

.accordion {
  text-align: left;
}

#accordButton,
button.accordButton {
  text-align: left;
  background-color: transparent;
  border: transparent;
  padding-left: 0px;
  height: 41px;
}

#accordButton h2 {
  color: #0b0c0c;
  padding-bottom: -10px;
}

#showButton {
  margin-top: 0px;
  margin-bottom: 0px;
  color: #1d70b8;
  font-weight: normal;
  font-size: 15px;
}

#accordButton:focus,
button.accordButton:focus {
  background-color: #ffdd00;
  box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  outline: 3px solid transparent;
  outline-color: transparent;
  outline-style: solid;
  outline-width: 3px;
  text-decoration: none;
}

.panel {
  margin-bottom: 0px;
}

.govuk-accordion__section-button {
  padding-top: 0px;
  font-weight: normal !important;
  font-size: 1rem;
  float: left;
}

.govuk-accordion__icon {
  visibility: hidden;
}

.govuk-accordion__open-all {
  visibility: hidden;
}

.tickIcon {
  color: #00703c;
}

.timesIcon {
  color: #d4351c;
}

#accordButton,
#accordButton:hover *,
button.accordButton,
button.accordButton:hover * {
  text-decoration: underline;
}

#accordButton:hover .circleNum * {
  text-decoration: none;
}

.circleNum {
  text-decoration: none !important;
}

.flex-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.flex-container-icon {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
}

.govuk-accordion__section-green,
.govuk-accordion__section-button.govuk-accordion__section-green,
.govuk-accordion__section-button.govuk-accordion__section-green:hover:not(:focus) {
  color: var(--govuk-colour-green);
}

.govuk-accordion__section-red,
.govuk-accordion__section-button.govuk-accordion__section-red,
.govuk-accordion__section-button.govuk-accordion__section-red:hover:not(:focus) {
  color: var(--govuk-colour-red);
}

a.govuk-link:focus .govuk-accordion__section-button,
a.govuk-link:focus .govuk-accordion__section-button:hover:not(:focus) {
  color: var(--govuk-text-colour);
}
