/* Minification failed. Returning unminified contents.
: run-time error CSS1036: Expected expression, found ''
: run-time error CSS1036: Expected expression, found ''
: run-time error CSS1036: Expected expression, found ''
: run-time error CSS1036: Expected expression, found ''
: run-time error CSS1036: Expected expression, found ''
 */
/*! jQuery UI - v1.11.4 - 2015-03-11
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, draggable.css, menu.css, progressbar.css, resizable.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden {
    display: none;
}

.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none;
}

.ui-helper-clearfix {
    min-height: 0;
}

    .ui-helper-clearfix:before {
        content: "";
        display: table;
        border-collapse: collapse;
    }

    .ui-helper-clearfix:after {
        content: "";
        display: table;
        border-collapse: collapse;
        clear: both;
    }

.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    filter: Alpha(Opacity=0);
}

.ui-front {
    z-index: 100;
}

.ui-state-disabled {
    cursor: default !important;
}

.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}

.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ui-accordion .ui-accordion-header {
    display: block;
    cursor: pointer;
    position: relative;
    margin: 2px 0 0 0;
    padding: .5em .5em .5em .7em;
    min-height: 0;
    font-size: 100%;
}

.ui-accordion .ui-accordion-icons {
    padding-left: 2.2em;
}

    .ui-accordion .ui-accordion-icons .ui-accordion-icons {
        padding-left: 2.2em;
    }

.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
    position: absolute;
    left: .5em;
    top: 50%;
    margin-top: -8px;
}

.ui-accordion .ui-accordion-content {
    padding: 1em 2.2em;
    border-top: 0;
    overflow: auto;
}

.ui-autocomplete {
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
}

.ui-button {
    display: inline-block;
    position: relative;
    padding: 0;
    line-height: normal;
    margin-right: .1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    overflow: visible;
    text-decoration: none;
}

    .ui-button:link, .ui-button:visited, .ui-button:hover, .ui-button:active {
        text-decoration: none;
    }

.ui-button-icon-only {
    width: 2.2em;
}

button.ui-button-icon-only {
    width: 2.4em;
}

.ui-button-icons-only {
    width: 3.4em;
}

button.ui-button-icons-only {
    width: 3.7em;
}

.ui-button .ui-button-text {
    display: block;
    line-height: normal;
}

.ui-button-text-only .ui-button-text {
    padding: 0.4em 1em;
}

.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text {
    padding: .4em;
    text-indent: -9999999px;
}

.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text {
    padding: 0.4em 1em 0.4em 2.1em;
}

.ui-button-text-icon-secondary .ui-button-text {
    padding: 0.4em 2.1em 0.4em 1em;
}

.ui-button-text-icons .ui-button-text {
    padding: 0.4em 2.1em 0.4em 1em;
    padding-left: 2.1em;
    padding-right: 2.1em;
}

input.ui-button {
    padding: 0.4em 1em;
}

.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}

.ui-button-icon-only .ui-icon {
    left: 50%;
    margin-left: -8px;
}

.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary {
    left: 0.5em;
}

.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary {
    right: 0.5em;
}

.ui-buttonset {
    margin-right: 7px;
}

    .ui-buttonset .ui-button {
        margin-left: 0;
        margin-right: -0.3em;
    }

input.ui-button::-moz-focus-inner, button.ui-button::-moz-focus-inner {
    border: 0;
    padding: 0;
}

.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
}

    .ui-datepicker .ui-datepicker-header {
        position: relative;
        padding: 0.2em 0;
    }

    .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
        position: absolute;
        top: 2px;
        width: 1.8em;
        height: 1.8em;
    }

    .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
        top: 1px;
    }

    .ui-datepicker .ui-datepicker-prev {
        left: 2px;
    }

    .ui-datepicker .ui-datepicker-next {
        right: 2px;
    }

    .ui-datepicker .ui-datepicker-prev-hover {
        left: 1px;
    }

    .ui-datepicker .ui-datepicker-next-hover {
        right: 1px;
    }

    .ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
        display: block;
        position: absolute;
        left: 50%;
        margin-left: -8px;
        top: 50%;
        margin-top: -8px;
    }

    .ui-datepicker .ui-datepicker-title {
        margin: 0 2.3em;
        line-height: 1.8em;
        text-align: center;
    }

        .ui-datepicker .ui-datepicker-title select {
            font-size: 1em;
            margin: 1px 0;
        }

    .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
        width: 45%;
    }

    .ui-datepicker table {
        width: 100%;
        font-size: .9em;
        border-collapse: collapse;
        margin: 0 0 0.4em;
    }

    .ui-datepicker th {
        padding: .7em .3em;
        text-align: center;
        font-weight: 700;
        border: 0;
    }

    .ui-datepicker td {
        border: 0;
        padding: 1px;
    }

        .ui-datepicker td span, .ui-datepicker td a {
            display: block;
            padding: .2em;
            text-align: right;
            text-decoration: none;
        }

    .ui-datepicker .ui-datepicker-buttonpane {
        background-image: none;
        margin: .7em 0 0 0;
        padding: 0 .2em;
        border-left: 0;
        border-right: 0;
        border-bottom: 0;
    }

        .ui-datepicker .ui-datepicker-buttonpane button {
            float: right;
            margin: .5em .2em .4em;
            cursor: pointer;
            padding: .2em .6em .3em .6em;
            width: auto;
            overflow: visible;
        }

            .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
                float: left;
            }

    .ui-datepicker.ui-datepicker-multi {
        width: auto;
    }

.ui-datepicker-multi .ui-datepicker-group {
    float: left;
}

    .ui-datepicker-multi .ui-datepicker-group table {
        width: 95%;
        margin: 0 auto 0.4em;
    }

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header, .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
}

.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
}

.ui-datepicker-rtl {
    direction: rtl;
}

    .ui-datepicker-rtl .ui-datepicker-prev {
        right: 2px;
        left: auto;
    }

    .ui-datepicker-rtl .ui-datepicker-next {
        left: 2px;
        right: auto;
    }

    .ui-datepicker-rtl .ui-datepicker-prev:hover {
        right: 1px;
        left: auto;
    }

    .ui-datepicker-rtl .ui-datepicker-next:hover {
        left: 1px;
        right: auto;
    }

    .ui-datepicker-rtl .ui-datepicker-buttonpane {
        clear: right;
    }

        .ui-datepicker-rtl .ui-datepicker-buttonpane button {
            float: left;
        }

            .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {
                float: right;
            }

    .ui-datepicker-rtl .ui-datepicker-group {
        float: right;
    }

    .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header, .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
        border-right-width: 0;
        border-left-width: 1px;
    }

.ui-dialog {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    padding: .2em;
    outline: 0;
}

    .ui-dialog .ui-dialog-titlebar {
        padding: .4em 1em;
        position: relative;
    }

    .ui-dialog .ui-dialog-title {
        float: left;
        margin: .1em 0;
        white-space: nowrap;
        width: 90%;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .ui-dialog .ui-dialog-titlebar-close {
        position: absolute;
        right: .3em;
        top: 50%;
        width: 20px;
        margin: -10px 0 0 0;
        padding: 1px;
        height: 20px;
    }

    .ui-dialog .ui-dialog-content {
        position: relative;
        border: 0;
        padding: .5em 1em;
        background: none;
        overflow: auto;
    }

    .ui-dialog .ui-dialog-buttonpane {
        text-align: left;
        border-width: 1px 0 0 0;
        background-image: none;
        margin-top: .5em;
        padding: 0.3em 1em 0.5em 0.4em;
    }

        .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
            float: right;
        }

        .ui-dialog .ui-dialog-buttonpane button {
            margin: .5em .4em .5em 0;
            cursor: pointer;
        }

    .ui-dialog .ui-resizable-se {
        width: 12px;
        height: 12px;
        right: -5px;
        bottom: -5px;
        background-position: 16px 16px;
    }

.ui-draggable .ui-dialog-titlebar {
    cursor: move;
}

.ui-draggable-handle {
    -ms-touch-action: none;
    touch-action: none;
}

.ui-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
    outline: none;
}

    .ui-menu .ui-menu {
        position: absolute;
    }

    .ui-menu .ui-menu-item {
        position: relative;
        margin: 0;
        padding: 3px 1em 3px .4em;
        cursor: pointer;
        min-height: 0;
        list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
    }

    .ui-menu .ui-menu-divider {
        margin: 5px 0;
        height: 0;
        font-size: 0;
        line-height: 0;
        border-width: 1px 0 0 0;
    }

    .ui-menu .ui-state-focus, .ui-menu .ui-state-active {
        margin: -1px;
    }

.ui-menu-icons {
    position: relative;
}

    .ui-menu-icons .ui-menu-item {
        padding-left: 2em;
    }

.ui-menu .ui-icon {
    position: absolute;
    top: 0;
    bottom: 0;
    left: .2em;
    margin: auto 0;
}

.ui-menu .ui-menu-icon {
    left: auto;
    right: 0;
}

.ui-progressbar {
    height: 2em;
    text-align: left;
    overflow: hidden;
}

    .ui-progressbar .ui-progressbar-value {
        margin: -1px;
        height: 100%;
    }

    .ui-progressbar .ui-progressbar-overlay {
        background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
        height: 100%;
        filter: alpha(opacity=25);
        opacity: 0.25;
    }

.ui-progressbar-indeterminate .ui-progressbar-value {
    background-image: none;
}

.ui-resizable {
    position: relative;
}

.ui-resizable-handle {
    position: absolute;
    font-size: 0.1px;
    display: block;
    -ms-touch-action: none;
    touch-action: none;
}

.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle {
    display: none;
}

.ui-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}

.ui-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}

.ui-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}

.ui-resizable-w {
    cursor: w-resize;
    width: 7px;
    left: -5px;
    top: 0;
    height: 100%;
}

.ui-resizable-se {
    cursor: se-resize;
    width: 12px;
    height: 12px;
    right: 1px;
    bottom: 1px;
}

.ui-resizable-sw {
    cursor: sw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    bottom: -5px;
}

.ui-resizable-nw {
    cursor: nw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    top: -5px;
}

.ui-resizable-ne {
    cursor: ne-resize;
    width: 9px;
    height: 9px;
    right: -5px;
    top: -5px;
}

.ui-selectable {
    -ms-touch-action: none;
    touch-action: none;
}

.ui-selectable-helper {
    position: absolute;
    z-index: 100;
    border: 1px dotted black;
}

.ui-selectmenu-menu {
    padding: 0;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
}

    .ui-selectmenu-menu .ui-menu {
        overflow: auto;
        overflow-x: hidden;
        padding-bottom: 1px;
    }

        .ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
            font-size: 1em;
            font-weight: 700;
            line-height: 1.5;
            padding: 2px 0.4em;
            margin: 0.5em 0 0 0;
            height: auto;
            border: 0;
        }

.ui-selectmenu-open {
    display: block;
}

.ui-selectmenu-button {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    cursor: pointer;
}

    .ui-selectmenu-button span.ui-icon {
        right: 0.5em;
        left: auto;
        margin-top: -8px;
        position: absolute;
        top: 50%;
    }

    .ui-selectmenu-button span.ui-selectmenu-text {
        text-align: left;
        padding: 0.4em 2.1em 0.4em 1em;
        display: block;
        line-height: 1.4;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.ui-slider {
    position: relative;
    text-align: left;
}

    .ui-slider .ui-slider-handle {
        position: absolute;
        z-index: 2;
        width: 1.2em;
        height: 1.2em;
        cursor: default;
        -ms-touch-action: none;
        touch-action: none;
    }

    .ui-slider .ui-slider-range {
        position: absolute;
        z-index: 1;
        font-size: .7em;
        display: block;
        border: 0;
        background-position: 0 0;
    }

    .ui-slider.ui-state-disabled .ui-slider-handle, .ui-slider.ui-state-disabled .ui-slider-range {
        filter: inherit;
    }

.ui-slider-horizontal {
    height: 0.8em;
}

    .ui-slider-horizontal .ui-slider-handle {
        top: -.3em;
        margin-left: -0.6em;
    }

    .ui-slider-horizontal .ui-slider-range {
        top: 0;
        height: 100%;
    }

    .ui-slider-horizontal .ui-slider-range-min {
        left: 0;
    }

    .ui-slider-horizontal .ui-slider-range-max {
        right: 0;
    }

.ui-slider-vertical {
    width: .8em;
    height: 100px;
}

    .ui-slider-vertical .ui-slider-handle {
        left: -.3em;
        margin-left: 0;
        margin-bottom: -0.6em;
    }

    .ui-slider-vertical .ui-slider-range {
        left: 0;
        width: 100%;
    }

    .ui-slider-vertical .ui-slider-range-min {
        bottom: 0;
    }

    .ui-slider-vertical .ui-slider-range-max {
        top: 0;
    }

.ui-sortable-handle {
    -ms-touch-action: none;
    touch-action: none;
}

.ui-spinner {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0;
    vertical-align: middle;
}

.ui-spinner-input {
    border: none;
    background: none;
    color: inherit;
    padding: 0;
    margin: .2em 0;
    vertical-align: middle;
    margin-left: .4em;
    margin-right: 22px;
}

.ui-spinner-button {
    width: 16px;
    height: 50%;
    font-size: .5em;
    padding: 0;
    margin: 0;
    text-align: center;
    position: absolute;
    cursor: default;
    display: block;
    overflow: hidden;
    right: 0;
}

.ui-spinner a.ui-spinner-button {
    border-top: none;
    border-bottom: none;
    border-right: none;
}

.ui-spinner .ui-icon {
    position: absolute;
    margin-top: -8px;
    top: 50%;
    left: 0;
}

.ui-spinner-up {
    top: 0;
}

.ui-spinner-down {
    bottom: 0;
}

.ui-spinner .ui-icon-triangle-1-s {
    background-position: -65px -16px;
}

.ui-tabs {
    position: relative;
    padding: 0.2em;
}

    .ui-tabs .ui-tabs-nav {
        margin: 0;
        padding: 0.2em 0.2em 0;
    }

        .ui-tabs .ui-tabs-nav li {
            list-style: none;
            float: left;
            position: relative;
            top: 0;
            margin: 1px .2em 0 0;
            border-bottom-width: 0;
            padding: 0;
            white-space: nowrap;
        }

        .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
            float: left;
            padding: .5em 1em;
            text-decoration: none;
        }

        .ui-tabs .ui-tabs-nav li.ui-tabs-active {
            margin-bottom: -1px;
            padding-bottom: 1px;
        }

            .ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
                cursor: text;
            }

        .ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor, .ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
            cursor: text;
        }

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
    cursor: pointer;
}

.ui-tabs .ui-tabs-panel {
    display: block;
    border-width: 0;
    padding: 1em 1.4em;
    background: none;
}

.ui-tooltip {
    padding: 8px;
    position: absolute;
    z-index: 9999;
    max-width: 300px;
    -webkit-box-shadow: 0 0 5px #ccc;
    box-shadow: 0 0 5px #ccc;
}

body .ui-tooltip {
    border-width: 2px;
}

.ui-widget-content {
    border: 1px solid #aaaaaa;
    background: #ffffff;
}

.ui-widget-header {
    border: 1px solid #aaaaaa;
    background: #cccccc;
}

    .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
        border: 1px solid #d3d3d3;
        background: #e6e6e6;
    }

        .ui-state-default a {
            text-decoration: none;
        }

            .ui-state-default a:link, .ui-state-default a:visited {
                text-decoration: none;
            }

    .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {
        border: 1px solid #999999;
        background: #dadada;
        font-weight: 400;
    }

        .ui-state-hover a {
            text-decoration: none;
        }

            .ui-state-hover a:hover, .ui-state-hover a:link, .ui-state-hover a:visited {
                text-decoration: none;
            }

        .ui-state-focus a {
            text-decoration: none;
        }

            .ui-state-focus a:hover, .ui-state-focus a:link, .ui-state-focus a:visited {
                text-decoration: none;
            }

    .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
        border: 1px solid #aaaaaa;
        background: #ffffff;
        font-weight: 400;
    }

        .ui-state-active a {
            text-decoration: none;
        }

            .ui-state-active a:link, .ui-state-active a:visited {
                text-decoration: none;
            }

    .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
        border: 1px solid #fcefa1;
        background: #fbf9ee;
    }

    .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {
        border: 1px solid #cd0a0a;
        background: #fef1ec;
    }

        .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a, .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text {
            color: #cd0a0a;
        }

    .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary {
        font-weight: 700;
    }

    .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary {
        opacity: .7;
        filter: Alpha(Opacity=70);
        font-weight: 400;
    }

    .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
        opacity: .35;
        filter: Alpha(Opacity=35);
        background-image: none;
    }

        .ui-state-disabled .ui-icon {
            filter: Alpha(Opacity=35);
        }

.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl {
    border-top-left-radius: 4px;
}

.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr {
    border-top-right-radius: 4px;
}

.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl {
    border-bottom-left-radius: 4px;
}

.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br {
    border-bottom-right-radius: 4px;
}

.ui-widget-overlay {
    background: #aaaaaa;
    opacity: .3;
    filter: Alpha(Opacity=30);
}

.ui-widget-shadow {
    margin: -8px 0 0 -8px;
    padding: 8px;
    background: #aaaaaa;
    opacity: .3;
    filter: Alpha(Opacity=30);
    border-radius: 8px;
}

.ui-timepicker-inline {
    display: inline;
}

#ui-timepicker-div {
    padding: 0.2em;
}

.ui-timepicker-table {
    display: inline-table;
    width: 0;
}

    .ui-timepicker-table table {
        margin: 0.15em 0 0 0;
        border-collapse: collapse;
    }

.ui-timepicker-hours, .ui-timepicker-minutes {
    padding: 0.2em;
}

.ui-timepicker-table .ui-timepicker-title {
    line-height: 1.8em;
    text-align: center;
}

.ui-timepicker-table td, .ui-timepicker-table th.periods {
    padding: 0.1em;
    width: 2.2em;
}

    .ui-timepicker-table td span {
        display: block;
        padding: 0.2em 0.3em 0.2em 0.5em;
        width: 1.2em;
        text-align: right;
        text-decoration: none;
    }

    .ui-timepicker-table td a {
        display: block;
        padding: 5px;
        width: 35px;
        cursor: pointer;
        text-align: right;
        text-decoration: none;
    }

.ui-timepicker .ui-timepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}

    .ui-timepicker .ui-timepicker-buttonpane button {
        margin: .5em .2em .4em;
        cursor: pointer;
        padding: .2em .6em .3em .6em;
        width: auto;
        overflow: visible;
    }

.ui-timepicker .ui-timepicker-close {
    float: right;
}

.ui-timepicker .ui-timepicker-now, .ui-timepicker .ui-timepicker-deselect {
    float: left;
}
/* Fonts */

@font-face{
    font-family:'Audi Type Regular';
/*    src:url('../fonts/AudiTypeV01-Normal.otf');*/
    src:url('/Content/fonts/AudiTypeV01-Normal.eot');
    src:url('/Content/fonts/AudiTypeV01-Normal.eot?#iefix') format('embedded-opentype'),
        url('/Content/fonts/AudiTypeV01-Normal.woff') format('woff'),
        url('/Content/fonts/AudiTypeV01-Normal.ttf') format('truetype'),
        url('/Content/fonts/AudiTypeV01-Normal.svg#AudiTypeV01_Normal') format('svg');
    font-weight:normal;
    font-style:normal;
}
@font-face{
    font-family:'Audi Type Bold';
/*    src:url('../fonts/AudiTypeV01-Bold.otf');*/
    src:url('/Content/fonts/AudiTypeV01-Bold.eot');
    src:url('/Content/fonts/AudiTypeV01-Bold.eot?#iefix') format('embedded-opentype'),
        url('/Content/fonts/AudiTypeV01-Bold.woff') format('woff'),
        url('/Content/fonts/AudiTypeV01-Bold.ttf') format('truetype'),
        url('/Content/fonts/AudiTypeV01-Bold.svg#AudiTypeV01_Bold') format('svg');
    font-weight:normal;
    font-style:normal;
}
@font-face{
    font-family:'Audi Type Extended Regular';
/*    src:url('../fonts/AudiTypeV01-ExtendedNormal.otf');*/
    src:url('/Content/fonts/AudiTypeV01-ExtendedNormal.eot');
    src:url('/Content/fonts/AudiTypeV01-ExtendedNormal.eot?#iefix') format('embedded-opentype'),
        url('/Content/fonts/AudiTypeV01-ExtendedNormal.woff') format('woff'),
        url('/Content/fonts/AudiTypeV01-ExtendedNormal.ttf') format('truetype'),
        url('/Content/fonts/AudiTypeV01-ExtendedNormal.svg#AudiTypeV01_Normal') format('svg');
    font-weight:normal;
    font-style:normal;
}
@font-face{
    font-family:'Audi Type Extended Bold';
/*    src:url('../fonts/AudiTypeV01-ExtendedBold.otf');*/
    src:url('/Content/fonts/AudiTypeV01-ExtendedBold.eot');
    src:url('/Content/fonts/AudiTypeV01-ExtendedBold.eot?#iefix') format('embedded-opentype'),
        url('/Content/fonts/AudiTypeV01-ExtendedBold.woff') format('woff'),
        url('/Content/fonts/AudiTypeV01-ExtendedBold.ttf') format('truetype'),
        url('/Content/fonts/AudiTypeV01-ExtendedBold.svg#AudiTypeV01_Bold') format('svg');
    font-weight:normal;
    font-style:normal;
}
@font-face {
    font-family: 'FontAwesome';
    src: url('/Content/fonts/fontawesome-webfont.eot');
    src: url('/Content/fonts/fontawesome-webfont.eot') format('embedded-opentype'),
         url('/Content/fonts/fontawesome-webfont.woff') format('woff'),
         url('/Content/fonts/fontawesome-webfont.ttf') format('truetype'),
         url('/Content/fonts/fontawesome-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* the fix ! simply ADD this block BELOW the above block */
@media screen and (-webkit-min-device-pixel-ratio:0){
    @font-face {
        font-family: 'Audi Type Regular';
        src: url('/Content/fonts/AudiTypeV01-Normal.svg') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    @font-face {
        font-family: 'Audi Type Bold';
        src: url('/Content/fonts/AudiTypeV01-Bold.svg') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    @font-face {
        font-family: 'Audi Type Extended Regular';
        src: url('/Content/fonts/AudiTypeV01-ExtendedNormal.svg') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    @font-face {
        font-family: 'Audi Type Extended Bold';
        src: url('/Content/fonts/AudiTypeV01-ExtendedBold.svg') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    @font-face {
        font-family: 'FontAwesome';
        src: url('/Content/fonts/fontawesome-webfont.svg') format('svg');
        font-weight: normal;
        font-style: normal;
    }
}
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  margin: .67em 0;
  font-size: 2em;
}
mark {
  color: #000;
  background: #ff0;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sup {
  top: -.5em;
}
sub {
  bottom: -.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  height: 0;
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font: inherit;
  color: inherit;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  padding: .35em .625em .75em;
  margin: 0 2px;
  border: 1px solid #c0c0c0;
}
legend {
  padding: 0;
  border: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;

    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';

  src: url('/Content/fonts/glyphicons-halflings-regular.eot');
  src: url('/Content/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('/Content/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('/Content/fonts/glyphicons-halflings-regular.woff') format('woff'), url('/Content/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('/Content/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\002a";
}
.glyphicon-plus:before {
  content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
.glyphicon-cd:before {
  content: "\e201";
}
.glyphicon-save-file:before {
  content: "\e202";
}
.glyphicon-open-file:before {
  content: "\e203";
}
.glyphicon-level-up:before {
  content: "\e204";
}
.glyphicon-copy:before {
  content: "\e205";
}
.glyphicon-paste:before {
  content: "\e206";
}
.glyphicon-alert:before {
  content: "\e209";
}
.glyphicon-equalizer:before {
  content: "\e210";
}
.glyphicon-king:before {
  content: "\e211";
}
.glyphicon-queen:before {
  content: "\e212";
}
.glyphicon-pawn:before {
  content: "\e213";
}
.glyphicon-bishop:before {
  content: "\e214";
}
.glyphicon-knight:before {
  content: "\e215";
}
.glyphicon-baby-formula:before {
  content: "\e216";
}
.glyphicon-tent:before {
  content: "\26fa";
}
.glyphicon-blackboard:before {
  content: "\e218";
}
.glyphicon-bed:before {
  content: "\e219";
}
.glyphicon-apple:before {
  content: "\f8ff";
}
.glyphicon-erase:before {
  content: "\e221";
}
.glyphicon-hourglass:before {
  content: "\231b";
}
.glyphicon-lamp:before {
  content: "\e223";
}
.glyphicon-duplicate:before {
  content: "\e224";
}
.glyphicon-piggy-bank:before {
  content: "\e225";
}
.glyphicon-scissors:before {
  content: "\e226";
}
.glyphicon-bitcoin:before {
  content: "\e227";
}
.glyphicon-btc:before {
  content: "\e227";
}
.glyphicon-xbt:before {
  content: "\e227";
}
.glyphicon-yen:before {
  content: "\00a5";
}
.glyphicon-jpy:before {
  content: "\00a5";
}
.glyphicon-ruble:before {
  content: "\20bd";
}
.glyphicon-rub:before {
  content: "\20bd";
}
.glyphicon-scale:before {
  content: "\e230";
}
.glyphicon-ice-lolly:before {
  content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}
.glyphicon-education:before {
  content: "\e233";
}
.glyphicon-option-horizontal:before {
  content: "\e234";
}
.glyphicon-option-vertical:before {
  content: "\e235";
}
.glyphicon-menu-hamburger:before {
  content: "\e236";
}
.glyphicon-modal-window:before {
  content: "\e237";
}
.glyphicon-oil:before {
  content: "\e238";
}
.glyphicon-grain:before {
  content: "\e239";
}
.glyphicon-sunglasses:before {
  content: "\e240";
}
.glyphicon-text-size:before {
  content: "\e241";
}
.glyphicon-text-color:before {
  content: "\e242";
}
.glyphicon-text-background:before {
  content: "\e243";
}
.glyphicon-object-align-top:before {
  content: "\e244";
}
.glyphicon-object-align-bottom:before {
  content: "\e245";
}
.glyphicon-object-align-horizontal:before {
  content: "\e246";
}
.glyphicon-object-align-left:before {
  content: "\e247";
}
.glyphicon-object-align-vertical:before {
  content: "\e248";
}
.glyphicon-object-align-right:before {
  content: "\e249";
}
.glyphicon-triangle-right:before {
  content: "\e250";
}
.glyphicon-triangle-left:before {
  content: "\e251";
}
.glyphicon-triangle-bottom:before {
  content: "\e252";
}
.glyphicon-triangle-top:before {
  content: "\e253";
}
.glyphicon-console:before {
  content: "\e254";
}
.glyphicon-superscript:before {
  content: "\e255";
}
.glyphicon-subscript:before {
  content: "\e256";
}
.glyphicon-menu-left:before {
  content: "\e257";
}
.glyphicon-menu-right:before {
  content: "\e258";
}
.glyphicon-menu-down:before {
  content: "\e259";
}
.glyphicon-menu-up:before {
  content: "\e260";
}
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
html {
  font-size: 10px;

  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #337ab7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 6px;
}
.img-thumbnail {
  display: inline-block;
  max-width: 100%;
  height: auto;
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: all .2s ease-in-out;
       -o-transition: all .2s ease-in-out;
          transition: all .2s ease-in-out;
}
.img-circle {
  border-radius: 50%;
}
hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
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 {
  font-weight: normal;
  line-height: 1;
  color: #777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 10px;
  margin-bottom: 10px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 36px;
}
h2,
.h2 {
  font-size: 30px;
}
h3,
.h3 {
  font-size: 24px;
}
h4,
.h4 {
  font-size: 18px;
}
h5,
.h5 {
  font-size: 14px;
}
h6,
.h6 {
  font-size: 12px;
}
p {
  margin: 0 0 10px;
}
.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 21px;
  }
}
small,
.small {
  font-size: 85%;
}
mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #777;
}
.text-primary {
  color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 10px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  margin-left: -5px;
  list-style: none;
}
.list-inline > li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 20px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  text-align: right;
  border-right: 5px solid #eee;
  border-left: 0;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}
code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);
          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  -webkit-box-shadow: none;
          box-shadow: none;
}
pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.row {
  margin-right: -15px;
  margin-left: -15px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}
table col[class*="col-"] {
  position: static;
  display: table-column;
  float: none;
}
table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  display: table-cell;
  float: none;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  min-height: .01%;
  overflow-x: auto;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
}
.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
       -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
          transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
          box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 46px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-top: 4px \9;
  margin-left: -20px;
}
.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  vertical-align: middle;
  cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-right: 0;
  padding-left: 0;
}
.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-sm {
  height: 30px;
  line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.input-lg {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
select.input-lg {
  height: 46px;
  line-height: 46px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 42.5px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #3c763d;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #8a6d3b;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 7px;
  margin-top: 0;
  margin-bottom: 0;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}
.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 7px;
    margin-bottom: 0;
    text-align: right;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.btn {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  background-image: none;
  outline: 0;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: .65;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  font-weight: normal;
  color: #337ab7;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #777;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity .15s linear;
       -o-transition: opacity .15s linear;
          transition: opacity .15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
}
.collapse.in {
  display: block;
}
tr.collapse.in {
  display: table-row;
}
tbody.collapse.in {
  display: table-row-group;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
       -o-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: height, visibility;
       -o-transition-property: height, visibility;
          transition-property: height, visibility;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  color: #262626;
  text-decoration: none;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}
.dropdown-menu-right {
  right: 0;
  left: auto;
}
.dropdown-menu-left {
  right: auto;
  left: 0;
}
.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #777;
  white-space: nowrap;
}
.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}
@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    right: auto;
    left: 0;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  display: table-cell;
  float: none;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-right: 0;
  padding-left: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  line-height: 46px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555;
  text-align: center;
  background-color: #eee;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}
.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eee;
}
.nav > li.disabled > a {
  color: #777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #777;
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eee #eee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 4px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}
@media (min-width: 768px) {
  .navbar {
    border-radius: 4px;
  }
}
@media (min-width: 768px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  -webkit-overflow-scrolling: touch;
  border-top: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-right: 0;
    padding-left: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 768px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 768px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 768px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  height: 50px;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
}
.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 768px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: -15px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-top: 8px;
  margin-right: 15px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 768px) {
  .navbar-toggle {
    display: none;
  }
}
.navbar-nav {
  margin: 7.5px -15px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}
@media (max-width: 767px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 20px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 768px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
.navbar-form {
  padding: 10px 15px;
  margin-top: 8px;
  margin-right: -15px;
  margin-bottom: 8px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 767px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  .navbar-form {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px;
}
.navbar-btn.btn-sm {
  margin-top: 10px;
  margin-bottom: 10px;
}
.navbar-btn.btn-xs {
  margin-top: 14px;
  margin-bottom: 14px;
}
.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .navbar-text {
    float: left;
    margin-right: 15px;
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .navbar-left {
    float: left !important;
  }
  .navbar-right {
    float: right !important;
    margin-right: -15px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  color: #fff;
  background-color: #080808;
}
@media (max-width: 767px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  padding: 0 5px;
  color: #ccc;
  content: "/\00a0";
}
.breadcrumb > .active {
  color: #777;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.42857143;
  color: #337ab7;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  cursor: default;
  background-color: #337ab7;
  border-color: #337ab7;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
}
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #777;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #5e5e5e;
}
.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #286090;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #c9302c;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  padding-right: 15px;
  padding-left: 15px;
  border-radius: 6px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-right: 60px;
    padding-left: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border .2s ease-in-out;
       -o-transition: border .2s ease-in-out;
          transition: border .2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-right: auto;
  margin-left: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  padding: 9px;
  color: #333;
}
.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@-o-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  height: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.progress-bar {
  float: left;
  width: 0;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15);
          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15);
  -webkit-transition: width .6s ease;
       -o-transition: width .6s ease;
          transition: width .6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  -webkit-background-size: 40px 40px;
          background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
       -o-animation: progress-bar-stripes 2s linear infinite;
          animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media,
.media-body {
  overflow: hidden;
  zoom: 1;
}
.media-body {
  width: 10000px;
}
.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}
.media-right,
.media > .pull-right {
  padding-left: 10px;
}
.media-left,
.media > .pull-left {
  padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}
.media-middle {
  vertical-align: middle;
}
.media-bottom {
  vertical-align: bottom;
}
.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.media-list {
  padding-left: 0;
  list-style: none;
}
.list-group {
  padding-left: 0;
  margin-bottom: 20px;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
  color: #555;
  text-decoration: none;
  background-color: #f5f5f5;
}
button.list-group-item {
  width: 100%;
  text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  color: #777;
  cursor: not-allowed;
  background-color: #eee;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
  color: #777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}
.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}
.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
          box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}
.list-group + .panel-footer {
  border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-right: 15px;
  padding-left: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 3px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 3px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  margin-bottom: 0;
  border: 0;
}
.panel-group {
  margin-bottom: 20px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 4px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, .15);
}
.well-lg {
  padding: 24px;
  border-radius: 6px;
}
.well-sm {
  padding: 9px;
  border-radius: 3px;
}
.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: .2;
}
.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  filter: alpha(opacity=50);
  opacity: .5;
}
button.close {
  -webkit-appearance: none;
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
}
.modal-open {
  overflow: hidden;
}
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:      -o-transform .3s ease-out;
          transition:         transform .3s ease-out;
  -webkit-transform: translate(0, -25%);
      -ms-transform: translate(0, -25%);
       -o-transform: translate(0, -25%);
          transform: translate(0, -25%);
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
       -o-transform: translate(0, 0);
          transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  outline: 0;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
          box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
}
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  filter: alpha(opacity=0);
  opacity: 0;
}
.modal-backdrop.in {
  filter: alpha(opacity=50);
  opacity: .5;
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-bottom: 0;
  margin-left: 5px;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
            box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  filter: alpha(opacity=0);
  opacity: 0;

  line-break: auto;
}
.tooltip.in {
  filter: alpha(opacity=90);
  opacity: .9;
}
.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}
.tooltip.right {
  padding: 0 5px;
  margin-left: 3px;
}
.tooltip.bottom {
  padding: 5px 0;
  margin-top: 3px;
}
.tooltip.left {
  padding: 0 5px;
  margin-left: -3px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  right: 5px;
  bottom: 0;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
          box-shadow: 0 5px 10px rgba(0, 0, 0, .2);

  line-break: auto;
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  content: "";
  border-width: 10px;
}
.popover.top > .arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: #999;
  border-top-color: rgba(0, 0, 0, .25);
  border-bottom-width: 0;
}
.popover.top > .arrow:after {
  bottom: 1px;
  margin-left: -10px;
  content: " ";
  border-top-color: #fff;
  border-bottom-width: 0;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-right-color: #999;
  border-right-color: rgba(0, 0, 0, .25);
  border-left-width: 0;
}
.popover.right > .arrow:after {
  bottom: -10px;
  left: 1px;
  content: " ";
  border-right-color: #fff;
  border-left-width: 0;
}
.popover.bottom > .arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999;
  border-bottom-color: rgba(0, 0, 0, .25);
}
.popover.bottom > .arrow:after {
  top: 1px;
  margin-left: -10px;
  content: " ";
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999;
  border-left-color: rgba(0, 0, 0, .25);
}
.popover.left > .arrow:after {
  right: 1px;
  bottom: -10px;
  content: " ";
  border-right-width: 0;
  border-left-color: #fff;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner > .item {
  position: relative;
  display: none;
  -webkit-transition: .6s ease-in-out left;
       -o-transition: .6s ease-in-out left;
          transition: .6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform .6s ease-in-out;
         -o-transition:      -o-transform .6s ease-in-out;
            transition:         transform .6s ease-in-out;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
  background-color: rgba(0, 0, 0, 0);
  filter: alpha(opacity=50);
  opacity: .5;
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001)));
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control.right {
  right: 0;
  left: auto;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5)));
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control:hover,
.carousel-control:focus {
  color: #fff;
  text-decoration: none;
  filter: alpha(opacity=90);
  outline: 0;
  opacity: .9;
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  margin-top: -10px;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  font-family: serif;
  line-height: 1;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #fff;
  border-radius: 10px;
}
.carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after {
  display: table;
  content: " ";
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after {
  clear: both;
}
.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.pull-right {
  float: right !important;
}
.pull-left {
  float: left !important;
}
.hide {
  display: none !important;
}
.show {
  display: block !important;
}
.invisible {
  visibility: hidden;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.hidden {
  display: none !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/*# sourceMappingURL=bootstrap.css.map */

/* --- bootstrap overrides --- */

/* force Audi width on containers */
.container {
    width: 100%;
    max-width: 1400px;
}

/* custom col-xs-12 which uses margins instead of padding to change how position:absolute children display */
.col-xs-12.use-margin {
    padding: 0px;
    margin: 0 15px;
}
.mt-1 {
    margin-top: 10px !important;
}

.mt-2 {
    margin-top: 20px !important;
}

.mt-3 {
    margin-top: 30px !important;
}

.mt-4 {
    margin-top: 40px !important;
}

.mt-5 {
    margin-top: 50px !important;
}

.mt-6 {
    margin-top: 60px !important;
}
/* force Audi styling on buttons for mobile devices */
.btn {
    border-radius: 0;
    border: none;
    font-family: "Audi Type Normal", sans-serif;
    height: 45px;
    padding: 0 25px;
    font-size: 12px;
    line-height: 45px;
    outline: none !important;
}

@media (min-width: 1024px) {
    /* modify font styling on buttons for non-mobile devices */
    .btn {
        font-family: "Audi Type Extended Regular", sans-serif;
        font-size: 14px;
    }
}

/* change default buttons to Audi default colour */
.btn-default {
    background-color: #33414e;
    color: #ffffff;
}

    /* change default buttons hover state to Audi default colour */
    .btn-default:hover, .btn-default:active, .btn-default:focus {
        background-color: #808080 !important;
        color: #ffffff;
    }

/* change primary buttons to Audi primary colour */
.btn-primary {
    background-color: #bb0a30;
}

    /* change primary buttons hover state to Audi default colour */
    .btn-primary:hover, .btn-primary:active, .btn-primary:focus {
        background-color: #808080 !important;
    }


/* initial secondary button style Audi button style */
.btn-secondary {
    background-color: #ffffff;
    color: #000000;
    border: solid 1px #000000;
}

/* updated to apply new style to secondary buttons in captions*/
/* added 'secondary' button class for secondary Audi button style */
.carousel-caption .btn-secondary, .carousel-caption .btn-secondary:hover {
    background-color: rgba(255,255,255,0);
    color: #fff;
    border: solid 1px #fff;
}

/* make the height of buttons inside input groups be the same as the input itself */
.input-group-addon .btn.large {
    height: 71px;
    line-height: 71px;
}

/* --- bootstrap carousel 'vertical' override --- */
.carousel-inner.vertical {
    height: 100%;
}

    .carousel-inner.vertical > .item {
        -webkit-transition: .6s ease-in-out top;
        -o-transition: .6s ease-in-out top;
        transition: .6s ease-in-out top;
    }

@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-inner.vertical > .item {
        -webkit-transition: -webkit-transform .6s ease-in-out;
        -o-transition: -o-transform .6s ease-in-out;
        transition: transform .6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-perspective: 1000;
        perspective: 1000;
    }

        .carousel-inner.vertical > .item.next,
        .carousel-inner.vertical > .item.active.right {
            top: 0;
            -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
        }

        .carousel-inner.vertical > .item.prev,
        .carousel-inner.vertical > .item.active.left {
            top: 0;
            -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
        }

            .carousel-inner.vertical > .item.next.left,
            .carousel-inner.vertical > .item.prev.right,
            .carousel-inner.vertical > .item.active {
                top: 0;
                -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
            }
}

.carousel-inner.vertical > .active {
    top: 0;
}

.carousel-inner.vertical > .next,
.carousel-inner.vertical > .prev {
    top: 0;
    height: 100%;
    width: auto;
}

.carousel-inner.vertical > .next {
    left: 0;
    top: 100%;
}

.carousel-inner.vertical > .prev {
    left: 0;
    top: -100%
}

    .carousel-inner.vertical > .next.left,
    .carousel-inner.vertical > .prev.right {
        top: 0;
    }

.carousel-inner.vertical > .active.left {
    left: 0;
    top: -100%;
}

.carousel-inner.vertical > .active.right {
    left: 0;
    top: 100%;
}

/* add styling to carousel items to display image correctly on all platforms */
.carousel-inner .item {
    background-position: center;
    background-size: cover;
    width: 100%;
    min-width: 100%;
}

/* override default bootstrap styling and positioning for carousel captions */
.carousel-caption {
    left: 100%;
    right: 0;
    bottom: 0;
    width: 100%;
    margin-left: 0px;
    padding: 10px 15px;
    text-align: left;
    font-family: "Audi Type Extended Regular", sans-serif;
    font-size: 14px;
    background-color: rgba(0, 0, 0, 0.7);
}


    /* override default bootstrap styling and positioning for caption headings */
    .carousel-caption h2 {
        font-size: 19px;
        line-height: 20px;
        margin-bottom: 15px;
        padding-bottom: 0px;
        text-transform: capitalize;
        font-family: "Audi Type Extended Bold", sans-serif;
        color: #ffffff;        
    }

/* ensure caption heading has underline on home page */
body.home .carousel-caption h2 {
    border-bottom: 1px solid #ffffff;
    padding-bottom: 15px;
}

/* hide caption icons */
.carousel-caption h2 img {
    display: none;
    margin-right: 10px;
}

/* show caption icons on the home page */
body.home .carousel-caption h2 img {
    display: inline-block;
}

/* hide carousel caption further text on mobile devices */
.carousel-caption p {
    display: none;
}

/* show carousel caption further text on mobile devices on the home page */
body.home .carousel-caption p {
    display: block;
}

.carousel-caption a {
    font-size: 12px;
}

/* override default bootstrap styling and positioning for carousel indicators */
.carousel-indicators-wrapper {
    position: absolute;
    display: flex;
    align-items: self-start;
    left: 15px;
    height: 100%;
    margin-top: 25%;
}

.carousel-indicators {
    position: relative;
    display: inline-block;
    bottom: auto;
    left: auto;
    width: 20px;
    margin: 0;
    padding: 2px 0;
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 10px;
}

    .carousel-indicators li {
        display: block;
        width: 10px;
        height: 10px;
        margin: 8px 5px;
    }

        .carousel-indicators li.active {
            width: 10px;
            height: 10px;
            margin: 8px 5px;
        }

/* default button margin for captions*/
.carousel-caption .btn {
    margin:0.25em;
}

@media (min-width: 560px) {
    .carousel-indicators-wrapper {
        margin-top: 12%;
    }
}

@media (min-width: 768px) {

    /* additional positioning rules for carousel captions on non-mobile devices */
    .carousel-caption {
        top: 50%;
        width: 386px;
        height: 206px;
        margin-top: -103px;
        padding: 0;
        background-color: transparent;
    }

    /* style rules for inner div - only to apply for desktop / tablet*/
    .carousel-caption-inner {
        background-color: rgba(0, 0, 0, 0.7);
        padding: 20px;
    }


    /* additional styling rules for caption headings on non-mobile devices */
    .carousel-caption h2 {
        border-bottom: 1px solid #ffffff;
        padding-bottom: 15px;
        position: relative;
    }

        /* make caption icons larger on non-mobile devices */
        .carousel-caption h2 img {
            display: inline-block;
            width: 32px;
            height: 32px;
            position: absolute;
            top: calc(50% - 23px);
        }

        /* update containing text in span for caption heading to make room for image */
        .carousel-caption h2 span {
            display: inline-block;
            margin-left: 40px;
        }

    /* show carousel caption further text on non-mobile devices */
    .carousel-caption p {
        display: block;
    }

    .carousel-caption a {
        font-size: 14px;
    }

    /* additional positioning rules for carousel indicators on non-mobile devices */
    .carousel-indicators-wrapper {
        align-items: center;
        left: 30px;
        margin-top: auto;
    }
}
    /* --- accordion overrides --- */
    /* override default panel group style */
    div [id^="accordion"].panel-group {
    margin-bottom: 0;
}

    /* override default panel style */
    div[id^="accordion"].panel-group > .panel {
        border: none;
        border-radius: 0;
        box-shadow: none;
        margin-top: 2px !important;
    }

        /* remove white space at the top of the first panel */
        div[id^="accordion"].panel-group > .panel:first-child {
            margin-top: 0px !important;
        }

/* override default panel heading style */
div[id^="accordion"] > .panel > .panel-heading {
    border: none;
    border-radius: 0;
    color: #ffffff;
    padding: 0;
    position: relative;
}

    /* override default panel heading anchor style on mobile devices */
    div[id^="accordion"] > .panel > .panel-heading a {
        display: block;
        width: 100%;
        height: 100%;
        background-color: #33414e;
        cursor: pointer;
        padding: 15px;
        text-align: left;
        font-family: "Audi Type Bold", sans-serif;
        font-size: 18px;
        line-height: 22px;
        color: #ffffff;
    }

        /* override expanded heading style */
        div[id^="accordion"] > .panel > .panel-heading a[aria-expanded="true"] {
            background-color: #bb0a30;
        }

        /* ensure panel heading anchors are not underlined */
        div[id^="accordion"] > .panel > .panel-heading a:hover, div[id^="accordion"] > .panel > .panel-heading a:active, div[id^="accordion"] > .panel > .panel-heading a:focus {
            text-decoration: none;
        }

        /* add up/down arrow to panel heading anchors */
        div[id^="accordion"] > .panel > .panel-heading a:after {
            content: '';
            width: 28px;
            height: 15px;
            position: absolute;
            bottom: 18px;
            left: calc(100% - 28px);
            margin-left: -14px;
            background-image: url(/Content/images/icon-arrow-down-white.svg);
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            -webkit-transform: rotateX(0deg);
            -moz-transform: rotateX(0deg);
            -ms-transform: rotateX(0deg);
            -o-transform: rotateX(0deg);
            transform: rotateX(0deg);
            -webkit-transition-property: rotateX;
            -moz-transition-property: rotateX;
            transition-property: rotateX;
            -webkit-transition-duration: 0.4s;
            -moz-transition-duration: 0.4s;
            transition-duration: 0.4s;
            -webkit-transition-timing-function: ease-in-out;
            -moz-transition-timing-function: ease-in-out;
            transition-timing-function: ease-in-out;
            cursor: pointer;
        }

        /* flip the panel heading anchor arrows when expanded */
        div[id^="accordion"] > .panel > .panel-heading a[aria-expanded="true"]:after {
            -webkit-transform: rotateX(-180deg);
            -moz-transform: rotateX(-180deg);
            -ms-transform: rotateX(-180deg);
            -o-transform: rotateX(-180deg);
            transform: rotateX(-180deg);
        }

/* remove the padding on all panel bodies in the accordion */
div[id^="accordion"] .panel .panel-body {
    padding: 0px;
    border: none;
}

@media (min-width: 768px) {
    /* modify default panel heading anchor style on non-mobile devices */
    div[id^="accordion"] > .panel > .panel-heading a {
        padding: 30px 15px 45px;
        text-align: center;
        font-size: 27px;
        line-height: 30px;
    }

        /* modify position of up/down arrow on panel heading anchors on non-mobile devices */
        div[id^="accordion"] > .panel > .panel-heading a:after {
            left: 50%;
        }
}



/* --- form overrides --- */

/* add bottom margin to col-xs-12 inside a form section */
.form-section .col-xs-12 {
    margin-bottom: 15px;
}

/* remove margin on paragraphs in form sections */
.form-section p {
    padding-bottom: 0;
}

/* override spacing of form groups */
.form-group {
    margin-bottom: 25px;
}

/* override input group addons to remove default bootstrap styling */
.input-group-addon {
    background: none;
    border: none;
    border-radius: 0;
    padding: 0;
}



/* --- faq accordion overrides --- */

/* override default panel group style */
div[id^="faq-accordion"].panel-group {
    margin-bottom: 0;
}

/* override default panel style */
div[id^="faq-accordion"] > .panel {
    border: none;
    border-top: #d9d9d9 solid 1px;
    border-radius: 0;
    box-shadow: none;
    margin-top: 0px !important;
}

    /* override default panel heading style */
    div[id^="faq-accordion"] > .panel > .panel-heading {
        border: none;
        border-radius: 0;
        color: #ffffff;
        padding: 0;
        position: relative;
        background-color: #ffffff;
    }

        /* override default panel heading anchor style on mobile devices */
        div[id^="faq-accordion"] > .panel > .panel-heading a {
            display: block;
            cursor: pointer;
            font-family: "Audi Type Regular", sans-serif;
            font-weight: normal;
        }

@media (min-width: 768px) {
    /* override font for non mobile should be bold*/
    div[id^="faq-accordion"] > .panel > .panel-heading a {
        font-family: "Audi Type Bold", sans-serif;
    }
}

/* panel body padding override */
div[id^="faq-accordion"] > .panel > .panel-collapse > .panel-body {
    padding: 0;
}

/*panel body  border-top override */
div[id^="faq-accordion"] .panel > .panel-collapse > .panel-body {
    border-top: none !important;
}



/* --- JQuery UI overrides --- */

/* override default bootstrap opacity on tooltips */
.tooltip {
    opacity: 1 !important;
}

    /* override default positioning and styling of bootstrap tooltip content */
    .tooltip .tooltip-inner {
        min-width: 300px;
        background-color: #ffffff;
        border: solid 2px #808080;
        font-family: "Audi Type Regular", sans-serif;
        font-size: 16px;
        color: #33414e;
    }

    /* override default positioning and styling of left-aligned bootstrap tooltip content */
    .tooltip.left .tooltip-inner {
        min-width: 200px;
    }

    /* override colour of bootstrap tooltip arrow */
    .tooltip .tooltip-arrow {
        border-bottom-color: #808080 !important;
    }

    /* override the styling of left-aligned tooltip arrows */
    .tooltip.left .tooltip-arrow {
        border-width: 5px 0 5px 5px;
        border-left-color: #808080 !important;
        border-bottom-color: transparent !important;
    }


.ui-datepicker {
    background-color: #e0e6e8; /* SM: got colour from Clarity's CI updated date-picker */
}
/* default positioning and styling for the datepicker button (calendar icon) on mobile devices */
.ui-datepicker-trigger {
    padding: 0 0 0 15px;
    vertical-align: middle;
    background-color: transparent;
    border: none;
}

@media (min-width: 768px) {
    /* override left spacing on datepicker button on non-mobile devices */
    .ui-datepicker-trigger {
        padding-left: 45px;
    }
}

/* styling and positioning of the datepicker button icon */
.ui-datepicker-trigger i {
    margin-top: -5px;
    color: #bb0a30;
    font-size: 55px;
}

/* remove all rounded corners on the datepicker and timepicker, and ensure they sits on top of everything */
/*.ui-datepicker, .ui-widget-header, .ui-datepicker-prev, .ui-datepicker-next, .ui-timepicker {
    border-radius: 4px !important;
    z-index: 100 !important;
}*/

/* remove all rounded corners on the datepicker and timepicker, and ensure they sits on top of everything */
.ui-datepicker, .ui-datepicker-prev, .ui-datepicker-next, .ui-timepicker {
    border-radius: 4px !important;
    z-index: 100 !important;
}

/* override default styling of all jQuery UI widget headers */
.ui-widget-header {
    background-color: #bb0a30;
    color: #ffffff;
}

/* override positioning and styling of datepicker previous and next buttons */
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    top: 3px;
    border: solid 1px transparent;
    background-color: #ffffff;
    cursor: pointer;
}

    /* override background colour on hover of datepicker previous and next buttons */
    .ui-datepicker .ui-datepicker-prev:hover, .ui-datepicker .ui-datepicker-next:hover {
        background-color: #e6e6e6;
    }

/* override positioning of datepicker previous button */
.ui-datepicker .ui-datepicker-prev {
    left: 3px;
}

/* override positioning of datepicker next button */
.ui-datepicker .ui-datepicker-next {
    right: 3px;
}

/* override default datepicker previous and next button icons */
.ui-widget-header a:before {
    position: absolute;
    left: 6px;
    top: 3px;
    color: #bb0a30;
    content: "\f053";
    font-family: 'FontAwesome';
    font-size: 16px;
}

/* override default datepicker next button icon */
.ui-widget-header a.ui-datepicker-next:before {
    content: "\f054";
    left: 9px;
}

/* ensure all columns in datepicker table are equally spaced */
.ui-datepicker table {
    table-layout: fixed;
}

.ui-datepicker td {
    border: 1px solid #ffffff; /* SM: got colour from Clarity's CI updated date-picker */
}
    /* align all date values in datepicker table to the centre */
    .ui-datepicker td span, .ui-datepicker td a {
        text-align: right; /* SM: got alignment from Clarity's CI updated date-picker */
    }

    .ui-datepicker td .ui-state-default {
        background-color: #ffffff; /* SM: got colour from Clarity's CI updated date-picker */
    }

/* override the default datepicker 'today' styling */
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    background: #ffffff;
    border: 1px solid #bb0a30;
}



/* --- checkbox overrides --- */

/* ensure child elements are positioned correctly within a check-box or radio-box container */
.check-box, .radio-box {
    position: relative;
}

    /* positioning for the actual input[type=checkbox] inside a check-box container */
    .check-box input[type="checkbox"] {
        position: absolute;
        top: 3px; /* have to hide behind the :before element for certain mobile devices */
        left: 3px;
    }

    /* positioning for the actual input[type=radio] inside a radio-box container */
    .radio-box input[type="radio"] {
        position: absolute;
        top: 5px; /* have to hide behind the :before element for certain mobile devices */
        left: 18px;
    }

    /* default positioning and styling for check box labels */
    .check-box label, .radio-box label {
        position: relative;
        margin-left: 40px;
        padding-top: 7px;
        font-size: 12px !important;
        cursor: pointer;
    }

    /* default positioning and styling for radio labels */
    .radio-box label {
        position: relative;
        margin-left: 40px;
        padding-top: 8px;
        font-size: 12px !important;
        cursor: pointer;
    }

    /* add a dummy check box before the label for the actual input[type=checkbox] using Font Awesome */
    .check-box input[type="checkbox"] + label:before {
        content: "";
        position: absolute;
        top: 5px; /* positions the dummy check box over the actual check box (as an offset from the label) */
        left: -40px; /* positions the dummy check box over the actual check box (as an offset from the label) */
        width: 27px;
        height: 27px;
        background: #ffffff;
        border: solid 1px #8b8e96;
        font-family: 'FontAwesome';
        text-align: center;
        line-height: 27px;
        cursor: pointer;
    }


.emailstep2 > .check-box input[type="checkbox"] + label:before {
    left: -52px !important;
}
/* change the Font Awesome icon when the dummy check box should appear 'checked' */
.check-box input[type="checkbox"].ng-not-empty + label:before {
    content: "\f00c";
}

    /* add a dummy radio button before the label for the actual input[type=radio] using Font Awesome */
    .radio-box input[type="radio"] + label:before {
        content: "";
        position: absolute;
        top: 5px; /* positions the dummy check box over the actual radio button (as an offset from the label) */
        left: -40px; /* positions the dummy check box over the actual radio button (as an offset from the label) */
        width: 28px;
        height: 28px;
        background: #ffffff;
        border: solid 1px #8b8e96;
        border-radius: 14px;
        font-family: 'FontAwesome';
        text-align: center;
        line-height: 28px;
        cursor: pointer;
    }

    /* change the Font Awesome icon when the dummy radio should appear 'selected' */
    .radio-box input[type="radio"]:checked + label:before {
        content: "\f00c";
    }
/*!
 *  Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */

@font-face {
    font-family: 'FontAwesome';
    src: url("/Content/fonts/fontawesome-webfont.eot?v=4.4.0");
    src: url("/Content/fonts/fontawesome-webfont.eot?#iefix&v=4.4.0") format("embedded-opentype"), url("/Content/fonts/fontawesome-webfont.woff2?v=4.4.0") format("woff2"), url("/Content/fonts/fontawesome-webfont.woff?v=4.4.0") format("woff"), url("/Content/fonts/fontawesome-webfont.ttf?v=4.4.0") format("truetype"), url("/Content/fonts/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular") format("svg");
    font-weight: normal;
    font-style: normal
}

.fa {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.fa-lg {
    font-size: 1.33333333em;
    line-height: 0.75em;
    vertical-align: -15%
}

.fa-2x {
    font-size: 2em
}

.fa-3x {
    font-size: 3em
}

.fa-4x {
    font-size: 4em
}

.fa-5x {
    font-size: 5em
}

.fa-fw {
    width: 1.28571429em;
    text-align: center
}

.fa-ul {
    padding-left: 0;
    margin-left: 2.14285714em;
    list-style-type: none
}

    .fa-ul > li {
        position: relative
    }

.fa-li {
    position: absolute;
    left: -2.14285714em;
    width: 2.14285714em;
    top: 0.14285714em;
    text-align: center
}

    .fa-li.fa-lg {
        left: -1.85714286em
    }

.fa-border {
    padding: .2em .25em .15em;
    border: solid 0.08em #eee;
    border-radius: .1em
}

.fa-pull-left {
    float: left
}

.fa-pull-right {
    float: right
}

.fa.fa-pull-left {
    margin-right: .3em
}

.fa.fa-pull-right {
    margin-left: .3em
}

.pull-right {
    float: right
}

.pull-left {
    float: left
}

.fa.pull-left {
    margin-right: .3em
}

.fa.pull-right {
    margin-left: .3em
}

.fa-spin {
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear
}

.fa-pulse {
    -webkit-animation: fa-spin 1s infinite steps(8);
    animation: fa-spin 1s infinite steps(8)
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

.fa-rotate-90 {
    filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=1);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.fa-rotate-180 {
    filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=2);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.fa-rotate-270 {
    filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=3);
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg)
}

.fa-flip-horizontal {
    filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=0);
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1)
}

.fa-flip-vertical {
    filter: progid: DXImageTransform.Microsoft.BasicImage(rotation=2);
    -webkit-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1)
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
    filter: none
}

.fa-stack {
    position: relative;
    display: inline-block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    vertical-align: middle
}

.fa-stack-1x,
.fa-stack-2x {
    position: absolute;
    left: 0;
    width: 100%;
    text-align: center
}

.fa-stack-1x {
    line-height: inherit
}

.fa-stack-2x {
    font-size: 2em
}

.fa-inverse {
    color: #fff
}

.fa-glass:before {
    content: ""
}

.fa-music:before {
    content: ""
}

.fa-search:before {
    content: ""
}

.fa-envelope-o:before {
    content: ""
}

.fa-heart:before {
    content: ""
}

.fa-star:before {
    content: ""
}

.fa-star-o:before {
    content: ""
}

.fa-user:before {
    content: ""
}

.fa-film:before {
    content: ""
}

.fa-th-large:before {
    content: ""
}

.fa-th:before {
    content: ""
}

.fa-th-list:before {
    content: ""
}

.fa-check:before {
    content: ""
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
    content: ""
}

.fa-search-plus:before {
    content: ""
}

.fa-search-minus:before {
    content: ""
}

.fa-power-off:before {
    content: ""
}

.fa-signal:before {
    content: ""
}

.fa-gear:before,
.fa-cog:before {
    content: ""
}

.fa-trash-o:before {
    content: ""
}

.fa-home:before {
    content: ""
}

.fa-file-o:before {
    content: ""
}

.fa-clock-o:before {
    content: ""
}

.fa-road:before {
    content: ""
}

.fa-download:before {
    content: ""
}

.fa-arrow-circle-o-down:before {
    content: ""
}

.fa-arrow-circle-o-up:before {
    content: ""
}

.fa-inbox:before {
    content: ""
}

.fa-play-circle-o:before {
    content: ""
}

.fa-rotate-right:before,
.fa-repeat:before {
    content: ""
}

.fa-refresh:before {
    content: ""
}

.fa-list-alt:before {
    content: ""
}

.fa-lock:before {
    content: ""
}

.fa-flag:before {
    content: ""
}

.fa-headphones:before {
    content: ""
}

.fa-volume-off:before {
    content: ""
}

.fa-volume-down:before {
    content: ""
}

.fa-volume-up:before {
    content: ""
}

.fa-qrcode:before {
    content: ""
}

.fa-barcode:before {
    content: ""
}

.fa-tag:before {
    content: ""
}

.fa-tags:before {
    content: ""
}

.fa-book:before {
    content: ""
}

.fa-bookmark:before {
    content: ""
}

.fa-print:before {
    content: ""
}

.fa-camera:before {
    content: ""
}

.fa-font:before {
    content: ""
}

.fa-bold:before {
    content: ""
}

.fa-italic:before {
    content: ""
}

.fa-text-height:before {
    content: ""
}

.fa-text-width:before {
    content: ""
}

.fa-align-left:before {
    content: ""
}

.fa-align-center:before {
    content: ""
}

.fa-align-right:before {
    content: ""
}

.fa-align-justify:before {
    content: ""
}

.fa-list:before {
    content: ""
}

.fa-dedent:before,
.fa-outdent:before {
    content: ""
}

.fa-indent:before {
    content: ""
}

.fa-video-camera:before {
    content: ""
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
    content: ""
}

.fa-pencil:before {
    content: ""
}

.fa-map-marker:before {
    content: ""
}

.fa-adjust:before {
    content: ""
}

.fa-tint:before {
    content: ""
}

.fa-edit:before,
.fa-pencil-square-o:before {
    content: ""
}

.fa-share-square-o:before {
    content: ""
}

.fa-check-square-o:before {
    content: ""
}

.fa-arrows:before {
    content: ""
}

.fa-step-backward:before {
    content: ""
}

.fa-fast-backward:before {
    content: ""
}

.fa-backward:before {
    content: ""
}

.fa-play:before {
    content: ""
}

.fa-pause:before {
    content: ""
}

.fa-stop:before {
    content: ""
}

.fa-forward:before {
    content: ""
}

.fa-fast-forward:before {
    content: ""
}

.fa-step-forward:before {
    content: ""
}

.fa-eject:before {
    content: ""
}

.fa-chevron-left:before {
    content: ""
}

.fa-chevron-right:before {
    content: ""
}

.fa-plus-circle:before {
    content: ""
}

.fa-minus-circle:before {
    content: ""
}

.fa-times-circle:before {
    content: ""
}

.fa-check-circle:before {
    content: ""
}

.fa-question-circle:before {
    content: ""
}

.fa-info-circle:before {
    content: ""
}

.fa-crosshairs:before {
    content: ""
}

.fa-times-circle-o:before {
    content: ""
}

.fa-check-circle-o:before {
    content: ""
}

.fa-ban:before {
    content: ""
}

.fa-arrow-left:before {
    content: ""
}

.fa-arrow-right:before {
    content: ""
}

.fa-arrow-up:before {
    content: ""
}

.fa-arrow-down:before {
    content: ""
}

.fa-mail-forward:before,
.fa-share:before {
    content: ""
}

.fa-expand:before {
    content: ""
}

.fa-compress:before {
    content: ""
}

.fa-plus:before {
    content: ""
}

.fa-minus:before {
    content: ""
}

.fa-asterisk:before {
    content: ""
}

.fa-exclamation-circle:before {
    content: ""
}

.fa-gift:before {
    content: ""
}

.fa-leaf:before {
    content: ""
}

.fa-fire:before {
    content: ""
}

.fa-eye:before {
    content: ""
}

.fa-eye-slash:before {
    content: ""
}

.fa-warning:before,
.fa-exclamation-triangle:before {
    content: ""
}

.fa-plane:before {
    content: ""
}

.fa-calendar:before {
    content: ""
}

.fa-random:before {
    content: ""
}

.fa-comment:before {
    content: ""
}

.fa-magnet:before {
    content: ""
}

.fa-chevron-up:before {
    content: ""
}

.fa-chevron-down:before {
    content: ""
}

.fa-retweet:before {
    content: ""
}

.fa-shopping-cart:before {
    content: ""
}

.fa-folder:before {
    content: ""
}

.fa-folder-open:before {
    content: ""
}

.fa-arrows-v:before {
    content: ""
}

.fa-arrows-h:before {
    content: ""
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
    content: ""
}

.fa-twitter-square:before {
    content: ""
}

.fa-facebook-square:before {
    content: ""
}

.fa-camera-retro:before {
    content: ""
}

.fa-key:before {
    content: ""
}

.fa-gears:before,
.fa-cogs:before {
    content: ""
}

.fa-comments:before {
    content: ""
}

.fa-thumbs-o-up:before {
    content: ""
}

.fa-thumbs-o-down:before {
    content: ""
}

.fa-star-half:before {
    content: ""
}

.fa-heart-o:before {
    content: ""
}

.fa-sign-out:before {
    content: ""
}

.fa-linkedin-square:before {
    content: ""
}

.fa-thumb-tack:before {
    content: ""
}

.fa-external-link:before {
    content: ""
}

.fa-sign-in:before {
    content: ""
}

.fa-trophy:before {
    content: ""
}

.fa-github-square:before {
    content: ""
}

.fa-upload:before {
    content: ""
}

.fa-lemon-o:before {
    content: ""
}

.fa-phone:before {
    content: ""
}

.fa-square-o:before {
    content: ""
}

.fa-bookmark-o:before {
    content: ""
}

.fa-phone-square:before {
    content: ""
}

.fa-twitter:before {
    content: ""
}

.fa-facebook-f:before,
.fa-facebook:before {
    content: ""
}

.fa-github:before {
    content: ""
}

.fa-unlock:before {
    content: ""
}

.fa-credit-card:before {
    content: ""
}

.fa-feed:before,
.fa-rss:before {
    content: ""
}

.fa-hdd-o:before {
    content: ""
}

.fa-bullhorn:before {
    content: ""
}

.fa-bell:before {
    content: ""
}

.fa-certificate:before {
    content: ""
}

.fa-hand-o-right:before {
    content: ""
}

.fa-hand-o-left:before {
    content: ""
}

.fa-hand-o-up:before {
    content: ""
}

.fa-hand-o-down:before {
    content: ""
}

.fa-arrow-circle-left:before {
    content: ""
}

.fa-arrow-circle-right:before {
    content: ""
}

.fa-arrow-circle-up:before {
    content: ""
}

.fa-arrow-circle-down:before {
    content: ""
}

.fa-globe:before {
    content: ""
}

.fa-wrench:before {
    content: ""
}

.fa-tasks:before {
    content: ""
}

.fa-filter:before {
    content: ""
}

.fa-briefcase:before {
    content: ""
}

.fa-arrows-alt:before {
    content: ""
}

.fa-group:before,
.fa-users:before {
    content: ""
}

.fa-chain:before,
.fa-link:before {
    content: ""
}

.fa-cloud:before {
    content: ""
}

.fa-flask:before {
    content: ""
}

.fa-cut:before,
.fa-scissors:before {
    content: ""
}

.fa-copy:before,
.fa-files-o:before {
    content: ""
}

.fa-paperclip:before {
    content: ""
}

.fa-save:before,
.fa-floppy-o:before {
    content: ""
}

.fa-square:before {
    content: ""
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
    content: ""
}

.fa-list-ul:before {
    content: ""
}

.fa-list-ol:before {
    content: ""
}

.fa-strikethrough:before {
    content: ""
}

.fa-underline:before {
    content: ""
}

.fa-table:before {
    content: ""
}

.fa-magic:before {
    content: ""
}

.fa-truck:before {
    content: ""
}

.fa-pinterest:before {
    content: ""
}

.fa-pinterest-square:before {
    content: ""
}

.fa-google-plus-square:before {
    content: ""
}

.fa-google-plus:before {
    content: ""
}

.fa-money:before {
    content: ""
}

.fa-caret-down:before {
    content: ""
}

.fa-caret-up:before {
    content: ""
}

.fa-caret-left:before {
    content: ""
}

.fa-caret-right:before {
    content: ""
}

.fa-columns:before {
    content: ""
}

.fa-unsorted:before,
.fa-sort:before {
    content: ""
}

.fa-sort-down:before,
.fa-sort-desc:before {
    content: ""
}

.fa-sort-up:before,
.fa-sort-asc:before {
    content: ""
}

.fa-envelope:before {
    content: ""
}

.fa-linkedin:before {
    content: ""
}

.fa-rotate-left:before,
.fa-undo:before {
    content: ""
}

.fa-legal:before,
.fa-gavel:before {
    content: ""
}

.fa-dashboard:before,
.fa-tachometer:before {
    content: ""
}

.fa-comment-o:before {
    content: ""
}

.fa-comments-o:before {
    content: ""
}

.fa-flash:before,
.fa-bolt:before {
    content: ""
}

.fa-sitemap:before {
    content: ""
}

.fa-umbrella:before {
    content: ""
}

.fa-paste:before,
.fa-clipboard:before {
    content: ""
}

.fa-lightbulb-o:before {
    content: ""
}

.fa-exchange:before {
    content: ""
}

.fa-cloud-download:before {
    content: ""
}

.fa-cloud-upload:before {
    content: ""
}

.fa-user-md:before {
    content: ""
}

.fa-stethoscope:before {
    content: ""
}

.fa-suitcase:before {
    content: ""
}

.fa-bell-o:before {
    content: ""
}

.fa-coffee:before {
    content: ""
}

.fa-cutlery:before {
    content: ""
}

.fa-file-text-o:before {
    content: ""
}

.fa-building-o:before {
    content: ""
}

.fa-hospital-o:before {
    content: ""
}

.fa-ambulance:before {
    content: ""
}

.fa-medkit:before {
    content: ""
}

.fa-fighter-jet:before {
    content: ""
}

.fa-beer:before {
    content: ""
}

.fa-h-square:before {
    content: ""
}

.fa-plus-square:before {
    content: ""
}

.fa-angle-double-left:before {
    content: ""
}

.fa-angle-double-right:before {
    content: ""
}

.fa-angle-double-up:before {
    content: ""
}

.fa-angle-double-down:before {
    content: ""
}

.fa-angle-left:before {
    content: ""
}

.fa-angle-right:before {
    content: ""
}

.fa-angle-up:before {
    content: ""
}

.fa-angle-down:before {
    content: ""
}

.fa-desktop:before {
    content: ""
}

.fa-laptop:before {
    content: ""
}

.fa-tablet:before {
    content: ""
}

.fa-mobile-phone:before,
.fa-mobile:before {
    content: ""
}

.fa-circle-o:before {
    content: ""
}

.fa-quote-left:before {
    content: ""
}

.fa-quote-right:before {
    content: ""
}

.fa-spinner:before {
    content: ""
}

.fa-circle:before {
    content: ""
}

.fa-mail-reply:before,
.fa-reply:before {
    content: ""
}

.fa-github-alt:before {
    content: ""
}

.fa-folder-o:before {
    content: ""
}

.fa-folder-open-o:before {
    content: ""
}

.fa-smile-o:before {
    content: ""
}

.fa-frown-o:before {
    content: ""
}

.fa-meh-o:before {
    content: ""
}

.fa-gamepad:before {
    content: ""
}

.fa-keyboard-o:before {
    content: ""
}

.fa-flag-o:before {
    content: ""
}

.fa-flag-checkered:before {
    content: ""
}

.fa-terminal:before {
    content: ""
}

.fa-code:before {
    content: ""
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
    content: ""
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
    content: ""
}

.fa-location-arrow:before {
    content: ""
}

.fa-crop:before {
    content: ""
}

.fa-code-fork:before {
    content: ""
}

.fa-unlink:before,
.fa-chain-broken:before {
    content: ""
}

.fa-question:before {
    content: ""
}

.fa-info:before {
    content: ""
}

.fa-exclamation:before {
    content: ""
}

.fa-superscript:before {
    content: ""
}

.fa-subscript:before {
    content: ""
}

.fa-eraser:before {
    content: ""
}

.fa-puzzle-piece:before {
    content: ""
}

.fa-microphone:before {
    content: ""
}

.fa-microphone-slash:before {
    content: ""
}

.fa-shield:before {
    content: ""
}

.fa-calendar-o:before {
    content: ""
}

.fa-fire-extinguisher:before {
    content: ""
}

.fa-rocket:before {
    content: ""
}

.fa-maxcdn:before {
    content: ""
}

.fa-chevron-circle-left:before {
    content: ""
}

.fa-chevron-circle-right:before {
    content: ""
}

.fa-chevron-circle-up:before {
    content: ""
}

.fa-chevron-circle-down:before {
    content: ""
}

.fa-html5:before {
    content: ""
}

.fa-css3:before {
    content: ""
}

.fa-anchor:before {
    content: ""
}

.fa-unlock-alt:before {
    content: ""
}

.fa-bullseye:before {
    content: ""
}

.fa-ellipsis-h:before {
    content: ""
}

.fa-ellipsis-v:before {
    content: ""
}

.fa-rss-square:before {
    content: ""
}

.fa-play-circle:before {
    content: ""
}

.fa-ticket:before {
    content: ""
}

.fa-minus-square:before {
    content: ""
}

.fa-minus-square-o:before {
    content: ""
}

.fa-level-up:before {
    content: ""
}

.fa-level-down:before {
    content: ""
}

.fa-check-square:before {
    content: ""
}

.fa-pencil-square:before {
    content: ""
}

.fa-external-link-square:before {
    content: ""
}

.fa-share-square:before {
    content: ""
}

.fa-compass:before {
    content: ""
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
    content: ""
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
    content: ""
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
    content: ""
}

.fa-euro:before,
.fa-eur:before {
    content: ""
}

.fa-gbp:before {
    content: ""
}

.fa-dollar:before,
.fa-usd:before {
    content: ""
}

.fa-rupee:before,
.fa-inr:before {
    content: ""
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
    content: ""
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
    content: ""
}

.fa-won:before,
.fa-krw:before {
    content: ""
}

.fa-bitcoin:before,
.fa-btc:before {
    content: ""
}

.fa-file:before {
    content: ""
}

.fa-file-text:before {
    content: ""
}

.fa-sort-alpha-asc:before {
    content: ""
}

.fa-sort-alpha-desc:before {
    content: ""
}

.fa-sort-amount-asc:before {
    content: ""
}

.fa-sort-amount-desc:before {
    content: ""
}

.fa-sort-numeric-asc:before {
    content: ""
}

.fa-sort-numeric-desc:before {
    content: ""
}

.fa-thumbs-up:before {
    content: ""
}

.fa-thumbs-down:before {
    content: ""
}

.fa-youtube-square:before {
    content: ""
}

.fa-youtube:before {
    content: ""
}

.fa-xing:before {
    content: ""
}

.fa-xing-square:before {
    content: ""
}

.fa-youtube-play:before {
    content: ""
}

.fa-dropbox:before {
    content: ""
}

.fa-stack-overflow:before {
    content: ""
}

.fa-instagram:before {
    content: ""
}

.fa-flickr:before {
    content: ""
}

.fa-adn:before {
    content: ""
}

.fa-bitbucket:before {
    content: ""
}

.fa-bitbucket-square:before {
    content: ""
}

.fa-tumblr:before {
    content: ""
}

.fa-tumblr-square:before {
    content: ""
}

.fa-long-arrow-down:before {
    content: ""
}

.fa-long-arrow-up:before {
    content: ""
}

.fa-long-arrow-left:before {
    content: ""
}

.fa-long-arrow-right:before {
    content: ""
}

.fa-apple:before {
    content: ""
}

.fa-windows:before {
    content: ""
}

.fa-android:before {
    content: ""
}

.fa-linux:before {
    content: ""
}

.fa-dribbble:before {
    content: ""
}

.fa-skype:before {
    content: ""
}

.fa-foursquare:before {
    content: ""
}

.fa-trello:before {
    content: ""
}

.fa-female:before {
    content: ""
}

.fa-male:before {
    content: ""
}

.fa-gittip:before,
.fa-gratipay:before {
    content: ""
}

.fa-sun-o:before {
    content: ""
}

.fa-moon-o:before {
    content: ""
}

.fa-archive:before {
    content: ""
}

.fa-bug:before {
    content: ""
}

.fa-vk:before {
    content: ""
}

.fa-weibo:before {
    content: ""
}

.fa-renren:before {
    content: ""
}

.fa-pagelines:before {
    content: ""
}

.fa-stack-exchange:before {
    content: ""
}

.fa-arrow-circle-o-right:before {
    content: ""
}

.fa-arrow-circle-o-left:before {
    content: ""
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
    content: ""
}

.fa-dot-circle-o:before {
    content: ""
}

.fa-wheelchair:before {
    content: ""
}

.fa-vimeo-square:before {
    content: ""
}

.fa-turkish-lira:before,
.fa-try:before {
    content: ""
}

.fa-plus-square-o:before {
    content: ""
}

.fa-space-shuttle:before {
    content: ""
}

.fa-slack:before {
    content: ""
}

.fa-envelope-square:before {
    content: ""
}

.fa-wordpress:before {
    content: ""
}

.fa-openid:before {
    content: ""
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
    content: ""
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
    content: ""
}

.fa-yahoo:before {
    content: ""
}

.fa-google:before {
    content: ""
}

.fa-reddit:before {
    content: ""
}

.fa-reddit-square:before {
    content: ""
}

.fa-stumbleupon-circle:before {
    content: ""
}

.fa-stumbleupon:before {
    content: ""
}

.fa-delicious:before {
    content: ""
}

.fa-digg:before {
    content: ""
}

.fa-pied-piper:before {
    content: ""
}

.fa-pied-piper-alt:before {
    content: ""
}

.fa-drupal:before {
    content: ""
}

.fa-joomla:before {
    content: ""
}

.fa-language:before {
    content: ""
}

.fa-fax:before {
    content: ""
}

.fa-building:before {
    content: ""
}

.fa-child:before {
    content: ""
}

.fa-paw:before {
    content: ""
}

.fa-spoon:before {
    content: ""
}

.fa-cube:before {
    content: ""
}

.fa-cubes:before {
    content: ""
}

.fa-behance:before {
    content: ""
}

.fa-behance-square:before {
    content: ""
}

.fa-steam:before {
    content: ""
}

.fa-steam-square:before {
    content: ""
}

.fa-recycle:before {
    content: ""
}

.fa-automobile:before,
.fa-car:before {
    content: ""
}

.fa-cab:before,
.fa-taxi:before {
    content: ""
}

.fa-tree:before {
    content: ""
}

.fa-spotify:before {
    content: ""
}

.fa-deviantart:before {
    content: ""
}

.fa-soundcloud:before {
    content: ""
}

.fa-database:before {
    content: ""
}

.fa-file-pdf-o:before {
    content: ""
}

.fa-file-word-o:before {
    content: ""
}

.fa-file-excel-o:before {
    content: ""
}

.fa-file-powerpoint-o:before {
    content: ""
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
    content: ""
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
    content: ""
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
    content: ""
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
    content: ""
}

.fa-file-code-o:before {
    content: ""
}

.fa-vine:before {
    content: ""
}

.fa-codepen:before {
    content: ""
}

.fa-jsfiddle:before {
    content: ""
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
    content: ""
}

.fa-circle-o-notch:before {
    content: ""
}

.fa-ra:before,
.fa-rebel:before {
    content: ""
}

.fa-ge:before,
.fa-empire:before {
    content: ""
}

.fa-git-square:before {
    content: ""
}

.fa-git:before {
    content: ""
}

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
    content: ""
}

.fa-tencent-weibo:before {
    content: ""
}

.fa-qq:before {
    content: ""
}

.fa-wechat:before,
.fa-weixin:before {
    content: ""
}

.fa-send:before,
.fa-paper-plane:before {
    content: ""
}

.fa-send-o:before,
.fa-paper-plane-o:before {
    content: ""
}

.fa-history:before {
    content: ""
}

.fa-circle-thin:before {
    content: ""
}

.fa-header:before {
    content: ""
}

.fa-paragraph:before {
    content: ""
}

.fa-sliders:before {
    content: ""
}

.fa-share-alt:before {
    content: ""
}

.fa-share-alt-square:before {
    content: ""
}

.fa-bomb:before {
    content: ""
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
    content: ""
}

.fa-tty:before {
    content: ""
}

.fa-binoculars:before {
    content: ""
}

.fa-plug:before {
    content: ""
}

.fa-slideshare:before {
    content: ""
}

.fa-twitch:before {
    content: ""
}

.fa-yelp:before {
    content: ""
}

.fa-newspaper-o:before {
    content: ""
}

.fa-wifi:before {
    content: ""
}

.fa-calculator:before {
    content: ""
}

.fa-paypal:before {
    content: ""
}

.fa-google-wallet:before {
    content: ""
}

.fa-cc-visa:before {
    content: ""
}

.fa-cc-mastercard:before {
    content: ""
}

.fa-cc-discover:before {
    content: ""
}

.fa-cc-amex:before {
    content: ""
}

.fa-cc-paypal:before {
    content: ""
}

.fa-cc-stripe:before {
    content: ""
}

.fa-bell-slash:before {
    content: ""
}

.fa-bell-slash-o:before {
    content: ""
}

.fa-trash:before {
    content: ""
}

.fa-copyright:before {
    content: ""
}

.fa-at:before {
    content: ""
}

.fa-eyedropper:before {
    content: ""
}

.fa-paint-brush:before {
    content: ""
}

.fa-birthday-cake:before {
    content: ""
}

.fa-area-chart:before {
    content: ""
}

.fa-pie-chart:before {
    content: ""
}

.fa-line-chart:before {
    content: ""
}

.fa-lastfm:before {
    content: ""
}

.fa-lastfm-square:before {
    content: ""
}

.fa-toggle-off:before {
    content: ""
}

.fa-toggle-on:before {
    content: ""
}

.fa-bicycle:before {
    content: ""
}

.fa-bus:before {
    content: ""
}

.fa-ioxhost:before {
    content: ""
}

.fa-angellist:before {
    content: ""
}

.fa-cc:before {
    content: ""
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
    content: ""
}

.fa-meanpath:before {
    content: ""
}

.fa-buysellads:before {
    content: ""
}

.fa-connectdevelop:before {
    content: ""
}

.fa-dashcube:before {
    content: ""
}

.fa-forumbee:before {
    content: ""
}

.fa-leanpub:before {
    content: ""
}

.fa-sellsy:before {
    content: ""
}

.fa-shirtsinbulk:before {
    content: ""
}

.fa-simplybuilt:before {
    content: ""
}

.fa-skyatlas:before {
    content: ""
}

.fa-cart-plus:before {
    content: ""
}

.fa-cart-arrow-down:before {
    content: ""
}

.fa-diamond:before {
    content: ""
}

.fa-ship:before {
    content: ""
}

.fa-user-secret:before {
    content: ""
}

.fa-motorcycle:before {
    content: ""
}

.fa-street-view:before {
    content: ""
}

.fa-heartbeat:before {
    content: ""
}

.fa-venus:before {
    content: ""
}

.fa-mars:before {
    content: ""
}

.fa-mercury:before {
    content: ""
}

.fa-intersex:before,
.fa-transgender:before {
    content: ""
}

.fa-transgender-alt:before {
    content: ""
}

.fa-venus-double:before {
    content: ""
}

.fa-mars-double:before {
    content: ""
}

.fa-venus-mars:before {
    content: ""
}

.fa-mars-stroke:before {
    content: ""
}

.fa-mars-stroke-v:before {
    content: ""
}

.fa-mars-stroke-h:before {
    content: ""
}

.fa-neuter:before {
    content: ""
}

.fa-genderless:before {
    content: ""
}

.fa-facebook-official:before {
    content: ""
}

.fa-pinterest-p:before {
    content: ""
}

.fa-whatsapp:before {
    content: ""
}

.fa-server:before {
    content: ""
}

.fa-user-plus:before {
    content: ""
}

.fa-user-times:before {
    content: ""
}

.fa-hotel:before,
.fa-bed:before {
    content: ""
}

.fa-viacoin:before {
    content: ""
}

.fa-train:before {
    content: ""
}

.fa-subway:before {
    content: ""
}

.fa-medium:before {
    content: ""
}

.fa-yc:before,
.fa-y-combinator:before {
    content: ""
}

.fa-optin-monster:before {
    content: ""
}

.fa-opencart:before {
    content: ""
}

.fa-expeditedssl:before {
    content: ""
}

.fa-battery-4:before,
.fa-battery-full:before {
    content: ""
}

.fa-battery-3:before,
.fa-battery-three-quarters:before {
    content: ""
}

.fa-battery-2:before,
.fa-battery-half:before {
    content: ""
}

.fa-battery-1:before,
.fa-battery-quarter:before {
    content: ""
}

.fa-battery-0:before,
.fa-battery-empty:before {
    content: ""
}

.fa-mouse-pointer:before {
    content: ""
}

.fa-i-cursor:before {
    content: ""
}

.fa-object-group:before {
    content: ""
}

.fa-object-ungroup:before {
    content: ""
}

.fa-sticky-note:before {
    content: ""
}

.fa-sticky-note-o:before {
    content: ""
}

.fa-cc-jcb:before {
    content: ""
}

.fa-cc-diners-club:before {
    content: ""
}

.fa-clone:before {
    content: ""
}

.fa-balance-scale:before {
    content: ""
}

.fa-hourglass-o:before {
    content: ""
}

.fa-hourglass-1:before,
.fa-hourglass-start:before {
    content: ""
}

.fa-hourglass-2:before,
.fa-hourglass-half:before {
    content: ""
}

.fa-hourglass-3:before,
.fa-hourglass-end:before {
    content: ""
}

.fa-hourglass:before {
    content: ""
}

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
    content: ""
}

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
    content: ""
}

.fa-hand-scissors-o:before {
    content: ""
}

.fa-hand-lizard-o:before {
    content: ""
}

.fa-hand-spock-o:before {
    content: ""
}

.fa-hand-pointer-o:before {
    content: ""
}

.fa-hand-peace-o:before {
    content: ""
}

.fa-trademark:before {
    content: ""
}

.fa-registered:before {
    content: ""
}

.fa-creative-commons:before {
    content: ""
}

.fa-gg:before {
    content: ""
}

.fa-gg-circle:before {
    content: ""
}

.fa-tripadvisor:before {
    content: ""
}

.fa-odnoklassniki:before {
    content: ""
}

.fa-odnoklassniki-square:before {
    content: ""
}

.fa-get-pocket:before {
    content: ""
}

.fa-wikipedia-w:before {
    content: ""
}

.fa-safari:before {
    content: ""
}

.fa-chrome:before {
    content: ""
}

.fa-firefox:before {
    content: ""
}

.fa-opera:before {
    content: ""
}

.fa-internet-explorer:before {
    content: ""
}

.fa-tv:before,
.fa-television:before {
    content: ""
}

.fa-contao:before {
    content: ""
}

.fa-500px:before {
    content: ""
}

.fa-amazon:before {
    content: ""
}

.fa-calendar-plus-o:before {
    content: ""
}

.fa-calendar-minus-o:before {
    content: ""
}

.fa-calendar-times-o:before {
    content: ""
}

.fa-calendar-check-o:before {
    content: ""
}

.fa-industry:before {
    content: ""
}

.fa-map-pin:before {
    content: ""
}

.fa-map-signs:before {
    content: ""
}

.fa-map-o:before {
    content: ""
}

.fa-map:before {
    content: ""
}

.fa-commenting:before {
    content: ""
}

.fa-commenting-o:before {
    content: ""
}

.fa-houzz:before {
    content: ""
}

.fa-vimeo:before {
    content: ""
}

.fa-black-tie:before {
    content: ""
}

.fa-fonticons:before {
    content: ""
}
/* --- default styles --- */
html, body {
    padding: 0;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    font-family: "Audi Type Regular";
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    background-color: #ffffff;
    color: #33414e;
}

h1, h2, h3, h4, h5, h6 {
    padding-bottom: 15px;
    margin: 0;
    color: #2b2f33;
}

h1 {
    font-size: 30px;
    line-height: 36px;
}

h3 {
    font-size: 20px;
    font-family: "Audi Type Regular", sans-serif;
    line-height: 24px;
}

p {
    margin: 0;
    padding-bottom: 15px;
}

    p.small {
        font-size: 13px;
    }

a {
    font-family: "Audi Type Regular", sans-serif;
    color: #bb0a30;
    word-wrap: break-word;
}

    a[href^="tel"] {
        color: #33414e;
    }

        a[href^="tel"]:hover {
            color: #33414e;
            text-decoration: none;
        }

    a:hover, a:active, a:focus {
        color: #bb0a30;
    }

label {
    display: block;
    font-weight: normal;
    font-size: 18px;
}


.mt-50 {
    margin-top: 50px;
}
.mt-100 {
    margin-top: 100px;
}
.mt-150 {
    margin-top: 150px;
}
.w-100 {
    width: 300px!important;
}

.p-40 {padding:10px 30px 10px 30px;}

.fake-disabled {
    opacity: 0.65;
    /*cursor: not-allowed;*/
}

.FailedQuote {
    margin-bottom: 30px;
}


@media (min-width: 768px) {
    /* labels can optionally be centre-aligned on non-mobile devices */
    .label-center {
        text-align: center;
    }

    /* labels can optionally be right-aligned on non-mobile devices */
    .label-right {
        text-align: right;
    }
}

/* position and animate labels so they sit over the textbox they're associated with (on the next html line).  
   If this class is removed from a label it will un-wind the animation.  This is desired behaviour. */
label.floating {
    position: absolute;
    z-index: 100;
    top: 12px;
    left: 30px;
    overflow: hidden;
    -webkit-transition: 0.2s ease all;
    -moz-transition: 0.2s ease all;
    transition: 0.2s ease all;
    -o-text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    user-select: none;
}

/* style only aspect of a label that may or may not float (absolute positioning) */
label.floating, label.non-floating {
    margin: 0;
    color: #808080;
}

/* because non-flaoting labels now work in the normal document flow, we're not expecting the extra "space" they take up. 
    We therefore need to position them as if they were floating by removing a line's height from the margin. */
label.non-floating {
    margin-top:-21px;
}

/* shared font modification across classes relating to labels and label behaviour */
.selected label.floating, .permanent label.floating, label.non-floating {
    font-size: 14px;
}

/* When text is entered in a textbox, code will remove the "floating" class, which will un-wind the animation in "label.floating".
   The parent will gain a "selected" class - leaving the label position as below.  There is an override called "label.permanent" which prevents the floating behaviour. */
.selected label.floating, .permanent label.floating {
    top: -22px;
    left: 15px;    
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

/* default styling for all textual inputs. textarea elements may need to specify their own height (rows attribute) , or be allowed to grow? */
input[type="text"], select, textarea {
    display: inline-block;
    width: 100%;
    padding: 0 15px;
    color: #33414e;
    font-size: 18px;
    background-color: #e5e5e5;
    border: none;
}
/* we only want the 45px line-height to apply to text-boxes and lists. */
input[type="text"], select {
    line-height: 45px;
    height: 45px;
}

    /* override styling for certain textual inputs to be 'large' */
    input[type="text"].large {
        background-color: #ffffff;
        border: solid 1px #8b8e96;
        padding: 15px;
    }

input[type=text].payment-code {
    width: 80px !important;
}

/* ensure text areas in forms have the correct spacing around the text inside*/
textarea {
    resize: none;
    min-height: 45px;
    padding: 10px 15px;
    line-height: 24px;
}

/* default styling for file upload inputs */
input[type=file] {
    width: 100%;
    height: 45px;
    padding: 10px;
    border: none;
    color: #33414e;
    font-size: 18px;
    background-color: #e5e5e5;
}



/* --- cookie bar --- */

#cookie-bar-container {
    position: fixed;
    display: none; /* hidden unless the user needs to confirm acceptance - determined in TS */
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow-y: auto !important;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 20000 !important;
}

/* positioning and styling for the cookie bar */
#cookie-bar {
    position: relative;
    z-index: 20001 !important;
    background-color: #e0e6e8;
    padding: 30px 0;
}

    /* font styling for cookie bar p */
    #cookie-bar p {
        font-size: 12px;
        line-height: 18px;
    }

    #cookie-bar button {
        display: block;
        width: 100%;
        margin-bottom: 5px;
    }

    #cookie-bar #custom-cookie-preferences {
        display: none;
        padding-top: 15px;
    }

        #cookie-bar #custom-cookie-preferences p {
            margin: 0 0 0 130px;
        }

        #cookie-bar #custom-cookie-preferences .preference {
            padding: 12px 0;
        }

        #cookie-bar #custom-cookie-preferences .switch {
            position: relative;
            display: inline-block;
            float: left;
            width: 100px;
            height: 34px;
            margin: 0 30px 0 0;
        }

            #cookie-bar #custom-cookie-preferences .switch input {
                opacity: 0;
                width: 0;
                height: 0;
            }

        #cookie-bar #custom-cookie-preferences .slider {
            position: absolute;
            cursor: pointer;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-color: #808080;
            padding: 10px 6px;
            font-weight: bold;
            -webkit-transition: .4s;
            transition: .4s;
        }

            #cookie-bar #custom-cookie-preferences .slider .on {
                float: left;
                margin-left: 10px;
                font-size: 14px;
                color: #ffffff;
            }

            #cookie-bar #custom-cookie-preferences .slider .off {
                float: right;
                margin-right: 10px;
                font-size: 14px;
            }

            #cookie-bar #custom-cookie-preferences .slider:before {
                position: absolute;
                content: "";
                height: 26px;
                width: 48px;
                left: 4px;
                bottom: 4px;
                background-color: white;
                -webkit-transition: .4s;
                transition: .4s;
            }

        #cookie-bar #custom-cookie-preferences input:checked + .slider {
            background-color: #bb0a30;
        }

        #cookie-bar #custom-cookie-preferences input:disabled + .slider {
            opacity: 0.65;
            cursor: not-allowed;
        }

        #cookie-bar #custom-cookie-preferences input:checked + .slider:before {
            -webkit-transform: translateX(42px);
            -ms-transform: translateX(42px);
            transform: translateX(42px);
        }

        /* Rounded sliders */
        #cookie-bar #custom-cookie-preferences .slider.round {
            border-radius: 34px;
        }

            #cookie-bar #custom-cookie-preferences .slider.round:before {
                border-radius: 13px;
            }

@media (min-width: 768px) {
    #cookie-bar button {
        display: inline;
        width: auto;
        margin-bottom: 0;
    }

        #cookie-bar button.right {
            float: right;
        }
}


/* --- header --- */

/* default positioning and styling for the entire header on mobile devices */
header#mobile {
    width: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 1001;
    background-color: transparent;
    display: block;
    min-height: 50px;
    transition: background-color 0.5s;
    text-align: center;
}

    /* position the audi logo in the mobile header */
    header#mobile a {
        float: left;
        display: block;
        margin: 8px;
    }

        /* display hamburger menu icon in the mobile header */
        header#mobile a#menu {
            position: relative;
            width: 28px;
            height: 34px;
            color: #ffffff;
            transition: opacity 0.5s;
        }

            header#mobile a#menu span {
                position: absolute;
                display: block;
                top: 17px;
                left: 0;
                height: 1px;
                width: 28px;
                background-color: #ffffff;
                -webkit-transition-property: all;
                -moz-transition-property: all;
                transition-property: all;
                -webkit-transition-duration: 0.4s;
                -moz-transition-duration: 0.4s;
                transition-duration: 0.4s;
                -webkit-transition-timing-function: ease-in-out;
                -moz-transition-timing-function: ease-in-out;
                transition-timing-function: ease-in-out;
            }

                header#mobile a#menu span:first-child {
                    top: 6px;
                }

                header#mobile a#menu span:last-child {
                    top: 28px;
                }

        /* positioning for logo in the mobile header */
        header#mobile a#logo {
            width: 96px;
            height: 34px;
            left: 50%;
            position: absolute;
            margin-left: -48px;
            background: url('/Content/images/logo-audi-white.svg');
        }

            /* hide the black logo in the mobile header by default (to show the background image white logo) */
            header#mobile a#logo img {
                opacity: 0;
                transition: opacity 0.5s;
            }

    /* apply background colour and border to mobile header when scrolling */
    header#mobile.sticky {
        background-color: #ffffff;
        border-bottom: solid 1px #e5e5e5;
    }

        /* change the hamburger menu to black when the mobile header is sticky */
        header#mobile.sticky a#menu span {
            background-color: #000000;
        }

        header#mobile.sticky a#menu.open span:first-child {
            top: 2px !important;
        }

        header#mobile.sticky a#menu.open span:last-child {
            top: 32px !important;
        }

        /* show the black logo in the mobile header when the mobile header is sticky */
        header#mobile.sticky a#logo img {
            opacity: 1;
        }

/* default positioning and styling for the entire header on non-mobile devices */
header#non-mobile {
    width: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 10001;
    border-bottom: solid 1px #e5e5e5;
    display: none;
}

/* switch header visibility for mobile/non-mobile devices */
@media (min-width: 1024px) {
    header#mobile {
        display: none;
    }

    header#non-mobile {
        display: block;
    }
}



/* --- top navigation --- */

/* default styling for the top-nav */
#top-nav {
    background-color: #33414e;
    padding: 10px 0;
}

    /* remove list defaults on top-nav list */
    #top-nav ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

        /* default positioning for top-nav list elements */
        #top-nav ul li {
            float: left;
            margin-left: 18px;
            padding-left: 10px;
            position: relative;
        }

            /* add arrow to the top-nav list elements */
            #top-nav ul li:before {
                content: '';
                display: block;
                height: 8px;
                width: 4px;
                position: absolute;
                top: 50%;
                left: 0px;
                margin-top: -3px;
                background-image: url('/Content/images/icon-arrow-right-white.svg');
                background-position: center;
                background-repeat: no-repeat;
                background-size: cover;
            }

            /* default styling for top-nav anchors */
            #top-nav ul li a {
                color: #fff;
                font-family: "Audi Type Extended Regular", sans-serif;
                font-size: 11px;
                line-height: 20px;
            }



/* --- main navigation --- */

/* apply transitions for box shadow and background colour */
#main-nav {
    background-color: #fff;
    transition: box-shadow 0.5s, background-color 0.5s;
}

    /* apply a background colour and drop shadow to the main navigation */
    #main-nav:hover {
        background-color: #e5e5e5 !important;
        box-shadow: 0 10000px 0 10000px rgba(0, 0, 0, 0.6);
    }

    /* default styling for the main navigation list */
    #main-nav ul {
        padding: 0;
        margin: 0;
        list-style: none;
        background-color: transparent;
    }

        /* default positioning and styling for all list elements in the main navigation */
        #main-nav ul.nav-left li {
            position: static;
            display: inline-block;
            float: left;
            padding-right: 18px;
            transition: background-color 0.5s;
        }

            /* default hover state of all list elements in the main navigation */
            #main-nav ul.nav-left li:hover {
                background-color: #fff;
            }

            /* default styling for all anchors in the main navigation */
            #main-nav ul.nav-left li a {
                position: relative;
                display: block;
                color: #33414e;
                padding: 25px 18px;
                padding-right: 0;
                text-decoration: none;
                font-family: "Audi Type Extended Regular", sans-serif;
                font-size: 13px;
            }

                /* hover colour for all anchors in the main navigation */
                #main-nav ul.nav-left li a.active, #main-nav ul.nav-left li a:hover, #main-nav ul.nav-left li a:active, #main-nav ul.nav-left li a:focus {
                    color: #bb0a30;
                }

            /* additional right padding for dropdown main navigation list items to make room for arrow */
            #main-nav ul.nav-left li.dropdown {
                padding-right: 34px;
            }

                /* add arrows to dropdown main navigation list items */
                #main-nav ul.nav-left li.dropdown > a:after {
                    content: "";
                    display: inline-block;
                    width: 13px;
                    height: 7px;
                    position: absolute;
                    top: 50%;
                    right: -20px;
                    margin-top: -3.5px;
                    background-image: url('/Content/images/icon-arrow-down.svg');
                    background-position: center;
                    background-repeat: no-repeat;
                    background-size: cover;
                }

                /* default positioning and style for dropdown navigation containers */
                #main-nav ul.nav-left li.dropdown div.dropdown-nav {
                    display: inline;
                    visibility: hidden;
                    opacity: 0;
                    position: absolute;
                    z-index: 999;
                    left: 0;
                    right: 0;
                    background-color: #fff;
                    transition: visibility 0s, opacity 0.25s linear;
                }

                    /* reposition the dropdown navigation list */
                    #main-nav ul.nav-left li.dropdown div.dropdown-nav ul {
                        margin-left: auto;
                        margin-right: auto;
                        padding: 0 15px;
                    }

                /* make the dropdown navigation lists visibile when their parent list element is hovered */
                #main-nav ul.nav-left li.dropdown:hover div.dropdown-nav {
                    visibility: visible;
                    opacity: 1;
                }

                /* default positioning and styling for dropdown navigation list items */
                #main-nav ul.nav-left li.dropdown div.dropdown-nav ul li {
                    display: inline-block;
                    padding: 25px 0;
                    float: left;
                    background: #fff;
                }

                    /* default positioning and styling for dropdown navigation anchors */
                    #main-nav ul.nav-left li.dropdown div.dropdown-nav ul li a {
                        display: inline;
                        border-left: solid 1px grey;
                        font-family: "Audi Type Extended Bold", sans-serif;
                        padding: 0 18px;
                        margin: 0;
                    }

        /* position the nav-right on the right */
        #main-nav ul.nav-right {
            float: right;
        }

            /* override default main-nav styling for anchors in a nav-right list */
            #main-nav ul.nav-right li a {
                display: block;
                padding: 16px 0;
            }



/* --- mobile navigation --- */

/* default positioning and styling for the mobile navigation */
#mobile-nav {
    display: none;
    position: fixed;
    top: 50px;
    left: 0;
    bottom: 0;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    background-color: #33414e;
    overflow-x: hidden;
    overflow-y: scroll;
}

    /* remove underlines on mobile navigation anchors */
    #mobile-nav a {
        text-decoration: none;
    }

    /* default positioning and styling for top-level mobile navigation anchors */
    #mobile-nav > li a {
        display: block;
        width: 100%;
        padding: 15px;
        margin: 0;
        color: #999999;
        font-size: 14px;
        text-align: left;
    }

        /* active top-level mobile navigation anchors */
        #mobile-nav > li a.active {
            font-weight: bold;
        }

    /* add 'plus' to the right of dropdown anchors */
    #mobile-nav > li.dropdown > a:after {
        content: '\002b';
        float: right;
        font-size: 22px;
    }

    /* swap the 'plus' for a 'minus' when dropdown anchors are active */
    #mobile-nav > li.dropdown > a.active:after {
        content: '\2212';
    }

    /* hide all mobile nav dropdowns by default */
    #mobile-nav > li > .dropdown-nav {
        display: none;
    }

    /* remove list styling from mobile nav dropdowns */
    #mobile-nav > li > .dropdown-nav {
        list-style: none;
        margin: 0;
    }

        /* specific padding on mobile nav dropdown anchors */
        #mobile-nav > li > .dropdown-nav a {
            padding: 10px 10px 10px 28px;
        }

        /* highlight the current sub-menu link */
        #mobile-nav > li > .dropdown-nav a.selected {
            color: #bb0a30;
        }



/* --- footer --- */

/* default styling for the footer */
footer {
    padding: 40px 0 30px;
    background-color: #33414e;
    border-top: solid 2px #ffffff;
    font-size: 14px !important;
    color: #fff;
}

    /* default styling for footer headings */
    footer h5 {
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid #ffffff;
        font-size: 14px;
        font-family: "Audi Type Bold", sans-serif;
        font-weight: 400;
        color: #ffffff;
    }

    /* override font styling for footer anchors */
    footer a {
        font-family: "Audi Type Regular", sans-serif;
        color: #ffffff !important;
    }

    /* padding for top footer */
    footer #footer-top {
        padding-bottom: 35px;
    }

        /* remove default bootstrap padding on col-xs-3 in the top footer */
        footer #footer-top div {
            padding: 0;
            padding-bottom: 10px;
            margin-right: 15px;
        }

        /* remove default list styles in the top footer */
        footer #footer-top ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        /* reduce font size of top footer anchors */
        footer #footer-top a {
            font-size: 12px;
        }

    /* add spacing between all footer list elements */
    footer ul li {
        padding-bottom: 5px;
    }

        /* default positioning for all footer list element anchors */
        footer ul li a {
            display: inline-block;
            padding-left: 12px;
            position: relative;
        }

    /* insert arrows on top footer anchors */
    footer #footer-top ul li a:before {
        content: '>';
        left: 0px;
        position: absolute;
        top: 0px;
    }

    /* default positioning and styling for bottom footer */
    footer #footer-bottom {
        border-top: 1px solid #fff;
        padding-top: 10px;
    }

        /* override positioning for bottom footer anchors */
        footer #footer-bottom a {
            display: inline-block;
        }

            /* add separator character to bottom footer links */
            footer #footer-bottom a:after {
                content: ' | ';
            }

            /* remove separator from last bottom footer link */
            footer #footer-bottom a:last-of-type:after {
                content: '';
            }

@media (min-width: 768px) {
    /* add padding to #footer-bottom links on non-mobile devices */
    footer #footer-bottom a {
        padding-left: 15px;
    }

        /* remove separator from last #footer-bottom link */
        footer #footer-bottom a:after {
            content: '';
        }

    /* float the first part of the #footer-bottom to the left on non-mobile devices */
    footer #footer-bottom .left {
        float: left;
    }

    /* float the last part of the #footer-bottom to the right on non-mobile devices */
    footer #footer-bottom .right {
        float: right;
    }
}



/* --- main content wrapper --- */

/* default styling for #main-content */
#main-content {
    margin-top: 50px;
    background-color: #fff;
}

/* remove #main-content top margin on the home page */
body.home #main-content {
    margin-top: 0px;
}

/* override default bootstrap padding on containers inside the #main-content on mobile devices */
#main-content .container {
    padding: 0 !important;
}

    /* override default #main-content container padding on standard text pages.
       Hide any background image on mobile */
    #main-content .container.standard-text-page {
        padding: 50px 15px 30px !important;
        background-size: 0 0;
    }

        /* ensure lists in a standard text page have the correct vertical spacing */
        #main-content .container.standard-text-page li {
            padding-bottom: 5px;
        }

            /* ensure sub-lists in a standard text page have the correct vertical spacing */
            #main-content .container.standard-text-page li ul {
                padding-top: 5px;
            }

@media (min-width: 1024px) {
    /* ensure #main-content makes space for the non-mobile header */
    #main-content, body.home #main-content {
        margin-top: 116px;
    }

        /* ensure non-mobile does have a background image in the bottom right*/
        #main-content .container.standard-text-page {
            background-size: auto;
            background-repeat: no-repeat;
            background-position: right bottom;
        }
}

@media (min-width: 1400px) {
    /* restore the default bootstrap padding on containers inside the #main-content on non-mobile devices */
    #main-content .container {
        padding: 0 15px !important;
    }
}



/* --- section links --- */

/* add white space between banners and section links */
.section-links {
    margin-top: 2px;
}

    /* default styling for section links - allows scaling of images without resizing */
    .section-links .section-link {
        padding: 0;
        overflow: hidden;
    }

/* default positioning for anchors in section links */
.section-link a {
    display: block;
    height: 100%;
    width: 100%;
}

    /* default styling and animation settings for section link images */
    .section-link a img {
        width: 100%;
        -moz-transition: all 0.4s;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }

    /* animate section link images to scale when hovered */
    .section-link a:hover img {
        -moz-transform: scale(1.1);
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    /* apply slight overlay on section links */
    .section-link a .section-link-overlay {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.4);
        text-align: center;
    }

        /* positioning and styling of text in section links */
        .section-link a .section-link-overlay span {
            margin-top: calc(25% - 12.25px);
            border: solid 1px #ffffff;
            color: #ffffff;
        }



/* --- extended warranty journey --- */

/* default styling and positioning for the journey step list */
#journey-steps ul {
    list-style: none;
    margin: 0;
    padding: 0 10px;
    background-color: #e5e5e5;
    color: #33414e;
    text-align: center;
    width: 100%;
}

    /* default styling and positioning for each journey step list item */
    #journey-steps ul li {
        display: inline-block;
        width: 25%;
        padding: 10px 5px;
        font-size: 12px;
        margin: 0 -2px !important;
        border-right: solid 1px #ffffff;
    }

        /* apply a left border to the first journey step list item */
        #journey-steps ul li:first-child {
            border-left: solid 1px #ffffff;
        }

        /* show 'pointer' cursor when hovered if a journey step is enabled */
        #journey-steps ul li.enabled {
            cursor: pointer;
        }

        /* modify background colour on active journey step list item */
        #journey-steps ul li.active {
            background-color: #ffffff;
        }

        /* hide journey step names on mobile devices */
        #journey-steps ul li p {
            display: none;
        }

@media (min-width: 1024px) {
    /* increase sizes on journey step list items on non-mobile devices */
    #journey-steps ul li {
        padding: 28px 15px;
        font-size: 16px;
    }

        /* show journey step names on non-mobile devices */
        #journey-steps ul li p {
            display: block;
            padding-bottom: 0;
        }
}

#card-payment-form {
    border-bottom:unset!important;
}
/* --- journey styling --- */
/* default styling and positioning for journey steps (hidden by default) */
.journey-step {
    display: none;
}

/* show the first journey step by default */
#journey-step-one {
    display: block;
}

/* enforce font styling for headings in journey steps */
.journey-step h3 {
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
    color: #33414e;
}

    /* custom padding on certain headings in journey steps */
    .journey-step h3.with-padding {
        padding: 0 30px 50px;
    }

/* default styling for form sections */
.form-section {
    border-bottom: solid 1px #222222;
    padding: 60px 0;
}

    .form-section.highlight:hover {
        background-color: #eaeeef;
    }

    /* remove border on last form section, and any with the 'no-border' class */
    .form-section:last-of-type, .form-section.no-border {
        border-bottom: none;
    }

    /* override padding of form sections when required to be shallow */
    .form-section.shallow {
        padding-top: 10px;
    }

    /* override padding of form sections when required to have no bottom padding */
    .form-section.no-bottom-padding {
        padding-bottom: 0;
    }

/* default positioning for info icons */
img.info-icon {
    vertical-align: top;
    margin-top: 3px;
    margin-left: 12px;
    width: 15px;
    height: 15px;
}

/* default styling for error messages */
.errors {
    padding-top: 10px;
    font-size: 14px;
    line-height: 18px;
    color: #bb0a30;
}

    /* create space for error message info icon */
    .errors i {
        margin-right: 5px;
    }

    .errors a:not([href^="tel"]) {
        text-decoration: underline;
    }

/* NOTE: this is likely to be required at DAY-2 */
/*.error input, .error select {
    background-color: #fdcdda;
}*/

/* NOTE: this is likely to be required at DAY-2 */
/*.error input, .error select, .error label {
    color: #bb0a30;
}*/

/* --- step one elements --- */
#journey-step-one-find-my-vehicle, #journey-step-one-vehicle-details, #journey-step-one-current-mileage {
    display: none;
}

/* custom styling for registration lookup input */
input#reg-noBox, input#current-mileage-box {
    font-size: 34px;
    font-weight: 700;
    line-height: 34px;
    height: 71px;
    width: 100%;
    padding: 20px;
    text-transform: uppercase;
    text-align: center;
    font-family: "Audi Type Regular", sans-serif;
}

/* custom styling for model images */
div#model-image {
    text-align: center;
    padding: 20px 0;
}

    /* ensure model image sizes correctly on mobile devices */
    div#model-image img {
        width: 100% !important;
    }

/* custom styling for model and engine size labels */
div.model-label {
    position: relative;
    background-color: #f6f6f6;
    border-bottom: solid 1px #ffffff;
    font-size: 18px;
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
    padding: 15px 18px;
    width: 100%;
}

    /* custom styling for model and engine size values */
    div.model-label span {
        position: absolute;
        top: 0;
        right: 0;
        display: table;
        min-height: 52px;
        min-width: 125px;
        background-color: #33414e;
        color: #ffffff;
        padding: 15px 18px;
        text-align: center;
    }

/* custom styling for mileage input */
input#registration-number {
    border: solid 1px #000000;
}

@media (min-width: 768px) {
    /* override padding for form sections on tablets */
    .form-section {
        padding: 60px 20px;
    }

        /* override padding for form sections when required to be shallow */
        .form-section.shallow {
            padding-top: 10px;
        }
}

@media (min-width: 1024px) {
    /* override padding for form sections on non-mobile devices */
    .form-section {
        padding: 60px 70px;
    }

        /* further padding override for narrow form sections on non-mobile devices */
        .form-section.narrow {
            padding: 60px 200px;
        }

        /* further padding override for form sections when required to be shallow */
        .form-section.shallow {
            padding-top: 10px;
        }

    /* allow the model images to size themselves on non-mobile devices */
    div#model-image img {
        width: auto !important;
    }
}

@media (min-width: 1200px) {
    /* prevent privacy policy link wording wrapping on non-mobile devices */
    #journey-step-one .privacy-policy-link {
        white-space: nowrap;
    }
}

#journey-step-two {
    position: relative;
}

    #journey-step-two #step2-overlay {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background-color: #eaeeed;
        opacity: 0.5;
        z-index: 1000;
    }

/* custom styling for text inputs on date picker fields */
.date-block input[type="text"] {
    width: 63px; /* this is minimum width we can get away with to stop elements wrapping on smaller resolutions with relation to payment page for EW, the issue start / end dates. */
    padding: 0;
    line-height: 52px;
    text-align: center;
}

/* custom styling for '/' date separators on date picker fields */
.date-block > span {
    padding: 0 2px;
    font-weight: bold;
    font-size: 20px;
    display: inline-block;
}

/* force date picker to sit inline with date picker fields */
.date-picker {
    display: inline-block;
}

/* default styling for extended warranty journey step-2 'cover' buttons */
.cover-button {
    position: relative;
    border: solid 1px #8b8e96;
    background-color: #ffffff;
    padding: 15px;
    text-align: center;
    font-family: "Audi Type Bold", sans-serif;
}

    /* override padding on certain 'cover' buttons where appropriate */
    .cover-button.padded {
        padding: 25px;
    }

    /* further overrides for 'cover' buttons with 'pound' frame */
    .cover-button.pound-frame {
        height: 84px;
        position: relative;
    }

        /* positioning for text inside 'cover' buttons with 'pound' frame */
        .cover-button.pound-frame p {
            height: 52px;
            line-height: 52px;
        }

        /* add 'pound' frame (left) to appropriate 'cover' buttons */
        .cover-button.pound-frame:before {
            background: url(/Content/images/pound-frame-new.png) left top no-repeat;
            content: '';
            height: 73px;
            left: 7px;
            position: absolute;
            top: 5px;
            width: 20px;
        }

        /* add 'pound' frame (right) to appropriate 'cover' buttons */
        .cover-button.pound-frame:after {
            background: url(/Content/images/pound-frame-new.png) right -73px no-repeat;
            content: '';
            height: 73px;
            left: 27px;
            position: absolute;
            right: 7px;
            top: 5px;
        }

    /* highlight all 'cover' buttons when they are selected or hovered */
    .cover-button.active, .cover-button:hover {
        background-color: #bb0a30;
        color: #ffffff;
        cursor: pointer;
    }

        /* reposition 'pound' frame (left) sprite background image when selected or hovered */
        .cover-button.active.pound-frame:before, .cover-button:hover.pound-frame:before {
            background-position: left -146px;
        }

        /* reposition 'pound' frame (right) sprite background image when selected or hovered */
        .cover-button.active.pound-frame:after, .cover-button:hover.pound-frame:after {
            background-position: right -219px;
        }

    /* default positioning for 'cover' button icons */
    .cover-button .icon {
        display: inline-block;
        margin-bottom: 10px;
    }

        /* styling and positioning for 'car' 'cover' button icon */
        .cover-button .icon.car {
            background: url(/Content/images/car-thumb-icon.png) left top no-repeat;
            height: 46px;
            width: 74px;
        }

        /* styling and positioning for 'setting' 'cover' button icon */
        .cover-button .icon.settings {
            background: url(/Content/images/setting-icon.png) left top no-repeat;
            height: 46px;
            width: 46px;
        }

    /* reposition sprite background image for 'cover' button icons when selected or hovered */
    .cover-button.active .icon, .cover-button:hover .icon {
        background-position: left bottom;
    }

    /* custom styling for info icons in cover option buttons */
    .cover-button .cover-info-icon {
        position: absolute;
        right: 5px;
        bottom: 5px;
        height: 20px;
        width: 20px;
        background: url(/Content/images/info-icon.png) left top no-repeat;
    }

    /* modify background position for 'sprite' info icons in cover options buttons */
    .cover-button:hover .cover-info-icon, .cover-button.active .cover-info-icon {
        background-position: left -20px;
    }

    /* force text alignment for info icons in cover options buttons */
    .cover-button .tooltip .tooltip-inner {
        text-align: left;
    }

/* override padding on form groups with action buttons (next/back) */
.form-group.actions {
    padding: 25px 15px;
}

    /* optionally position contents of form groups with actions to the right */
    .form-group.actions .right {
        text-align: right;
    }

/* increase the bottom margin on form groups with floating labels to make room for the labels */
.floating-labels .make-room {
    margin-bottom: 25px;
}

/* further increase the bottom margin on form group children with floating labels to make room for the labels on mobile devices */
.floating-labels .form-group .make-more-room {
    margin-bottom: 50px;
}

    /* remove further increate to the bottom margin on the last form group  */
    .floating-labels .form-group .make-more-room.last {
        margin-bottom: 25px;
    }

@media (min-width: 768px) {
    /* reset the bottom margin on form group children with floating labels on non-mobile devices */
    .floating-labels .form-group .make-more-room {
        margin-bottom: 25px !important;
    }
}

/* ensure the 'spinner' for finding an address has space */
#finding-address {
    margin-top: 10px;
}

/* specific styling for 'try again' links on address lookup result */
.try-again-links {
    font-size: 13px;
    margin-top: 10px;
}

/* add margin between contact buttons and information text on mobile devices */
#contact-buttons {
    margin-top: 25px;
}

@media (min-width: 992px) {
    /* reset margin on contact buttons on non-mobile devices */
    #contact-buttons {
        margin-top: auto;
    }
}

/* default styling for contact buttons */
.contact-button {
    position: relative;
    display: inline-block;
    padding: 25px;
    width: 100%;
    height: 112px;
    border: 1px solid #8b8e96;
}

    /* styling for contact buttons when selected or hovered */
    .contact-button.active, .contact-button:hover {
        background-color: #bb0a30;
        cursor: pointer;
    }

    /* positioning for text inside contact buttons */
    .contact-button p {
        height: 100%;
        padding: 20px 0;
        margin-left: 66px;
    }

    /* modify font colour when contact buttons are selected or hovered */
    .contact-button.active p, .contact-button:hover p {
        color: #ffffff;
    }

    /* add icons to contact buttons with default positioning for sprite image */
    .contact-button p:before {
        background-image: url(/Content/images/update-icons.png);
        background-position: left top;
        background-repeat: no-repeat;
        content: '';
        height: 60px;
        position: absolute;
        left: 25px;
        top: 25px;
        width: 55px;
    }

    /* show 'email' sprite image on email contact button */
    .contact-button p.email:before {
        background-position: left -120px;
    }

    /* show 'post' sprite image on post contact button */
    .contact-button p.post:before {
        background-position: left -240px;
    }

    /* show alternate 'mobile' sprite image on mobile contact button when selected or hovered */
    .contact-button.active p.mobile:before, .contact-button:hover p.mobile:before {
        background-position: left -60px;
    }

    /* show alternate 'email' sprite image on email contact button when selected or hovered */
    .contact-button.active p.email:before, .contact-button:hover p.email:before {
        background-position: left -180px;
    }

    /* show alternate 'post' sprite image on post contact button when selected or hovered */
    .contact-button.active p.post:before, .contact-button:hover p.post:before {
        background-position: left -300px;
    }

#journey-step-four .fadable {
    position: absolute;
    top: -20000px;
    left: 0;
    opacity: 0;
    -webkit-transition-property: opacity, left, top;
    -webkit-transition-duration: 1s, 1s, 0s;
    -webkit-transition-delay: 0s, 0s, 1s;
    -ms-transition-property: opacity, left, top;
    -ms-transition-duration: 1s, 1s, 0s;
    -ms-transition-delay: 0s, 0s, 1s;
    -moz-transition-property: opacity, left, top;
    -moz-transition-duration: 1s, 1s, 0s;
    -moz-transition-delay: 0s, 0s, 1s;
    transition-property: opacity, left, top;
    transition-duration: 1s, 1s, 0s;
    transition-delay: 0s, 0s, 1s;
}

    #journey-step-four .fadable.in {
        position: relative;
        top: 0;
        left: 0;
        opacity: 1;
        -webkit-transition-delay: 0s;
        -ms-transition-delay: 0s;
        -moz-transition-delay: 0s;
        transition-delay: 0s;
    }

/* styling and positioning of the heading on journey step four */
#journey-step-four h2 {
    font-size: 18px;
    line-height: 22px;
    padding: 15px;
    font-family: "Audi Type Bold", sans-serif;
    text-align: left;
}

/* remove default list styling for payment options */
ul#payment-options {
    list-style: none;
    margin: 0;
    padding: 0;
}

    /* default styling and positioning for payment options */
    ul#payment-options li {
        width: 50%;
        margin: 0;
        float: left;
        padding: 15px;
        color: #33414e;
        background-color: #ffffff;
        opacity: 0.4;
        cursor: pointer;
    }

        /* styling for selected payment option */
        ul#payment-options li.active {
            background-color: #bb0a30;
            color: #ffffff;
            opacity: 1;
        }

        /* default positioning and text alignment of payment option details on mobile devices */
        ul#payment-options li div {
            position: relative;
            height: 140px;
            text-align: center;
        }

        /* default font styling for payment option heading */
        ul#payment-options li h3 {
            font-weight: 700;
            line-height: 24px;
            font-size: 22px;
        }

        /* override font colour of heading in active payment option */
        ul#payment-options li.active h3 {
            color: #ffffff;
        }

        /* styling for payment option payment details */
        ul#payment-options li .payment-number {
            font-family: "Audi Type Bold", sans-serif;
            font-size: 18px;
            line-height: 20px;
            padding: 0;
        }

        /* styling for payment option total payable */
        ul#payment-options li .price {
            margin-top: 10px;
            font-family: "Audi Type Bold", sans-serif;
            font-size: 24px;
            line-height: 24px;
        }

        /* font size for payment option IPT note */
        ul#payment-options li .ipt, ul#payment-options li .ipt-mobile {
            font-size: 12px;
        }

        /* hide payment option IPT note on mobile devices */
        ul#payment-options li .ipt {
            display: none;
        }

    /* hide card and calendar icons on payment options on mobile devices */
    ul#payment-options #annual-icon, ul#payment-options #monthly-icon {
        display: none;
    }

    /* hide tick icons on payment options on mobile devices */
    ul#payment-options .tick-icon {
        display: none;
    }

/* styling and positioning for IPT statement below payment options on mobile devices */
div#ipt-statement-mobile {
    text-align: center;
    padding: 15px 0;
    border-top: solid 2px #bb0a30;
    font-size: 12px;
}

@media (min-width: 768px) {

    /* override styling of main heading on journey step four on non-mobile devices */
    #journey-step-four h2 {
        font-size: 27px;
        line-height: 30px;
        padding: 35px 15px;
        text-align: center;
    }

    /* override padding of payment options on non-mobile devices */
    ul#payment-options li {
        padding: 30px 45px;
    }

        /* override positioning and text alignment of payment method details on non-mobile devices */
        ul#payment-options li div {
            height: auto;
            text-align: left;
        }

        /* override font sizing of payment options on non-mobile devices */
        ul#payment-options li h3, ul#payment-options li payment-number {
            font-size: 18px;
            line-height: 20px;
        }

        /* override font sizing of payment option price on non-mobile devices */
        ul#payment-options li .price {
            font-size: 24px;
            line-height: 24px;
        }

        /* switch IPT note visibility on non-mobile devices */
        ul#payment-options li .ipt {
            display: block;
        }

        /* switch IPT note visibility on non-mobile devices */
        ul#payment-options li .ipt-mobile {
            display: none;
        }

    /* styling and positioning for card icon on annual payment option on non-mobile devices */
    ul#payment-options #annual-icon {
        display: block;
        position: absolute;
        top: 0;
        left: calc(100% - 51px);
        width: 51px;
        height: 34px;
        background: url(/Content/images/card-payment.png) 0 0;
    }

    /* styling and positioning for calendar icon on monthly payment option on non-mobile devices */
    ul#payment-options #monthly-icon {
        display: block;
        position: absolute;
        top: 0;
        left: calc(100% - 42px);
        width: 42px;
        height: 38px;
        background: url(/Content/images/dd-payment.png) 0 0;
    }

    /* reposition card sprite image on annual payment option when selected on non-mobile devices */
    ul#payment-options .active #annual-icon {
        background-position: 0 -34px;
    }

    /* reposition calendar sprite image on monthly payment option when selected on non-mobile devices */
    ul#payment-options .active #monthly-icon {
        background-position: 0 -38px;
    }

    /* styling and positioning for tick icon on payment options on non-mobile devices */
    ul#payment-options .active .tick-icon {
        display: block;
        position: absolute;
        bottom: 20px;
        left: calc(100% - 29px);
        width: 29px;
        height: 29px;
        background: url(/Content/images/tick-icon.png) 0 0 no-repeat;
    }
}

@media (min-width: 992px) {
    /* further override positioning and text alignment of payment method details on non-mobile devices */
    ul#payment-options li div {
        height: auto;
        padding-right: 200px;
        text-align: left;
    }

    /* override positioning of the annual payment method details on non-mobile devices */
    ul#payment-options li#annual div {
        float: right;
    }

    /* override positioning of the monthly payment method details on non-mobile devices */
    ul#payment-options li#monthly div {
        float: left;
    }

    /* further override font styling for payment option heading */
    ul#payment-options li h3 {
        font-size: 22px;
        line-height: 24px;
    }

    /* further override font sizing of payment option price on non-mobile devices */
    ul#payment-options li .price {
        font-size: 40px;
        line-height: 40px;
    }
}

@media (min-width: 768px) {
    /* set positioning of summary of cover details on non-mobile devices */
    #summary-of-cover {
        padding-right: 85px;
    }
}

/* styling and positioning of headings in summary of cover */
#summary-of-cover h4 {
    border-bottom: solid 1px #8b8e96;
    margin-bottom: 20px;
    padding-bottom: 20px;
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
}

/* styling and positioning of tables in summary of cover */
#summary-of-cover table {
    width: 100%;
    margin-bottom: 18px;
    font-size: 16px;
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
}

    /* spacing of table cells in summary of cover tables */
    #summary-of-cover table td {
        padding-bottom: 14px;
    }

        /* align last column in summary of cover tables to the right */
        #summary-of-cover table td:last-of-type {
            text-align: right;
        }

/* styling and positioning of the warning to read terms/policy documents */
.please-read-warning {
    margin-top: 45px;
    margin-bottom: 25px;
    padding: 10px 20px !important;
    background-color: #e5e5e5;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}

/* styling and positioning of heading for document downloads */
.documents-confirmation h4 {
    padding-bottom: 20px;
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
}

/* custom styling for document name labels */
.documents-confirmation .document {
    display: block;
    position: relative;
    width: 100%;
    padding: 15px 135px 15px 18px; /* padding-right: 135px to make room for 'Download' span */
    background-color: #f6f6f6;
    border-bottom: solid 1px #ffffff;
    font-size: 14px;
    font-family: "Audi Type Bold", sans-serif;
    font-weight: 400;
    color: #33414e;
}

@media (min-width: 768px) {
    /* styling and positioning of headings in summary of cover */
    #summary-of-cover h4, .documents-confirmation h4 {
        font-size: 20px;
        line-height: 24px;
    }

    /* show download icon in front of document name labels */
    .documents-confirmation .document:before {
        content: '';
        float: left;
        width: 21px;
        height: 21px;
        margin-right: 15px;
        background: url(/Content/images/downarrow-icon.png) 0 0 no-repeat;
    }
}

/* give correct visual feedback when hovering documents */
.documents-confirmation .document:hover {
    text-decoration: none;
}

/* custom styling for document download buttons */
.documents-confirmation .document span {
    position: absolute;
    top: 0;
    right: 0;
    display: table;
    height: 1px;
    min-height: 50px;
    min-width: 125px;
    background-color: #bb0a30;
    color: #ffffff;
    padding: 15px 18px;
    text-align: center;
    font-family: "Audi Type Extended Regular", sans-serif;
    font-size: 14px;
}

    /* hover styling for document download buttons */
    .documents-confirmation .document span:hover {
        cursor: pointer;
        background-color: #808080;
    }

.documents-confirmation label {
    display: inline-block;
}

.card-options .card {
    padding: 25px;
    border: solid 1px #8b8e96;
    cursor: pointer;
    text-align: center;
}

    .card-options .card:hover, .card-options .card.selected {
        border-color: #bb0a30;
    }

    /* all card images in payment section(s) should share same height. images will be unique, but behaviour shared. */
    .card-options .card div {
        height: 59px;
        background-position: center center;
        background-size: contain;
        background-repeat: no-repeat;
    }

        .card-options .card div.visa {
            background-image: url('/Content/images/visa-icon@2x.png');
        }

        .card-options .card div.maestro {
            background-image: url('/Content/images/maestro-icon@2x.png');
        }

        .card-options .card div.mastercard {
            background-image: url('/Content/images/mastercard-icon@2x.png');
        }

    /* apply a filter to turn the card option element grey-scale when the 'disabled' class is applied */
    .card-options .card.disabled div {
        filter: grayscale(1);
        -webkit-filter: grayscale(1);
        -moz-filter: grayscale(1);
    }

/* custom styling and positioning for date blocks when they relate to card dates.
   Certain platforms will use the variable width when necessary; others will use the max-width
   when the current platform allows for this width.
*/
.card-date-block input[type="text"] {
    width: 40%;
    max-width: 70px;
    padding: 0;
    line-height: 52px;
    text-align: center;
}

/* custom styling and positioning for the '/' in date blocks when they relate to card dates.
   Certain platforms will use the variable width when necessary; others will use the max-width
   when the current platform allows for this width.
*/
.card-date-block > span {
    font-weight: bold;
    font-size: 20px;
    display: inline-block;
    width: 20%;
    max-width: 18px;
    text-align: center;
}

@media (min-width: 768px) {
    /* we want the bootstrap 'row' behaviour, but only on non-mobile devices */
    .non-mobile-row {
        margin-left: -15px;
        margin-right: -15px;
    }
}

/* default styling and positioning of the direct debit statement on mobile devices */
#direct-debit-statement {
    position: relative;
    margin: 0 15px;
    padding: 10px 20px;
    padding-top: 70px;
    background-color: #e5e5e5;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}

    /* default styling for the heading in the direct debit statement on mobile devices */
    #direct-debit-statement h3 {
        font-size: 16px;
        font-family: "Audi Type Bold", sans-serif;
        line-height: 18px;
    }

    /* default styling for paragraphs in the direct debit statement */
    #direct-debit-statement p {
        margin-bottom: 15px;
    }

    /* positioning for the direct debit logo in the direct debit statement */
    #direct-debit-statement #direct-debit-logo {
        position: absolute;
        top: 10px;
        right: 20px;
    }

@media (min-width: 768px) {
    /* decrease top padding in the direct debit statement on non-mobile devices */
    #direct-debit-statement {
        padding-top: 10px;
    }

        /* increase the font size for the heading in the direct debit statement on non-mobile devices */
        #direct-debit-statement h3 {
            font-size: 20px;
            line-height: 24px;
        }
}

/* custom styling and positioning for 'back' button warning text */
p#back-button-warning {
    margin-top: -80px;
    padding: 0px 15px 35px;
    font-size: 11.5px;
    line-height: 17px;
    text-align: justify;
}

    /* styling for 'back' button warning text highlighted text */
    p#back-button-warning span {
        font-family: "Audi Type Bold", sans-serif;
        color: red;
    }



/* --- journey quote bar --- */

/* hide the quote bar by default */
#quote-bar {
    display: none;
}

    /* show the quote bar when appropriate */
    #quote-bar.active {
        display: block;
    }
/*Add some padding so that the documents are seperated properly*/
#account-preferences, #communication-preferences {
    padding-bottom: 15px;
    padding-top: 15px;
}
    /*Override the display so that the checkbox lies to the left of the div..*/
    #account-preferences .check-box, #communication-preferences .check-box {
        display: inline-block;        
       margin:15px 0;
    }
        #account-preferences .check-box:last-of-type,  #communication-preferences .check-box:last-of-type {
            margin-left:15px;
        }
        /*Override the color of the text for the checkbox label from white.*/
        #account-preferences .check-box label,  #communication-preferences .check-box label {
            color: #33434c !important;
        }
@media(min-width:768px) {
     #extended-warranty #communication-preferences  {       
        padding-right: 85px;
    }
}

    /* 'sticky' styling for quote bar on all platforms */
    #quote-bar.sticky {
        position: fixed;
        width: 100%;
        left: 0;
        bottom: 0;
        z-index: 900;
    }

/* default styling and positioning for quote bar elements on mobile devices */
#quote-elements div {
    height: 60px;
    padding: 15px;
    background-color: #e0e6e8;
    z-index: 950;
}

    /* hide a payment type in the quote bar when necessary on all platforms */
    #quote-elements div.hide {
        display: none;
    }

    /* if one payment type in the quote bar is hidden, we need to
       modify the positioning of the other payment type on mobile devices
    */
    #quote-elements div.show {
        width: 100%;
        padding-right: 50%;
    }

    /* add left-hand white space between quote bar elements on all platforms */
    #quote-elements div.breaks:before {
        background-color: #ffffff;
        content: '';
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 1px;
    }

    /* add right-hand white space between quote bar elements on all platforms */
    #quote-elements div.breaks:after {
        background-color: #ffffff;
        content: '';
        display: block;
        height: 100%;
        right: 0;
        position: absolute;
        top: 0;
        width: 1px;
    }

    /* default font styling for quote bar elements */
    #quote-elements div h3 {
        font-family: "Audi Type Bold", sans-serif;
        font-size: 12px;
        line-height: 16px;
    }

        /* right-align price information in quote bar elements */
        #quote-elements div h3 span {
            float: right;
            text-align: right;
        }

/* override default quote bar element styling for red 'header' element */
#quote-elements #header {
    height: 45px;
    background-color: #bb0a30;
}

    /* override default font colour for heading */
    #quote-elements #header h3 {
        color: #ffffff;
    }

@media (min-width: 768px) {
    /* override height and padding of quote elements on tablets */
    #quote-elements div {
        height: 64px;
        padding: 8px;
    }

        /* reset quote bar font sizes on non-mobile devices */
        #quote-elements div h3 {
            font-size: 20px;
            line-height: 24px;
        }
}

@media (min-width: 992px) {
    /* add red background to the window edge for sticky quote bar on non-mobile devices */
    #quote-bar.sticky:before {
        background-color: #bb0a30;
        content: '';
        display: block;
        height: 100%;
        left: -1000px;
        position: absolute;
        top: 0;
        width: 2000px;
    }

    /* add grey background to the window edge for sticky quote bar on non-mobile devices */
    #quote-bar.sticky:after {
        background-color: #e0e6e8;
        content: '';
        display: block;
        height: 100%;
        right: -1000px;
        position: absolute;
        top: 0;
        width: 2000px;
        z-index: 900;
    }

    /* ensure that quote elements is centred when quote bar is sticky on non-mobile devices */
    #quote-bar.sticky #quote-elements {
        margin: 0 auto;
    }

    /* increase height and padding on quote bar elements on non-mobile devices */
    #quote-elements div {
        height: 78px;
        padding: 15px 40px;
    }

        /* reset quote bar elements to the original width and padding on non-mobile devices */
        #quote-elements div.show {
            width: 33.33333333%;
            padding-right: 40px;
        }

    /* increase height on quote bar 'heading' on non-mobile devices */
    #quote-elements #header {
        height: 78px;
    }
}



/* --- ensurance journey --- */

/* position model selection relative so that overlay positions correctly */
#car-models {
    position: relative;
}

    /* default positioning for model selection label */
    #car-models #model-selection-label {
        display: block;
        margin-left: 15px;
        margin-bottom: 50px;
    }

    /* styling and positioning for model selection overlay */
    #car-models.car-overlay #model-overlay {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        opacity: 0.75;
        background-color: #ffffff;
        z-index: 200;
    }

    /* hide model selection label if overlay is showing */
    #car-models.car-overlay #model-selection-label {
        display: none;
    }

    /* styling and positioning for each car model in model selection */
    #car-models .model {
        text-align: center;
        margin-bottom: 50px;
        cursor: pointer;
    }

        /* highlight model name when car model is hovered */
        #car-models .model:hover {
            color: #bb0a30;
            text-decoration: underline;
        }

        /* override default heading style for car model names */
        #car-models .model h4 {
            font-family: "Audi Type Extended Bold", sans-serif;
            font-size: 14px;
        }

/* ensure the selected model details are centered and aligned with other elements */
#selected-model {
    margin-top: 38px;
    text-align: center;
}

    /* override default heading style and positioning for selected model name */
    #selected-model h6 {
        padding-bottom: 20px;
        font-family: "Audi Type Extended Bold", sans-serif;
        font-size: 21px;
    }

/* custom margins on 'change car model' button for alignment with other elements */
button#change-model {
    margin-left: 15px;
    margin-top: 38px;
}

/* add space between inputs and 'additional' text underneath */
.form-group p.additional {
    margin-top: 10px;
}

#ensurance #car-search-details {
    margin-top: 17px;
}

    #ensurance #car-search-details div.model-label, #ensurance #car-search-details div.model-label span {
        padding: 25px 18px !important;
    }

#ensurance #car-model-manual-entry {
    margin-top: 17px;
}

#ensurance a#change-model {
    cursor: pointer !important;
    display: block;
    padding-left: 15px;
}

/* --- confirmation pages (Ensurance and Extended Warranty) --- */

/* default background properties in case the left section has a background image */
#confirmation-content #content-left {
    background: none;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 0;
}

    /* add an overlay for the background image on the left section */
    #confirmation-content #content-left:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.8);
        z-index: -1;
    }

    /* this is an approximation of Clarity's fixed paddings, over multiple media width styles.  So this should scale with available space.  Suble. */
    #confirmation-content #content-left div.inner-wrap {
        padding: 15%;
        color: #ffffff; /* left - area background is black, so we make the text white. */
    }

    /* tick image needs a little space to breathe. */
    #confirmation-content #content-left img.tick {
        padding-bottom: 20px;
    }

    /* default styling and positioning for headings in the left panel */
    #confirmation-content #content-left h2 {
        font-family: "Audi Type Bold", sans-serif;
        font-size: 26px;
        line-height: 30px;
        color: #ffffff;
    }

    /* special styling for the policy number */
    #confirmation-content #content-left span.policy-number {
        color: #bb0a30;
    }

        /* special styling for the policy number when hovered */
        #confirmation-content #content-left span.policy-number:hover {
            color: #ffffff;
            text-decoration: underline;
        }

.ensurance-submit-processing{
    display:none;
}
/* make the right-content area white.  We know the right area dictates the height, and as a "column" it will dictate the height of the containing div (with black background).  This is how the trick works. */
#confirmation-content #content-right {
    background-color: #ffffff;
}

    /* match the padding on the 'left' so it all feels the same. */
    #confirmation-content #content-right div.inner-wrap {
        padding: 60px 15%;
    }

    /* default styling and positioning for headings in the right panel */
    #confirmation-content #content-right h3 {
        padding-bottom: 5px;
        font-family: "Audi Type Bold", sans-serif;
        font-size: 20px;
        line-height: 24px;
    }

    /* ensure contact number */
    #confirmation-content #content-right .contact-number a {
        color: #bb0a30 !important;
        font-family: "Audi Type Bold", sans-serif;
        font-weight: 400;
    }

/* ensure the business use survey height doesn't change when the elements inside are shown/hidden */
#business-use-survey {
    min-height: 222px;
    padding-top: 15px;
    border-top: solid 1px #d9d9d9;
}

    /* check boxes on the business use survey should sit alongside each other */
    #business-use-survey .form-group {
        float: left;
        width: 100px;
    }

@media (min-width: 768px) {
    /* the content for the confirmation page should behave like a table on non-mobile devices */
    #confirmation-content {
        display: table;
    }

        /* the content panels should behave like table cells (for matching heights) on non-mobile devices */
        #confirmation-content #content-left, #confirmation-content #content-right {
            float: none;
            display: table-cell;
            vertical-align: middle;
        }
}



/* --- content block --- */

/* The content head */
.intro-text {
    color: #33414e;
    font-size: 14px;
    line-height: 22px;
    font-family: "Audi Type Regular", sans-serif;
    padding: 50px 2.5%;
}

    /* remove default p padding inside an intro text to keep padding uniform */
    .intro-text p:last-of-type {
        padding-bottom: 0;
    }

@media (min-width: 768px) {
    /* increase intro text font size on non-mobile devices */
    .intro-text {
        font-size: 17px;
    }
}

/* Style of a heading if we are not in accordion. That is to look like an accordion.*/
.non-accordion-heading {
    background-color: #33414e; /* Clarity's CI site changed from red to grey. */
    color: #ffffff;
    font-size: 18px;
    line-height: 22px;
    padding: 15px;
    font-family: "Audi Type Bold", sans-serif;
}

@media (min-width: 768px) {
    /* increase sizes for non accordion headings on non-mobile devices */
    .non-accordion-heading {
        font-size: 27px;
        line-height: 35px;
        padding: 35px 15px;
        text-align: center;
    }
}

/* Background image positioning and sizing to be contained with in the size of the content*/
.content-component {
    background-size: contain;
    background-position: right top;
    background-repeat: no-repeat;
    padding: 0 15px;
}

    /* Background image align left */
    .content-component.image-left {
        background-position: left top !important;
    }

    /* force background image to be hidden on mobile devices */
    .content-component.hide-background-on-mobile {
        background-size: 0;
    }

        /* centre text in content components on mobile devices where the background image is hidden */
        .content-component.hide-background-on-mobile .content-block {
            text-align: center;
        }

    /* custom styling for tables within a content component */
    .content-component .content-block table {
        border: none;
        margin-bottom: 15px;
        font-size: 14px;
    }

        /* custom styling for table headers within a content component */
        .content-component .content-block table thead {
            background-color: #f2f2f2;
            border-bottom: solid 2px #d5d5d5;
            font-weight: bold;
        }

        .content-component .content-block table tbody tr {
            background-color: #ffffff;
        }

        .content-component .content-block table tbody tr:nth-of-type(even) {
            background-color: #f2f2f2
        }

        /* custom styling for th and td cells within a content component */
        .content-component .content-block table th, .content-component .content-block table td {
            padding: 4px 8px;
            border: solid 1px #ffffff;
        }



@media (min-width: 768px) {
    /* show background image at a smaller size on tablet devices */
    .content-component.hide-background-on-mobile {
        background-size: 49%;
    }

        /* re-align text in content components on non-mobile devices where the background image is hidden on mobile devices */
        .content-component.hide-background-on-mobile .content-block {
            text-align: left;
        }
}

@media (min-width: 1200px) {
    /* show background image on non-mobile devices */
    .content-component.hide-background-on-mobile {
        background-size: contain;
    }

    /* extra padding on non-mobile devices */
    .content-component.image-left .content-block {
        padding-right: 30px;
    }

}

/* No accodion main font size and padding*/
.content-block {
    font-size: 17px;
    line-height: 25px;
    padding: 20px 0px;
}

    .content-block h2 {
        font-family: "Audi Type Bold", sans-serif;
        padding-bottom: 0px;
        font-size: 15px;
        line-height: 20px;
    }

        .content-block h2.extended {
            font-family: "Audi Type Extended Bold", sans-serif;
            margin-bottom: 25px;
            font-size: 20px;
        }

    /* p content block padding and margin reset */
    .content-block p:last-of-type {
        margin: 0;
        padding-bottom: 0;
    }

    /* default styling for paragarphs and list items on mobile devices */
    .content-block p, .content-block li, .content-block .big, .content-block .small {
        font-size: 12px;
        line-height: 18px;
    }

    /* contact number styling */
    .content-block .contact-number a {
        color: #bb0a30 !important;
        font-size: 15px;
        line-height: 20px;
        font-family: "Audi Type Bold", sans-serif;
        font-weight: 400;
        display: inline-block;
    }

    /* ensure user-inserted images in content blocks fit
       inside the visible space on mobile devices. On platforms
       that are wider than the image, it should display at it's
       original size.
    */
    .content-block img {
        max-width: 100%;
    }

@media (min-width: 768px) {
    /* increase padding on content blocks on non-mobile devices */
    .content-block {
        padding: 50px 0px;
    }

        /* increase font sizes for h2 on non-mobile devices */
        .content-block h2 {
            font-size: 26px;
            line-height: 30px;
            padding-bottom: 7px;
        }

        /* increase font sizes for paragraphs and list items on non-mobile devices */
        .content-block p, .content-block li {
            font-size: 17px;
            line-height: 25px;
        }

        /* increase font sizes for big paragraphs on non-mobile devices */
        .content-block .big {
            font-size: 18px;
            line-height: 25px;
        }

        /* decrease font sizes for small paragraphs on non-mobile devices */
        .content-block .small {
            font-size: 12px;
        }

        /* override contact number styling */
        .content-block .contact-number a {
            font-size: 31px;
            line-height: 34px;
            padding-bottom: 7px;
        }
}



/* --- documents component --- */

/* positioning for any body text that is before documents*/
.document-body-text {
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
}

/* defualt for styling for a document row*/
.document-row {
    padding: 20px 15px;
    background-color: #fafafa;
}

    /* alternate row color for each document row*/
    .document-row:nth-of-type(odd) {
        background-color: #f6f6f6;
    }

    /* default styling for the document info. Text is givibf padding to leave space for a document icon*/
    .document-row .document-info {
        position: relative;
        padding-left: 60px;
        font-family: "Audi Type Regular", sans-serif;
        font-size: 16px;
        font-weight: 400;
        line-height: 22px;
        color: #33414e;
    }

    /* ensure vertical space between document info and file info on mobile devices */
    .document-row .document-file-info {
        margin-top: 15px;
    }

/* default file name styling*/
.document-inner-content h3 {
    font-size: 16px;
    line-height: 24px;
    padding-bottom: 0px;
}

/* defualt additional file info stlying*/
.document-inner-content p {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}

/* positioning for the document icon */
.document-icon {
    position: absolute;
    top: 6px;
    left: 0;
    width: 40px;
}

/* default stying for file size. positioning and fonts */
.file-size {
    float: left;
    margin-left: 45px;
    color: #33414e;
    font-family: "Audi Type Regular", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}

    /* remove default padding on p elements inside a file size */
    .file-size p {
        padding-bottom: 0px;
    }

/* right positioning for the document download butto*/
.document-download {
    float: right;
}

@media (min-width: 768px) {
    /* for non mobile we have a specific hieght and padding so the "document-info" and "document-file-info" divs line up*/
    .document-row .document-info {
        padding-left: 100px;
    }

    /* modify styling and remove vertical space between document info and file info on non-mobile devices */
    .document-row .document-file-info {
        margin-top: 0;
        padding: 20px 15px 20px 38px;
        border-left: solid 1px #8b8e96;
    }

    /* non mobile styling for file info has padding */
    .document-inner-content {
        padding-top: 15px;
        padding-bottom: 15px;
    }

        /* none moblie font size for font size is bigger than the default*/
        .document-inner-content h3 {
            font-size: 20px;
        }
        /* none moblie font size for  additional file info is bigger than the default*/
        .document-inner-content p {
            font-size: 16px;
        }

    /* non mobile sizing of document icon*/
    .document-icon {
        width: 58px;
    }

    /* non mobile styling for file size*/
    .file-size {
        margin-left: 0px;
        font-size: 16px;
    }
}



/* --- document list --- */

/* remove bootstrap panel borde and drop shown on document list sections */
.document-list-panel {
    border: none !important;
    border-top: #d9d9d9 solid 1px !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    margin-top: 0px !important;
}

    .document-list-panel > .panel-heading {
        background-color: #ffffff;
    }

/* default styling and positioning of document list  section heading on mobile devices */
div [id^="document-list-accordion"] > .document-list-section-panel > .panel-heading a {
    color: #33414e;
    text-decoration: none;
    font-family: "Audi Type Regular", sans-serif;
    padding: 30px 10px;
    display: block;
    position: relative;
}

/* Main accordion styling (fonts and colours) to apply to all children */
div[id^="document-list-accordion"] {
    background-color: #ffffff !important;
    color: #33414e;
    font-family: "Audi Type Bold", sans-serif;
    font-size: 16px;
}

/* default padding around each document list */
.document-list {
    padding-bottom: 3px;
    padding-top: 3px;
}

    /*document list anchor padding and positioning (position relative required for arrow positioning) */
    .document-list a {
        color: #33414e;
        text-decoration: none;
        font-weight: bold;
        padding: 12px 0px;
        display: block;
        position: relative;
    }

        /* padding on the question span to leave space for the arrow. Display to keep text aligned*/
        .document-list a span {
            padding-left: 0px;
            display: block;
            padding-right: 50px;
        }

            /* document list section default arrow styling and transition animation */
            .document-list a span:after {
                content: '';
                width: 28px;
                position: absolute;
                height: 15px;
                top: 16px;
                left: auto;
                right: 0px;
                background-image: url('/Content/images/icon-arrow-down-red.svg');
                background-position: center;
                background-repeat: no-repeat;
                background-size: cover;
                -webkit-transform: rotateX(0deg);
                -moz-transform: rotateX(0deg);
                -ms-transform: rotateX(0deg);
                -o-transform: rotateX(0deg);
                transform: rotateX(0deg);
                -webkit-transition-property: rotateX;
                -moz-transition-property: rotateX;
                transition-property: rotateX;
                -webkit-transition-duration: 0.4s;
                -moz-transition-duration: 0.4s;
                transition-duration: 0.4s;
                -webkit-transition-timing-function: ease-in-out;
                -moz-transition-timing-function: ease-in-out;
                transition-timing-function: ease-in-out;
                cursor: pointer;
            }

        /* document list arrow animation when accordion is expanded*/
        .document-list a[aria-expanded="true"] span:after {
            -webkit-transform: rotateX(-180deg);
            -moz-transform: rotateX(-180deg);
            -ms-transform: rotateX(-180deg);
            -o-transform: rotateX(-180deg);
            transform: rotateX(-180deg);
        }

/* font styling for document heading */
.document-list-heading {
    font-family: "Audi Type Regular", sans-serif;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
}

/* font styling for addtiona; text */
.document-list-additonal-text {
    font-family: "Audi Type Regular", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
}

@media (min-width: 768px) {

    /* padding needed for non mobile position of document list*/
    .document-list a {
        padding-top: 30px;
        padding-bottom: 30px;
    }

        /* extra padding is needed for positioning. To allow space for the arrow on non mobile*/
        .document-list a span {
            padding-left: 80px;
            padding-right: 0;
        }

            /* on non mobile the arrow is position left not right */
            .document-list a span:after {
                height: 15px;
                top: calc(50% - 6px); /* happy medium where text may wrap to ensure vertical alignment of arrow */
                left: 15px;
            }
}



/* --- faq accordions --- */

/* styling for faq component body text */
.faq-body-text {
    padding: 25px 15px 10px;
}

/* remove bootstrap panel border on faq sections */
.faq-section-panel {
    border: none !important;
}

/* default styling and positioning of faq section heading on mobile devices */
div[id^="faq-accordion"] > .faq-section-panel > .panel-heading a {
    display: block;
    position: relative;
    padding: 25px 15px;
    color: #41464c;
    border-top: solid 1px #d9d9d9;
    text-decoration: none;
    font-family: "Audi Type Regular", sans-serif;
    font-size: 14px;
    line-height: 18px;
}

    div[id^="faq-accordion"] > .faq-section-panel > .panel-heading a:after {
        content: '';
        width: 28px;
        position: absolute;
        height: 15px;
        top: 30px;
        left: auto;
        right: 15px;
        background-image: url('/Content/images/icon-arrow-down-red.svg');
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        -webkit-transform: rotateX(0deg);
        -moz-transform: rotateX(0deg);
        -ms-transform: rotateX(0deg);
        -o-transform: rotateX(0deg);
        transform: rotateX(0deg);
        -webkit-transition-property: rotateX;
        -moz-transition-property: rotateX;
        transition-property: rotateX;
        -webkit-transition-duration: 0.4s;
        -moz-transition-duration: 0.4s;
        transition-duration: 0.4s;
        -webkit-transition-timing-function: ease-in-out;
        -moz-transition-timing-function: ease-in-out;
        transition-timing-function: ease-in-out;
        cursor: pointer;
    }

/* remove bottom border on last faq section heading on all devices */
div[id^="faq-accordion"] > .faq-section-panel:first-child > .panel-heading a {
    border-top: none;
}

div[id^="faq-accordion"] > .faq-section-panel > .panel-heading a[aria-expanded="true"]:after {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}

/* Main accordion styling (fonts and colours) to apply to all children */
div[id^="faq-accordion"] {
    background-color: #ffffff !important;
    color: #33414e;
    font-family: "Audi Type Bold", sans-serif;
    font-size: 16px;
}

/* faq question container anchor padding and positioning (position relative required for arrow positioning) */
.faq-question a {
    color: #33414e;
    text-decoration: none;
    font-weight: bold;
    padding: 12px 0px;
    display: block;
    position: relative;
}

    /* padding on the question span to leave space for the arrow. Display to keep text aligned*/
    .faq-question a span {
        padding-left: 15px;
        display: block;
        padding-right: 60px;
    }

        /* faq question default arrow styling and transition animation */
        .faq-question a span:after {
            content: '';
            width: 28px;
            position: absolute;
            height: 15px;
            top: 16px;
            left: auto;
            right: 15px;
            background-image: url('/Content/images/icon-arrow-down-red.svg');
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            -webkit-transform: rotateX(0deg);
            -moz-transform: rotateX(0deg);
            -ms-transform: rotateX(0deg);
            -o-transform: rotateX(0deg);
            transform: rotateX(0deg);
            -webkit-transition-property: rotateX;
            -moz-transition-property: rotateX;
            transition-property: rotateX;
            -webkit-transition-duration: 0.4s;
            -moz-transition-duration: 0.4s;
            transition-duration: 0.4s;
            -webkit-transition-timing-function: ease-in-out;
            -moz-transition-timing-function: ease-in-out;
            transition-timing-function: ease-in-out;
            cursor: pointer;
        }

@media (min-width: 768px) {
    /* increase font size for faq section heading on non-mobile devices */
    div[id^="faq-accordion"] > .faq-section-panel > .panel-heading a {
        font-size: 17px;
        line-height: 24px;
    }

    /* padding needed for non mobile position of faq question*/
    .faq-question a {
        padding: 30px 0;
    }

        /* extra padding is needed for positioning. To allow space for the arrow on non mobile*/
        .faq-question a span {
            padding-left: 80px;
            padding-right: 0;
        }

            /* on non mobile the arrow is position left not right */
            .faq-question a span:after {
                height: 15px;
                top: 31px;
                left: 15px;
            }
}

/* question arrow animation when accordion is expanded*/
.faq-question a[aria-expanded="true"] span:after {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}

/*All questions need a "Q." before them */
.faq-question a span:before {
    content: "Q.";
    padding-right: 3px;
}

@media (min-width: 768px) {
    /* non mobile padding needed for the "Q" */
    .faq-question a span:before {
        padding-right: 12px;
    }
}

/* FAQ answer styling fonts and colours */
.faq-answer {
    color: #33414e;
    font-family: "Audi Type Regular", sans-serif;
    font-size: 16px;
    line-height: 22px;
}

/* default positioning for faq answer content on mobile devices */
.faq-answer-content {
    position: relative;
    padding: 40px 35px 40px 37px; /* On mobiles, the text appears too close to the edge, and needs some padding-right. Approximate match to "A." width and padding */
}

    /* Add the "A." before all answer text */
    .faq-answer-content:before {
        content: "A.";
        font-weight: 700;
        padding-right: 12px;
        left: 15px;
        position: absolute;
    }

    .faq-answer-content a {
        text-decoration: underline;
        color: #bb0a30;
    }

        .faq-answer-content a[href^="tel"] {
            text-decoration: none;
            font-family: "Audi Type Bold", sans-serif;
            color: #33414e;
        }

@media (min-width: 768px) {
    /*FAQ answer text is bold for non mobike*/
    .faq-answer {
        font-weight: 400;
    }

    /* As the arrow is on the left for non mobile. We need specific padding for the content positioning*/
    .faq-answer-content {
        padding-left: 112px;
        padding-right: 15px;
    }

        /*  non moblile the "A" has specific position on the left */
        .faq-answer-content:before {
            left: 80px;
        }
}

@media (min-width: 1200px) {
    /* remove mobile padding on faq answer content on non-mobile devices */
    .faq-answer-content {
        padding-right: 0;
    }
}



/*-- sub accordion -- */

/* remove bootstrap panel borde and drop shown on sub accordion sections */
.sub-accordion-panel {
    border: none !important;
    border-top: #d9d9d9 solid 1px !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    margin-top: 0px !important;
}

    .sub-accordion-panel > .panel-heading {
        background-color: #ffffff;
    }
/* default styling and positioning of sub accordion  section heading on mobile devices */
div [id^="sub-accordion"] > .sub-accordion-section-panel > .panel-heading a {
    color: #33414e;
    text-decoration: none;
    font-family: "Audi Type Bold", sans-serif;
    font-size: 20px;
    padding: 30px 10px;
    display: block;
    position: relative;
}

/* Main accordion styling (fonts and colours) to apply to all children */
div[id^="sub-accordion"] {
    background-color: #ffffff !important;
    color: #33414e;
    font-family: "Audi Type Regular", sans-serif;
    font-size: 16px;
}


@media (min-width: 768px) {
    div[id^="sub-accordion"] {
        font-family: "Audi Type Bold", sans-serif;
        font-size: 20px;
    }
}

/* default padding around each sub accordion */
.sub-accordion {
    padding-bottom: 3px;
    padding-top: 3px;
}


    /*sub accordion anchor padding and positioning (position relative required for arrow positioning) */
    .sub-accordion a {
        color: #33414e;
        text-decoration: none;
        padding: 12px 0px;
        display: block;
        position: relative;
    }

        /* padding on the question span to leave space for the arrow. Display to keep text aligned*/
        .sub-accordion a span {
            padding-left: 0px;
            display: block;
            padding-right: 50px;
        }

            /* sub accordion section default arrow styling and transition animation */
            .sub-accordion a span:after {
                content: '';
                width: 28px;
                position: absolute;
                height: 15px;
                top: 16px;
                left: auto;
                right: 0px;
                background-image: url('/Content/images/icon-arrow-down-red.svg');
                background-position: center;
                background-repeat: no-repeat;
                background-size: cover;
                -webkit-transform: rotateX(0deg);
                -moz-transform: rotateX(0deg);
                -ms-transform: rotateX(0deg);
                -o-transform: rotateX(0deg);
                transform: rotateX(0deg);
                -webkit-transition-property: rotateX;
                -moz-transition-property: rotateX;
                transition-property: rotateX;
                -webkit-transition-duration: 0.4s;
                -moz-transition-duration: 0.4s;
                transition-duration: 0.4s;
                -webkit-transition-timing-function: ease-in-out;
                -moz-transition-timing-function: ease-in-out;
                transition-timing-function: ease-in-out;
                cursor: pointer;
            }

@media (min-width: 768px) {

    /* padding needed for non mobile position of sub accordion*/
    .sub-accordion a {
        padding-top: 30px;
        padding-bottom: 30px;
        font-weight: bold;
    }

        /* extra padding is needed for positioning. To allow space for the arrow on non mobile*/
        .sub-accordion a span {
            padding-left: 0;
            padding-right: 80px;
        }

            /* on non mobile the arrow is position left not right */
            .sub-accordion a span:after {
                top: 33px;
            }
}

/* sub accordion arrow animation when accordion is expanded*/
.sub-accordion a[aria-expanded="true"] span:after {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -ms-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}

/* font styling for document heading */
.sub-accordion-content {
    padding: 40px 10px 40px;
    color: #33414e;
    font-family: "Audi Type Regular", sans-serif;
    font-size: 14px;
    line-height: 22px;
}

@media (min-width: 768px) {
    /* increase font size for sub accordion content on non-mobile devices */
    .sub-accordion-content {
        font-size: 16px;
        line-height: 24px;
    }
}



/* --- INFO GRID --- */


.youTubeIFrame {
    min-height:420px;
    width:100%;

}
/* background image properties on an info grid if it has one */
.info-grid .fixed-background, .info-grid .with-panels-fixed-background {
    background-attachment: scroll;
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
}

/* default styling and positioning for info blocks in an info grid */
.info-grid .info-block {
    /* display: table; /* info block child display is dependent on being inside a 'table' */
    position: relative;
    background-color: #d9d9d9;
    color: #2b2f33;
    min-height: 426px;
    z-index: 0;
    padding: 15px;
}

    /* apply alternate background and fore-colours to info blocks when:
        1: they are an even info block
        2: they have a background image themselves
        3: their parent info grid has a background image
    */
    .info-grid .info-block:nth-child(even), .info-grid.with-panels .info-block-even, .info-grid .info-block.info-block-background, .info-grid .fixed-background .info-block {
        background-color: #33414e;
        color: #ffffff;
    }

    /* default styling and positioning for headings in info grid info blocks */
    .info-grid .info-block h3 {
        padding: 15px 0;
        font-family: "Audi Type Extended Bold", sans-serif;
        font-size: 16px;
        line-height: 18px;
        height: 78px;
    }

        /* add a underline after headings in info grid info blocks */
        .info-grid .info-block h3:after {
            content: '';
            position: absolute;
            width: 120px;
            height: 1px;
            left: 50%;
            bottom: 0;
            margin-left: -60px;
            background-color: #33414e;
        }

    /* apply alternate colour to headings when:
        1: they are an even info block
        2: their info block has a background image
        3: their info blocks parent info grid has a background image
    */
    .info-grid .info-block:nth-child(even) h3, .info-grid .info-block-even h3, .info-grid .info-block.info-block-background h3, .info-grid .fixed-background .info-block h3 {
        color: #ffffff;
    }

        /* apply alternate colour to underline when:
            1: they are an even info block
            2: their info block has a background image
            3: their info blocks parent info grid has a background image
        */
        .info-grid .info-block:nth-child(even) h3:after, .info-grid .info-block-even h3:after, .info-grid .info-block.info-block-background h3:after, .info-grid .fixed-background .info-block h3:after {
            background-color: #ffffff;
        }

    /* background image properties of an info block if it has one, or if it's parent info grid has one */
    .info-grid .info-block.info-block-background, .info-grid .fixed-background .info-block {
        background: none;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
    }

        /* add an overlay to an info block if it has a background image, or if it's parent info grid has one */
        .info-grid .info-block-background:before, .info-grid .fixed-background .info-block:before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            height: 100%;
            width: 100%;
            background-color: rgba(0, 0, 0, 0.7);
            z-index: -1;
        }

/* remove the overlay on an info block when it is 'active' */
.info-grid .active.info-block-background:before {
    display: none;
}

/* enable info block content to display as a table cell for vertical alignment */
.info-grid .info-block .info-block-cell {
    /*display: table-cell; /* dependent on the parent having display:table; */
    vertical-align: middle;
    /* pointer-events: none; /* ensures that 'click' events are bled through to the parent element */
}

    /* ensure that links within info blocks added by the user still work as expected */
    .info-grid .info-block .info-block-cell a {
        pointer-events: all;
    }

/* ensure horizontal centre alignment of elements in an info block heading or info block content */
.info-grid .info-block .info-block-cell-heading, .info-grid .info-block .info-block-cell-content {
    text-align: center;
}

/* positioning of info block heading to ensure underline sits at the bottom of the info block heading */
.info-grid .info-block .info-block-cell-heading {
    position: relative;
}

/* positioning and styling for info block content */
.info-grid .info-block .info-block-cell-content {
    /*height: 120px;*/
    padding: 15px 30px 0;
    font-size: 14px;
    z-index: 0;
}

/* --- info grid with panels / alternate (CLAIMS PAGE) --- */

/* info blocks in info grid with panels should have cursor: pointer as they are clickable */
.info-grid.with-panels .info-block {
    cursor: pointer;
}

/* info blocks with panels in an 'alternate' info grid container should swap the default colours */
.info-grid.with-panels .grid-container.alternate .info-block {
    background-color: #33414e;
    color: #ffffff;
}

    /* override colours in info blocks with panels in an 'alternate' info grid */
    .info-grid.with-panels .grid-container.alternate .info-block-even {
        background-color: #d9d9d9;
        color: #2b2f33;
    }

        /* override heading font colour in info blocks with panels in an 'alternate' info grid */
        .info-grid.with-panels .grid-container.alternate .info-block-even h3 {
            color: #2b2f33;
        }

            /* override heading underline in info blocks with panels in an 'alternate' info grid */
            .info-grid.with-panels .grid-container.alternate .info-block-even h3:after {
                background-color: #2b2f33;
            }

.grid-container {
    background-color: black;
}

/* override all backgrounds and colours when an info block is active */
.info-grid.with-panels .info-block.active {
    background: none !important;
    background-color: #bb0a30 !important;
    color: #ffffff !important;
}

    /* override headings when an info block is active */
    .info-grid.with-panels .info-block.active h3 {
        color: #ffffff !important;
    }

        /* override heading underline when an info block is active */
        .info-grid.with-panels .info-block.active h3:after {
            background-color: #ffffff !important;
        }

/* where an info grid has panels, the info block should have an arrow below the content */
.info-grid.with-panels .info-block .info-block-cell:after {
    content: '';
    position: absolute;
    top: 60%; /* use of percentage means we're a little more flexible to the parent changing size. The extra 1% is to account for unknowns - some browsers may render content an extra pixel or two in height. */
    left: calc(50% - 20px);
    width: 36px;
    height: 19px;
    background-image: url(/Content/images/icon-arrow-down.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* override arrow below content in an info block in an info grid with panels when:
    1: they are an odd info block
    2: the info block has a background image
    3: the info block is active
*/
.info-grid.with-panels .grid-container.alternate .info-block-odd .info-block-cell:after,
.info-grid.with-panels .grid-container.alternate .info-block.info-block-background .info-block-cell:after,
.info-grid.with-panels .info-block.active .info-block-cell:after {
    background-image: url(/Content/images/icon-arrow-down-white.svg);
}

/* add borders top and bottom to all info block panels */
.info-block-panel {
    border-top: solid 5px #bb0a30;
    border-bottom: solid 5px #bb0a30;
    background-color: #ffffff;
    margin-bottom: -2px; /* This is too hide the white space from the default border of the the foooter. Which applied to everything but the claims page. Not thinking of cms when designing this here! */
}

    /* add padding to info block panels when required, or to a child container of an info block panel when required */
    .info-block-panel.with-padding, .info-block-panel > .info-block-content-container > .with-padding {
        padding: 60px 15px 10px;
    }

    /* default white space for contact details in an info block panel on mobile devices */
    .info-block-panel .contact-detail {
        position: relative;
		padding: 0 15px 50px;
    }

        /* positioning for the contact detail icon in an info block panel */
        .info-block-panel .contact-detail img {
            position: absolute;
            top: 0;
        }

        /* padding for contact info to make room for the icon */
        .info-block-panel .contact-detail .contact-info {
            padding-left: 60px;
        }

            /* override heading style and size in contact info in an info block panel */
            .info-block-panel .contact-detail .contact-info h3 {
                padding-bottom: 5px;
                font-family: "Audi Type Bold", sans-serif;
                font-size: 16px;
                line-height: 20px;
            }

            /* reduce padding for paragraphs in contact info in an info block panel */
            .info-block-panel .contact-detail .contact-info p {
                padding-bottom: 5px;
                font-size: 14px;
                line-height: 18px;
            }

            /* override contact number styling in contact info in an info block panel */
            .info-block-panel .contact-detail .contact-info .contact-number {
                font-family: "Audi Type Bold", sans-serif;
                font-weight: 700;
                font-size: 16px;
                line-height: 18px;
            }

@media (min-width: 768px) {
    /* min height for info block content on TABLETS ONLY - col-sm-4 causes narrow columns which aren't tall enough for the current content
    .info-grid .info-block .info-block-cell-content {
        min-height: 250px;
    }*/

    /* increase font size and spacing for headings on non-mobile devices */
    .info-grid .info-block h3 {
        font-size: 20px;
        line-height: 24px;
    }

    /* override white space for contact details in an info block panel on tablets */
    .info-block-panel .contact-detail {
        padding: 0 25px 50px 50px;
    }

        /* increase font size and spacing for headings in contact details in an info block panel on non-mobile devices */
        .info-block-panel .contact-detail .contact-info h3 {
            font-size: 20px;
            line-height: 24px;
        }

        /* increase font size and spacing for paragraphs in contact info in an info block panel on non-mobile devices */
        .info-block-panel .contact-detail .contact-info p {
            font-size: 16px;
            line-height: 22px;
        }

        /* increase font size and spacing for contact number in contact info in an info block panel on non-mobile devices */
        .info-block-panel .contact-detail .contact-info .contact-number {
            font-size: 20px;
            line-height: 22px;
        }
}

@media (min-width: 992px) {
    /* override background positioning to be fixed in info grids on non-mobile devices */
    .info-grid .fixed-background, .info-grid .with-panels-fixed-background {
        background-attachment: fixed;
        background-position: center;
    }

    /* remove min height for info block content on non-mobile devices (only applicable to TABLETS */
    .info-grid .info-block .info-block-cell-content {
        min-height: initial;
    }

    /* override white space for contact details in an info block content on non-mobile devices */
    .info-block-panel .contact-detail {
        padding: 0 25px 50px 100px;
    }
}

/* --- OPEN ACCORDION --- */

.open-panel-content {
    border-top: 1px solid #ddd;
}

/* --- SUB ACCORDION WINDOW (GAP Insurance) --- */

/* default styling and background positioning for a window block */
.window-block {
    color: #ffffff;
    padding: 40px 0 70px;
    text-align: center;
    background-attachment: scroll;
    background-position-x: center;
    background-repeat: no-repeat;
    -moz-background-size: cover;
    -o-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
}

    /* override styling and padding on headings inside a window block */
    .window-block h3 {
        line-height: 28px;
        padding-bottom: 40px;
        color: #ffffff;
    }

    /* positioning for a window block grid - flex to enable equal height children */
    .window-block .window-block-grid {
        flex: 1;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0 15px;
    }

        /* ensure spacing of window block elements across all platforms */
        .window-block .window-block-grid [class*="col-xs-12"] {
            margin-bottom: 15px;
        }

        /* default styling for a window block grid item */
        .window-block .window-block-grid .col-inner {
            height: 100%;
            padding: 40px 25px;
            border: solid 1px #ffffff;
        }

            .window-block .window-block-grid .col-inner h4 {
                font-family: "Audi Type Bold", sans-serif;
                font-size: 18px;
                color: #ffffff;
            }

            /* reduce font size on window block grid items */
            .window-block .window-block-grid .col-inner p {
                font-size: 14px;
            }

@media (min-width: 992px) {
    /* fix the position of the background image in a window block on non-mobile devices */
    .window-block {
        background-attachment: fixed;
    }
}



/* --- contact us page --- */

/* force all 'content' on a contact us page to be centre-aligned */
#contact-us-page .content {
    text-align: center;
    padding: 50px 0;
}
    /* default styling for headings in the contact us content */
    #contact-us-page .content h2 {
        font-family: "Audi Type Bold", sans-serif;
        font-size: 30px;
        line-height: 36px;
    }

    /* ensure the last p in contact us content has no bottom padding to keep it uniform */
    #contact-us-page .content p:last-of-type {
        padding-bottom: 0;
    }

/* custom sprite image for 'car' icon */
#contact-tabs a.icon-car:before {
    background-image: url(/Content/images/contact-us-icon-car.png);
}

/* custom sprite image for 'tools' icon */
#contact-tabs a.icon-tools:before {
    background-image: url(/Content/images/contact-us-icon-tools.png);
}

/* custom sprite image for 'clipboard' icon */
#contact-tabs a.icon-clipboard:before {
    background-image: url(/Content/images/contact-us-icon-clipboard.png);
}

/* custom sprite image for 'shield' icon */
#contact-tabs a.icon-shield:before {
    background-image: url(/Content/images/contact-us-icon-shield.png);
}

/* reposition the contact us 'tab' sprite when they are hovered or active */
#contact-tabs a.icon-car.active:before,
#contact-tabs a.icon-tools.active:before,
#contact-tabs a.icon-clipboard.active:before,
#contact-tabs a.icon-shield.active:before,
#contact-tabs a.icon-car:hover:before,
#contact-tabs a.icon-tools:hover:before,
#contact-tabs a.icon-clipboard:hover:before,
#contact-tabs a.icon-shield:hover:before {
    background-position: bottom left;
}

/* hide the contact us 'tabs' on mobile devices */
#contact-tabs ul {
    display: none;
}

/* make room for icons in panel headings on mobile devices */
#contact-tabs .panel-heading a {
    padding-left: 80px;
}

    /* positioning for all contact us 'tab' icons (uses sprites) */
    #contact-tabs .panel-heading a:before {
        content: '';
        background-position: bottom left; /* we always want to see the 'white' sprite in accordion headings */
        position: absolute;
        top: calc(50% - 18px);
        left: 26px;
        width: 30px;
        height: 36px;
    }

/* default styling and positioning for all contact us accordion panels */
#contact-tabs .panel-body {
    position: relative;
    display: block;
    padding: 50px 20px;
    background: none;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    z-index: 0;
}

    /* apply background overlay to all contact us accordion panels */
    #contact-tabs .panel-body:before {
        content: '';
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        z-index: -1;
    }

/* ensure that contact detail images display correctly */
#contact-tabs .contact-detail {
    position: relative;
}

    /* positioning for contact detail icon images */
    #contact-tabs .contact-detail img {
        position: absolute;
        top: 0;
        width: 55px;
        height: 52px;
    }

/* make room for contact detail icons */
#contact-tabs .contact-info {
    padding-left: 80px;
}

    /* override default styling for headings and 'telephone' anchors in contact information */
    #contact-tabs .contact-info h3, #contact-tabs .contact-info a.contact-number {
        padding-bottom: 5px;
        font-family: "Audi Type Bold", sans-serif;
        font-size: 16px;
        line-height: 24px;
        color: #ffffff;
    }

    /* override default styling for paragraphs in contact information */
    #contact-tabs .contact-info p {
        font-size: 14px;
        color: #ffffff;
    }

/* add white space above calls to action in contact details */
#contact-tabs .calls-to-action {
    padding-top: 30px;
}

    /* display calls to action at full width and stacked on mobile devices */
    #contact-tabs .calls-to-action a {
        display: block;
        margin-bottom: 10px;
    }

/* create white space between contact us accordion and form display buttons */
#contact-form-buttons {
    margin-top: 2px;
}

    /* make form display buttons be full-width on mobile devices */
    #contact-form-buttons .button {
        float: none;
        width: 100%;
    }

        /* add vertical white space between contact us form display buttons on mobile devices */
        #contact-form-buttons .button:first-of-type {
            margin-bottom: 2px;
        }

        /* default styling and positioning for contact us form display buttons */
        #contact-form-buttons .button button {
            display: block;
            width: 100%;
            height: 100%;
            padding: 15px;
            background-color: #33414e;
            border: none;
            color: #ffffff;
            font-family: "Audi Type Regular", sans-serif;
            font-size: 18px;
            line-height: 30px;
            text-align: left;
        }

            /* add leading arrow to contact us form display button text */
            #contact-form-buttons .button button:before {
                content: '';
                height: 14px;
                width: 8px;
                background-image: url(/Content/images/icon-arrow-right-white.svg);
                background-position: left center;
                background-repeat: no-repeat;
                background-size: 8px 14px;
                padding-left: 20px;
            }

/* override or introduce rules which apply above 'mobile' device resolutions */
@media (min-width: 768px) {
    /* restore normal left padding in panel headings on non-mobile devices */
    #contact-tabs .panel-heading a {
        padding-left: 15px;
    }

    /* override buttons to be half-width with white space between on non-mobile devices */
    #contact-form-buttons .button {
        float: left;
        width: calc(50% - 1px);
    }

        /* remove white space at the bottom of the first contact form display button on non-mobile devices */
        #contact-form-buttons .button:first-of-type {
            margin-bottom: 0px;
        }

        /* make 'right' button display on the right to leave white space between two buttons on non-mobile devices */
        #contact-form-buttons .button.right {
            float: right;
        }

        /* increase padding for contact us form display buttons on non-mobile devices */
        #contact-form-buttons .button button {
            padding: 35px;
            font-size: 20px;
            text-align: center;
        }

    /* float calls to action to the right on non-mobile devices */
    #contact-tabs .calls-to-action {
        float: right !important;
    }

        /* reposition calls to action on non-mobile devices to not display full width */
        #contact-tabs .calls-to-action a {
            display: inline-block;
        }
}

/* override or introduce rules which apply above 'tablet' device resolutions */
@media (min-width: 992px) {
    /* add background colour to contact tabs on non-mobile devices */
    #contact-tabs {
        background-color: #e5e5e5;
    }

        /* show the contact us 'tabs' on non-mobile devices */
        #contact-tabs ul {
            display: block;
            float: left;
            width: 30%;
            list-style: none;
            margin: 0;
            padding: 0;
        }

            /* ensure 'arrow' after each contact us 'tab' positions correctly */
            #contact-tabs ul li {
                position: relative;
            }

                /* default styling and positioning for each contact us 'tab' */
                #contact-tabs ul li a {
                    display: block;
                    padding: 35px 25px 35px 70px;
                    font-family: "Audi Type Bold", sans-serif;
                    font-size: 20px;
                    color: #4f565d;
                    text-decoration: none;
                }

                    /* hover styling for contact us 'tabs' */
                    #contact-tabs ul li a.active, #contact-tabs ul li a:hover {
                        background-color: #bb0a30;
                        color: #ffffff;
                        text-decoration: none;
                    }

                    /* positioning for all contact us 'tab' icons (uses sprites) */
                    #contact-tabs ul li a:before {
                        content: '';
                        background-position: top left; /* hover and active sprite positioning shared with accordion headings */
                        position: absolute;
                        top: calc(50% - 18px);
                        left: 26px;
                        width: 30px;
                        height: 36px;
                    }

                    /* add an 'arrow' after each contact us 'tab' to the right when hovered */
                    #contact-tabs ul li a.active:after, #contact-tabs ul li a:hover:after {
                        content: '';
                        position: absolute;
                        top: calc(50% - 16px);
                        right: -16px;
                        height: 32px;
                        width: 16px;
                        background: url(/Content/images/active.png) no-repeat;
                        z-index: 9;
                    }

        /* reposition contact us accordion when on non-mobile devices to make room for contact us 'tabs' */
        #contact-tabs div[id^="accordion"] {
            float: left;
            width: 70%;
        }

        /* remove top margins on panels on non-mobile devices */
        #contact-tabs .panel {
            margin-top: 0px !important;
        }

        /* hide accordion headings on non-mobile devices */
        #contact-tabs .panel-heading {
            display: none;
        }

        /* force a minimum height on panel bodies on non-mobile devices */
        #contact-tabs .panel-body {
            min-height: 450px;
            padding: 50px 110px;
        }
}

/* styling and positioning for 'overlay' for enquiry and feedback forms */
#enquiry-form-overlay, #feedback-form-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 30px 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 10001;
    overflow-y: scroll;
}

/* default styling and positioning for enquiry and feedback forms on mobile devices */
.dialog {
    width: 100%;
    padding: 15px;
    background-color: #ffffff;
}

    .dialog .close-form {
        cursor: pointer;
    }

/* override default form section padding on enquiry and feedback forms */
#enquiry-form .form-section, #feedback-form .form-section {
    padding: 50px 0 0;
}

/* enforce size of textarea elements on enquiry and feedback forms */
#enquiry-form textarea, #feedback-form textarea {
    height: 130px;
    width: 100%;
    resize: none;
}

@media (min-width: 768px) {
    /* reposition enquiry and feedback forms on non-mobile devices */
    .dialog {
        position: absolute;
        top: 15px;
        margin-bottom: 15px;
        left: calc(50% - 240px);
        max-width: 480px;
    }
}



/* --- DD Mandate form --- */

/* prevent scrolling of the body when the direct debit mandate is visible */
body.dd-overlay-active {
    overflow: hidden;
}

/* styling and positioning of the direct debit mandate overlay */
#dd-mandate-overlay {
    display: none;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 10001;
    padding: 20px 0;
    background-color: rgba(0, 0, 0, 0.7);
    overflow-y: scroll;
}

/* styling and positioning of the direct debit mandate form on mobile devices */
#dd-mandate-form {
    width: calc(100% - 16px);
    margin: 0 8px;
    padding: 20px;
    background-color: #ffffff;
}

@media (min-width: 840px) {
    /* override positioning of the direct debit mandate form on non-mobile devices */
    #dd-mandate-form {
        position: absolute;
        left: calc(50% - 400px);
        width: 800px;
        margin: 0;
        padding: 20px;
    }
}

/* positioning of the 'close' icon in the direct debit mandate form */
#dd-mandate-form #dd-mandate-close {
    clear: both;
    margin-bottom: 20px;
}

    /* ensure the user receives visual feedback when hovering the 'close' icon */
    #dd-mandate-form #dd-mandate-close img {
        cursor: pointer;
    }

/* override default hr style for the direct debit mandate form */
#dd-mandate-form hr {
    background-color: #babcbe;
    height: 2px;
    margin: 0px;
    margin-bottom: 23px;
}

/* add white space at the bottom of the direct debit details */
#dd-mandate-form #dd-mandate-details {
    margin-bottom: 23px;
}

    #dd-mandate-form #dd-mandate-details > div > div {
        margin-bottom: 23px;
    }

    /* default styling and positioning for 'mini-box' items in the direct debit details */
    #dd-mandate-form #dd-mandate-details .mini-box {
        display: inline-block;
        border-top: 1px solid #988 !important;
        border-right: 1px solid #988 !important;
        border-bottom: 1px solid #988 !important;
        border-left: none;
        text-align: center;
        line-height: 40px;
    }

        /* specific width of 'eighths' mini box items */
        #dd-mandate-form #dd-mandate-details .mini-box.eighths {
            width: 12.5% !important;
        }

        /* specific width of 'sixths' mini box items */
        #dd-mandate-form #dd-mandate-details .mini-box.sixths {
            width: 16.65% !important;
            padding: 0px; /* seems to chop text in boxes on low res phones without this. */
        }

        /* specific width of 'quarters' mini box items */
        #dd-mandate-form #dd-mandate-details .mini-box.quarters {
            width: 25% !important;
        }

        /* first mini box should have a left border */
        #dd-mandate-form #dd-mandate-details .mini-box:first-of-type, #dd-mandate-form #dd-mandate-details .mini-box:disabled:first-of-type {
            border-left: 1px solid #988;
        }

        /* override disabled mini-box item background colour */
        #dd-mandate-form #dd-mandate-details .mini-box:disabled {
            background-color: #ffffff;
        }

    /* override default textarea styling and positioning in the direct debit details form */
    #dd-mandate-form #dd-mandate-details textarea {
        resize: none;
        width: 100%;
        min-height: initial;
        background-color: #ffffff;
        border: solid 1px #988; /* Victor wanted the borders in, or wouldn't sign off!*/
    }

    /* default styling and positioning of all 'text-box' divs and actual text boxes in the direct debit details form */
    #dd-mandate-form #dd-mandate-details .text-box, #dd-mandate-form #dd-mandate-details input[type=text] {
        width: 100%;
        border: solid 1px #988;
        background-color: #ffffff;
        text-transform: uppercase;
    }

    /* apply to div and textboxes that you want to be padded the same. This solves an inconsistency between IE11 and other browsers. */
    #dd-mandate-form #dd-mandate-details .text-box, #dd-mandate-form #dd-mandate-details textarea {
        padding: 10px;
        font-size: 18px; /* should match the font-size of actual text-boxes and text-area controls. */
    }

/* add vertical white space when the print and update/start cover buttons wrap on mobile devices */
#dd-mandate-form #print-container {
    margin-bottom: 10px;
}

/* as buttons wrap on tiny resolution, they don't touch each other with a little margin. */
#dd-mandate-buttons div {
    margin-bottom: 5px;
}

/* printer-only elements should not be visible to the screen.  See: @media print -> p.printer-only-content */
p.printer-only-content {
    display: none;
}

/* hide EVERYTHING except the DD Mandate form when we print. */
@media print {

    /* not sure if we need this - but seems to suggest an A4 page, so keeping it. */
    body, page[size="A4"] {
        margin: 0;
        box-shadow: 0;
    }

    /* when printing, the DD logo appears off screen.  We need this to push it back into the printable area */
    #dd-mandate-form-dd-logo {
        margin-right: 15px;
    }

    /* css to show printer visible content, but should be invisble for normal screens. */
    p.printer-only-content {
        display: block !important; /* required because these p elements are hidden by default. See above */
        /*white-space: pre-wrap;*/ /* new-line characters are treated as BR tags. */
    }

    /* hide all elements on the page EXCEPT the dd mandate. */
    header,
    footer,
    #main-content,
    #dd-mandate-close,
    #dd-mandate-buttons,
    textarea.screen-only-content {
        display: none !important; /* added !important because I found that print media was overridden by something else, making the logo in the <header> visible. */
    }

    /* we don't want to print coloured background on a white page.  So make the background of the overlay white. */
    #dd-mandate-overlay {
        background-color: #ffffff;
        padding: 0px; /* somewhere between the padding and overflow, we remove scroll-bar images from the printed page. */
        overflow: visible;
    }

    /* ensure we can see everything, and this should remove any possibly visible scroll-bars. */
    #dd-mandate-form {
        width: 100%;
        overflow: visible;
        padding: 0px;
    }

        /* @media print -> is not affected by bootstrap 3.  So we have to make up the expected behaviour */
        #dd-mandate-form .col-sm-6 {
            width: 50%;
            margin: 0px; /* ensure divs don't wrap, so the 50% means we get 2 x side by side. */
        }
}



/* --- GAP INSURANCE CALCULATOR --- */

/* ensure that the content (the calculation) takes up the full width of available space. */
#gap-insurance-calculation {
    padding: 0px;
}

/* this is the wrapper for the images that make up the visual representation of the gap cover calculation. */
#gap-insurance-calculation-image {
    padding: 0px; /* required for layout.  Without it, the black-line separator between insurance/gap is in wrong place because the car images will take up more room than they should. */
}

/* the vehicle image that represents gap insurance.  Sits inside #gap-insurance-calculation-image .
                    Positioned in same top-left position from document layout, but taken out of normal document flow.  This means the same pixel position is available for the 'gap' car image too. (overlay)*/
#gap-payout-car {
    position: absolute;
    overflow: hidden;
    width: 100%;
    /* height constantly monitored by javascript. */
}

/* background-images for the car to display are provided by Umbraco, and injected in as an inline-style.  But both car images share these properties, hence, a class.  */
#gap-insurance-calculation-image div.car-image {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    display: block;
}

/* spacer of brand-colour, for Gap.  Victor wants it, because it makes behaviour the same as existing implementations. */
#gap-insurance-calculation-image div[name='gap-spacer'] {
    height: 100px;
    float: right;
    width: 6%; /* concensus width choice (SM / IT) - that behaves closely to Clarity's original, even though the CSS and HTML are completely different. */
    background-color: #fff;
}

/* the bar at the top of the image who's colour represents gap-insurance. */
#gap-insurance-calculation-image div[name='gap-bar'] {
    display: block;
    height: 82px;
    background-color: #bb0a30;
    /* height needs to match #gap-insurance-calculation-details at all times. */
}

/* container for the insurance payout vehicle image and "header".  This sits on-top of the gap-insurance car image.  
            A percentage of the width is made visible, which is the 'trick' to how this works. 
            A border-right 'line' is used to provide a separator between the two vehicle images.  That's the other 'trick'.
            Lastly, it is worth pointing out that this container doesn't affect the car image size, by simply hiding anything that overflows the div's size.  This is another 'trick'. */
#insurance-payout-car {
    border-right: solid 1px #33414e;
    position: absolute;
    overflow: hidden;
}

    /* coloured bars that have no text, but act as a heading - have a fixed height, but the widths will need to fill the available space. */
    #insurance-payout-car div[name='insurance-bar'], #gap-payout-car div[name='gap-bar'] {
        display: block;
        width: 100%;
        height: 82px;
    }

    /* bar at top of containing div, that should fill the width - this determines further characteristics specific to the 'bar' relating to car-insurer's payout. */
    #insurance-payout-car div[name='insurance-bar'] {
        background-color: #33414e;
    }

/* bar at top of containing div, that should fill the width - this determines further characteristics specific to the 'bar' relating to gap-insurance's payout. */
#gap-payout-car div[name='gap-bar'] {
    background-color: #bb0a30;
}

/* the area on the right (unless mobile, then below) that details the Gap calculation, and provides a slider to change gap cover for calculation.*/
#gap-insurance-calculation-details {
    display: inline-block;
    background-color: #e0e6e8;
    padding: 0px;
    min-height: 500px;
}

    /* adds a class to this area, allowing you to optionally add padding to a div. */
    #gap-insurance-calculation-details div.pad {
        padding: 30px;
    }

    /* styles the bar (Connexus want to match height with other areas bars) for the details section header. */
    #gap-insurance-calculation-details div.details-bar {
        display: block;
        background-color: #c5cfd3;
        padding-top: 0px;
        padding-bottom: 0px; /* padding will come from <p> document-wide css.*/
        font-weight: bold;
        height: 82px;
        line-height: 82px;
    }

    /* add styling to HR elements in the details section of the gap calculator - that differs from default styling. */
    #gap-insurance-calculation-details hr {
        border-top-color: #8b8e96;
        margin: 10px 0px;
    }

    /* adds styling changes to the defaults of a paragraph found inside the details area of the gap calculator. */
    #gap-insurance-calculation-details p {
        padding-bottom: 5px;
    }

        /* parapraphs within the details section of gap calculator appear differently for monetary values being displayed */
        #gap-insurance-calculation-details p.money-value {
            font-family: "Audi Type Bold", sans-serif;
            font-size: 32px;
            line-height: 30px;
        }

    /* details area of the gap calculator show coloured boxes (legend, or keys on a chart) where the colour indicates the kind of insurance cover.  They should be of uniform size.*/
    #gap-insurance-calculation-details .insurance-key-colour, #gap-insurance-calculation-details .gap-key-colour {
        width: 14px;
        height: 14px;
        display: inline-block;
    }

    /* specific  characteristics of a key colour relating to the insurance cover.*/
    #gap-insurance-calculation-details .insurance-key-colour {
        background-color: #41464c;
    }

    /* specific  characteristics of a key colour relating to the gap cover.*/
    #gap-insurance-calculation-details .gap-key-colour {
        background-color: #bb0a30;
    }

#gap-slider {
    margin: 30px 0px;
}

    /* JQuery UI override - within GAP calculator for the slider bar, where we want to see a border, but not an outline. */
    #gap-slider.ui-slider {
        border: solid 1px #41464c;
        outline: none;
    }
        /* JQuery UI override - within GAP calculator - to make appearance match Clarity's design. */
        #gap-slider.ui-slider .ui-slider-handle {
            background-color: #999999;
            border: #e0e6e8 solid 3px;
            width: 30px;
            height: 30px;
            top: -9px;
            border-radius: 50%;
        }

        /* JQuery UI override - within GAP calculator - where we don't want to see the blue outline of a focussed slider. */
        #gap-slider.ui-slider .ui-state-focus {
            outline: none;
        }



/* --- CLAIMS - CLAIMS NOTIFICATION --- */

/* default styling and positioning for the journey step list */
#claims-journey-steps ul {
    list-style: none;
    margin: 0;
    padding: 0 10px;
    background-color: #e5e5e5;
    color: #33414e;
    text-align: center;
    width: 100%;
}

    /* default styling and positioning for each journey step list item */
    #claims-journey-steps ul li {
        display: inline-block;
        width: 20%;
        padding: 10px 5px;
        font-size: 12px;
        margin: 0 -2px !important;
        border-right: solid 1px #ffffff;
    }

        /* apply a left border to the first journey step list item */
        #claims-journey-steps ul li:first-child {
            border-left: solid 1px #ffffff;
        }

        /* show 'pointer' cursor when hovered if a journey step is enabled */
        #claims-journey-steps ul li.enabled {
            cursor: pointer;
        }

        /* modify background colour on active journey step list item */
        #claims-journey-steps ul li.active {
            background-color: #ffffff;
        }

        /* hide journey step names on mobile devices */
        #claims-journey-steps ul li p {
            display: none;
        }

/* default styling for claims notification steps */
#claims-notification .claims-step {
    display: none;
    padding: 85px 0 35px;
}

/* show the first step of the claims notification form by default */
#claims-notification #claims-journey-step-one {
    display: block;
}

    #claims-notification .claims-step h3 {
        font-family: "Audi Type Bold", sans-serif;
        padding: 0 30px 30px;
    }

    /* remove default padding and border from form sections on the claim notification form */
    #claims-notification .claims-step .form-section {
        padding: 0;
        border: none;
    }

/* override positioning of info icons when alongside inputs in the claims notification journey */
#claims-notification img.info-icon.input {
    position: absolute;
    top: 12px;
    right: -15px;
}

/* override EW back button warning styling on claims notification journey */
.claims-step #back-button-warning {
    margin-top: -20px;
    padding: 0px 30px 35px;
}

/* positioning and spacing for vehicle damage selection pane */
#vehicle-damage {
    position: relative;
    width: 100%;
    max-width: 860px;
    margin: 40px 0;
}

    /* ensure vehicle damage image is the correct width on all devices */
    #vehicle-damage img {
        width: 100%;
    }

    /* default positioning and sizing for vehicle damage selection cells */
    #vehicle-damage #damage-selections .damage-cell {
        position: absolute;
        top: 0;
        left: 0;
        width: 33.33333333%;
        height: 33.33333333%;
    }

        /* the cells across the middle should be positioned across the middle */
        #vehicle-damage #damage-selections .damage-cell.check-4,
        #vehicle-damage #damage-selections .damage-cell.check-5,
        #vehicle-damage #damage-selections .damage-cell.check-6 {
            top: 33.33333333%;
        }

        /* the cells across the bottom should be positioned across the bottom */
        #vehicle-damage #damage-selections .damage-cell.check-7,
        #vehicle-damage #damage-selections .damage-cell.check-8,
        #vehicle-damage #damage-selections .damage-cell.check-9 {
            top: 66.66666666%;
        }

        /* the cells down the middle should be positioned down the middle */
        #vehicle-damage #damage-selections .damage-cell.check-2,
        #vehicle-damage #damage-selections .damage-cell.check-5,
        #vehicle-damage #damage-selections .damage-cell.check-8 {
            left: 33.33333333%;
        }

        /* the cells to the right should be positioned to the right */
        #vehicle-damage #damage-selections .damage-cell.check-3,
        #vehicle-damage #damage-selections .damage-cell.check-6,
        #vehicle-damage #damage-selections .damage-cell.check-9 {
            left: 66.66666666%;
        }

        /* default positioning for check boxes in vehicle damage cells */
        #vehicle-damage #damage-selections .damage-cell input[type=checkbox],
        #vehicle-damage #damage-selections .damage-cell label {
            position: absolute;
            top: 0;
            left: 0;
            margin: 0;
        }

        /* ensure vehicle damage cell labels fill the cell so that when they are clicked, the check-box associated with them is checked */
        #vehicle-damage #damage-selections .damage-cell label {
            width: 100%;
            height: 100%;
        }

    /* override default check box replacement positioning for vehicle damage cells */
    #vehicle-damage #damage-selections .check-box label:before {
        top: 0;
        left: 0;
        z-index: 100;
    }

    /* the check boxes in the cells across the middle should be positioned across the middle */
    #vehicle-damage #damage-selections .damage-cell.check-4 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-4 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-5 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-5 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-6 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-6 label:before {
        top: calc(50% - 14px);
    }

    /* the check boxes in the cells across the bottom should be positioned across the bottom */
    #vehicle-damage #damage-selections .damage-cell.check-7 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-7 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-8 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-8 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-9 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-9 label:before {
        top: calc(100% - 27px);
    }

    /* the check boxes in the cells down the middle should be positioned down the middle */
    #vehicle-damage #damage-selections .damage-cell.check-2 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-2 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-5 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-5 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-8 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-8 label:before {
        left: calc(50% - 14px);
    }

    /* the check boxes in the cells to the right should be positioned to the right */
    #vehicle-damage #damage-selections .damage-cell.check-3 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-3 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-6 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-6 label:before,
    #vehicle-damage #damage-selections .damage-cell.check-9 input[type=checkbox], #vehicle-damage #damage-selections .damage-cell.check-9 label:before {
        left: calc(100% - 27px);
    }

    /* apply a red overlay to a vehicle damage cell when the check box in that cell is checked */
    #vehicle-damage #damage-selections .damage-cell input[type=checkbox].ng-not-empty + label:after,
    #claims-notification-summary #vehicle-damage #damage-selections .damage-cell.show-damage:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(204, 0, 51, 0.5);
    }

/* make add/cancel buttons for third party driver and witness be 100% wide on mobile devices */
#claims-notification .third-party-driver .form-group.actions button, #claims-notification .witness .form-group.actions button {
    width: 100%;
}

@media (min-width: 768px) {
    /* reset width of add/cancel buttons for third party drivers and witnesses on non-mobile devices */
    #claims-notification .third-party-driver .form-group.actions button, #claims-notification .witness .form-group.actions button {
        width: auto;
    }
}

/* override padding on h3 in claim notification summary */
#claims-notification-summary h3 {
    padding: 30px 0 !important;
}

/* sizing and positioning for tables in claim notification summary */
#claims-notification-summary table {
    width: 100%;
    margin-bottom: 30px;
}

    /* reduce default font size for tables in claim notification summary */
    #claims-notification-summary table th, #claims-notification-summary table td {
        font-size: 12px !important;
    }

    /* create white space around headers in tables in claim notification summary */
    #claims-notification-summary table tr th {
        padding: 5px 15px 5px 0;
        vertical-align: top;
        width: 50%;
    }

    /* align values to the right in tables in claim notification summary */
    #claims-notification-summary table tr td {
        padding: 5px 0;
        text-align: right;
        vertical-align: top;
    }

/* override default positioning of radio buttons in callback options in claim notification summary */
#claims-notification-summary #callback-options input[type=radio] {
    top: 14px;
    left: 8px;
}

/* make table headers and values full width in callback options in claim notification summary on mobile devices */
#claims-notification-summary #callback-options th, #claims-notification-summary #callback-options td {
    position: relative;
    display: block;
    width: 100%;
    vertical-align: middle;
}

@media (min-width: 768px) {
    /* restore default font size in tables in claim notification summary */
    #claims-notification-summary table th, #claims-notification-summary table td {
        font-size: 16px !important;
    }

    /* restore default display for table headers and values in callback options in claim notification summary on non-mobile devices */
    #claims-notification-summary #callback-options th, #claims-notification-summary #callback-options td {
        display: table-cell;
        width: auto;
    }
}

@media (min-width: 992px) {
    /* create additional white space around claims notification summary on non-mobile devices */
    #claims-notification-summary {
        margin: 0 30px;
    }
}

@media (min-width: 1024px) {
    /* increase sizes on journey step list items on non-mobile devices */
    #claims-journey-steps ul li {
        padding: 28px 15px;
        font-size: 14px;
    }

        /* show journey step names on non-mobile devices */
        #claims-journey-steps ul li p {
            display: block;
            padding-bottom: 0;
        }
}


/* --- CLAIMS - PAINT AND BODY --- */

/* default font styling for paint and body heading */
#paint-and-body-locator h3 {
    font-family: "Audi Type Bold", sans-serif;
    font-size: 16px;
    line-height: 20px;
}

/* borrowed from VW. These defaults are required (map height) for Google Maps, 
   as it injects a div that's absolutely positioned, and therefore takes the size of the parent before 'disconnecting' from the DOM flow.  
   Without it, the map will show as a height of 0px! */
#paint-and-body-locator #map_canvas {
    height: 420px; /* I've added 20 pixels over Clarity's design, so the 5 x nearest results align on screen better. */
    width: 100%;
    border: 1px solid #8b8e96;
}

/* default positioning for the results list of paint and body centres */
#paint-and-body-locator ol.nearest-marker-list {
    list-style: none; /* remove the number 'bullet', as we want to style the number. See li:before */
    margin-bottom: 30px;
    padding-left: 0px;
}

    /* default positioning and numbering style for results list items */
    #paint-and-body-locator ol.nearest-marker-list li {
        counter-increment: item;
        margin-bottom: 30px;
        margin-bottom: 10px;
        font-size: 14px;
        line-height: 18px;
    }

        /* re-introduce the numbers in the results list, but with custom styling */
        #paint-and-body-locator ol.nearest-marker-list li:before {
            content: counter(item); /* introduce the item number before the main content. */
            margin-right: 10px;
            font-weight: bold;
            color: #bb0a30;
        }

        /* default styling for results list links */
        #paint-and-body-locator ol.nearest-marker-list li a {
            color: #33414e;
            text-decoration: underline;
        }

@media (min-width: 768px) {
    /* increase font size and spacing for paint and body heading on non-mobile devices */
    #paint-and-body-locator h3 {
        font-size: 20px;
        line-height: 24px;
    }

    /* increase font size for results list items on non-mobile devices */
    #paint-and-body-locator ol.nearest-marker-list li {
        font-size: 16px;
        line-height: 22px;
    }
}



/* --- REPAIR TRACKER ---*/


/* spacing at top and bottom of search for repair section*/
#repair-tracker .form-section {
    padding: 60px 0;
}

/* font type all h3 elements of the repair tracker section and size for mobile devices*/
#repair-tracker .form-group h3, #proclaim-results h3 {
    font-family: "Audi Type Bold", sans-serif;
    font-size: 16px;
}


@media (min-width: 768px) {
    /* font size for no mobile devices*/
    #repair-tracker .form-group h3, #proclaim-results h3 {
        font-size: 20px;
        padding-bottom: 30px;
    }

    .claim-number-container {
        margin-top: 20px !important;
    }
}

/* padding of top and bottom for form group actions. gives spacing between the button*/
#repair-tracker .form-group.actions {
    padding: 25px 0;
}

/* position of the submit button to the right*/
.search-for-claim {
    float: right;
}

/* top spacing of the result container*/
#proclaim-results {
    padding-top: 20px;
}

    /* give the table holding all the proclaim result data 100% width */
    #proclaim-results table {
        width: 100%;
    }

        /* align the test of the last value in each table row column to the right */
        #proclaim-results table td:last-child,
        #repair-progress-section table td:last-child {
            text-align: right;
        }

        /* set the font type and weight for all text in the table. And font size for mobiel devices*/
        #proclaim-results table td {
            padding-bottom: 14px;
            font-size: 14px;
            font-family: "Audi Type Bold", sans-serif;
            font-weight: 400;
        }


@media (min-width: 768px) {
    /* for non mobile devices we need extra spacing at the top, to seperate the section out */
    #proclaim-results {
        padding-top: 80px;
    }

        /*set the font size for non mobile*/
        #proclaim-results table td {
            font-size: 16px;
        }
}

/* The spacing between the headers of each table and the actual proclaim table of data.*/
#proclaim-results > div > h3 {
    margin-bottom: 15px;
}

    /* For mobile we have a diving line between the header and the actual proclaim tables of data*/
    #proclaim-results > div > h3:after {
        background-color: #33414e;
        top: 40px;
        content: '';
        height: 1px;
        left: 50%;
        margin-left: -60px;
        position: absolute;
        width: 120px;
    }

/* give the mapping containger a border and define height and width*/
#proclaim-results .mapping {
    border: 1px solid #ccc;
    height: 210px;
    width: 100%
}

/* postion the mapping container for mobile */
#proclaim-results .map-blk {
    margin-top: 20px;
}

@media (min-width: 768px) {
    /* non mobile we dont have a diving line between the header and table so we remove it*/
    #proclaim-results > div > h3:after {
        background-color: none;
        height: 0;
    }

    /* non mobile we dont need any extra margin for the map */
    #proclaim-results .map-blk {
        margin-top: 0;
    }
}

#repair-progress-section {
    margin-bottom: 15px;
    padding-bottom: 0 !important;
    overflow: hidden;
}

/* fixed height off both repair section*/
.repair-progress {
    height: 438px;
}

/* positioning of the repair status area to left for mobile. Thi is so it stacks on top of repairs progress*/
.repair-status {
    float: left;
    width: 100%;
    height: 498px;
    margin-bottom: 0px;
}

/* repairs progress positioning to left so that it stacks for mobile*/
.repair-progress {
    float: none;
    clear: both;
    height: auto;
    width: 100%;
    background-color: #e0e6e8;
    margin-bottom: 0px;
}

@media (min-width: 992px) {
    /* for none mobile,  repair status and repair progress we have them side be side so give them a percentage width and float*/
    .repair-status {
        float: left;
        width: 70%;
        margin-bottom: 0px;
    }

    /* position repair progress to the right for non mobile. And give it a fixed hieght so cannot grow */
    .repair-progress {
        float: right;
        clear: none;
        width: 30%;
        height: 498px
    }
}

/* styling of the repair progress header*/
.repair-progress-title {
    background-color: #c5cfd3;
    padding-top: 18px;
    padding-left: 18px;
}

/* the repair progress table postiong below its header*/
.repair-progress .table-content {
    padding: 30px;
}

/* give the*/
.repair-progress table {
    width: 100%;
}

    /* reapir progress table column styling and mobile font size*/
    .repair-progress table td {
        border-bottom: 1px solid #8b8e96;
        font-size: 14px;
        font-family: "Audi Type Bold", sans-serif;
        padding-top: 15px;
        padding-bottom: 15px;
        text-decoration: none;
        vertical-align: top;
    }

/* ensure labels don't touch dates in repair progress table */
.repair-progress table tr td:nth-child(1) {
    padding-right: 5px;    
}

/* styling of the vehicle list. Remove all default padding and margin*/
.repair-status ul {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style-type: none;
}

    /* default styling of the vehicle list and mobile font size and padding*/
    .repair-status ul li {
        height: 68px;
        background-color: #657074;
        border-left: 1px solid #ffffff;
        color: #ffffff;
        float: left;
        font-size: 12px;
        font-family: "Audi Type Bold", sans-serif;
        padding: 16px 4px;
        position: relative;
        width: 20%;
        text-align: center;
        z-index: 3;
        line-height: 14px;
    }

/* default styling of each li element setting background color and postioning*/
.repair-status ul li span {
    background-color: #bb0a30;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    z-index: -1
}

/* remove any border of the first item in the vehicle list */
.repair-status ul li:first-child {
    border-left: none
}

/* if a repair status task is completed then we highlight it in red as completed*/
.repair-status ul li.completed-task {
    color: #fff;
    background-color: #bb0a30;
}

/* positoing of the vehicle background image class*/
#repair-image {
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    height: calc(100% - 68px);
}

@media (min-width: 768px) {
    /* non mobile for size for repair progress table*/
    .repair-progress table td {
        font-size: 16px;
    }

    /* non mobile styling and  non mobile  fontsize*/
    .repair-status ul li {
        font-size: 16px;
        line-height: 18px;
        padding: 16px 18px;
        height: 58px;
    }

    /* non mobile the vehicle background image doesnt have a fixed hieght */
    #repair-image {
        height: calc(100% - 58px);
    }
}

@media (min-width: 992px) {
    /* reduce the repair progress table padding on tablet devices */
    .repair-progress .table-content {
        padding: 20px;
    }
}

@media (min-width: 1200px) {
    /* reset the repair progress table padding on non-mobile devices */
    .repair-progress .table-content {
        padding: 30px;
    }
}

/* The overlay image. So we can show progress of a repair. 
    We overlay a coloured image. So that correct stage is highlighted. We hide and overflow so it keeps within its bounds*/
#overlay-image {
    height: 100%;
    overflow: hidden !important;
}

/* The styling of each seperator line between each repair status*/
.seperatorLine {
    position: absolute;
    height: 100%;
    width: 1px;
    background-color: #fff;
    z-index: 9;
}

    /* the position of each seperator line*/
    .seperatorLine.one {
        left: 20%;
    }

    .seperatorLine.two {
        left: 40%;
    }

    .seperatorLine.three {
        left: 60%;
    }

    .seperatorLine.four {
        left: 80%;
    }

    .seperatorLine.five {
        left: 100%;
    }

#car-colouriser {
    position: relative;
    height: 100%;
    width: 938px;
    top: 0px;
    left: 0px;
    background: url('/Content/images/vehicle-img2.jpg') no-repeat;
    background-position: center center;
    background-size: cover;
}



/* --- SITE MAP --- */
/* decrease default list padding on site map */
ul #site-map {
    padding-left: 15px;
}
    /* add white space to all top-level site map items */
    ul#site-map li {
        padding-bottom: 10px;
    }
    /* add white space to all sub-item lists in the site map and style with the correct bullet */
    ul#site-map ul {
        padding-top: 10px;
        list-style: disc;
    }

/* --- JQuery UI selectmenu overrides  for Audi --- */
.ui-select-menu, .ui-selectmenu-button {
    color: #808080;
}

.ui-selectmenu-button {
    background-color: #e5e5e5;
    outline: none; /* remove outline when focussed */
    width: 100%; /* make the drop-down take as much space as it is offered by default. */
    border-radius:0px; /* make square corners.  This is more 'Audi'. */
}

    .ui-selectmenu-button span.ui-selectmenu-text {
        padding: 0px 15px;
        line-height: 45px;
        height: auto;
    }

.ui-selectmenu-menu {
    z-index: 10002;
}
    /* When too many options, we should restrict the height to 250px, and JQuery-UI styles allow overflow to show as a scroll-bar. */
    .ui-selectmenu-menu-with-scrollbar {
        max-height: 250px;
    }

    .ui-selectmenu-menu .ui-menu {
        background-color: #e5e5e5;
    }

.ui-menu .ui-menu-item {
    padding: 0px;
}

.ui-menu-item {
    padding: 3px 0px 0px 0px;
}

.ui-menu-item-wrapper {
    padding: 5px 15px;
    color: #808080;
}

    .ui-menu-item-wrapper.ui-state-active {
        background-color: #bb0a30;
        color: #e5e5e5;
    }

.ui-selectmenu-button span.ui-icon {
    height: 35px;
    margin: 0;
    right: 0;
    text-align: center;
    text-indent: inherit;
    top: 0;
    width: 46px
}

    .ui-selectmenu-button span.ui-icon:after {
        color: #000;
        background: url(/Content/images/dropdown-arrow.png) no-repeat;
        content: "";
        left: 50%;
        height: 9px;
        position: absolute;
        width: 13px;
        top: 50%
    }


/* Video styling */
.embedded-video-wrapper {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%; /*Padding is to maintain aspect ratio see here: https://blog.theodo.fr/2018/01/responsive-iframes-css-trick/*/
    margin-bottom: 15px;
}

    .embedded-video-wrapper iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

@media (min-width:1024px) {
    .embedded-video-wrapper {
        width: 670px;
        height: 377px;
        padding-bottom: 0;
        margin: 0 auto;
    }
}

.carousel-caption-title-no-icon {
    margin-left: 0px !important;
}

.showContent {
   display: block;
}

.hideContent {
   display: none;
}

.emailstep2 {
    max-width: 91.5%;
    margin-left: 15px;
    margin-right: 15px;
}

.email-opt-out-text {
    font-size: 18px;
}

.loading-state {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loading {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 20px solid #33414e;
    border-top-color: #bb0a30;
    animation: loading 1s linear infinite;
}

@keyframes loading {
    to {
        transform: rotate(360deg);
    }
}
