﻿:root {
    --primary: #00a443;
    --primary-dark: #007f33;
    --primary-light: #58d38c;
    --secondary: #ff9c1a;
    --secondary-dark: #c66d00;
    --secondary-lighter: #ffb536;
    --tertiary: #0da9ff;
    --tertiary-dark: #007acb;
    --sand: #fff5ec;
    --forest: #00402a;
    --white: #fff;
    --grey: #3a3735;
    --grey-hint: #615d5a;
    --grey-lighter: #b0a9a3;
    --grey-light: #ebe3db;
    --error: #a40000;
    --grey-footer: #707070;
    --grey-footer-bg: #f7f9fa
}

.ui-autocomplete.ui-front.ui-menu.ui-widget.ui-widget-content.ui-corner-all {
    z-index: 9999999999;
}

.autocomplete-container {
    position: relative;
    display: block;
}

.autocomplete-container input::-ms-clear {
    padding-right: 15px;
}

.autocomplete-container .right-position {
    position: absolute;
    right: 28px;
    top: 7px;
    width: 28px;
    height: 28px;
}

.ui-menu.ui-widget.ui-widget-content.ui-autocomplete.ui-front {
    z-index: 1000;
}

p, h1, h2, h3, h4, h5, h6 {
    color: var(--grey);
}

h2 {
    font-size: 1.8rem;
    line-height: 2.6rem;
    font-weight: 500;
}

h3 {
    font-size: 1.5rem;
    line-height: 2.6rem;
}

h4 {
    font-size: 1.4rem;
    line-height: 2.6rem;
}

.faultsScope {
    background: var(--white);
    color: #3A3735;
}

.faultsScope input::placeholder {
    color: var(--grey-lighter);
}

.YesDangerBlock {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    margin-top: 100px;
    margin-bottom: 1000px;
}

.YesDangerBlock > p {
    text-align:center;
}

.Sections {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 0;
    border-radius: 8px;
    border: solid 1px #E8E8E8;
}

.faultsScope a {
    color: var(--primary-dark);
}

.Submit, .SectionDone {
    padding: 0 16px;
}

.Section, .SectionDone {
    display: flex;
    flex-direction: column;
}

.MeterChecks, .MeterCheckSuccess {
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
}

.MeterCheckSuccess p {
        text-align: center;
}

.MeterChecks h3 {
    font-size: 2.6rem;
    line-height: 2.8rem;
}


.check-fusebox {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.check-fusebox legend {
    text-align: center;
    padding-top: 16px;
    float: left;
}

.fusebox-img-container {
    width: 284px;
}

.meter-img-container {
    width: 125px;
}

.meter-img-container img, .fusebox-img-container img {
    width: 100%;
}

label.btn-spen {
    user-select: none;
}

.radio-btn {
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.radio-btn:checked + label {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white);
}

.radio-btn:checked + .btn-spen.secondary:hover  {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white);
}

.radio-btn:focus-visible + label {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white);
}


.alert-snack div {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.alert-snack a, .alert-snack a:hover {
    color: #fff;
}

.alert-snack.success {
    background-color: var(--primary-dark)
}

.SafetyQuestion h2, .SectionWrapper h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 3.6rem;
    font-weight: 400;
    margin: 10px 0 15px 0;
}

.faultsScope .FieldBlock
{
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-bottom: 10px;
    margin-bottom: 8px;
}

.faultsScope legend {
    border: 0;
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-weight: 500;
    color: var(--Grey, #3A3735);
}

label.lblSpen {
    display: flex;
    font-size: 1.4rem;
    line-height: 2.4rem;
    font-weight: 300;
    color: var(--Grey, #3A3735);
    margin: 0 0 .5rem 0;
}

.faultsScope input[type='text'] {
    display: flex;
    padding: 16px 20px 17px 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    border-radius: 4px;
    border: 1px solid var(--grey-lighter);
    background: var(--white);
}

.faultsScope input[type='text'].focus-visible {
    outline: none !important;
    border: 2px solid var( --tertiary-dark);
}

.btn-spen {
    border-radius: .5rem;
    cursor: pointer;
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-style: normal;
    font-weight: 500;
    height: 4.6rem;
    padding: 10px 12px 12px 12px;
    text-align: center;
    transition: color .2s ease-out,background-color .2s ease-out,border-color .2s ease-out,opacity .2s ease-out;
    width: 21.7rem;
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
}

.btn-spen.primary {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white);
    font-style: normal;
    font-weight: 500;
    text-align: center
}

.btn-spen.primary:hover {
    background-color: var(--sand);
    border: 1px solid var(--primary);
    color: var(--primary-dark)
}

.btn-spen.primary:active {
    background-color: var(--white);
    border: 1px solid var(--primary);
    color: var(--primary-dark)
}

.btn-spen.secondary {
    background-color: var(--white);
    border: 1px solid var(--primary);
    color: var(--primary-dark)
}

.btn-spen.secondary:hover {
    background-color: var(--sand);
    border: 1px solid var(--primary);
    color: var(--primary-dark)
}

.btn-spen.secondary:active {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white)
}

a.btn-spen, a.btn-spen:hover {
    text-decoration: none;
}

.btn-spen.primary.FuseBoxBtn:focus,
.btn-spen.primary.MeterCheckBtn:focus,
.btn-spen.primary.FuseBoxBtn:hover,
.btn-spen.primary.MeterCheckBtn:hover {
    background-color: var(--primary-dark);
    border: 1px solid var(--primary);
    color: var(--white);
}

.button-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.button-block.has-error button {
    border: 1px solid var( --error);
    color: var(--error);
}

.radio-block {
    margin: 0;
}

.radio-container, .check-container {
    position: relative;
    display: flex;
    height: 44px;
    padding: 8px 8px 8px 40px;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    border-radius: 8px;
    border: 1px solid #D9D9D9;
    background: var(--white);
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.has-error .radio-container, .has-error > input[type='text'] {
    border: 1px solid #A40000;
}

.FieldValidator {
    color: var(--error);
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.2rem;
    margin-top: .5rem;
}

.radio-block input, .check-block input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.custom-radio {
    position: absolute;
    top: 8px;
    left: 8px;
    height: 25px;
    width: 25px;
    background: url('/userfiles/icons/radio-enabled.svg') no-repeat var(--white);
}

.radio-container:hover input ~ .custom-radio {
    background: url('/userfiles/icons/radio-hover.svg') no-repeat var(--white);
}

.radio-block input:checked ~ .custom-radio {
    background: url('/userfiles/icons/radio-checked.svg') no-repeat var(--white);
}

.radio-block input:focus-visible ~ .custom-radio {
    background: url('/userfiles/icons/radio-focused.svg') no-repeat var(--white);
}

.safety-image-container {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.safety-image-container > figure {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 139px;
    max-width: 223px;
}

.safety-image-container > figure img {
    width: 100%;
}

.safety-image-container figcaption {
    padding-top: 11px;
    display: flex;
    justify-content: center;
    font-size: 2.1rem;
    font-weight: 500;
    line-height: 2.8rem; 
    text-align:center;
    text-wrap-style: pretty;
}

#meter-fusebox-checks h3 {
    margin-bottom: 0;
}

.ActionBlock {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    margin-top: 50px;
}

.ActionBlock.YesNo {
    justify-content: center;
    gap: 16px;
}

.ErrorBlock {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ErrorBlock h3 {
    font-size: 1.8rem;
    margin: 0;
    font-weight: 550;
}

.ErrorBlock ul {
    margin: 0;
}

 .ErrorBlock li {
        font-size: 1.6rem;
 }


.YourSafety .RadioBlock, .YourSafety .action-fieldset {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 4px;
}

.YourDetails fieldset:first-of-type {
    padding: 0 0 20px 0;
}

.double-block {
    display:flex;
}

.faultsScope .alert-snack {
    align-items: flex-start;
    margin: 0 0 19px;
}

.SectionDone .alert-snack {
    margin: 0 0 19px 0;
}

.alert-snack p {
    font-size: 1.4rem;
    line-height: 2.2rem;
}

.additional-info-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.additional-info-container > h2 {
    margin: 8px 0 2px 0;
}

.additional-info-list {
    border-radius: 9px;
    border: 1px solid #BDBDBD;
    display: flex;
    padding: 20px 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.additional-info-list > ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    list-style-type: none;
    padding: 0;
}

.additional-info-list li {
    position: relative;
    padding-left: 35px;
}

.additional-info-list li::before {
    position: absolute;
    left: 4px;
    width: 25px;
    height: 25px;
    content: url('/userfiles/icons/tick-green.svg');
}

.additional-info-list p, .additional-info-list ul {
    margin: 0;
    font-size: 1.4rem;
    line-height: 2.2rem;
    font-weight: 500;
}

.additional-info-input {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
}

.additional-info-input > label {
    display: none;
}

.additional-info-input > textarea {
    position: relative;
    height: 120px;
    border-radius: 6px;
    border: 1px solid #BDBDBD;
    background: var(--white);
    margin-top: 8px;
    resize: none;
}

.additional-info-input .char-count {
    position: absolute;
    bottom: 15px;
    right: 20px;
    color: #A7A7A7;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2.2rem;
}

.step-indicator {
    position: relative;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
    padding: 0;
    margin: 0 25px 20px 20px;
}

.step-indicator::before {
    position: absolute;
    content: '';
    height: 1px;
    width: 100%;
    top: 16px;
    border: solid 1px var(--Grey, #3A3735);
}


.step-indicator li {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    font-weight: 400;
    background-color: var(--white);
    gap: 8px;
}

.step-indicator p {
    margin: 0;
}

.step-indicator li .icon {
    display: grid;
    place-content: center;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    border: 2px solid #000;
    font-size: 1.8rem;
}

li.step-current .icon { 
    border: 2px solid var( --primary-dark);
    color: var( --primary-dark);
}

li.step-incomplete .icon {
    background-color: var( --grey);
    color: var(--white);
}

li.step-error .icon {
    border: 2px solid var(--error);
    color: var(--error);
}

li.step-complete .icon {
    opacity: 0;
}


li.step-complete::before {
    position: absolute;
    top: 6px;
    left: 0px;
    display: flex;
    justify-content: center;
    width: 100%;
    height: 25px;
    content: url('/userfiles/icons/tick-green.svg');
}

.captcha-container {
    display: flex;
    flex-direction: column;
    margin-top: 50px;
    align-items: center;
}

.what-next {
    display: flex;
    padding: 12px 0px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.what-next ul {
    font-size: 1.6rem;
}

.what-next p {
    margin: 0 0 8px 0;
}

.what-next h2 {
    font-size: 2.1rem;
    line-height: 2.8rem;
    margin: 0;
    font-weight: 550;
}

.what-next ul {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-left: 16px;
    margin: 10px 0;
}

.prs-callout {
    display: flex;
    padding: 24px 12px;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    border-radius: 8px;
    background: var(--sand, #FFF5EC);
}

.prs-callout > a, .prs-callout > a:hover {
    align-self: flex-end;
    text-decoration: none;
}

.prs-callout p, .prs-callout ul {
    margin: 0 0 12px 25px;
}

.prs-callout h2 {
    display: flex;
    padding-left: 14px;
    gap: 16px;
    align-items: flex-end;
}

.hints-container h2 {
    margin-top: 12px;
    font-size: 2.3rem;
    line-height: 3.2rem;
}

.hints-container ul {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 20px 0 10px 0;
}


.hints-container li {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 45px;
    gap: 10px;
}

.hints-container li::before {
    position: absolute;
    top: 3px;
    left: 0;
    height: 100%;
    content: url(/userfiles/icons/tick-green.svg);
    min-width: 26px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.note {
    font-size: 1.4rem;
}

.validation-summary {
    display: none;
}

.warning-box {
    margin: 24px auto;
    display: flex;
    max-width: 336px;
    padding: 12px 18px;
    gap: 22px;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
    border: 1px solid #E6E6E6;
    box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.05);
}

.warning-box p {
    font-size: 1.1rem;
    line-height: 1.7rem;
    margin: 10px 0;
}

.warning-box a {
    color: var(--tertiary-dark);
    text-decoration: underline;
    font-weight: 700;
}

.warning-box h3 {
    margin: 0;
}

.callout-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.callout-warning {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 18px 16px 20px 16px;
}

.callout-warning > h3 {
    display: none;
}

.callout-warning p {
    margin: 0;
}

.callout-warning a {
    display: block;
    font-size: 4.8rem;
    line-height: 3.4rem;
    text-decoration-line: underline;
    font-weight: 700;
    color: var(--tertiary-dark);
}

.callout-warning a:hover {
   color: var(--tertiary-dark);
}

.contact-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.frame-grey {
    border-radius: 4px;
    border: 1px solid #E6E6E6;
    background: #FFF;
    box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.05);
}

.contact-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 8px 16px 8px;
    gap: 12px;
}

.contact-card > h4 {
    margin: 0;
    align-self: flex-start;
}

.contact-card a {
    display: block;
    color: #595959;
    font-size: 2.5rem;
    line-height: 1.7rem;
    font-weight: 500;
}

.contact-card a:hover {
    color: #595959;
}

.consider-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
}

.consider-card ol {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style:none;
    padding-left: 0;
}

.consider-card li {
    display: flex;
    align-items: flex-start;
}

.consider-card li > .disc {
    display: grid;
    place-content: center;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    border: 2px solid #000;
    font-size: 1.8rem;
    background-color: var( --grey);
    color: var(--white);
    min-width: 28px;
    margin-right: 8px;
}

.consider-card h4 {
    margin: 16px 0;
}

.consider-card p {
    margin: 0;
}

.ErrorSection {
    gap: 12px;
}

.ActionBlock > p {
    font-size: 1.8rem;
    line-height: 2.6rem;
    text-align: center;
    margin: 12px 0 0 0;
}

.alert-snack.warning {
    background: var(--secondary-lighter);
    color: var(--grey);
    align-items: flex-start;
}

.alert-snack.warning a, .alert-snack.warning a:hover {
     color: var(--grey);
     font-weight: 700;
}

.alert-snack.warning p {
    color: var(--grey);
}

.ui-widget-content {
    border-radius: 4px;
    border: 1px solid var(--primary-dark);
    color: var(--grey);
}

.ui-widget-content .ui-state-active, .ui-state-active:hover {
    background: var(--primary-light);
    color: var(--grey);
    font-weight: 400;
}

.inline-error {
    margin-top: -10px;
    margin-bottom: 16px;
}

#power-cut-video-player .accessibility-options,
#power-cut-audio-player .accessibility-options,
#fusebox-video-player .accessibility-options,
#fusebox-audio-player .accessibility-options {
    display: none;
}

ul.accessibility-options {
    padding-left: 16px;
}

button.btn-link, button.btn-link:hover {
    outline: none;
    border: none;
    font-size: 1.6rem;
    color: var(--tertiary-dark);
    padding: 0;
    background: none;
    text-decoration: underline;
}

button.btn-link:hover {
    text-decoration: none;
}

.video-container h2 {
    line-height: 4.2rem;
    font-size: 2.5rem;
}

.video-container h3 {
    line-height: 2.2rem;
    font-size: 1.6rem;
    display: inline;
}

.video-container h4 {
    line-height: 2.2rem;
    font-size: 1.6rem;
    font-weight: 700;
}

#fusebox-tutorial {
    align-items: center;
}

#fusebox-tutorial .btnToggleTutorial {
    width: fit-content;
}

.YesDangerBlock h2 {
    margin: 0;
    font-size: 2.7rem;
    line-height: 3.2rem;
}

.YesDangerBlock > p {
    font-size: 2.1rem;
}

#btnRestoreMain {
    display: flex;
    justify-content: center;
}

.psr-category {
    display: flex;
    padding: 8px;
    flex-direction: column;
    gap: 10px;
    border-radius: 4px;
    border: 1px solid var( --grey-lighter);
}

.psr-category legend {
    float: left;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
    font-weight: 500;
    font-size: 2rem;
    line-height: 133%;
    margin: 0;
}

.psr-category legend > svg {
       transform: rotate(0deg);
}

.psr-category legend.open > svg {
       transform: rotate(180deg);
}


.custom-check {
    position: absolute;
    top: 8px;
    left: 8px;
    height: 28px;
    width: 28px;
    background: url('/userfiles/icons/chk-box.svg') no-repeat var(--white);
}

.check-container .custom-check, .check-container:hover .custom-check {
    background-position: center;
    background-repeat: no-repeat;
}

.check-container:hover input ~ .custom-check {
    background-image: url('/userfiles/icons/chk-box-hover.svg');
}

.check-block input:checked ~ .custom-check {
    background-image: url('/userfiles/icons/chk-box-chked.svg');
}

.check-block input:focus-visible ~ .custom-check {
    background-image: url('/userfiles/icons/chk-box-focus.svg');
}

.check-block input:checked:focus-visible ~ .custom-check {
    background-image: url('/userfiles/icons/chk-box-chked-focus.svg');
}

.psr-callout {
    display: flex;
    padding: 6px 24px 16px 24px;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
    align-self: stretch;
    border-radius: 16px;
    background: var(--sand, #FFF5EC);
    margin-bottom: 24px;
}

.psr-callout h2 {
    display: flex;
    align-items: center;
    font-weight: 500;
    background: url('/userfiles/image/psr-heart.png') left center no-repeat;
    color: var(--primary-dark, #007F33);
    font-size: 2rem;
    line-height: 180%;
    min-height: 58px;
    padding-left: 64px;
    margin-bottom: 0;
}

.psr-callout ul {
    margin: 12px 0;
    padding-left: 25px;
}

.psr-callout p {
    padding: 0;
    margin: 0;
    font-size: 1.6rem;
}

.psr-callout p strong {
    font-weight: 600;
}

.psr-options h3 {
    font-size: 1.6rem;
    line-height: 125%;
    color: var(--grey, #3A3735);
}

.prs-options-fieldsets {
    display: flex;
    padding: 8px;
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
}

.YourSafety .action-fieldset {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.faultsScope .action-fieldset legend {
    font-size: 1.6rem;
    line-height: 2.2rem;
    padding: 8px;
}

.action-legend a {
    text-decoration: underline;
      font-size: 1.4rem;
    line-height: 2.2rem;
}

.SectionDone hr {
    width: 100%;
    height: 1px;
    background: #D9D9D9;
    margin-top: 16px;
    margin-bottom: 24px;
}

.medical-conditions-container.has-error {
    border: solid 1px #A40000;
}

.hide-on-mobile {
    display: none;
}

.psr-alert {
    margin-top: 8px;
}

@media (min-width: 768px) {

    .psr-alert {
        margin-top: 25px;
    }

    .hide-on-mobile {
        display: inline;
    }

    h3 {
        font-size: 2rem;
        line-height: 2.6rem;
    }

    .hints-container ul {
        padding-left: 15px;
        gap: 16px;
    }

    .hints-container {
        line-height: 4.2rem;
    }

    .what-next ul {
        padding-left: 25px;
    }

    ul.accessibility-options {
        padding-left: 0;
    }

    .check-fusebox legend {
        max-width: 500px;
    }

    .YesDangerBlock h2 {
        margin: 0;
        font-size: 3.7rem;
        line-height: 4.2rem;
    }

    .YesDangerBlock > p {
        font-size: 2.4rem;
    }

    .safety-image-container {
        flex-wrap: nowrap;
    }

    .safety-image-container > figure:nth-of-type(4) {
        display: none;
    }

    .safety-image-container > figure {
        max-width: 223px;
    }

    #fusebox-video-player, #fusebox-audio-player {
        min-width: 650px;
    }

    .button-block {
        flex-direction: row;
        justify-content: space-between;
    }

    .YourSafety, .YourDetails {
        padding: 50px 0;
    }

    .SectionDone, .Submit {
        padding: 50px 16px 0 16px;
    }

    .YesDangerBlock {
        gap: 24px;
        margin-top: 100px;
    }

    .consider-card {
        padding: 24px;
    }

     .consider-card li {
         font-size: 2rem;
         line-height: 4.2rem;
     }

      .consider-card h4 {
          font-size: 2.5rem;
          line-height: 4.2rem;
      }

    .Section, .SectionDone {
        min-width: 650px;
    }

    .address-fieldset {
        display: flex;
        flex-direction: column;
    }

    .doublerow {
        display: flex;
    }

    .doublerow div {
        flex-grow: 1;
    }

    .faultsScope legend {
        font-size: 1.8rem;
        line-height: 3rem;
    }
    
    .faultsScope .check-fusebox legend {
        font-size: 1.4rem;
        line-height: 2rem;
    }


    label.lblSpen {
        font-size: 1.6rem;
        line-height: 2.8rem;
    }

    .ActionBlock, .YourSafety .action-fieldset {
        flex-direction: row;
        justify-content: space-between;
        margin-top: 50px;
    }

    .faultsScope .action-fieldset {
        margin-top: 25px;
    }

    .ActionBlock.YesNo {
        gap: 80px;
    }

    .Submit .ActionBlock {
        margin-top: 16px;
    }

    .privacy-container {
        margin-top: 32px;
    }

    .additional-info-container {
        flex-direction: row;
        padding-right: 2px;
        justify-content: center;
        align-items: stretch;
        gap: 13px;
    }

    .additional-info-container h2 {
        display: none;
    }

    .additional-info-container > div {
        flex: 1;
    }

    .additional-info-list {
        border: 0;
        background: #F8F8F8;
    }

    .additional-info-input > label {
        display: flex;
    }

    .validation-summary {
        position: relative;
        display: flex;
    }

    .validation-summary::before {
        position: absolute;
        top: 16px;
        left: 24px;
        width: 25px;
        height: 25px;
        content: url('/userfiles/icons/warning-icon.svg');
    }

    .validation-summary ul {
        margin: 0;
        margin-left: 12px;
        list-style: none;
    }

    .validation-summary li, .validation-summary strong {
        color: var(--white);
    }

    .YourDetails .validation-summary {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 68px;
    }

    .YourDetails .validation-summary ul {
        margin:0;
    }

    .YourDetails fieldset:nth-last-of-type(2) {
        padding: 50px 0 0 0;
    }

    #address-fields {
        padding: 0 0 50px 0;
        margin-bottom: 50px;
        border-bottom: solid 1px #E4E4E4;
    }

    .address-fieldset legend {
        margin-bottom: 7px;
    }

    .step-indicator {
        margin: 0 40px 50px 40px;
    }

    .Submit .alert-snack {
        margin-bottom: 50px;
    }

    .alert-snack p {
        font-size: 1.6rem;
    }

    .captcha-container {
        align-items: flex-end;
    }

    .additional-info-input > textarea {
        height: 100%;
    }

    .warning-box {
        margin: 36px auto;
        padding: 16px 44px;
        max-width: 700px;
    }

    .warning-box p {
        font-size: 1.6rem;
        line-height: 2.6rem;
    }

    .warning-box > img {
        display: none;
    }

    .warning-box h3, .callout-warning h3 {
        padding-left: 45px;
        background: url('/userfiles/icons/warning.png') left center no-repeat;
        min-height: 35px;
        line-height: 3.5rem;
    }

    .callout-warning h3 {
        display: block;
        margin: 0;
    }

    .contact-container {
        flex-grow: 1;
    }

    .contact-card {
        padding: 12px;
        padding-bottom: 16px;
        gap: 16px;
        flex-grow: 1;
    }

    .callout-container {
        flex-direction: row;
    }

    .callout-warning {
        max-width: 380px;
        padding: 20px;
    }

    .callout-warning a {
        margin-top: auto;
    }

    .ErrorBlock {
        margin: 0 40px 20px 0;
        gap: 24px;
    }

    .ErrorBlock h3 {
        font-size: 2.1rem;
    }

    .ErrorBlock li {
        font-size: 2rem;
    }
}

@media (min-width: 992px) {

    .Sections {
        padding: 50px 98px;
    }

    .Submit {
        padding: 50px 0;
    }

    .YourSafety, .YourDetails, .SectionDone {
        padding: 0;
    }

    .faultsScope .alert-snack {
        margin: 0;
    }

    .SectionDone .alert-snack, .YourSafety .alert-snack {
        margin: 0 0 19px 0;
    }
}


.Spin {
    display: inline-block;
    vertical-align: middle;
    -o-animation: rotator 1.4s linear infinite;
    -ms-animation: rotator 1.4s linear infinite;
    -moz-animation: rotator 1.4s linear infinite;
    -webkit-animation: rotator 1.4s linear infinite;
    animation: rotator 1.4s linear infinite;
}

@-o-keyframes rotator {
    0% {
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -o-transform: rotate(270deg);
        transform: rotate(270deg);
    }
}

@-ms-keyframes rotator {
    0% {
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(270deg);
        transform: rotate(270deg);
    }
}

@-moz-keyframes rotator {
    0% {
        -moz-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -moz-transform: rotate(270deg);
        transform: rotate(270deg);
    }
}

@-webkit-keyframes rotator {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(270deg);
        transform: rotate(270deg);
    }
}

@keyframes rotator {
    0% {
        -o-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -o-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
        -moz-transform: rotate(270deg);
        -webkit-transform: rotate(270deg);
        transform: rotate(270deg);
    }
}

@-o-keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        -o-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        -o-transform: rotate(450deg);
        transform: rotate(450deg);
    }
}

@-moz-keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        -moz-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        -moz-transform: rotate(450deg);
        transform: rotate(450deg);
    }
}

@-ms-keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        -ms-transform: rotate(450deg);
        transform: rotate(450deg);
    }
}

@-webkit-keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        -webkit-transform: rotate(450deg);
        transform: rotate(450deg);
    }
}

@keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        -ms-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        -o-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        -ms-transform: rotate(450deg);
        -moz-transform: rotate(450deg);
        -webkit-transform: rotate(450deg);
        -o-transform: rotate(450deg);
        transform: rotate(450deg);
    }
}

.faultsScope .Path {
    stroke: #427314;
    stroke-dasharray: 187;
    stroke-dashoffset: 0;
    -o-transform-origin: center;
    -ms-transform-origin: center;
    -moz-transform-origin: center;
    -webkit-transform-origin: center;
    transform-origin: center;
    -o-animation: dash 1.4s ease-in-out infinite;
    -ms-animation: dash 1.4s ease-in-out infinite;
    -moz-animation: dash 1.4s ease-in-out infinite;
    -webkit-animation: dash 1.4s ease-in-out infinite;
    animation: dash 1.4s ease-in-out infinite;
}