﻿body {
    max-width: 1080px;
    margin: 0 auto !important;
    float: none !important;

    font-size: 14px;
}

.start-hidden {
    display: none;
}

.modal-title {
    margin: 0;
}

.modal-dialog {
    max-width: 600px;
}

a {
    text-decoration: none;
}

    a:hover {
        text-decoration: underline;
    }

label {
    margin-bottom: 5px;
    font-weight: 600;
}

.container {
    padding-top: 30px;
    margin-top: 65px;
}

#card {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.15), 0 0 1px 1px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    padding-top: 10px;
}

#pageImage img {
    display: block;
    margin: 0 auto;
}

#pageHeader {
    text-align: center;
}

.text-centre {
    text-align: center;
}

a, a:hover, a:active, a:visited {
    color: #2CA8FF;
}

.margin-top-20 {
    margin-top: 20px;
}

.btn {
    border-width: 2px;
    opacity: 0.8;
    padding: 8px 16px;
}

    .btn:hover {
        opacity: 1;
    }

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .btn-primary {
    color: #1D62F0;
    border-color: #1D62F0;
    background-color: transparent;
}

.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .btn-default {
    color: #333;
    background-color: #fff;
    border-color: #ccc;
}

.btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled]:active, .btn-primary[disabled].active, .btn-primary[disabled] {
    color: #1D62F0;
    border-color: #1D62F0;
    background-color: transparent;
    opacity: 0.5;
}

.btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled]:active, .btn-default[disabled].active, .btn-default[disabled] {
    color: #333;
    background-color: #fff;
    border-color: #ccc;
    opacity: 0.5;
}

/*           Font Smoothing      */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, .navbar, .brand, .btn-simple {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

/*           Typography          */
h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    font-weight: 400;
    margin: 30px 0 15px;
}

h1, .h1 {
    font-size: 52px;
}

h2, .h2 {
    font-size: 36px;
}

h3, .h3 {
    font-size: 28px;
    margin: 20px 0 10px;
}

h4, .h4 {
    font-size: 22px;
}

h5, .h5 {
    font-size: 16px;
}

h6, .h6 {
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}

p {
    font-size: 16px;
    line-height: 1.6180em;
}

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small {
    color: #999999;
    font-weight: 300;
    line-height: 1;
}

h1 small, h2 small, h3 small, h1 .small, h2 .small, h3 .small {
    font-size: 60%;
}


li.nocursor a {
    cursor: default;
}

.prewrap {
    white-space: pre-line;
}


@media (min-width:576px) {
    #container {
        max-width: 542px;
    }
}

@media (min-width:768px) {
    #container {
        max-width: 722px;
    }
}

@media (min-width:992px) {
    #container {
        max-width: 962px;
    }
}

@media (min-width:1200px) {
    #container {
        max-width: 1142px;
    }
}

@media (min-width:1400px) {
    #container {
        max-width: 1322px;
    }
}


/* alternative way to create arrows allowing css to set widths without
    needing to use js to add data-steps attribute
*/
@property --arrow-bg-color {
    syntax: "<color>";
    inherits: false;
    /*initial-value: #999999;*/
    initial-value: #767676;
}

@property --arrow-highlight-color {
    syntax: "<color>";
    inherits: false;
    /*initial-value: #2CA8FF;*/
    initial-value: #50519A;
}

.arrow-steps {
    --height: 40px;
    --gap: 10px;
    --arrow-point-width: calc(var(--height)/2); /*keeping them 90degree points */
    /* this is to counteract the bootstrap card-body padding */
    margin-left: -3rem;
    margin-right: -3rem;
    ul

{
    list-style: none;
    display: flex; /* allows the "arrows" to fill the width evenly */
    /* this is to counteract the bootstrap ul padding */
    padding-left: 0;
}

li {
    flex: 1; /* makes the elements fill the outer div evenly  */
    height: var(--height); /* overall height of the arrows */
    margin-right: var(--gap); /* gap between arrows */
    display: inline-flex;
    position: relative;
    background-color: var(--arrow-bg-color);
}

    /* create the points by using the border properties of divs if there is no height to
        a div then the borders will all have angled corners to a cetre spot
        that we can hide or colour as appropriate */
    li:before { /* adding in the indented arrow */
        content: "";
        /* display: inline-block;  */
        background: transparent;
        width: 0;
        height: 0;
        left: 0;
        right: auto;
        position: absolute;
        border-top: calc(var(--height)/2) solid transparent; /* height should be half of the total height  */
        border-left: var(--arrow-point-width) solid white; /* the left point width style colour same as li:after width*/
        border-bottom: calc(var(--height)/2) solid transparent; /* height should be half of the total height  */
    }

    li:after { /* the right point  */
        content: "";
        display: inline-block;
        background: transparent;
        width: 0;
        height: 0;
        border-top: calc(var(--height)/2) solid transparent; /* height should be half of the total height  */
        border-bottom: calc(var(--height)/2) solid transparent; /* height should be half of the total height  */
        right: -20px;
        position: absolute;
        z-index: 1;
        border-left: var(--arrow-point-width) solid var(--arrow-bg-color); /* width style colour of arrow*/
    }

.step {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    /* padding-bottom: 5px; */
    padding: 0 0 0 var(--arrow-point-width);
    /* specifics*/
    color: #ffffff;
    text-transform: uppercase;
}

li:first-child {
    &::before

{
    display: none;
}

}

li:last-child {
    margin-right: 0;
    &::after

{
    display: none;
}

}

.current {
    background-color: var(--arrow-highlight-color);
}

    .current:after {
        border-left: var(--arrow-point-width) solid var(--arrow-highlight-color);
    }
}
