.ppk-cost-calculator fieldset {
    margin-left: 0;
    margin-right: 0
}

.ppk-cost-calculator [data-sticky-container] {
    background-image: url(assets/money.9c8634171d3ed96f48f37cfd2a26e00a.jpg);
    background-position: bottom right;
    background-size: 250px;
    background-repeat: no-repeat
}

@media screen and (max-width: 63.99875em) {
    .ppk-cost-calculator [data-sticky-container] {
        padding-bottom: 9rem
    }
}

.ppk-cost-calculator .step,
.ppk-cost-calculator .substep,
.ppk-cost-calculator .total-section {
    background: #fcfcfc;
    border: 1px solid #f1edeb;
    border-radius: 3px;
    margin-bottom: 1rem;
    padding: 1rem
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step,
    .ppk-cost-calculator .substep,
    .ppk-cost-calculator .total-section {
        padding: 2.325rem 3.325rem 1rem
    }
}

.ppk-cost-calculator .step.toggle,
.ppk-cost-calculator .substep.toggle,
.ppk-cost-calculator .total-section.toggle {
    margin-bottom: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep {
    position: relative;
    margin-bottom: 0;
    border-radius: 0;
    border-top: none;
    padding-top: 0;
    padding-bottom: 0
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep:not(:last-child),
.ppk-cost-calculator .substep.toggle+.conditional-section .substep:not(:last-child),
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep:not(:last-child) {
    border-bottom: none
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep .substep-wrapper,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep .substep-wrapper,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep .substep-wrapper {
    padding: 2.325rem 0 1rem;
    border-bottom: 1px solid #f1edeb
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep:last-child,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep:last-child,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep:last-child {
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    margin-bottom: 1rem
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep:last-child .substep-wrapper,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep:last-child .substep-wrapper,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep:last-child .substep-wrapper {
    border-bottom: none
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep .add-group,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep .add-group,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep .add-group {
    font-family: "NNNittiGrotesk-Heading"
}

.ppk-cost-calculator .step.toggle+.conditional-section .substep .add-group .icon,
.ppk-cost-calculator .substep.toggle+.conditional-section .substep .add-group .icon,
.ppk-cost-calculator .total-section.toggle+.conditional-section .substep .add-group .icon {
    width: .875rem;
    height: .875rem;
    margin-right: .5rem
}

.ppk-cost-calculator .step legend,
.ppk-cost-calculator .step .total-header,
.ppk-cost-calculator .substep legend,
.ppk-cost-calculator .substep .total-header,
.ppk-cost-calculator .total-section legend,
.ppk-cost-calculator .total-section .total-header {
    float: left;
    width: 100%;
    font-size: 1.25rem;
    font-family: "NNNittiGrotesk-Heading";
    line-height: 1.2
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step legend,
    .ppk-cost-calculator .step .total-header,
    .ppk-cost-calculator .substep legend,
    .ppk-cost-calculator .substep .total-header,
    .ppk-cost-calculator .total-section legend,
    .ppk-cost-calculator .total-section .total-header {
        font-size: 1.5rem;
        margin-bottom: 1.625rem
    }
}

.ppk-cost-calculator .step legend.small-header,
.ppk-cost-calculator .step .total-header.small-header,
.ppk-cost-calculator .substep legend.small-header,
.ppk-cost-calculator .substep .total-header.small-header,
.ppk-cost-calculator .total-section legend.small-header,
.ppk-cost-calculator .total-section .total-header.small-header {
    font-size: 1.25rem
}

.ppk-cost-calculator .step legend:after,
.ppk-cost-calculator .step .total-header:after,
.ppk-cost-calculator .substep legend:after,
.ppk-cost-calculator .substep .total-header:after,
.ppk-cost-calculator .total-section legend:after,
.ppk-cost-calculator .total-section .total-header:after {
    clear: both
}

.ppk-cost-calculator .step legend .description,
.ppk-cost-calculator .step .total-header .description,
.ppk-cost-calculator .substep legend .description,
.ppk-cost-calculator .substep .total-header .description,
.ppk-cost-calculator .total-section legend .description,
.ppk-cost-calculator .total-section .total-header .description {
    display: block;
    font-size: 1rem;
    font-family: "NNNittiGrotesk-TextRegular"
}

.ppk-cost-calculator .step .input-wrapper,
.ppk-cost-calculator .substep .input-wrapper,
.ppk-cost-calculator .total-section .input-wrapper {
    display: inline-block;
    margin-right: 1.5rem;
    width: 100%
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step .input-wrapper,
    .ppk-cost-calculator .substep .input-wrapper,
    .ppk-cost-calculator .total-section .input-wrapper {
        width: auto;
        max-width: 18.625rem
    }
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step .input-wrapper.half-size,
    .ppk-cost-calculator .substep .input-wrapper.half-size,
    .ppk-cost-calculator .total-section .input-wrapper.half-size {
        max-width: 11rem
    }
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step .input-wrapper.equal-size,
    .ppk-cost-calculator .substep .input-wrapper.equal-size,
    .ppk-cost-calculator .total-section .input-wrapper.equal-size {
        max-width: 14.2rem
    }
}

.ppk-cost-calculator .step .input-wrapper label,
.ppk-cost-calculator .substep .input-wrapper label,
.ppk-cost-calculator .total-section .input-wrapper label {
    margin-bottom: .5rem;
    display: inline-block
}

.ppk-cost-calculator .step .input-wrapper input,
.ppk-cost-calculator .substep .input-wrapper input,
.ppk-cost-calculator .total-section .input-wrapper input {
    border-radius: .5rem;
    font-family: "NNNittiGrotesk-Heading";
    font-size: 1.25rem;
    padding: .75rem 1.25rem;
    box-shadow: 0 1px 2px 0 #f1edeb
}

.ppk-cost-calculator .step .input-wrapper input:read-only,
.ppk-cost-calculator .substep .input-wrapper input:read-only,
.ppk-cost-calculator .total-section .input-wrapper input:read-only {
    background: #eee;
    cursor: default;
    pointer-events: none;
    border-color: transparent
}

.ppk-cost-calculator .step .input-wrapper input:focus,
.ppk-cost-calculator .substep .input-wrapper input:focus,
.ppk-cost-calculator .total-section .input-wrapper input:focus {
    border-color: #ee7f00
}

.ppk-cost-calculator .step .basic-total,
.ppk-cost-calculator .substep .basic-total,
.ppk-cost-calculator .total-section .basic-total {
    display: inline-block;
    float: right;
    text-align: right
}

.ppk-cost-calculator .step .basic-total .js-subtotal,
.ppk-cost-calculator .substep .basic-total .js-subtotal,
.ppk-cost-calculator .total-section .basic-total .js-subtotal {
    display: block;
    font-family: "NNNittiGrotesk-Heading";
    font-size: 1.75rem;
    color: #ee7f00
}

.ppk-cost-calculator .step input[type=radio]:first-of-type+label,
.ppk-cost-calculator .substep input[type=radio]:first-of-type+label,
.ppk-cost-calculator .total-section input[type=radio]:first-of-type+label {
    margin-right: 3.125rem
}

.ppk-cost-calculator .step input[type=radio]+label,
.ppk-cost-calculator .substep input[type=radio]+label,
.ppk-cost-calculator .total-section input[type=radio]+label {
    width: auto;
    line-height: 1.5rem;
    padding-left: 2rem
}

.ppk-cost-calculator .step input[type=radio]+label+.nn-tooltip-trigger,
.ppk-cost-calculator .substep input[type=radio]+label+.nn-tooltip-trigger,
.ppk-cost-calculator .total-section input[type=radio]+label+.nn-tooltip-trigger {
    margin-right: 3.125rem
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step input[type=radio]+label,
    .ppk-cost-calculator .substep input[type=radio]+label,
    .ppk-cost-calculator .total-section input[type=radio]+label {
        line-height: 1.5rem
    }
}

.ppk-cost-calculator .step input[type=radio]+label:before,
.ppk-cost-calculator .substep input[type=radio]+label:before,
.ppk-cost-calculator .total-section input[type=radio]+label:before {
    width: 1.5rem;
    height: 1.5rem
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step input[type=radio]+label:before,
    .ppk-cost-calculator .substep input[type=radio]+label:before,
    .ppk-cost-calculator .total-section input[type=radio]+label:before {
        width: 1.5rem;
        height: 1.5rem
    }
}

.ppk-cost-calculator .step input[type=radio]+label:after,
.ppk-cost-calculator .substep input[type=radio]+label:after,
.ppk-cost-calculator .total-section input[type=radio]+label:after {
    width: 1.5rem;
    height: 1.5rem
}

@media print,
screen and (min-width: 64em) {

    .ppk-cost-calculator .step input[type=radio]+label:after,
    .ppk-cost-calculator .substep input[type=radio]+label:after,
    .ppk-cost-calculator .total-section input[type=radio]+label:after {
        width: 1.5rem;
        height: 1.5rem
    }
}

.ppk-cost-calculator [data-condition=diverse] {
    counter-reset: diverse
}

.ppk-cost-calculator [data-condition=diverse] [data-section] {
    counter-increment: diverse
}

.ppk-cost-calculator [data-condition=diverse] [data-section] .small-header:before {
    content: counter(diverse)
}

.ppk-cost-calculator .substep .remove {
    position: absolute;
    font-size: 1rem;
    right: 1.5rem;
    top: 2.5rem
}

@media print,
screen and (min-width: 64em) {
    .ppk-cost-calculator .substep .remove {
        opacity: 0;
        top: auto;
        right: 3.5rem;
        bottom: 3.25rem
    }
}

.ppk-cost-calculator .substep:hover .remove {
    opacity: 1
}

.ppk-cost-calculator .total-section {
    border: 1px solid #ee7f00;
    margin-bottom: 0;
    padding: 1.5rem;
    z-index: 1
}

@media screen and (max-width: 63.99875em) {
    .ppk-cost-calculator .total-section {
        position: fixed !important;
        top: auto !important;
        right: .8125rem !important;
        bottom: 0 !important;
        left: .8125rem !important
    }
}

@media screen and (max-width: 63.99875em) {
    .ppk-cost-calculator .total-section.bottom {
        position: absolute !important
    }
}

@media print,
screen and (min-width: 64em) {
    .ppk-cost-calculator .total-section.bottom {
        bottom: 1rem !important
    }
}

@media print,
screen and (min-width: 64em) {
    .ppk-cost-calculator .total-section {
        position: static;
        width: auto;
        padding: 2rem 4rem
    }
}

.ppk-cost-calculator .total-section .subtotal-group {
    padding: 1rem 0;
    border-bottom: 1px solid #f1edeb
}

.ppk-cost-calculator .total-section .subtotal-group .value {
    font-family: "NNNittiGrotesk-Heading";
    font-size: 1.5rem
}

.ppk-cost-calculator .total-section .icon {
    width: .875rem;
    height: 1.0625rem;
    margin-right: .8125rem
}

.ppk-cost-calculator .total-section .total-group {
    margin: 2rem 0 0
}

@media print,
screen and (min-width: 64em) {
    .ppk-cost-calculator .total-section .total-group {
        margin: 3rem 0 0
    }
}

.ppk-cost-calculator .total-section .total-group .js-total {
    display: block;
    font-family: "NNNittiGrotesk-Heading";
    color: #ee7f00;
    font-size: 2rem
}

@media print,
screen and (min-width: 64em) {
    .ppk-cost-calculator .total-section .total-group .js-total {
        font-size: 3rem
    }
}