/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}

/*! HTML5 Boilerplate v6.1.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

:root{
    --bl: #282A40;
    --red: #57BFC8;
    --dgr: #4A4949;
    --lgr: #E6E6E6;
    --red: #981D12;
    --lrd: #b82c1f;

    --primary: #282A40;
    --secondary: rgb(64, 205, 250);
    --hover: rgb(33, 174, 219);
}

* {
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -o-box-sizing:border-box;
}

html {
    color: #333;
    font-size: 1em;
    line-height: 1.7;
    font-family: 'Inter', sans-serif;
}

body{
    background-color: #F4F4F4;
    background-color: #EEEFF6;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

section {
    width: 100%;
}

#mask {
    background-color: rgba(41, 47, 51, 0.9);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 120%;
    z-index: 40;
    display: none;
}

.content {
    margin: 0 auto;
    max-width: 1200px;
    width: 88%;
}

img{
    max-width: 100%;
}

.no-mb{
    margin-bottom: 0!important;
}

.no-mt{
    margin-top: 0!important;
}

.tc{
    text-align: center;
}

.flex{
    display: flex;
    display: -moz-flex;
    display: -webkit-flex;
    display: -o-flex;
    display: -ms-flex;
}

.jsb{
    justify-content: space-between;
    -moz-justify-content: space-between;
    -webkit-justify-content: space-between;
    -o-justify-content: space-between;
    -ms-justify-content: space-between;
}

.jc{
    justify-content: center;
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -o-justify-content: center;
    -ms-justify-content: center;
}

.ac{
    align-items: center;
    -moz-align-items: center;
    -webkit-align-items: center;
    -o-align-items: center;
    -ms-align-items: center;
}

.afe{
    align-items: flex-end;
    -moz-align-items: flex-end;
    -webkit-align-items: flex-end;
    -o-align-items: flex-end;
    -ms-align-items: flex-end;
}

.afs{
    align-items: start;
    -moz-align-items: start;
    -webkit-align-items: start;
    -o-align-items: start;
    -ms-align-items: start;
}

.jfe{
    justify-content: flex-end;
    -moz-justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -o-justify-content: flex-end;
    -ms-justify-content: flex-end;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

h1 {
    font-size: 1.6em;
    margin-top: 0;
}

h2 {
    font-size: 1.3em;
    margin-top: 0;
}

    h2 span{
        font-weight: 400;
    }

h3 {
    color: rgba(76, 78, 100, 0.87);
    font-weight: 500;
    letter-spacing: 0.15px;
    border-bottom: dotted 1px rgba(76, 78, 100, 0.87);
    margin: 2em 0;
    padding-bottom: 5px;
}

    h3 span{
        margin-left: 20px;
        font-size: .9em;
    }

h3.subtitle{
    padding-bottom: 8px;
}

    h3.subtitle .btn{
        font-size: .7em;
        padding: 9px 13px;
    }

    h3.subtitle span{
        margin-left: 0;
    }

h4 {

}

h5 {

}

h6 {

}

p {

}

p a {

}

h2 a {

}

ul {

}

ul li {

}

ul li a {

}

/* ==========================================================================
   Flex Box Grid System
   ========================================================================== */

.grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}

.grid-cell {
    -webkit-box-flex: 1 1 auto;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
}

.grid--half>.grid-cell {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    flex: 0 0 50%;
}
.grid--third>.grid-cell {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.3333%;
    flex: 0 0 33.3333%;
}
.grid--quarter>.grid-cell {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
    flex: 0 0 25%;
}

.grid--gutters {
    margin: -1em 0 1em -1em;
}

    .grid--gutters>.grid-cell {
        padding: 1em 0 0 1em;
    }

.double--gutters {
    margin: -2em 0 2em -2em;
}

    .double--gutters>.grid-cell {
        padding: 2em 0 0 2em;
    }

.gs-half {
    width: 50%!important;
}

.gs-third {
    width: 33.3333%!important;
}

.gs-third, .gs-twothirds {
    -webkit-box-flex: 0!important;
    -webkit-flex: none!important;
    flex: none!important;
}

.gs-twothirds {
    width: 66.6667%!important;
}

.gs-quarter {
    width: 25%!important;
}

.gs-quarter, .gs-threequarters {
    -webkit-box-flex: 0!important;
    -webkit-flex: none!important;
    flex: none!important;
}

.gs-threequarters {
    width: 75%!important;
}

.gs-1{
    width: 8.333333%!important;
}

.gs-1.max{
    max-width: 8.333333%!important;
}

.gs-2{
    width: 16.6666667%!important;
}

.gs-2.max{
    max-width: 16.6666667%!important;
}

.gs-3{
    width: 25%!important;
}

.gs-3.max{
    max-width: 25%!important;
}

.gs-4{
    width: 33.333333%!important;
}

.gs-4.max{
    max-width: 33.333333%!important;
}

.gs-5{
    width: 41.6666667%!important;
}

.gs-5.max{
    width: 41.6666667%!important;
}

.gs-6{
    width: 50%!important;
}

.gs-6.max{
    max-width: 50%!important;
}

.gs-7{
    width: 58.333333%!important;
}

.gs-7.max{
    max-width: 58.333333%!important;
}

.gs-8{
    width: 66.6666667%!important;
}

.gs-8.max{
    max-width: 66.6666667%!important;
}

.gs-9{
    width: 75%!important;
}

.gs-9.max{
    max-width: 75%!important;
}

.gs-10{
    width: 83.333333%!important;
}

.gs-10.max{
    max-width: 83.333333%!important;
}

.gs-11{
    width: 91.6666667%!important;
}

.gs-11.max{
    width: 91.6666667%!important;
}

.gs-12{
    width: 100%!important;
}

.gs-12.max{
    max-width: 100%!important;
}

.demo {
    background-color: rgba(0,0,0,0.2);
    text-align: center;
}

/* ==========================================================================
   Contact form standard code
   ========================================================================== */

#contact_form {
    background-color: #F9F9F9;
    padding: 1em 1.8em;
    border: 1px solid #DDD;
}

.formRow {
    display: block;
    margin: 1em 0;
}

.formRow.flex{
    display: flex;
    display: -moz-flex;
    display: -webkit-flex;
    display: -o-flex;
    display: -ms-flex;
}

.overflowVisible{
    overflow: visible;
}

.formRow > label {
    display: block;
    font-size: 0.9em;
    font-weight: 600;
    /*margin: 0 0 5px 0;
    color: #FFF;*/
}

.formRow input, .formRow select {
    display: block;
    width: 100%;
    margin: 10px 0;
    border: 1px solid #DDD;
    background-color: #fff;
    padding: 6px 10px;
    height: 45px;
    font-size: 0.95em;
    border-radius: 8px;
}

.formRow input.shortBox,
.formRow select.shortBox{
    width: 160px;
    display: inline-block;
}

.formRow input.numberBox{
    width: 100px;
    display: inline-block;
}



.formRow textarea {
    display: block;
    width: 100%;
    margin: 10px 0;
    border: 1px solid #DDD;
    padding: 6px;
    height: 214px;
    font-size: 0.9em;
    border-radius: 8px;
    line-height: 1.3;
}

.formRow div p{
    font-size: .95em;
    margin-top: 18px;
}

.formRow input[type=checkbox]{
    margin-top: 22px;
}

.hidden_fields{
    display: none;
}

/*.formRow button {
    display: block;
    background-color: #333;
    color: #FFF;
    font-weight: 600;
    font-size: 0.9em;
    text-align: center;
    border: none;
    width: 100%;
    padding: 13px 10px 15px;
    margin: 24px 0 0;
    transition: all 0.3s ease 0s;
}

    .formRow button:hover {
        background-color: #000;
    }*/

/* select2 override styles */

.select2{
    width: 100% !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #000;
  line-height: 42px;
  font-size: .95em;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {  
  border: 1px solid #ddd;
  border-radius: 8px;
  margin: 10px 0 0;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding-left: 10px;
}

.select2-container .select2-selection--single {
    height: 45px;  
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 62px;  
}

.select2-dropdown{
    border: 1px solid #ddd;
}

.select2-results__option {  
  color: #000;
  font-size: .95em;
}

.select2-container--default .select2-search--dropdown .select2-search__field {  
  font-size: .95em;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: 1px solid #ddd;
  outline: 0;
}

.select2-container .select2-search--inline .select2-search__field {
    padding: 6px 5px;
    height: 25px;
}

.select2-container--open {
    z-index: 9999999 !important;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/*=== Login page ===*/

#loginPage{
    min-height: 100vh;    
    background: var(--primary);
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

.loginContainer{
    max-width: 400px;
    margin: auto;
    width: 88%;
    background: #fff;
    border-radius: 5px;
    padding: 2em;
    text-align: center;
}

    .loginContainer img{
        display: block;
        margin: 0 auto 3em;
        max-width: 100%;
        width: 260px;
    }

    .dealerAgreement{
        max-width: none;
    }

        .dealerAgreement #loginForm p{
            text-align: left;
        }

        .dealerAgreement ul li,
        .dealerAgreement ol li{
            text-align: left;
        }

.registerContainer{
    text-align: left;
}

    .registerContainer p{
        text-align: left;
    }    

#loginForm input{
    width: 100%;
    padding: 15px 20px;
    border: solid 1px #ddd;
    border-radius: 8px;
    margin: 0 0 20px;    
    font-weight: 400;
    font-size: 1.2em;
    color: #3f3f3f;
    background: rgba(255,255,255,0.9);
}  

    #loginForm p{        
        text-align: center;        
    }
        #loginForm p a{            
            text-decoration: none;
            font-size: .85em;
            color: #555;
        }

    #loginForm button{
        margin-left: 0;
        padding: 14px 30px;
    }

#loginForm select{
    width: 100%;
    padding: 15px 20px;
    border: solid 1px #ddd;
    border-radius: 8px;
    margin: 0 0 20px;    
    font-weight: 400;    
    color: #3f3f3f;
    background: rgba(255,255,255,0.9);
}

#loginForm .otp_holder input{
    margin: 5px;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    padding: 15px 10px;
}

.loginError p{ 
    text-align: center;    
    font-weight: bold;
    color: #941519;
}

.password_box {
    position: relative;
}

.password_box input {
    padding-right: 64px;
    z-index: 4;
}

.password_box input + span {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    padding-top: 15px;
    font-size: 1.1em;
    z-index: 5;
    height: 100%;
    text-align: center;
    cursor: pointer;
}

.registerForm label{    
    display: block;
    font-size: .9em;
    font-weight: bold;
    margin: 0 0 3px 5px;
}

.registerForm .shortBox{
    width: 150px !important;
}

    .registerForm .radio-holder label{
        display: inline-block;
        margin-right: 20px;
        cursor: pointer;
        font-size: 1em;        
        font-weight: normal;
    }

    .registerForm .radio-holder label input{
        width: auto !important;                
    }

.agreement_label{
    cursor: pointer;
    font-size: 1.2em;    
}

    #loginForm .agreement_accept{
        width: auto;
    }

.remodal-content .password_box input + span{
    padding-top: 9px;
}

.remodal-content p a{
    color: #0055cc;
    text-decoration: none;
}

.item_table td{
    text-align: left;
}

.item_table .select2-container--default .select2-selection--single{
    margin: 2px 0 0!important;
}

.item_table .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 48px;
}

.agreement_container{
    width: 100%; 
    height: 500px;   
    border: solid 1px #ddd;
    border-radius: 8px;
    padding: 20px;
    overflow-x: hidden;
    overflow-y: scroll;
    font-size: .8em;    
}

    .agreement_container table td{
        vertical-align: top;
        padding: 3px 0;        
    }

/*=== Header ===*/
header{
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
    background: #1a1c29;        
    -webkit-box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
    -moz-box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
    box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
}

    header .logo-holder{
        width: 260px; 
        padding: 15px;   
    } 

        header .logo-holder img{
            max-width: 85px;
        }

    header .search-holder{
        width: calc(100% - 260px);
        padding: 15px;
    }


.disabled_link{
    pointer-events: none;
    color: #ccc !important;
}

.popup-img{
    max-width: 300px;
    margin-top: 1em;
}

.document-tile{

}

    .document-tile a{
        display: block;    
    }

    .document-tile svg{
        font-size: 3em;
    }

/*=== Footer ===*/
footer{
    width: 100%;
    padding-left: calc(279px + 2em);
    padding-right: 2em;
    padding-bottom: 2em;
    padding-bottom: 17px;
    border-top: 1px solid #CECFE0;
    padding-top: 15px;
}

    footer ul{
        list-style: none;
        padding: 0;
        margin: 0;
        text-align: right;
    }

        footer li{
            display: inline-block;
            margin-left: 25px;
            font-size: 0.8em;
            margin-left: 50px;
            font-size: 11px;
            color: #9393AE;
        }

        footer li:first-of-type{
            margin-left: 0;
        }

            footer li a{
                color: #282A40;
                color: #9393AE;
                text-decoration: none;
            }

/*=== Nav ===*/
nav{
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 260px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    padding-top: 85px;
    background-color: var(--primary);
    overflow: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

    nav > div > img{
        display: block;
        margin: 20px auto 35px;
        max-width: 45%;
    }

    nav ul{
        list-style: none;
        padding: 20px 0 0;
        /*border-top: 1px solid #E3E3E3;
        border-top: 0.5px solid #E3E3E3;*/
    }

        nav li{
            margin-bottom: 5px;
        }

            nav li a{
                display: block;
                border-radius: 8px;
                padding: 10px 20px;
                text-decoration: none;
                font-size: 1em;
                color: rgba(234, 234, 255, 0.87);
                position: relative;
            }

            nav li a:hover{
                background-color: rgba(234, 234, 255, 0.08);
            }

            nav li a.active{
                background-color: var(--secondary);
            }

                nav li a span{
                    font-size: 0.9em;
                    width: 30px;
                    display: inline-block;
                }

                .nav-more{
                    width: 20px;
                    position: absolute;
                    top: 0;
                    right: 10px;
                    bottom: 0;
                    margin: auto;
                    cursor: pointer;
                    transform: rotate(0deg);
                    transition: all ease-in-out 0.3s;
                    -moz-transition: all ease-in-out 0.3s;
                    -webkit-transition: all ease-in-out 0.3s;
                    -o-transition: all ease-in-out 0.3s;
                    -ms-transition: all ease-in-out 0.3s;
                }

                .active-mobile .nav-more{
                    transform: rotate(180deg);
                }

            nav ul.submenu{
                padding: 0;
                border-top: 0;                
                display: none;
            }
                nav ul.submenu li{
                    margin-top: 5px;
                }

                nav ul.submenu li a{
                    padding: 7px 50px;
                    font-weight: 400;
                    font-size: .95em;
                }

                nav ul.submenu li a:before{
                    display: block;
                    content: "";
                    background-color: rgba(234, 234, 255, 0.87);
                    width: 7px;
                    height: 7px;
                    border-radius: 100%;
                    position: absolute;
                    left: 30px;
                    top: 0;
                    bottom: 0;
                    margin: auto;
                }

        .nav-avatar{
            width: 30px;
            margin-left: -5px;
            margin-right: 5px;
        }

/*===== Tables =====*/
.cms_table{
    width: 100% !important;
    border-collapse: collapse;
    font-size: 1em;
}

    .cms_table thead{
        text-align: left;
        background-color: rgb(245, 245, 247);
        border-bottom: 1px solid rgb(233, 233, 236);
        font-size: .8em;
        text-transform: uppercase;  
        cursor: pointer;      
    }

    .cms_table th{
        padding: 10px 5px;
        font-weight: 400;
        color: rgba(76, 78, 100, 0.87);
    }

    .cms_table td{
        padding: 7px 5px;
        border-bottom: 1px solid rgb(233, 233, 236);
    }

    .cms_table td a{
        text-decoration: none; 
        color: #0066cc;
    }

    .cms_table tr:hover{
        background-color: rgb(245, 245, 247);
    }

    .cms_table tfoot th{
        text-align: left;
        color: #333;
        font-weight: bold;
    }

    tbody.ordered > tr{
        cursor: move;
    }

    .quote_table,
    .warranty_table{
        font-size: .9em;
    }

.dataTables_length{
    float: left;
    width: 30%;
    padding-top: 20px;
}

.dataTables_filter{
    float: right;   
    padding: 10px 0;
    margin-bottom: 20px;
}

    .left-column .dataTables_filter label{
        min-width: none;
        max-width: none;
        padding-right: 0;
    }

    .dataTables_filter input{
        border-radius: 8px;
        padding: 8px 14px;
        border: 1px solid rgb(233, 233, 236);
    }

.dataTables_wrapper .dataTables_info{
    float: left;
    width: 50%;
    padding: 35px 0 0;
    font-size: .9em;
}

.dataTables_wrapper .dataTables_paginate{
    float: right;
    width: 50%;
    padding: 35px 0 0;
    text-align: right;
    margin-bottom: 40px;
}

    .dataTables_wrapper .dataTables_paginate .paginate_button{
        margin: 0 5px;
        cursor: pointer;
        color: gray;
        padding: 0;
    }

    .dataTables_wrapper .dataTables_paginate .paginate_button:hover{
        color: gray !important;
        border: none;
        background: none;
    }

    .dataTables_wrapper .dataTables_paginate .paginate_button.current{
        background: var(--secondary);
        padding: 2px 7px;
        border-radius: 5px;
        color: #fff !important;
        border: none;
    }

    .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{
        color: #fff !important;
        border: none;
        background: var(--secondary);
    }

table.dataTable thead th{
    border-bottom: 1px solid rgb(233, 233, 236);
    padding: 5px 15px 5px 9px;
}

table.dataTable.no-footer {
  border-bottom: 1px solid rgb(233, 233, 236);
}

.delete_item svg{
    margin-left: 15px;
    color: rgba(76, 78, 100, 0.54);
} 

.delete_item2 svg{
    margin-left: 15px;
    color: rgba(76, 78, 100, 0.54);
}  

.edit_item svg{
    margin-left: 5px;
    color: rgba(76, 78, 100, 0.54);
}

.download_item svg{
    margin-right: 5px;
    color: rgba(76, 78, 100, 0.54);
}

.more_link{
    padding: 0 5px;
    position: relative;
}
    .more_link svg{
        color: rgba(76, 78, 100, 0.54);
    }

.breakdown_table{
    width: 100%;
    font-size: .8em;
    color: #555;
}

.labeltip{
    position: relative;
}

.labeltip .tip {
    min-width: 45px; 
    top: -15px;
    left: 50%;
    transform: translate(-50%, -100%);
    padding: 3px 8px;
    color: #fff;
    background-color: #333;
    font-weight: normal;
    font-size: .75em;
    text-align: center;
    border-radius: 5px;
    position: absolute;
    z-index: 99999999;
    box-sizing: border-box;
    /*box-shadow:0 1px 8px rgba(0,0,0,0.5);*/
    display: none;
    white-space: nowrap;
}

.labeltip:hover .tip {
    display: block;
}

.labeltip .tip i {
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    width: 20px;
    height: 10px;
    overflow: hidden;
}

.labeltip .tip i::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    left: 50%;
    transform: translate(-50%,-50%) rotate(45deg);
    background-color: #333;
    /*box-shadow:0 1px 8px rgba(0,0,0,0.5);*/
}

/*===== Edit form / tabs =====*/

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus{
    outline: solid 1px var(--secondary);
}

/* jQuery UI tab overrides */

.ui-widget,
.ui-widget input,
.ui-widget button,
.ui-widget select,
.ui-widget textarea{
    font-family: 'Inter', sans-serif;
}

.ui-widget-header{
    background-color: #f4f4f4;
}

.ui-widget-header .ui-state-active{
    border: 1px solid #06c;
    background: #06c;
}

.ui-tabs .ui-tabs-nav li.orange-tab{
    background: #e66017;
    border: 1px solid #e66017;
}

.ui-tabs .ui-tabs-nav li.orange-tab a{
    color: #fff;
}

.ui-widget-content a, .main-content a{
    text-decoration: none;
    color: #06c;
}

.ui-widget-content .titleBar{
    margin-bottom: 1em;
}

.main-content .formRow{
    overflow: hidden;
    margin: 0;
}

.main-content .centerRow{
    text-align: center;
    margin-top: 2em;
}

.main-content .formRow > label{
    line-height: 63px;
    max-width: 290px;
    float: left;
    width: 40%;
    text-align: right;
    padding-right: 15px;
}

    .main-content .form-twocolumn .formRow label{
        width: 25%;
    }


.main-content .formRow > div{
    float: left;
    width: 60%;
}

.main-content input[type="checkbox"]{
    width: 20px;
    border: 0;
    cursor: pointer; 
    height: 20px;   
}

.main-content input[type="radio"]{
    width: 20px;
    height: 20px;
    border: 0;
    cursor: pointer;
    display: inline-block; 
}

    .radio_holder{
        padding-top: 10px;
    }

        .radio_holder input[type="radio"]:not(:first-child){
            margin-left: 15px;
        }

        .radio_holder label{
            cursor: pointer;
            margin-right: 15px;
        }

.main-content button{
    margin-left: 0;
    padding-right: 12px 22px;
    border-radius: 8px;
    text-transform: none;
}

.main-content a.btn,
.claim-notes a.btn,
.claims-container a.btn,
.quote-tabs a.btn,
.right-column a.btn,
nav a.btn{
    background-color: var(--secondary);
    border: 0;
    color: #fff;    
    border-radius: 8px;
    padding: 12px 22px;
    text-decoration: none;        
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    transition: all ease-in-out 0.3s;
    -moz-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -ms-transition: all ease-in-out 0.3s;
}
    .main-content a.btn:hover,
    .claim-notes a.btn:hover,
    .claims-container a.btn:hover,
    .quote-tabs a.btn:hover,
    .right-column a.btn:hover,
    nav a.btn:hover{
        background-color: var(--hover);
        box-shadow: rgba(76, 78, 100, 0.56) 0px 6px 18px -8px;
    }

    .claim-notes a.btn{
        padding: 9px 18px;
        font-size: .9em;
    }

.btn_fullwidth{
    display: block;
    width: 100%;
    text-align: center;    
}

 .formRow a.btn{
    background-color: var(--secondary);
    border: 0;
    color: #fff;    
    border-radius: 8px;
    padding: 9px 16px;
    margin-left: 10px;
    text-decoration: none; 
    cursor: pointer;       
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    transition: all ease-in-out 0.3s;
    -moz-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -ms-transition: all ease-in-out 0.3s;
}
    .formRow a.btn:hover{
        background-color: var(--hover);
        box-shadow: rgba(76, 78, 100, 0.56) 0px 6px 18px -8px;
    }

    .formRow a.btn_green{
        background-color: #379137;
        padding: 12px 16px;
    }

        .formRow a.btn_green:hover{
            background-color: #46a646;
        }

    .btn_orange{
        background-color: #e66017;
        margin-right: 10px !important;
    }

        .btn_orange:hover{
            background-color: #e66017;
        }   

    .btn_red{
        background-color: #bd1509;
        margin-left: 10px !important;
    }

        .btn_red:hover{
            background-color: #bd1509;
        }

    .btn_green{
        background-color: #379137;
    }
        .btn_green:hover{
            background-color: #46a646;
        }

.titleBar {
    overflow: hidden;
    min-height: 55px;
}
    .titleBar h1, .titleBar div, .titleBar h2, .titleBar h3{
        float: left;
    }
    .titleBar aside{
        float: right;
        text-align: right;
        padding-top: 10px;
    }

    .titleBar + .cms_table{
        margin-top: 2em;
    }

.titleBar2 aside{
        text-align: right;
    }

        .titleBar2 aside p{
            margin-top: 0;
        }

.notification_panel{    
    padding: 15px 50px;  
    position: fixed;
    top: 20px;  
    right: 20px;
    z-index: 1000;
    border-radius: 8px;
}    
    .success_panel{
        background-color: rgba(222,240,216,0.95);
        color: #436c40;
    }
    .error_panel{    
        background-color: rgba(234, 180, 180, 0.95); 
        color: #a30b0b;
    }
    .notification_panel p svg{
        margin-right: 3px;
    }

.active_flag{
    font-size: .7em;
}

    .active_flag_active{
        color: #55b555; 
    }

    .tag-orange{
        color: #f79448;
    }

    .active_flag_inactive{
        color: #fa4141;
    }

.notice_box{
    font-size: .9em;    
    border-radius: 8px;
    padding: 7px 18px;
    text-align: left;    
}

    .notice_red{
        border: solid 1px #981D12;
        color: #981D12;
    }

    .notice_orange{
        border: solid 1px #e66017;
        color: #e66017;
    }

    .notice_green{
        border: solid 1px #55b555;
        color: #55b555;
    }

    .notice_box svg{
        font-size: 1.2em;
        margin-right: 10px;
    }

.tag{
    display: inline-block;    
    color: #fff;
    text-transform: uppercase;
    font-size: .65em;
    border-radius: 5px;
    padding: 3px 5px;
    min-width: 60px;
    text-align: center;
}

    .tag_green{
        background-color: #55b555; 
    }

    .tag_orange{
        background-color: #f79448;
    }

    .tag_red{
        background-color: #fa4141;
    }    

    .tag_grey{
        background-color: #999;
    } 

    .tag_large{
        font-size: .8em;
    }

.text_green{
    color: #55b555; 
}

.text_orange{
    color: #f79448;
}

.text_red{
    color: #fa4141;
}

/*===== Popup styling =====*/

.remodal-content .formRow{
    overflow: hidden;
    margin: 0;
}

.remodal-content .centerRow{
    text-align: center;
    margin-top: 1em;
}

.remodal-content .formRow label:not(.checkbox_label){
    line-height: 63px;    
    float: left;
    width: 30%;
    text-align: right;
    padding-right: 15px;
}

.remodal-content .formRow > div{
    float: left;
    width: 60%;
    text-align: left;
}

.remodal-content input[type="checkbox"]{
    width: 20px;
    height: 20px;
    border: 0;
    cursor: pointer; 
    display: inline-block;   
}

.remodal-content button{
    margin-left: 0;
    padding-right: 12px 22px;
    border-radius: 8px;
    text-transform: none;
}

.remodal-content .cms_table{
    margin: 2em 0;
}

    .remodal-content .cms_table td{
        border-top: 1px solid rgb(233, 233, 236);
    }

.remodal-content .formRow > div p.notice_box{
    display: inline-block;
}

.checkbox_list{    
    list-style-type: none;  
    margin-top: 1em;    
}

.main-content .formRow .checkbox_list label{
    float: none;
    width: 200px;
    text-align: left;
    cursor: pointer;
    line-height: 1;
    font-weight: normal;
}

.main-content .formRow .checkbox_list input{
    display: inline-block;
    margin-top: 10px;
    margin-right: 5px;
}

.remodal-content .checkbox_list label{
    float: none;
    display: block;
    width: 200px;
    text-align: left;
    cursor: pointer;
    line-height: 1;
    font-weight: normal;
}

.remodal-content .checkbox_list input{
    display: inline-block;
    margin-top: 10px;
    margin-right: 5px;
}

/*.checkbox_list{
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    width: 60%;
}*/

    /*.checkbox_list li{
        display: inline-block;
        width: 100%;
        text-align: left;        
    }

    .checkbox_list label{
        cursor: pointer;
        line-height: 44px;
    }

    .checkbox_list input[type="checkbox"] {
        float: left;        
        margin: 0 10px 0 0;   
        width: 20px;
        height: 45px;
    }

    .checkbox_list p{
        float: left;
        line-height: 13px;
        margin: 0;
    }*/

.dashboard-container{
    width: 100%;
    font-size: .9em;
}

.dashboard-box{
    width: 100%;    
    background-color: #fff;
    border-radius: 10px;    
    overflow: hidden;    
    padding: 30px;
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    margin-bottom: 17px;
}

    .dashboard-box > h2 {
        color: rgba(76, 78, 100, 0.87);
        font-weight: 500;
    }

        .reduced-line-height{
            line-height: 1;
        }

    .dashboard-box h1{
        font-size: 3em;
        margin: 0;
        font-weight: 500;
    }

circle-progress::part(base) {
    width: 120px; 
    height: auto;
}

circle-progress::part(circle) {    
    stroke-width: 8px;
    stroke: #eee;
}

circle-progress::part(value) {    
    stroke-width: 8px;
    stroke: hsl(195, 95%, 62%);    
}

.terms_container{
    width: 100%;
    height: 300px;
    border: solid 1px #ddd;
    border-radius: 8px;
    padding: 20px;
    overflow-x: hidden;
    overflow-y: scroll;
    font-size: .8em;
}

    .terms_container ol li{
        margin-bottom: 10px;
    }

.dealer_agreement{
    width: 100%;
    background-color: #fff;
    border-radius: 10px;    
    padding: 30px;
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
}

    .dealer_agreement a{
        text-decoration: none;
    }

    .dealer_agreement img{        
        max-width: 100px;
        margin: 0;
    }

    .dealer_agreement p{
        margin-left: 15px;        
    }
   

.mileage_confirm .radio-container input[type="checkbox"]{
    width: 30px;
}
.mileage_confirm p{
    margin-left: 10px;
    line-height: 1.1;
}

/*===== Page Content =====*/
.page-content{
    padding-left: calc(260px + 2em);
    padding-top: calc(80px + 2em);
    padding-right: 2em;
    padding-bottom: 2em;
}

    .left-column{
        width: 100%;
    }

        .step-bar{
            position: relative;
            -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
        }

            .step-bar p{
                margin: 0;
            }

                .step-bar p a{
                    flex: 1 1 0;
                    text-align: center;
                    background-color: var(--dgr);
                    color: #fff;
                    text-decoration: none;
                    height: 60px;
                    font-size: .9em;
                    line-height: 1.4;
                    position: relative;
                    padding-left: 20px;
                    display: flex;
                    display: -moz-flex;
                    display: -webkit-flex;
                    display: -o-flex;
                    display: -ms-flex;
                    justify-content: center;
                    -moz-justify-content: center;
                    -webkit-justify-content: center;
                    -o-justify-content: center;
                    -ms-justify-content: center;
                    align-items: center;
                    -moz-align-items: center;
                    -webkit-align-items: center;
                    -o-align-items: center;
                    -ms-align-items: center;
                }

                .step-bar p a:after{
                    display: block;
                    content: "";
                    width: 0;
                    height: 0;
                    border-top: 30px solid transparent;
                    border-bottom: 30px solid transparent;
                    border-left: 20px solid var(--dgr);
                    position: absolute;
                    right: -20px;
                    top: 0;
                    bottom: 0;
                    margin: auto;
                }

                .step-bar p a:last-of-type:after{
                    display: none;
                }

                .step-bar p a.active{
                    background-color: var(--secondary);
                }

                .step-bar p a.active:after{
                    border-left-color: var(--secondary);
                }

                .step-bar p a:nth-of-type(1){
                    z-index: 6;
                    border-top-left-radius: 8px;
                }

                .step-bar p a:nth-of-type(2){
                    z-index: 5;
                }

                .step-bar p a:nth-of-type(3){
                    z-index: 4;
                }

                .step-bar p a:nth-of-type(4){
                    z-index: 3;
                }

                .step-bar p a:nth-of-type(5){
                    z-index: 2;
                }

                .step-bar p a:nth-of-type(6){
                    z-index: 1;                    
                }

                .step-bar p a:nth-of-type(7){
                    z-index: 0;
                    border-top-right-radius: 8px;
                }

                .issue-steps p a:nth-of-type(3){
                    border-top-right-radius: 8px;
                }

        /* Alternative step bar requested by Kieran */

       .stepper-wrapper {
          margin-top: auto;
          display: flex;
          justify-content: space-between;          
        }
        .stepper-item {
          position: relative;
          display: flex;
          flex-direction: column;
          align-items: center;
          flex: 1;

          @media (max-width: 768px) {
            font-size: 12px;
          }
        }

        .stepper-item a{
            text-decoration: none;
        }

        .stepper-item::before {
          position: absolute;
          content: "";
          border-bottom: 2px solid rgba(234, 234, 255, 0.5);
          width: 100%;
          top: 15px;
          left: -50%;
          z-index: 2;
        }

        .stepper-item::after {
          position: absolute;
          content: "";
          border-bottom: 2px solid rgba(234, 234, 255, 0.5);
          width: 100%;
          top: 15px;
          left: 50%;
          z-index: 2;
        }

        .stepper-item .step-counter {
          position: relative;
          z-index: 5;
          display: flex;
          justify-content: center;
          align-items: center;
          width: 30px;
          height: 30px;
          border: solid 2px rgba(234, 234, 255, 0.5);
          border-radius: 50%;
          background: #1a1c29;
          color: rgba(234, 234, 255, 0.5);
          margin-bottom: -1px;
        }

        .stepper-item.active {
          /*font-weight: bold;*/
        }

        .stepper-item.completed .step-counter,
        .stepper-item.active .step-counter {          
          color: var(--secondary);
          border: solid 2px var(--secondary);
        }

        .stepper-item.active .step-name a{
            color: var(--secondary);
        }

        .stepper-item.completed .step-name a,
        .stepper-item .step-name a{
            color: rgba(234, 234, 255, 0.5);
            font-size: .85em;
        }

        .stepper-item.completed::after {
          position: absolute;
          content: "";
          border-bottom: 2px solid var(--secondary);
          width: 100%;
          top: 20px;
          left: 50%;
          z-index: 3;
        }        

        .stepper-item:first-child::before {
          content: none;
        }
        .stepper-item:last-child::after {
          content: none;
        }

        /* End alternative step bar */

        .car-info{}

            .car{
                max-width: 95%;
            }

            .car-info h3{
                margin-top: 0;
                font-size: 1.4em;
                font-weight: 500;
                margin-bottom: 0;
            }

            .car-info h3 + p{
                font-weight: 300;
                margin: 10px 0;
                font-size: 0.9em;
            }

            .confirm-btns{
                margin: 20px 0 0 0;
            }

                .confirm-btns a{
                    display: inline-block;
                    width: 72px;
                    text-align: center;
                    height: 35px;
                    border-radius: 4px;
                    line-height: 35px;
                    color: #fff;
                    text-transform: uppercase;
                    text-decoration: none;
                    transition: all ease-in-out 0.3s;
                    -moz-transition: all ease-in-out 0.3s;
                    -webkit-transition: all ease-in-out 0.3s;
                    -o-transition: all ease-in-out 0.3s;
                    -ms-transition: all ease-in-out 0.3s;
                }

                .yes-btn{
                    background: #4C9169;
                    margin-right: 20px;
                }

                .yes-btn:hover{
                    background: #3D7655;
                }

                .no-btn{
                    background: #9B0C0C;
                }

                .no-btn:hover{
                    background: #8B2020;
                }

            .car-info-details{
                font-size: 0.9em;
                font-weight: 300;
            }

                .car-reg{
                    position: relative;
                    display: inline-block!important;
                    width: 100%;
                    max-width: 210px;
                    background: var(--lgr);
                    margin: 0;
                    height: 39px;
                    line-height: 39px;
                    padding-left: 35px;
                    text-align: center;
                    font-size: 22px;
                    border-radius: 10px;
                    font-weight: 600;
                }

                    .car-reg img{
                        background: var(--secondary);
                        height: 39px;
                        width: 35px;
                        padding: 7px;
                        border-radius: 10px 0 0 10px;
                        position: absolute;
                        top: 0;
                        left: 0;
                        bottom: 0;
                        margin: auto;
                    }

                .car-info p{
                    display: flex;
                    display: -moz-flex;
                    display: -webkit-flex;
                    display: -o-flex;
                    display: -ms-flex;
                }

                    .car-info p span{
                        min-width: 135px;
                        display: inline-block;
                        font-weight: bold;
                    }

                    .car-info p strong{
                        font-weight: 500;
                    }

                    .wb{
                        word-break: break-all;
                    }

                .claim-info{
                    padding: 10px 30px !important;
                }

                    .claim-info .car-info-details p{
                        margin: 7px 0;
                    }

                    .claim-info .car-info-details p span{
                        font-weight: bold;
                    }

                    .claim-info h6{
                        font-size: 1em;
                        margin: 7px 0 0;
                        border-bottom: dotted 1px;
                    }

                    .claim-info select{
                        width: 100%;
                        border-radius: 5px;
                        border: 1px solid #DDD;
                        padding: 4px;
                    }

        .details_confirmed, .details_unconfirmed{
            display: none;
        }

        .lc-box{
            background-color: #fff;
            border-radius: 8px;
            margin-bottom: 2em;
            /*overflow: hidden;*/
            padding: 30px;
            -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
        }

            .cover-options{
                background-color: transparent;
                -webkit-box-shadow: none;
                -moz-box-shadow: none;
                box-shadow: none;
                padding: 0;
            }

                .cover-options .lc-box{
                    padding: 20px 30px;
                    overflow: visible;
                    position: relative;
                }

                .cover-options .lc-box .box-number{
                    position: absolute;
                    top: -12px;
                    left: -12px;                    
                    background-color: #fff;
                    color: var(--primary);
                    border: solid 2px var(--primary);
                    border-radius: 50%;
                    padding: 2px 12px;
                    font-weight: bold;
                }

                .cover-options .right-box{
                    margin-top: 0;
                }

                .cover-options .lc-box h2{
                    border-bottom: none;
                    font-size: 1.6em;
                }

                .cover-options .lc-box input[type="date"]{                                                            
                    border: 1px solid #DDD;
                    background-color: #fff;
                    padding: 10px;
                    border-radius: 8px;
                }

        .lc-box:last-of-type{
            margin-bottom: 0;
        }

        .step-bar + .lc-box{
            border-top-left-radius: 0;
            border-top-right-radius: 0;
        }

            .left-column form{}

                .lc-box h2{
                    border-bottom: 1px solid #981D12;
                    font-size: 2em;
                    font-weight: 500;
                    margin-bottom: 1.5em;
                }

                .lc-box h3{
                    border-bottom: 1px solid #981D12;
                    padding-bottom: 7px;
                    margin-top: 2em;
                    font-weight: 500;
                    margin-bottom: 1.5em;
                    color: #585858;
                }

                    .lc-box h3 img{
                        margin-left: 7px;
                    }

                .left-column label{
                    min-width: 225px;
                    max-width: 225px;
                    padding-right: 30px;
                    display: flex;
                    display: -moz-flex;
                    display: -webkit-flex;
                    display: -o-flex;
                    display: -ms-flex;
                }

                    .left-column label img{
                        margin-left: 10px;
                    }

                    .tooltip{
                        position: relative;
                    }

                        .tooltip-text{
                            position: absolute;
                            background: var(--primary);
                            color: #fff;
                            z-index: 10;
                            border-radius: 3px;
                            width: 200px;
                            padding: 3px 10px;
                            font-weight: 300;
                            top: 0;
                            left: 35px;
                            font-size: 0.9em;
                            display: block;
                            display: none;
                        }

                        .tooltip:hover .tooltip-text{
                            display: block;
                        }

                        .tooltip-text:before{
                            display: block;
                            content: "";
                            position: absolute;
                            top: 8px;
                            left: -8px;
                            width: 0;
                            height: 0;
                            border-style: solid;
                            border-width: 5px 8.7px 5px 0;
                            border-color: transparent rgba(0,0,0,0.9) transparent transparent;
                        }

                .left-column input[type="text"], 
                .left-column input[type="tel"], 
                .left-column input[type="email"], 
                .left-column input[type="number"], 
                .left-column input[type="date"], 
                .left-column select
                {
                    background-color: #fff;
                }

                .reg-container{
                    position: relative;
                    width: 100%;
                }

                    .reg-container img{
                        background: var(--secondary);
                        height: 60px;
                        width: 60px;
                        padding: 12px;
                        border-radius: 10px 0 0 10px;
                        position: absolute;
                        top: 0;
                        left: 0;
                        bottom: 0;
                        margin: auto;
                    }

                    .reg-container input{
                        height: 60px;
                        padding-left: 67px;
                        font-size: 1.6em;
                        font-weight: 600;
                        width: 65%;
                        text-align: center;
                        text-transform: uppercase;
                    }

                .radio-container{
                    margin-right: 30px;
                }

                .radio-container:last-of-type{
                    margin-right: 0;
                }

                    .radio-container input{
                        width: 17px;
                        margin-right: 7px;
                    }

                    .radio-container input[type="checkbox"] {
                        width: 20px;
                        cursor: pointer;
                    }

                    .radio-container span{
                        font-weight: 500;
                    }

                form .buttons{
                    margin-top: 3em;
                    padding-top: 2em;
                    border-top: 1px solid #ccc;
                    margin-bottom: 1em;
                    text-transform: uppercase;
                    font-size: 0.9em;
                }

                    form .buttons p{
                        margin: 0;
                    }

                        form .buttons p a{
                            color: #4D0000;
                            text-decoration: none;
                            font-weight: 500;
                        }

                    form button{
                        background-color: var(--secondary);
                        border: 0;
                        color: #fff;
                        margin-left: 0;
                        border-radius: 8px;
                        padding: 12px 22px;
                        cursor: pointer;
                        text-transform: none;
                        -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
                        -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
                        box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
                        transition: all ease-in-out 0.3s;
                        -moz-transition: all ease-in-out 0.3s;
                        -webkit-transition: all ease-in-out 0.3s;
                        -o-transition: all ease-in-out 0.3s;
                        -ms-transition: all ease-in-out 0.3s;
                    }

                    form button:hover{
                        background-color: var(--hover);
                        box-shadow: rgba(76, 78, 100, 0.56) 0px 6px 18px -8px;
                    }

                    .small_btn{
                        font-size: .9em;
                        padding: 10px 14px;
                    }

                    .buttons button{
                        font-size: 1.2em;                        
                    }

                        .buttons button svg{
                            margin-left: 3px;
                        }                       

            .lc-box-right{
                margin-left: 2em;
                min-width: 270px;
            }

    .right-column{
        max-width: 395px;
        margin-left: 2em;
        width: 33%;
        
    }

        .rc-container{
            border-radius: 10px;
            overflow: hidden;
            border: 1px solid #282A40;
            -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
            position: sticky;
            top: 112px;
        }

            .rc-main{
                background: var(--primary);
                overflow: hidden;
                padding: 25px;
                color: #fff;
            }

                .rc-logo{
                    display: block;
                    margin: auto;
                }

                .rc-logo + p{
                    margin-top: 30px;
                    border-top: 1px solid;
                    padding-top: 30px;
                    font-size: 1em!important;
                    font-weight: 400!important;
                }

                .rc-container p{
                    font-size: 0.9em;
                    font-size: 0.75em;
                    font-weight: 300;
                }

                .rc-container p.smallprint{
                    font-size: 0.75em;
                    /*margin-top: 2em;*/
                }

    .account-submenu{
        padding-left: 0;
    }

        .account-submenu li{
            list-style-type: none;
            border-bottom: dotted 1px #eee;
            margin: 10px 0;
            padding-bottom: 10px;
        }

            .account-submenu li:last-child{
                border-bottom: none;
            }

            .account-submenu li a{
                color: #fff;
                text-decoration: none;
            }

                .account-submenu li a.active{
                    font-weight: bold;
                }

.main-content{
    width: 100%;
    min-height: 75vh;
    background-color: #fff;
    border-radius: 10px;    
    overflow: hidden;
    padding: 30px;
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
}

.successTitle svg{
    color: #55b555;
}

.account-form label{
    min-width: none;
    display: block;
}

/*=== Step 3 ===*/
h2 + .radio-buttons{
    margin-top: -1em;
    margin-top: -2em;
}

.radio-buttons{
    flex-flow: row wrap;
    -moz-flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
}

.radio-buttons > div{
    margin-right: 20px;
    margin: 10px 20px 10px 0;
}

.radio-buttons > div:last-of-type{
    margin-right: 0;
}

    .radio-buttons input[type="radio"], .radio-buttons input[type="checkbox"] {
        opacity: 0;
        position: fixed;
        width: 0;
        cursor: pointer;
    }

    .radio-buttons label {
        display: inline-block;
        background-color: var(--primary);
        padding: 14px 25px;
        font-weight: 400;
        /*border: 1px solid #2A5A7E;*/
        border-radius: 30px;
        min-width: 120px;
        max-width: 100%;
        color: #fff;
        cursor: pointer;
        text-transform: none;
        text-align: center;
        font-size: 1em;
    }

        .payment-buttons{
            justify-content: center;
        }

        .payment-buttons label{
            font-size: 1.5em !important;
            line-height: 1.3;
            text-align: center;
        }

            .payment-buttons label span{
                font-size: .6em;
            }

    .radio-buttons label:hover {
        background-color: #3E426C;
    }

    .radio-buttons input[type="radio"]:checked + label, .radio-buttons input[type="checkbox"]:checked + label {
        background-color: var(--secondary);
        border-color: var(--secondary);
        outline: 0;
    }

/* new style extras buttons */

.radio-buttons2{
    flex-flow: row wrap;
    -moz-flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
}

.radio-buttons2 > div{
    margin-right: 20px;
    margin: 10px 20px 10px 0;
}

.radio-buttons2 > div:last-of-type{
    margin-right: 0;
}

    .radio-buttons2 input[type="radio"], .radio-buttons2 input[type="checkbox"] {
        opacity: 0;
        position: fixed;
        width: 0;
        cursor: pointer;
    }

    .radio-buttons2 label {
        display: inline-block;
        background-color: #fff;
        padding: 14px 25px;
        font-weight: 400;
        border: 1px solid #ccc;        
        max-width: 100%;
        color: #333;
        cursor: pointer;
        text-transform: none;
        text-align: center;
        font-size: 1em;
    }   

    .radio-buttons2 label:hover {
        background-color: var(--secondary);
        color: #fff;
    }

    .radio-buttons2 input[type="radio"]:checked + label, .radio-buttons2 input[type="checkbox"]:checked + label {
        background-color: var(--secondary);
        border-color: var(--secondary);
        color: #fff;
        outline: 0;
    }

.right-box{
    background-color: #F1F0EF;
    border: 1px solid var(--primary);
    border-radius: 10px;
    overflow: hidden;
    padding: 20px;
    margin-top: 2em;
    min-height: 170px;
}

    .right-box > div{
        display: none;
    }

    .right-box h3{
        margin-top: 0;
        border-color: #ccc;
        font-weight: bold;
    }

        .right-box h3 span{
            margin-left: 0;
            font-size: inherit;
        }

        .right-box h3 a{
            color: #34bbac;
            font-size: 1.2em;
        }

    .right-box .item-icon{
        max-width: 25px;
        min-width: 25px;
    }

    .right-box p span{
        width: 100%;
        padding: 0 20px;
    }

    .right-box p a{
        text-decoration: none;
        color: #333;
        width: 100%;
    }

    .right-box .tick-icon{
        max-width: 25px;
        min-width: 25px;
    }

    .right-box p svg{
        font-size: 1.5em;
        color: #34bbac;
    }

    .right-box h4{
        margin: 0.5em 0 0;
        font-size: 1.4em;
        font-weight: 400;
    }

        .right-box h4 img{
            margin-right: 10px;
        }

    .right-box h4 + p{
        font-size: 0.9em;
        font-weight: 300;
    }

.payment-form{
    width: 55%;
    min-width: 275px;
    margin: 0 auto;
}

    .payment-form h1{
        text-align: center;
    }

    .summary-box .payment-form .formRow span p{
        font-size: 1.1em;
        margin-bottom: .5em;
    }

.credit-box a{
    color: #ccc;
    text-decoration: none;
    margin-left: 10px;
}

.claims-container{
    width: 100%;
}

.claim-notes h2{
    border-bottom: none;
    font-size: 1.2em;
    margin-bottom: 1em;
    font-weight: bold;
}


    .claim-notes h2 svg{
        margin-left: 5px;
        font-size: .8em;
        color: #0066cc;
    }

    .car-info-details span.tag{
        min-width: auto;
        font-size: .9em;
    }

.claim-note{
    margin-bottom: 15px;
    border-bottom: solid 1px #ddd;
    padding-bottom: 15px;
}

    .claim-note:first-child{
        margin-top: 15px;
    }

    .claim-note:last-child{
        border-bottom: none;
    }

    .claim-note p{
        font-size: .8em;
        margin: 0;
    }

    .claim-note .edit_note{
        margin-left: 10px;
        color: #0066cc;
    }

    .claim-note .delete_item svg{
        margin-left: 10px;
    }

#popout-notes{
    padding: 10px;
}

    #popout-notes .cms_table{
        font-size: .85em;
    }

label.form-switch{
    min-width: auto;
    max-width: auto;
    display: inline-block;
    padding-right: 0;
}

.estimate_table{
    font-size: .9em;
}

.estimate_table td{
    line-height: 1.1;
}

.formRow .estimate_table .shortBox{
    width: 120px;
}

.formRow .estimate_table input{
    margin: 0;
}

.formRow .estimate_table input[type=checkbox]{
    width: 17px;
    height: 17px;
    padding: 0;
}

.estimate_table .select2-container--default .select2-selection--single {
    margin-top: 2px;
}

.estimate_table .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 48px;
}

.claim-totals{
    margin-top: 15px;
}

.claim-totals p{
    text-align: right;
    font-weight: bold;
    font-size: .9em !important;
    margin: 5px 0 !important;
}

    .claim-totals p span{
        width: 80px;
        display: inline-block;
    }

.formRow a.accept_estimate{
    /*margin-left: 15px;
    color: #55b555 !important;*/
    color: #fff;    
    font-size: .7em;
    padding: 7px 12px;
    border-radius: 3px;
    margin-left: 0;
}

.claim_btn{
    color: #fff !important;
    border-radius: 3px;
    padding: 5px 7px;
    margin-right: 5px;
}

.claim_part_no{
    color: #888;
    font-size: .8em;
}

.accepted-label{
    font-size: .85em;
}

.left-column label.claim-radio{
    display: inline-block;
    min-width: 20px!important;
    max-width: none;
    cursor: pointer!important;
    padding-right: 10px;
}

    .left-column label.claim-radio input{
        cursor: pointer;
    }

.grouped-payment-row{
    border-left: solid 3px var(--secondary);
    margin-bottom: 5px;
}

.disabled-row{
    color: #aaa;
    pointer-events: none;
}

/* UKVD details layout */

.ukvd-details div{
    width: 25%;
    max-width: 25%;
    margin-bottom: 25px;
}

    .ukvd-details div h4{
        margin: 0;
    }
    .ukvd-details div p{
        margin: 0;
    }

/* Stripe payment styling */

.smallRow{
    width: 45%;
    margin-top: 0;
}

.stripe_input{
    border-radius: 8px;
    border: 1px solid #A89F9F;
    padding: 11px 14px;
}

#card-element-errors{
    padding: 10px 0 20px 0;
    font-weight: bold;
    color: #eb1c26;
}

.payment_fields{
    display: none;    
}

.pay_account,
.pay_credit{
    text-align: center;
    display: none;
}

.stripe_logo{
    max-width: 350px;
    width: 350px;
    display: block;
    margin: 0 auto;
}

/*=== Right Col Title ===*/
.rc-title{
    overflow: hidden;
    padding: 0 25px;
    background-color: #3B3D5C;    
}

    .rc-title p{
        text-align: center;
        color: #fff;
        text-transform: uppercase;
        font-size: 1em;
    }

/*=== Quote Boxes ===*/
.rc-main h3{
    /*border-bottom: 1px solid;*/
    font-weight: 600;
    font-size: 1.2em;
    margin-top: 0.5em;
    text-align: center;
    text-transform: uppercase;    
}

.quote-box{
    border-radius: 10px;
    border: 1px solid #33364f;
    padding: 15px;
    margin-bottom: 25px;
}

.quote-box:first-of-type{
    /*margin-top: 25px;*/
}

.quote-box:last-of-type{
    margin-bottom: 0;
}

    .quote-box h4{
        margin: 0;
        font-size: 1.3em;
        font-weight: 500;
    }

    .quote-box p{
        font-size: 1em;
        margin: 0.5em 0;
        font-weight: 400;
    }

        .quote-box p span{
            font-weight: 300;
            font-size: 0.85em;
        }

    .credit-box input{
        max-width: 120px;
        padding: 8px 10px;
        border-radius: 8px;
        border: 0;
    }

    .credit-box button{
        padding: 10px 20px;
    }

/*=== Right Col Total ===*/
.rc-total{
    background-color: #3B3D5C;
    color: #fff;
    padding: 17px 25px;
}

    .rc-total h5,
    .rc-total h4{
        font-weight: 400;
        font-size: 1.3em;
        margin: 8px 0;
        text-align: right;
    }

    .rc-total h6{
        font-weight: 600;
        font-size: 2em;
        margin: 8px 0;
        text-align: right;
    }

        .rc-total span{
            font-size: 18px;
            font-weight: 600;
            text-transform: uppercase;
            opacity: 0.4;
        }

        .rc-total strong{
            /*width: 125px;
            display: inline-block;*/
        }

.edit_quote_price{
    color: #fff;
    font-size: .65em;
    margin-left: 10px;
}


/*========== New quote tabs =========*/

.manual-entry{
    color: #6C6CFF;
    text-decoration: none;
}

/*===== Cover =====*/
.cover-options h4{
    font-size: 1.8em;
    font-weight: 600;
}

.quote-tabs{
    background-color: #fff;
}

.quote-tabs p{
    /*float: left;
    margin: 3% 0;
    font-size: 0.9em;*/
}

.tabMenu{
    width: 100% !important;
}

ul.tabMenu{
    display: flex;
    display: -moz-flex;
    display: -webkit-flex;
    display: -o-flex;
    display: -ms-flex;
    flex-flow: row wrap;
    -moz-flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    padding-left: 0;
    margin-top: 0;
    /*border-bottom: 1px solid #404041;*/
}

ul.tabMenu li{
    flex: 1;
    -moz-flex: 1;
    -webkit-flex: 1;
    -o-flex: 1;
    -ms-flex: 1;
    text-align: center;
    list-style: none;
    /*background-color: #e6e6e6;*/
    background-color: #ddd;
    border-right: 1px solid #fff;
}

ul.tabMenu li span{
    background-color: #f4f4f4;
    display: block;
    width: 100%;
    font-size: .9em;
    padding: 3px 0;
}

ul.tabMenu li span.red-promo{
    background-color: #ed242e;
    color: #fff;
}

    ul.tabMenu li span.red-promo svg{    
        color: #f5c01b;
    }

ul.tabMenu li:last-child{
    border-right: none;
}

ul.tabMenu li a{
    color: #222;
    text-decoration: none;
    width: 100%;
    display: block;
    padding: 15px 0;
    font-size: 1.3em;
    font-weight: 600;
}

ul.tabMenu li a:hover{
    /*background-color: #404041;*/
}

.tabMenu li.current a {
    background-color: #fff;    
}

.tab-content {
    display: block;
    /*visibility: hidden;*/
    padding: 30px;
    -webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;

}

.proceed-dates{
    margin: 2em;
}

    .proceed-dates p:first-child{
        margin-right: 50px;
    }

    .proceed-dates input{
        border: 1px solid #DDD;
        background-color: #fff;
        padding: 6px 10px;
        height: 45px;
        font-size: 0.95em;
        border-radius: 8px;
    }


/*========== Step 6 ==========*/
.summary-box{}

    .summary-box .logos img{
        max-width: 40%;
    }

    .summary-box label{
        font-weight: 600;
        font-size: 1em;
    }

    .summary-box .formRow p{
        margin: 0;
        font-weight: 400;
    }

    .summary-box hr{
        border-top: 1px solid #981D12;
        margin: 3em 0;
    }

    .summary-box h2{
        margin-top: 1em;
    }

    .summary-box h5{
        font-size: .9em;
        margin-bottom: 0;
        font-weight: 600;
        color: #555;
        text-transform: uppercase;
    }

.price-box{
    overflow: hidden;
    background: var(--lgr);
    margin-top: 3em;
    padding: 20px;
}

    .price-box h5{
        margin: 0;
    }

    .price-box .formRow{
        margin-bottom: 0;
    }

.save-btn{
    background-color: #282A40;
    color: #fff;    
    text-decoration: none;
    border-radius: 8px;
    font-size: 0.9em;
    padding: 10px 22px;
    cursor: pointer;    
    text-transform: none;
    transition: all ease-in-out 0.3s;
    -moz-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -ms-transition: all ease-in-out 0.3s;
}

.save-btn:hover{
    opacity: .9;
}

.not-found-container{
    padding-left: 2em !important;
}

    .not-found-container h1{
        font-size: 3em;
        margin-bottom: 0;
    }

    .not-found-container p{
        font-size: 1.3em;
        margin-top: 0;
    }

/* css iOS switch */

.form-switch {
  display: inline-block;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.form-switch i {
  position: relative;
  display: inline-block;
  margin-right: .5rem;
  width: 46px;
  height: 26px;
  background-color: #e6e6e6;
  border-radius: 23px;
  vertical-align: text-bottom;
  transition: all 0.3s linear;
}
.form-switch i::before {
  content: "";
  position: absolute;
  left: 0;
  width: 42px;
  height: 22px;
  background-color: #eee;
  border-radius: 11px;
  transform: translate3d(2px, 2px, 0) scale3d(1, 1, 1);
  transition: all 0.25s linear;
}
.form-switch i::after {
  content: "";
  position: absolute;
  left: 0;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 11px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.24);
  transform: translate3d(2px, 2px, 0);
  transition: all 0.2s ease-in-out;
}
.form-switch:active i::after {
  width: 28px;
  transform: translate3d(2px, 2px, 0);
}
.form-switch:active input:checked + i::after { transform: translate3d(16px, 2px, 0); }
.form-switch input { display: none; }
.form-switch input:checked + i { background-color: #4BD763; }
.form-switch input:checked + i::before { transform: translate3d(18px, 2px, 0) scale3d(0, 0, 0); }
.form-switch input:checked + i::after { transform: translate3d(22px, 2px, 0); }

/* end switch */

.account-balance{

}

    .account-balance span{
        font-size: 2em;
        font-weight: bold;
        background-color: #55b555;
        color: #fff;
        padding: 10px 20px;
        border-radius: 8px;
    }

.profile-logo{
    max-width: 200px;
}

.profile-dropdown{
        position: relative;
    }

        .profile-submenu{
            position: absolute;
            top: 35px;
            right: 20px;
            padding: 8px 0;
            width: 0;
            max-height: 0;
            background-color: #fff;
            border-radius: 5px;
            -webkit-box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
            -moz-box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
            box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.12);
            opacity: 0;
            overflow: hidden;
            /*transform: none;
            transition: width 0.3s, all 0.3s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
            -moz-transition: width 0.3s, all 0.3s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
            -webkit-transition: width 0.3s, all 0.3s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
            -o-transition: width 0.3s, all 0.3s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
            -ms-transition: width 0.3s, all 0.3s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
            transform-origin: 230px 36px;*/
            transition: opacity 0.3s ease 0s;
            -moz-transition: opacity 0.3s ease 0s;
        }

        .show-profile{
            opacity: 1;
            width: 230px;
            max-height: 400px;
            top: 75px;
            right: 0;
            z-index: 1;
        }

        .more_link + .show-profile{
            top: 34px;
        }

        .profile-info{
            padding: 0.5rem 1rem 0.75rem;
            display: flex;
            align-items: center;
        }

            .profile-info img{
                width: 40px;
                margin-right: 15px;
            }

            .profile-info p{
                line-height: 1.2;
                font-size: 16px;
            }

                .profile-dropdown p span{
                    font-size: 12px;
                    opacity: 0.5;
                }

        .profile-dropdown hr{
            margin: 5px 0;
            border-top: 1px solid rgba(76, 78, 100, 0.12);
        }

        .profile-dropdown ul{
            width: 230px;
            right: -10px;
            z-index: -1;
            padding-left: 0;
            margin: 0;
            list-style: none;
        }

            .profile-dropdown li a{
                display: flex;
                align-items: center;
                padding: 5px 15px;
                position: relative;
                text-decoration: none;
                color: rgba(76, 78, 100, 0.87);
                background-color: transparent;
            }

            .profile-dropdown li a:hover{
                background-color: rgba(76, 78, 100, 0.12);
            }
           
            .profile-dropdown li a svg{
                margin-right: 10px;
            }

/*==================== NEW STYLES 2025 =========================*/
.main-page{
    width: 100%;
}

    .box{
        padding: 30px;
        border-radius: 20px;
        overflow: hidden;
        position: relative;

        .back-btn{
            position: absolute;
            bottom: 30px;
            z-index: 2;
        }

        .form-end{
            max-width: 100%;
            width: auto;
        }

    }

    .white{
        background-color: #fff;
    }

/*=== Find Details ===*/
.car-details.box{
    height: 100%;
    padding-bottom: 86px;
    position: relative;
}

.box.extra-padding{
    padding: 60px 60px 86px;

    .form-end{
        right: 60px;
    }
}

.box.large-padding{
    padding: 60px;
}

.no-pb{
    padding-bottom: 0!important;
}

.large-heading{
    font-size: 1.75em;
    font-weight: 500;
    margin-top: 1em;
}

.car-details input[name='vehicle_reg']{
    font-size: 32px;
    text-align: center;
    border: 0;
    background: #FFCD38;
    margin: 0;
    height: 84px;
    border-radius: 10px;
    line-height: 84px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 700;
    margin: 20px 0 40px;

    + p{
        font-size: 18px;
        font-weight: 700;
        line-height: 24px;
    }
}

.vehicle-details-image{
    margin: 50px 0 80px;
}

.back-btn{
    text-align: left;
    margin-bottom: 0;

    a{
        display: block;
        position: relative;
        border-radius: 40px;
        border: 1.5px solid #38C6F9;
        padding: 11px 29px;
        width: 75px;
        height: 40px;
        background-image: url(/img/icons/back-arrow-blue.png);
        background-size: 18px;
        background-position: center;
        background-repeat: no-repeat;
        transition: all ease-in-out 0.3s;
        -moz-transition: all ease-in-out 0.3s;
        -webkit-transition: all ease-in-out 0.3s;
        -o-transition: all ease-in-out 0.3s;
        -ms-transition: all ease-in-out 0.3s;

        &:hover{
            background-color: #38C6F9;
            background-image: url(/img/icons/back-arrow-white.png);
        }
    }
}

.vehicle-info-form{
    width: 100%;
    max-width: 500px;
    margin: auto;
    padding-bottom: 86px;

    .formRow{
        margin: 30px 0;

        &:first-of-type{
            margin-top: 0;
        }

        &:last-of-type{
            margin-bottom: 0;
        }

        .grid{
            margin-bottom: 0;
        }
    }

    .formRow > label{
        margin-bottom: 10px;
        font-weight: 500;
        font-size: 16px;
        line-height: 24px;
    }

    input[type=text],
    input[type=number]{
        width: 100%;
        display: block;
        padding: 11px 20px;
        line-height: 1;
        font-size: 14px;
        line-height: 24px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid #CECEE5;
        cursor: pointer;
        color: #242538;
        height: 48px;
        line-height: 48px;
        margin: 0;

        &:focus, &:not(:placeholder-shown){
            border-color: #6C6CFF;
            outline: none;
        }
    }

    select{
        width: 100%;
        display: block;
        padding: 11px 20px;
        line-height: 1;
        font-size: 14px;
        line-height: 24px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid #CECEE5;
        cursor: pointer;
        color: #242538;
        appearance: none;
        position: relative;
    }

    textarea{
        width: 100%;
        display: block;
        padding: 11px 20px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid #CECEE5;
        cursor: pointer;
        color: #242538;
    }

    .custom-select{
        position: relative;
        cursor: pointer;
    }

    .custom-select:before{
        display: block;
        content: "";
        position: absolute;
        width: 15px;
        height: 15px;
        z-index: 1;
        background-image: url(/img/icons/chevron-down-black.svg);
        background-size: 100%;
        background-position: center;
        background-repeat: no-repeat;
        top: 0;
        bottom: 0;
        margin: auto;
        right: 13px;
    }

}

    .radio-btn{
        position: relative;

        input{
            position: absolute !important;
            left: 20px;
            top: 0;
            bottom: 2px;
            margin: auto;
            appearance: none;
            border: 1px solid #CECEE5 !important;
            width: 15px !important;
            height: 15px;
            padding: 0 !important;
            border-radius: 100% !important;

            &:before{
                display: block;
                content: "";
                position: absolute;
                width: 7px;
                height: 7px;
                border-radius: 100%;
                background-color: transparent;
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                margin: auto;
            }

            &:checked:before{
                background-color: #6C6CFF;
            }
        }

        label{
            width: 100%;
            display: block !important;
            padding: 11px 20px !important;
            line-height: 1;
            font-size: 14px !important;
            line-height: 24px !important;
            background: #fff;
            border-radius: 5px;
            border: 1px solid #CECEE5;
            cursor: pointer;
            color: #242538 !important;
        }

        input + label{
            padding: 11px 20px 11px 52px!important;
        }

        input:checked + label{
            border-color: #6C6CFF;
        }
    }

    .radio-btn-row:has(input:checked) input:not(:checked) + label {
        color: #CECEE5;
    }

    .checkbox-btn{

        input{
            width: 28px;
            margin-top: 0!important;
            margin-bottom: 0;
            margin-right: 20px;
            height: 28px;
            appearance: none;
            padding: 0;
            border-radius: 5px;
            min-width: 28px;
            border: 1px solid #CECEE5;
            cursor: pointer;
            background-size: 13px;
            background-position: center;
            background-repeat: no-repeat;

            &:checked{
                background-image: url(/img/icons/tick-blue.svg);
                border-color: #6C6CFF;
            }
        }

        label{
            font-size: 14px;
            line-height: 18px;
            max-width: 250px;
            cursor: pointer;
        }

    }

    .form-end{
        position: absolute;
        bottom: 30px;
        width: 100%;
        max-width: 500px;
        margin: auto;
        left: 46px;
        right: 30px;
    }

        .form-submit button{
            box-shadow: none;
            padding: 12px 44px;
            border-radius: 40px;
            background: #38C6F9;
            font-size: 14px;
            margin-left: 30px;
            position: relative;

            &:before{
                position: absolute;
                display: block;
                content: "";
                background-image: url(/img/icons/arrow-right-white.svg);
                background-repeat: no-repeat;
                width: 16px;
                height: 16px;
                right: 18px;
            }
        }

        .form-submit .no-margin-btn{
            margin-left: 0;
        }

.relative{
    position: relative;
}

.small-print{
    color: #9393AE;
    font-size: 10px;
    line-height: 12px;
    margin-top: 30px;

    strong{
        font-weight: 600;
    }
}

/*========== Vehice Details 2 ==========*/
.info-row{
    margin: 20px 0;

    h4{
        color: #6C6CFF;
        font-size: 12px;
        line-height: 24px;
        margin: 0;
        font-weight: 500; 
    }

    p{
        font-size: 14px;
        line-height: 24px;
        margin: 0;
        color: #242538;
        font-weight: 500;
        border-bottom: 1px solid #CECEE5;
        padding-bottom: 2px;
        margin-top: 0!important;
    }

}

/*=========== Quote Step ==========*/
.spec-recap{
    padding: 15px 30px;
}

    .spec-recap img{
        max-width: 80%;
    }

.spec-line{
    border-bottom: 1px solid #CECEE5;
    padding-bottom: 2px;
    color: #242538;
    font-weight: 500;
    font-size: 14px;
    line-height: 24px;
    max-width: 400px;

    span{
        color: #6C6CFF;
        font-size: 12px;
        min-width: 115px;
        padding-right: 7px;
        display: inline-block;
    }
}

 .premium-line{    
    padding-bottom: 2px;
    color: #fff;
    font-weight: 500;
    font-size: 12px;
    line-height: 24px;
    /*max-width: 400px;   */

      span{
        color: #fff;
        font-size: 11px;
        min-width: 115px;
        padding-right: 7px;
        display: inline-block;
    }

}

.bl{
    position: relative;
    padding-left: 3em;
}

.bl:before{
    display: block;
    content: "";
    position: absolute;
    left: 2em;
    top: 0;
    bottom: -30px;
    width: 1px;
    background-color: #EEEFF6;
}

.reg{
    font-size: 22px;
    line-height: 26px;
    font-weight: 700;
    background-color: #FFCD38;
    border-radius: 10px;
    padding: 12px 30px;
    display: inline-block;
    margin: 29px 0 10px;
    letter-spacing: 2px;
}

.medium-heading{
    color: #242538;
    font-size: 22px;
    line-height: 26px;
    font-weight: 300;
}

.medium-heading + form{
    margin-bottom: 25px;
}

.prod-form-row{
    padding: 20px 0;
    border-bottom: 1px solid #CECEE5;

    &:last-child{
        border-bottom: 0;
        padding-bottom: 40px;
    }
}

.prod-form-row .gs-3{
    max-width: 25%;
}

.product-radio{
    height: 100%;

    input{
        display: none;
    }

    label{
        width: 100%;
        height: 100%;
        display: block;
        text-align: center;
        padding: 28px 28px 15px;
        border-radius: 10px;
        cursor: pointer;
        color: #242538;
        font-size: 20px;
        line-height: 24px;
        border: 3px solid #fff;

        span{
            display: block;
            width: 100%;
            max-width: 125px;
            margin: 0 auto 1em;

            img{
                position: relative;
                width: 100%;
                background-color: #fff;
                max-width: 125;
                height: 0;
                padding-bottom: 100%;
                border-radius: 100%;                
                background-position: center;
                background-repeat: no-repeat;
                background-size: 70%;
            }
        }
    }

    label.bronze{
        background: linear-gradient(127.44deg, #E3B9A2 0%, #FAD7C0 45%, #C79B90 100%);

        img{
            box-shadow: 0px 4px 8px 0px #CA9F93;
        }
    }

    label.silver{
        background: linear-gradient(127.44deg, #E0E0E0 0%, #F4F4F4 50%, #ADADAD 100%);

        img{
            box-shadow: 0px 4px 8px 0px #B4ACA2;
        }
    }

    label.gold{
        background: linear-gradient(127.44deg, #E3D2A2 0%, #FAE6C0 45%, #B39879 100%);

        img{
            box-shadow: 0px 4px 8px 0px #B89E7F;
        }
    }

    label.platinum{
        background: linear-gradient(127.44deg, #D6D0BE 0%, #FFF8EB 50%, #AEA59C 100%);

        img{
            box-shadow: 0px 4px 8px 0px #B4ACA2;
        }
    }

    input:checked + label{
        border-color: #6C6CFF;
    }

    input:checked + label.bronze img{
        box-shadow: 0px 4px 8px 0px #CA9F93 inset;
    }

    input:checked + label.silver img{
        box-shadow: 0px 4px 8px 0px #B4ACA2 inset;
    }

    input:checked + label.gold img{
        box-shadow: 0px 4px 8px 0px #B89E7F inset;
    }

    input:checked + label.platinum img{
        box-shadow: 0px 4px 8px 0px #B4ACA2 inset;
    }

}

.product-radio-btn{

    input{
        display: none;
    }

    label{
        display: block;
        border: 1px solid #CECEE5;
        border-radius: 5px;
        text-align: center;
        padding: 11px 20px;
        font-size: 16px;
        line-height: 19px;
        cursor: pointer;

        &:hover{
            color: #fff;
            border-color: #6C6CFF;
            background-color: #6C6CFF;
        }
    }

    input:checked + label{
        color: #fff;
        border-color: #6C6CFF;
        background-color: #6C6CFF;
    }

}

.product-description{
    min-height: 100px;
}

.box input[type=date]{
    width: 100%;
    padding: 0 20px;
    border-radius: 5px;
    height: 42px;
    line-height: 42px;
    border: 1px solid #CECEE5;
    text-transform: uppercase;
}

.date-separator img{
    padding: 9px 0;
}

form h4{
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    margin: 3px 0 10px;
}

.last{
    border-bottom: 0;
    margin-bottom: 3em;
}

.summary-info{
    padding: 25px 25px 60px;
    border-radius: 20px;
    background: #242538;
    color: #fff;

    p:not(.spec-line){
        font-weight: 300;        
        line-height: 20px;
        margin: 3px 0 0;
    }

    h3{
        font-size: 22px;
        line-height: 26px;
        font-weight: 300;
        color: #fff;
        border-bottom: 0;
        margin: 23px 0 0;
        padding-bottom: 0;
    }

    .spec-line{
        max-width: 100%;
        color: #fff;
        border-bottom: 1px solid #6C6E94;
    }

}

.selected-extras{
    font-size: .85em;
    margin-top: 5px;
}

.breakdown-name{
    font-size: .85em;    
}

.summary-price{
    margin-top: -40px;
    padding: 15px 25px;
    border-radius: 20px;
    color: #fff;
    background-color: #434469;

    p{
        font-size: 16px;
        line-height: 24px;
        font-weight: 400;
        margin: 0;
        padding: 12px 0;

        &:nth-of-type(1){
            border-bottom: 1px solid #6C6E94;
        }
    }

    p.summary-footnote{
        font-size: .85em;
        padding-bottom: 0;

        &:last-child{
            padding-bottom: 12px;
        }
    }

    .total{
        font-size: 18px;
        font-weight: 600;
        line-height: 28px;
        border-top: 2px solid #fff;
    }
}

.quote-discount{
    color: #fff;
    font-size: .9em;
    text-decoration: none;
}

.discount-fields, .edit-discount-fields{
    display: none;
}
    .discount-fields p, .edit-discount-fields p{
        border-bottom: none !important;
    }
    .discount-fields input, .edit-discount-fields input{
        width: 100px;
        margin: 0 10px;
    }

/*========== Extras Step ==========*/
.extra-checkbox{

    label{
        background: #EEEFF6;
        font-size: 14px;

        span{
            margin-bottom: 1.5em;

            img{
                box-shadow: 0px 4px 8px 0px #BABBCE;
                background-size: 50%;
            }

        }

    }

    input:checked{

        + label{
            background: #38C6F9;
            color: #fff;
            border-color: #38C6F9; 

            span{
                img{
                    box-shadow: 0px 4px 8px 0px #BABBCE inset;
                }
            }
        }
            
    }

}

.extras-icon{
    width: 26px;
    height: 23px;
    background-image: url(/img/icons/extras-bg.svg);
    background-size: 26px;
    background-repeat: no-repeat;

    img{
        margin-left: 7px;
    }
}

.extra-info{
    margin-top: 10px!important;
}

.no-bb{
    border-bottom: 0!important;
}

.box-form{

    label{
        font-size: 12px;
        color: #6C6CFF;
        margin-bottom: 0;
        display: block;
        line-height: 24px;
    }

    input{
        width: 100%;
        display: block;
        padding: 8px 20px;
        font-size: 14px;
        line-height: 24px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid #CECEE5;
        cursor: pointer;
        color: #242538;
        position: relative;
    }

    input[name="postcode_lookup"]{
        width: 50%;
    }

    select{
        width: 100%;
        display: block;
        padding: 8px 20px;
        line-height: 1;
        font-size: 14px;
        line-height: 24px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid #CECEE5;
        cursor: pointer;
        color: #242538;
        appearance: none;
        position: relative;
    }

    .custom-select{
        position: relative;
        cursor: pointer;
    }

    .custom-select:before{
        display: block;
        content: "";
        position: absolute;
        width: 15px;
        height: 15px;
        z-index: 1;
        background-image: url(/img/icons/chevron-down-black.svg);
        background-size: 100%;
        background-position: center;
        background-repeat: no-repeat;
        top: 0;
        bottom: 0;
        margin: auto;
        right: 13px;
    }

}

/*=========== Summary Step ==========*/
.small-heading{
    color: #242538;
    font-size: 18px;
    line-height: 22px;
    font-weight: 500;
    border-bottom: 0;
    margin-top: 29px;
    margin-bottom: 6px;
}

.summary-logo img{
    width: 150px;
}

.summary-line{
    display: flex;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 14px 0;
    border-bottom: 1px dotted #CECEE5;

    span{
        min-width: 50%;
        max-width: 50%;
        padding-right: 10px;
        color: #6C6CFF;
    }
}

.summary-line:last-of-type{
    border-bottom: 0;
}

.signed-by{
    margin-top: 3em;

    label{
        font-weight: 500;
        font-size: 16px;
        line-height: 24px;
        color: #242538;
        min-width: 100px;
        line-height: 42px;
    }

    div{
        width: 100%;

        p{
            text-align: right;
            margin-top: 5px;
            font-size: 14px;
            color: #242538;
        }
    }

}

.prod-form-row + .quote-summary, .prod-form-row + .pay-form{
    margin-top: 50px;
}

.pay-form{

    .payment-field{

    }

    .cards{
        display: block;
        padding: 7px;
        border-radius: 4px;
        background-color: #fff;
        margin: 2em auto 5em;
    }

    button:before{
        display: none;
    }

}

.quote-summary{
    position: sticky;
    top: 110px;
}

.box-form a.btn{
    box-shadow: none;
    padding: 8px 30px;
    border-radius: 40px;
    background: #38C6F9;
    font-size: 14px;  
    border: 0;
    color: #fff;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
}

    .box-form a.btn:hover{
        background-color: var(--hover);
        box-shadow: rgba(76, 78, 100, 0.56) 0px 6px 18px -8px;
    }

/*===================== Responsive Styling =========================*/
@media only screen and (max-width: 1500px) {

    nav{
        width: 215px;
    }

    header{
        left: 215px;
    }

    .page-content{
        padding-left: calc(215px + 2em);
    }

}

@media only screen and (max-width: 1400px) {

    .step-bar p a{
        font-size: 0.8em;
    }

}

@media only screen and (max-width: 1260px) {

    .page-grid{
        display: block;
    }

        .lc-box.flex{
            display: block;
        }

            .lc-box form{
                width: 100%!important;
            }

            .lc-box-right{
                width: 100%!important;
                margin-left: 0;
                min-width: 0;
            }

        .right-column{
            width: 100%;
            max-width: 100%;
            margin-left: 0;
            margin-top: 2em;
        }

}

@media only screen and (max-width: 667px) {}

@media only screen and (max-width: 568px) {}

@media only screen and (max-width: 480px) {}

@media only screen and (max-width: 375px) {}

@media only screen and (max-width: 320px) {}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
    white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster */
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */

   @media only screen and (max-width : 1000px) {}
   @media only screen and (max-width : 768px) {}
   @media only screen and (max-width : 660px) {}
   @media only screen and (max-width : 460px) {}
   @media only screen and (max-width : 380px) {}

