/*#region Fonts*/
@font-face{
    font-family: "boschsans";
    src:    url("../fonts/BoschSans-Light.woff2") format("woff2"),
            url("../fonts/BoschSans-Light.woff") format("woff");
    font-weight: 300;
}
@font-face{
    font-family: "boschsans";
    src:    url("../fonts/BoschSans-Regular.woff2") format("woff2"),
            url("../fonts/BoschSans-Regular.woff") format("woff");
    font-weight: 400;
}
@font-face{
    font-family: "boschsans";
    src:    url("../fonts/BoschSans-Medium.woff2") format("woff2"),
            url("../fonts/BoschSans-Medium.woff") format("woff");
    font-weight: 500;
}
@font-face{
    font-family: "boschsans";
    src:    url("../fonts/BoschSans-Bold.woff2") format("woff2"),
            url("../fonts/BoschSans-Bold.woff") format("woff");
    font-weight: 700;
}
@font-face{
    font-family: "boschsans";
    src:    url("../fonts/BoschSans-Black.woff2") format("woff2"),
            url("../fonts/BoschSans-Black.woff") format("woff");
    font-weight: 900;
}
/*#endregion*/

/*#region General*/
html{
    -webkit-tap-highlight-color: unset;
}
body{
    background-color: #fff;
    color: #000;
    font-family: "boschsans", Helvetica, Arial, sans-serif;
    font-weight: 300;
}
h1, h2, h3, h4{
    overflow: hidden;
    text-overflow: ellipsis;
    letter-spacing: -.02rem;
}
h1, h2, h3, p, span, ul, button, label{
    margin: 0;
    padding: 0;
}
section{
    padding: 60px 0;
}
h2{
    color: #003B6A;
    font-size: 34px;
    margin-bottom: 2rem;
    font-weight: 700;
}
h3{
    color: #003B6A;
    font-size: 34px;
    font-weight: 700;
}
h4{
    color: #003B6A;
    font-size: 26px;
    font-weight: 400;
    margin-top: .5rem;
    margin-bottom: 2rem;
}
a{
    color: #005691;
}
a:hover{
    color: #005691;
}
button{
    border: 0;
    background: none;
}
img:not([src]){
    visibility: hidden;
}
b, strong{
    font-weight: 500;
    
}


@media only screen and (max-width: 991.98px){
    h2{
        font-size: 32px;
        margin-bottom: 1.75rem;
    }
    h3{
        font-size: 32px;
    }
    h4{
        font-size: 24px;
        margin-bottom: 1.75rem;
    }
}
@media only screen and (max-width: 767.98px){
    h2{
        font-size: 28px;
        margin-bottom: 1.5rem;
    }
    h3{
        font-size: 28px;
    }
    h4{
        font-size: 22px;
        margin-top: .25rem;
        margin-bottom: 1.5rem;
    }
}
@media only screen and (max-width: 575.98px){
    h2{
        font-size: 24px;
        margin-bottom: 1.25rem;
    }
    h3{
        font-size: 24px;
    }
    h4{
        font-size: 20px;
        margin-bottom: 1.25rem;
    }
}
/*#endregion*/

/*#region Global classes*/
.sec_blue{
    background: #003B6A;
    color: #fff;
}
.sec_blue h2{
    color: #fff;
}

.container-xl{
    max-width: 1260px;
}

.tooltip{
    font-weight: 300;
}

.focus{
    outline: none;
    transition: box-shadow .15s ease-in-out;
}
.focus:focus{
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .25);
}
.focus:focus:not(:focus-visible){
    box-shadow: none;
}
.focus:focus-visible{
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .25);
}
.focus:disabled{
    box-shadow: none;
}

.focus_inset{
    outline: none;
    transition: box-shadow .15s ease-in-out;
}
.focus_inset:focus{
    box-shadow: inset 0 0 0 0.2rem rgba(0, 123, 255, .25);
}
.focus_inset:focus:not(:focus-visible){
    box-shadow: none;
}
.focus_inset:focus-visible{
    box-shadow: inset 0 0 0 0.2rem rgba(0, 123, 255, .25);
}
.focus_inset:disabled{
    box-shadow: none;
}

.focus_strong{
    outline: none;
    transition: box-shadow .15s ease-in-out;
}
.focus_strong:focus{
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .5);
}
.focus_strong:focus:not(:focus-visible){
    box-shadow: none;
}
.focus_strong:focus-visible{
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .5);
}
.focus_strong:disabled{
    box-shadow: none;
}

.btn_primary{
    padding: .5rem 1rem;
    color: #fff;
    background-color: #005691;
    border: 1px solid #005691;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: center;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn_primary:hover:enabled{
    background-color: #003B6A;
    border: 1px solid #003B6A;
}
.btn_primary:disabled{
    opacity: .5;
    background-color: #A8AFB5;
    border: 1px solid #A8AFB5;
}

.btn_secondary{
    padding: .5rem 1rem;
    color: #007bc0;
    border: 1px solid #007bc0;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: center;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn_secondary:hover:enabled{
    background: rgba(0, 86, 145, .1);
}
.btn_secondary:disabled{
    opacity: .5;
    color: #A8AFB5;
    border: 1px solid #A8AFB5;
}

.link_ext{
    color: #fff;
    background: #005691;
    padding: .5rem 1rem;
    position: relative;
    transform: translateZ(0);
    border-bottom: 2px solid #008ecf;
    display: inline-flex;
    align-items: center;
    overflow: hidden;
    font-weight: 400;
}
.link_ext::before{
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    background: #1a679c;
    transform-origin: 50% 100%;
    transform: scaleY(0);
    transition: transform .3s ease-out;
    z-index: -1;
}
.link_ext:hover::before{
    transform: scaleY(1);
}
.link_ext:hover{
    color: #fff;
    text-decoration: none;
}
.link_ext span{
    margin-right: .5rem;
}

.ul1 li{
    list-style: none;
    position: relative;
    padding-left: 1.25rem;
    padding-right: .25rem;
    margin-bottom: .25rem;
}
.ul1 li::before{
    content: "";
    position: absolute;
    background: #003B6A;
    width: 6px;
    height: 6px;
    left: .25rem;
    top: 8px;
}

.header_desc{
    margin-bottom: 1.75rem;
    margin-top: 0.5rem;
}

@media only screen and (max-width: 575.98px){
    .ul1 li{
        font-size: 14px;
    }
    .ul1 li::before{
        top: 6px;
    }
}
/*#endregion*/

/*#region Navigation*/
#navigation{
    position: fixed;
    top: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    z-index: 1030;
}
.supergraphic_top{
    background-image: url("../img/required/supergraphic.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 10px;
}
.navigation_bar{
    height: 62px;
    display: flex;
    justify-content: space-between;
}
.navigation_bar_left{
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: 100%;
}
.img_logo{
    height: 100%;
    width: 120px;
}
.navigation_bar_right{
    display: flex;
    align-items: center;
}

#btn_menu{
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#btn_menu:disabled{
    cursor: pointer;
}
.menu_lines{
    position: relative;
    width: 22px;
    height: 16px;
}
.menu_line{
    background: #000;
    height: 2px;
    width: 100%;
    position: absolute;
    transition: all .3s;
}
#btn_menu:hover .menu_line{
    background: #005691;
}
.menu_line_1{
    top: 0;
}
.menu_line_2{
    top: 7px;
    opacity: 1;
}
.menu_line_3{
    top: 7px;
    opacity: 1;
}
.menu_line_4{
    bottom: 0;
}
.menu_active .menu_lines .menu_line_1{
    top: 7px;
    opacity: 0;
    transform: scaleX(0);
}
.menu_active .menu_lines .menu_line_2{
    transform: rotate(45deg);
}
.menu_active .menu_lines .menu_line_3{
    transform: rotate(-45deg);
}
.menu_active .menu_lines .menu_line_4{
    bottom: 7px;
    opacity: 0;
    transform: scaleX(0);
}

.navlinks_content{
    padding-bottom: 1rem;
    overflow-y: auto;
    max-height: calc(100vh - 72px);
    width: 35%;
}
.nav-link{
    padding: .5rem .75rem;
    font-size: 18px;
    color: #000;
    border-left: 2px solid transparent;
    overflow: hidden;
    text-overflow: ellipsis;
    outline-offset: -5px;
}
.nav-link:hover{
    color: #000;
    background: #eff1f2;
}
#navlinks .active{
    color: #003B6A;
    background: #eff1f2;
    border-left: 2px solid #003B6A;
    font-weight: 500;
}

@media only screen and (max-width: 1199.98px){
    .navlinks_content{
        width: 40%;
    }
}
@media only screen and (max-width: 991.98px){
    .img_logo{
        width: 110px;
    }
    .navlinks_content{
        width: 50%;
    }
}
@media only screen and (max-width: 767.98px){
    .img_logo{
        height: auto;
        width: 100px;
    }
    #navlinks{
        margin: 0 -15px;
    }
    .navlinks_content{
        padding-bottom: .5rem;
        width: 100%;
    }
    .nav-link{
        font-size: 16px;
        padding: .5rem 15px;
        border: 0;
    }
    #navlinks .active{
        border: 0;
    }
}
/*#endregion*/

/*#region Accessories [v2]*/
#sec_accessories_v2{
    background: #EFEFF0;
    background: url(../img/required/supergraphic-gray-2.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.accessories_v2{
    padding: 0 .5rem;
}
.accessories_v2 .col{
    padding: 0;
    padding: 0 .75rem;
    margin-bottom: 1.5rem;
}
.acc_v2_item{
    display: flex;
    height: 100%;
    background: #EFEFF0;
}
.acc_v2_item .image{
    align-self: center;
    position: relative;
    width: 175px;
    min-width: 175px;
}
.acc_v2_item .image::before{
    display: block;
    content: "";
    width: 100%;
   	padding-top: 90%;
}
.acc_v2_item .image img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    padding: 1rem;
}
.acc_v2_item .text{
    padding: 1rem;
}
.acc_v2_item .text .p_title{
    font-weight: 700;
    color: #003B6A;
}

.acc_v2_item .p_art_nr{
    font-size: 14px;
    line-height: 20px;
    margin-bottom: .5rem;
    margin-top: .15rem;
    font-weight: 500;
    color: #003B6A;
}

.acc_v2_item .p_desc{
    line-height: 22px;
}


@media only screen and (max-width: 575.98px){
    .acc_v2_item{
        flex-direction: column;
    }
    .acc_v2_item .text{
        padding-top: 0;
    }
}
/*#endregion*/

/*#region Overview*/
/*#region Overview General*/
#sec_overview{
    padding-top: 100px;
}
.p_overview_tool_name{
    font-size: 34px;
    margin-bottom: .25rem;
    font-weight: 700;
    margin-top: 2rem;
}
.p_overview_tool_desc{
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 3rem;
}
.overview_row1{
    margin-bottom: 15px;
}
.overview_box{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media only screen and (max-width: 991.98px){
    .p_overview_tool_name{
        font-size: 30px;
    }
}
@media only screen and (max-width: 767.98px){
    .p_overview_tool_name{
        font-size: 26px;
    }
    .p_overview_tool_desc{
        font-size: 18px;
        margin-bottom: 2rem;
    }
}
@media only screen and (max-width: 575.98px){
    .p_overview_tool_name{
        font-size: 22px;
    }
    .p_overview_tool_desc{
        font-size: 16px;
    }
}
/*#endregion*/

/*#region Overview Accordion*/
.ov_acc{
    width: 100%;
    margin-bottom: 2.75rem;
}
.ov_acc_item{
    background: rgba(0, 0, 0, 0.25);
    margin-bottom: .25rem;
}
.btn_ov_acc{
    display: flex;
    align-items: center;
    color: #fff;
    width: 100%;
    text-align: left;
}
.p_ov_acc_top{
    font-size: 18px;
    font-weight: 500;
    padding: .75rem 1rem;
    width: auto;
    min-width: 0;
    max-width: 100%;
    flex: 10000 1 0%;
}
.p_ov_acc_bottom{
    padding: .25rem 1rem 1rem;
}
.ov_acc_plus{
    display: block;
    position: relative;
    height: 20px;
    width: 20px;
    min-height: 20px;
    min-width: 20px;
    margin-right: 1rem;
}
.ov_acc_plus::before{
    content: '';
    background: #fff;
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top: 9px;
}
.ov_acc_item .collapsed .ov_acc_plus::after{
    transform: rotate(0deg);
    opacity: 1;
}
.ov_acc_plus::after{
    content: '';
    background: #fff;
    position: absolute;
    display: block;
    height: 100%;
    width: 2px;
    left: 9px;
    transform: rotate(-90deg);
    opacity: 0;
    transition: transform .5s, opacity .5s;
}

@media only screen and (max-width: 767.98px){
    .ov_acc{
        margin-bottom: 1.75rem;
    }
    .p_ov_acc_top{
        padding: .75rem;
    }
    .p_ov_acc_bottom{
        padding: .25rem .75rem 1rem;
    }
}
@media only screen and (max-width: 575.98px){
    .p_ov_acc_top{
        font-size: 16px;
    }
    .p_ov_acc_bottom{
        font-size: 14px;
    }
}
/*#endregion*/

/*#region Overview Table*/
.table_overview{
    width: 100%;
}
.table_overview th{
    font-size: 18px;
    font-weight: 500;
}
.table_overview thead tr{
    border-bottom: 2px solid #A8AFB5;
}
.table_overview tbody tr{
    border-top: 1px solid #A8AFB5;
}
.table_overview tbody tr:first-child{
    border-top: none;
}
.table_overview td:first-child{
    font-weight: 500;
}
.table_overview th, .table_overview td{
    padding: .5rem 1rem;
}
.p_ov_table_footnote{
    font-size: 14px;
    margin-top: 1rem;
}

@media only screen and (max-width: 991.98px){
    #overview_table{
        margin-bottom: 3rem;
    }
}
@media only screen and (max-width: 575.98px){
    .table_overview th{
        font-size: 16px;
    }
    .table_overview td{
        font-size: 14px;
        display: block;
    }
    .table_overview th, .table_overview td{
        padding: .5rem .5rem;
    }
    .table_overview td:first-child{
        padding-bottom: .25rem;
    }
    .table_overview td:last-child{
        padding-top: 0;
    }
}
/*#endregion*/

/*#region Overview Product*/
#overview_product{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 3rem;
    flex-shrink: 0;
}
.overview_product_img{
    position: relative;
}
.img_ov_product{
    height: auto;
    width: 100%;
    max-width: 800px;
}

.btn_product_tt{
    position: absolute;
    height: 40px;
    width: 40px;
    outline: none;
    overflow: hidden;
}
.product_tt_img1{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%;
    border: 4px solid rgba(168, 175, 181, .5);
    transition: transform .15s;
    background: url("../img/required/plus-inactive.svg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.product_tt_img2{
    visibility: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%;
    border: 4px solid rgba(168, 175, 181, .5);
    transition: transform .15s;
    background: url("../img/required/plus-active.svg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.btn_product_tt:hover .product_tt_img1{
    visibility: hidden;
    transform: rotate(45deg);
}
.btn_product_tt:focus .product_tt_img1{
    visibility: hidden;
    transform: rotate(45deg);
}
.btn_product_tt:hover .product_tt_img2{
    visibility: visible;
    transform: rotate(45deg);
}
.btn_product_tt:focus .product_tt_img2{
    visibility: visible;
    transform: rotate(45deg);
}

.product_tooltip_content{
    display: none;
}

.product_tooltip{
    font-family: inherit;
    z-index: 999;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0;
    margin-top: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
.product_tooltip.bs-tooltip-bottom .arrow::before{
    bottom: -1px;
    z-index: -1;
    border-width: 0 10px 10px;
    border-bottom-color: #fff;
}
.product_tooltip .arrow{
    height: 10px;
    width: 20px;
    top: -10px;
}
.product_tooltip.show{
    opacity: 1;
}
.product_tooltip .tooltip-inner{
    display: flex;
    flex-direction: column;
    padding: 0 0 .5rem;
    text-align: left;
    background: #fff;
    color: #000;
    border-radius: 0;
    max-width: 280px;
}
.product_tooltip .tooltip-inner img{
    width: 100%;
    flex-shrink: 0;
}
.product_tooltip .tooltip-inner .img_round{
    margin: 1rem 1rem 0;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.product_tooltip .tooltip-inner .title{
    font-size: 18px;
    font-weight: 500;
    color: #003B6A;
    padding: 1rem 1rem .5rem;
}
.product_tooltip .tooltip-inner .desc{
    font-size: 16px;
    padding: 0 1rem .5rem;
}

.ul_product_tooltip{
    font-size: 16px;
    padding: 0 1rem .5rem;
}
.ul_product_tooltip li{
    list-style: none;
    position: relative;
    padding-left: 1.25rem;
    padding-right: .25rem;
    margin-bottom: .25rem;
}
.ul_product_tooltip li::before{
    content: "";
    position: absolute;
    background: #003B6A;
    width: 6px;
    height: 6px;
    left: .25rem;
    top: 8px;
}

.p_product_tt_footnote{
    font-size: 12px;
    padding: 0 1rem .5rem;
}

@media only screen and (max-width: 575.98px){
    .btn_product_tt{
        height: 28px;
        width: 28px;
    }
    .product_tt_img1{
        border: 2px solid rgba(168, 175, 181, .5);
    }
    .product_tt_img2{
        border: 2px solid rgba(168, 175, 181, .5);
    }

    .product_tooltip .tooltip-inner{
        max-width: 240px;
        padding: 0 0 .25rem;
    }
    .product_tooltip .tooltip-inner .img_round{
        margin: .75rem .75rem 0;
        border-radius: 50%;
        overflow: hidden;
        flex-shrink: 0;
    }    
    .product_tooltip .tooltip-inner .title{
        font-size: 16px;
        padding: .75rem .75rem .25rem;
    }
    .product_tooltip .tooltip-inner .desc{
        font-size: 14px;
        padding: 0 .75rem .5rem;
    }

    .ul_product_tooltip{
        font-size: 14px;
        padding: 0 .5rem .5rem;
    }
    .ul_product_tooltip li::before{
        top: 6px;
    }

    .p_product_tt_footnote{
        padding: 0 .75rem .5rem;
    }
}
/*#endregion*/

/*#region Overview Highlights*/
#overview_highlights{
    display: flex;
    flex-wrap: wrap;
    margin: 0 55px;
}
#overview_highlights:hover .highlight_item{
    opacity: .5;
    transform: scale(.97);
}
#overview_highlights .highlight_item:hover{
    opacity: 1;
    transform: scale(1);
}
.highlight_tooltip_content{
    display: none;
}
.highlight_item{
    transition: all .2s;
}
.highlight_item img{
    width: 70px;
    padding: 2px;
}

.highlight_tooltip{
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-family: inherit;
    z-index: 999;
}
.highlight_tooltip .tooltip-inner{
    background: #fff;
    color: #000;
    font-size: 16px;
    padding: .75rem 1rem;
    border-radius: 0;
    text-align: left;
    max-width: 260px;
}
.highlight_tooltip.bs-tooltip-top .arrow::before{
    border-top-color: #fff;
    top: -1px;
    z-index: -1;
}
.highlight_tooltip.bs-tooltip-bottom .arrow::before{
    border-bottom-color: #fff;
    bottom: -1px;
    z-index: -1;
}
.highlight_tooltip.tooltip.show{
    opacity: 1;
}

@media only screen and (max-width: 991.98px){
    #overview_highlights{
        margin: 0;
        justify-content: center;
    }
}
@media only screen and (max-width: 575.98px){
    .highlight_item img{
        width: 60px;
    }
    .highlight_tooltip .tooltip-inner{
        font-size: 14px;
    }
}
/*#endregion*/

/*#region Overview [v2 modifications]*/
/*#region Table*/
.p_table_ov_v2_header{
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 1rem;
}
.table_overview_v2_head{
    border-bottom: 2px solid #A8AFB5;
    font-weight: 500;
}
.table_overview_v2_head .row{
    margin: 0;
}
.table_overview_v2_head .row div{
    padding: .5rem 1rem;
}

.table_overview_v2_body .row{
    margin: 0;
    border-top: 1px solid rgba(168, 175, 181, .75);
}
.table_overview_v2_body .row:first-child{
    border-top: none;
}
.table_overview_v2_body .row div{
    padding: .5rem 1rem;
}
.table_overview_v2_body .row .col-12{
    font-weight: 500;
}

@media only screen and (max-width: 991.98px){
    #overview_table_v2{
        margin-bottom: 3rem;
    }
}
@media only screen and (max-width: 575.98px){
    .table_overview_v2_content{
        font-size: 14px;
    }
    .table_overview_v2_head .row .col-sm-4{
        display: none;
    }
    .table_overview_v2_head .row div{
        padding: .75rem;
    }

    .table_overview_v2_body .row{
        margin-top: 1rem;
        border: none;
    }
    .table_overview_v2_body .row:first-child{
        margin-top: 1rem;
        padding-top: 0;
    }
    .table_overview_v2_body .row .col-12{
        border-bottom: 1px solid rgba(168, 175, 181, .75);
    }
    .table_overview_v2_body .row div{
        border: none;
        padding: .5rem .75rem;
    }
}
/*#endregion*/

/*#region Highlights*/
#overview_highlights_v2{
    display: flex;
    flex-direction: column;
    margin: 0 55px;
}
.highlight_v2_container{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}
.highlight_v2_container:last-child{
    margin-bottom: 0;
}
.highlight_v2_container:hover .highlight_item{
    opacity: .5;
    transform: scale(.97);
}
.highlight_v2_container .highlight_item:hover{
    opacity: 1;
    transform: scale(1);
}
.p_highlight_v2_group{
    font-size: 18px;
    font-weight: 500;
    padding: 0 .25rem;
}

@media only screen and (max-width: 991.98px){
    #overview_highlights_v2{
        margin: 0;
    }
    .highlight_v2_container{
        justify-content: center;
    }
    .p_highlight_v2_group{
        text-align: center;
    }
}
@media only screen and (max-width: 575.98px){
    .highlight_v2_container{
        justify-content: flex-start;
    }
    .p_highlight_v2_group{
        text-align: left;
    }
}
/*#endregion*/
/*#endregion*/
/*#endregion*/

/*#region Demonstration*/
.embed_container{
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    overflow: hidden;
}
/*#endregion*/

/*#region Gallery*/
.gallery_container{
    display: none;
    position: relative;
}
.slick_gallery{
    border: 1px solid #DFDFE0;
}
.gallery_item{
    margin: 0 40px;
    outline: none;
}
.gallery_pic{
    position: relative;
    padding-top: 56.25%;
}
.gallery_pic img{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    object-fit: contain;
}

.btn_gallery{
    position: absolute;
    opacity: .8;
}
.btn_gallery:hover{
    opacity: 1;
}
#btn_gallery_prev{
    display: none;
    height: 60px;
    width: 60px;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: url("../img/required/back-left-problue.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
#btn_gallery_next{
    display: none;
    height: 60px;
    width: 60px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: url("../img/required/forward-right-problue.svg");
    background-repeat: no-repeat;
    background-size: cover;
}
#btn_gallery_zoomin{
    height: 50px;
    width: 50px;
    right: 15px;
    top: 15px;
    background: url("../img/required/zoom-in-problue.svg");
    background-repeat: no-repeat;
    background-size: 80%;
    background-position: center;
}
#btn_gallery_zoomout{
    height: 50px;
    width: 50px;
    right: 15px;
    top: 65px;
    background: url("../img/required/zoom-out-problue.svg");
    background-repeat: no-repeat;
    background-size: 80%;
    background-position: center;
}
.gallery_controls .slick-disabled{
    opacity: .4;
    pointer-events: none;
    cursor: default;
}

#p_gallery_pagination{
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    padding: .25rem .75rem;
    background: rgba(0, 0, 0, 0.3);
    opacity: .9;
}

@media only screen and (max-width: 1199.98px){
    .gallery_item{
        margin: 0 20px;
    }
}
@media only screen and (max-width: 991.98px){
    .gallery_item{
        margin: 0;
    }
}
@media only screen and (max-width: 767.98px){
    .gallery_controls{
        margin-top: 10px;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
    }
    #p_gallery_pagination{
        position: static;
        color: #000;
        padding: 0 .5rem;
        bottom: auto;
        left: auto;
        transform: none;
        background: transparent;
        opacity: 1;
    }
    #btn_gallery_zoomin{
        position: static;
        height: 40px;
        width: 40px;
    }
    #btn_gallery_zoomout{
        position: static;
        margin-right: auto;
        height: 40px;
        width: 40px;
    }
}
@media only screen and (max-width: 575.98px){
    #p_gallery_pagination{
        font-size: 14px
    }
}
/*#endregion*/

/*#region Application*/
/*#region Application [All]*/
.application{
    padding-bottom: 120px;
}
.appl_wrapper{
    display: none;
    position: relative;
}
.slick_appl{
    position: static;
    margin: 0 15px;
    overflow: hidden;
}
.slick_appl .slick-list{
    margin: 0 -15px;
}
.slick_appl .slick-track{
    display: flex;
}

.appl_item{
    height: auto;
    position: relative;
    margin: 0 15px;
    outline: none;
    background: #eff1f2;
}
.appl_item img{
    width: 100%;
    opacity: 0;
    transition: opacity .3s;
}
.appl_item .slick-loading{
    height: 0;
}

.slick-dots{
    position: absolute;
    left: 0;
    right: 0;
    bottom: -60px;
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.slick-dots li{
    display: flex;
    margin: 8px;
}
.application_dot{
    cursor: pointer;
    height: 14px;
    width: 14px;
    border-radius: 50%;
    background: #DFDFE0;
    transition: background-color .1s;
}
.slick-active .application_dot{
    background: #003B6A;
}

.btn_appl{
    display: none;
    height: 50px;
    width: 50px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #fff;
    position: absolute;
    opacity: .9;
    padding: 10px;
}
.btn_appl::after{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}
.btn_appl:hover{
    opacity: 1;
}
.btn_appl:hover::after{
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.btn_appl_prev{
    left: -10px;
}
.btn_appl_prev div{
    height: 100%;
    width: 100%;
    background: url("../img/required/back-left-problue.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.btn_appl_next{
    right: -10px;
}
.btn_appl_next div{
    height: 100%;
    width: 100%;
    background: url("../img/required/forward-right-problue.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.appl_container .slick-disabled{
    opacity: .5;
    pointer-events: none;
    cursor: default;
}

@media only screen and (max-width: 991.98px){
    .appl_container{
        margin: 0 -15px;
    }
    .slick_appl{
        overflow: visible;
    }
    .btn_appl_prev{
        left: 0;
    }
    .btn_appl_next{
        right: 0;
    }
}
@media only screen and (max-width: 767.98px){
    .application{
        padding-bottom: 110px;
    }
    .slick-dots{
        bottom: -50px;
    }
}
@media only screen and (max-width: 575.98px){
    .slick-dots li{
        margin: 6px;
    }
}
/*#endregion*/

/*#region Application [v1]*/
.appl_text{
    display: none;
    position: absolute;
    background: #003B6A;
    background: linear-gradient(to right,#003B6A,80%,#005691);
    padding: .75rem 1rem;
    color: #fff;
    max-width: 280px;
}
.appl_text .title{
    font-weight: 700;
}
.appl_text .desc{
    font-size: 14px;
    padding-top: .25rem;
}
.appl_text .ul1 li::before{
    background: #fff;
    top: 6px;
}
.appl_text_topleft{
    top: 15px;
    left: 15px;
}
.appl_text_topright{
    top: 15px;
    right: 15px;
}
.appl_text_bottomleft{
    bottom: 15px;
    left: 15px;
}
.appl_text_bottomright{
    bottom: 15px;
    right: 15px;
}

@media only screen and (max-width: 767.98px){
    .appl_text{
        padding: .5rem .75rem;
    }
}
@media only screen and (max-width: 575.98px){
    .appl_text{
        position: static;
        width: 100%;
        max-width: 100%;
        opacity: 1;
        background: #eff1f2;
        color: #000;
    }
    .appl_text .title{
        font-size: 14px;
    }
    .appl_text .ul1 li::before{
        background: #003B6A;
    }
    .appl_text_topleft{
        top: 0;
        left: 0;
    }
    .appl_text_topright{
        top: 0;
        right: 0;
        text-align: left;
    }
    .appl_text_bottomleft{
        bottom: 0;
        left: 0;
    }
    .appl_text_bottomright{
        bottom: 0;
        right: 0;
        text-align: left;
    }
}
/*#endregion*/

/*#region Application [v2 modifications]*/
.slick_appl_v2 .appl_item{
    width: 100%;
    max-width: 500px;
}
.appl_v2_text{
    display: none;
    padding: 1rem;
}
.appl_v2_text .title{
    font-weight: 700;
    margin-bottom: .25rem;
}

@media only screen and (max-width: 1199.98px){
    .appl_v2_wrapper .appl_container{
        margin: 0 -15px;
    }
    .slick_appl_v2{
        overflow: visible;
    }
}
@media only screen and (max-width: 767.98px){
    .slick_appl_v2 .appl_item{
        width: auto;
        max-width: none;
        margin: 0 15px;
        transform: none;
        transition: none;
    }
}
@media only screen and (max-width: 575.98px){
    .slick_appl_v2 .appl_item{
        margin: 0 .5rem;
    }
    .appl_v2_text{
        padding: .5rem .75rem;
    }
    .appl_v2_text{
        font-size: 14px;
    }
}
/*#endregion*/
/*#endregion*/

/*#region Target Groups*/
/*#region Target Groups [standard]*/
#sec_targetgroups{
    background: linear-gradient(to right,#003B6A,80%,#005691);
}
.tg_content{
    display: flex;
    flex-wrap: wrap;
}
.tg_content span{
    color: #000;
    background: #fff;
    font-size: 18px;
    font-weight: 400;
    padding: 1rem;
    margin-right: 1rem;
    margin-bottom: .75rem;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 575.98px){
    .tg_content{
        flex-direction: column;
    }
    .tg_content span{
        color: #fff;
        background: none;
        font-size: 16px;
        font-weight: 300;
        margin-right: 0;
        margin-bottom: .25rem;
        padding: 0;
        padding-left: 1.25rem;
        position: relative;
    }
    .tg_content span::before{
        content: "";
        position: absolute;
        background: #fff;
        width: 6px;
        height: 6px;
        left: .25rem;
        top: 8px;
    }
}
/*#endregion*/

/*#region Scope of Supply*/

#sec_scopeofsupply{
    background: #EFEFF0;
    background: url(../img/required/supergraphic-gray-2.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.scopeofsupply{
    padding: 0 .5rem;
}
.scopeofsupply .col{
    padding: 0;
    padding: 0 .75rem;
    margin-bottom: 1.5rem;
}
.supply_item{
    height: 100%;
    background: #EFEFF0;
}
.supply_item .image{
    margin: auto;
    position: relative;
    width: 175px;
    min-width: 175px;
}
.supply_item .image::before{
    display: block;
    content: "";
    width: 100%;
   	padding-top: 90%;
}
.supply_item .image img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    padding: 2rem 0.25rem 0.25rem 0.25rem;
}
.supply_item .text{
    padding: 1rem;
}
.supply_item .text .p_title{
    font-weight: 700;
    color: #003B6A;
}

.supply_item .p_art_nr{
    font-size: 14px;
    line-height: 20px;
    margin-bottom: .5rem;
    margin-top: .15rem;
    font-weight: 500;
    color: #003B6A;
}

.supply_item .p_desc{
    line-height: 22px;
}


@media only screen and (max-width: 575.98px){
    .supply_item{
        flex-direction: column;
    }
    .supply_item .text{
        padding-top: 0;
    }
}

/*#endregion*/

/*#region Target Groups [v2]*/

#sec_targetgroups_v2{
    background: #eff1f2;
    background: url("../img/required/supergraphic-gray.svg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
}
.tg_v2_item{
    color: #000;
    border: 0;
    border-radius: 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    background: rgba(255, 255, 255, 0.9);
    padding: 1rem;
}
.tg_v2_item_focus{
    background: #003B6A;
    background-image: linear-gradient(to right,#003B6A,80%,#005691);
    color: #fff;
}
.tg_v2_item .card-body{
    padding: 0;
}
.p_tg_v2_header{
    font-size: 18px;
    color: #003B6A;
    font-weight: 500;
    border-bottom: 1px solid #DFDFE0;
    padding: 0 .25rem .25rem;
    margin-bottom: 1rem;
}
.tg_v2_item_focus .p_tg_v2_header{
    color: #fff;
}

.ul_tg_v2 li{
    list-style: none;
    position: relative;
    padding-left: 1.25rem;
    padding-right: .25rem;
    margin-bottom: .25rem;
}
.ul_tg_v2 li::before{
    content: "";
    position: absolute;
    background: #003B6A;
    width: 6px;
    height: 6px;
    left: .25rem;
    top: 8px;
}
.tg_v2_item_focus .ul_tg_v2 li::before{
    background: #fff;
}
/*#endregion*/
/*#endregion*/

/*#region Technical Data*/
/*#region Technical Data [all]*/
.technicaldata_item{
    margin-bottom: 60px;
}
.technicaldata_item .collapsed{
    color: #000
}
.technicaldata_item:last-child{
    margin-bottom: 0;
}
.btn_technicaldata{
    display: flex;
    align-items: center;
    background: #eff1f2;
    color: #005691;
    width: 100%;
    text-align: left;
}
.btn_technicaldata:hover{
    color: #005691;
}
.p_technicaldata_desc{
    font-size: 18px;
    padding: 1rem 1.25rem;
    width: auto;
    min-width: 0;
    max-width: 100%;
    flex: 10000 1 0%;
}
.technicaldata_plus{
    display: block;
    position: relative;
    height: 22px;
    width: 22px;
    min-height: 22px;
    min-width: 22px;
    margin-right: 1.25rem;
}
.technicaldata_plus::before{
    content: '';
    background: #005691;
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    top: 10px;
}
.technicaldata_item .collapsed .technicaldata_plus::after{
    transform: rotate(0deg);
    opacity: 1;
}
.technicaldata_plus::after{
    content: '';
    background: #005691;
    position: absolute;
    display: block;
    height: 100%;
    width: 2px;
    left: 10px;
    transform: rotate(-90deg);
    opacity: 0;
    transition: transform .5s, opacity .5s;
}

.p_table_td_footnote{
    font-size: 14px;
    text-align: right;
    margin-top: .5rem;
}

@media only screen and (max-width: 575.98px){
    .p_technicaldata_desc{
        font-size: 16px;
        padding: .75rem;
    }
    .technicaldata_plus{
        margin-right: .75rem;
    }
    .technicaldata_plus{
        height: 18px;
        width: 18px;
        min-height: 18px;
        min-width: 18px;
    }
    .technicaldata_plus::before{
        top: 8px;
    }
    .technicaldata_plus::after{
        left: 8px;
    }
}
/*#endregion*/

/*#region Technical Data [standard]*/
.table_technicaldata{
    width: 100%;
    border-top: 2px solid #005691;
}
.table_technicaldata tr{
    border-bottom: 1px solid #DFDFE0;
}
.table_technicaldata tr:hover{
    background: #eff1f2;
}
.table_technicaldata td{
    padding: .5rem 1.25rem;
}
.table_technicaldata td:first-child{
    font-weight: 500;
}

@media only screen and (max-width: 575.98px){
    .table_technicaldata td{
        display: block;
        padding: .5rem .75rem;
    }
    .table_technicaldata td:first-child{
        padding-bottom: .25rem;
    }
    .table_technicaldata td:last-child{
        padding-top: 0;
    }
    .table_technicaldata{
        font-size: 14px;
    }
}
/*#endregion*/

/*#region Technical Data [v2]*/
#sec_technicaldata_v2{
    overflow: visible;
}
.technicaldata_v2_content .compare{
    text-align: center;
}
.technicaldata_v2_content .compare .col-12, .col-sm-3{
    text-align: left;

}

.technicaldata_v2_content .technicaldata_v2_body .compare_measuring .row .col-sm-3{
    text-align: left;
    color: #fff;
    background-color: #003B6A; 
    padding: 0px;
    
}
.technicaldata_v2_content .technicaldata_v2_body .compare_measuring .row .col-12{
    text-align: left;
    color: #fff;
    background-color: #003B6A;
}
.technicaldata_v2_content .technicaldata_v2_body .compare_measuring .col-sm-3 ,.col-12 img{
    max-height: 40px; 
    margin: auto;
    padding: 0.25rem 0.75rem 0.25rem 0.25rem;
}

.technicaldata_v2_content .compare_measuring{
    text-align: center;
}

.technicaldata_v2_head .compare .col img{
    margin: auto;
    max-height: 120px;
    padding-top: 0.25rem;
}

.technicaldata_v2_content{
    position: relative;
    padding-top: .5rem;
}

.technicaldata_v2_head{
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
    background: #fff;
    border-bottom: 2px solid #005691;
}
.technicaldata_v2_head .row{
    margin: 0;
}
.technicaldata_v2_head .row div{
    padding: .75rem 1rem;
    font-weight: 500;
    margin-top: 4rem;
}

.technicaldata_v2_body .row{
    margin: 0;
    border-bottom: 1px solid #DFDFE0;
}
.technicaldata_v2_body .row:hover{
    background: #eff1f2;
}
.technicaldata_v2_body .row:first-child{
    /* padding-top: 5px; */
    margin-bottom: 0px;
}
.technicaldata_v2_body .row div{
    padding: .5rem 1rem;
}
.technicaldata_v2_body .row .col-12{
    font-weight: 500;
}

@media only screen and (max-width: 575.98px){
    .technicaldata_v2_content{
        font-size: 14px;
    }
    .technicaldata_v2_head .row .col-sm-3{
        display: none;
    }
    .technicaldata_v2_head .row div{
        padding: .75rem;
    }

    .technicaldata_v2_body .row{
        margin-top: 1.5rem;
        border: none;
    }
    .technicaldata_v2_body .row:first-child{
        margin-top: .75rem;
        padding-top: 0;
    }
    .technicaldata_v2_body .row .col-12{
        border-bottom: 1px solid #DFDFE0;
    }
    .technicaldata_v2_body .row div{
        border: none;
        padding: .5rem .75rem;
    }
}
/*#endregion*/
/*#endregion*/

/*#region Recommended Batteries*/
.battery_card{
    background: #fff;
    border: 1px solid #DFDFE0;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 1rem;
}

.battery_card_focus{
    background: #003B6A;
    background-image: linear-gradient(to right,#003B6A,80%,#005691);
    color: #fff;
    border: none;
}

.battery_card .card_header{
    border-bottom: 1px solid #DFDFE0;
    padding: 0 .25rem .25rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.battery_card_focus .card_header{
    border-bottom: 1px solid #fff;
}

.battery_card .card_header img{
    width: 40px;
    margin-right: .5rem;
}
.battery_card .card_header p{
    font-size: 1rem;
    font-weight: 700;
    margin-right: auto;
    padding-right: 1rem;
    color:#003B6A;
}
.battery_card .card_header .img_biturbo{
    width: 90px;
    margin: .5rem 0;
}

.battery_card ul{
    flex-grow: 1;
    margin: 1rem 0;
}
.battery_card li{
    list-style: none;
    position: relative;
    padding-left: 1.25rem;
    padding-right: .25rem;
    margin-bottom: .25rem;
}
.battery_card li::before{
    content: "";
    position: absolute;
    background: #003B6A;
    width: 6px;
    height: 6px;
    left: .25rem;
    top: 8px;
}
.battery_card_focus li::before{
    background: #fff;
}

.battery_card_focus h5{
    font-size: 1rem;
    font-weight: 700;
    margin-right: auto;
    color:white;
    text-align: center;
}

.battery_card .card_images{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 -.5rem .5rem;
}
.battery_card .card_images img{
    width: 120px;
    height: auto;
    margin: .5rem;
}

.battery_info{
    padding: .5rem;
    margin: 0 -1rem -1rem;
}
.battery_info2{
    background: rgba(0, 123, 192, 0.1);
    color: rgba(0, 123, 192, 1);
}
.battery_info3{
    background: rgba(226, 0, 21, 0.1);
    color: rgba(226, 0, 21, 1);
}

.battery_card table {
    margin:auto;
}

.battery_card table .IP_header{
    font-size: 30px;
    font-weight: 800;
}


.battery_card table td:first-child{
    text-align: right;
}



.battery_card table .IP_class{
    font-size: 8rem;
    font-weight: 600;
    line-height: 7rem;
    padding: 0.5rem 0.25rem 0rem 0.25rem;
}

.battery_card table .IP_class_desc{
    margin: auto;
}

.battery_card .IP_desc td:first-child{
    font-size: 2rem;
    line-height: 2rem;
    font-weight: 600;
    margin: auto;
    padding: 0.25rem 0.75rem 0.25rem;
    color: #003B6A;
}

.battery_card .IP_desc tr{
    border-bottom: 1px solid #DFDFE0;

}

.battery_card .IP_desc tr:last-child{
    border-bottom: none;
}

.battery_card .IP_desc .focus_1 td{
    background-color: #003B6A;
    color: white;
    position: relative;
    left:0%
}
.battery_card .IP_desc .focus_2 td{
    background-color: #005691;
    color: white;
}
.battery_card .line_1{
    border-top: 2px solid black;
    width: 200px;
    position: relative;
    top:20px;
    left:100px;
}

.crossed {
    background: 
        linear-gradient(to top left,
            rgba(0,0,0,0) 0%,
            rgba(0,0,0,0) calc(50% - 0.8px),
            rgba(0,0,0,1) 50%,
            rgba(0,0,0,0) calc(50% + 0.8px),
            rgba(0,0,0,0) 100%),
        linear-gradient(to top right,
            rgba(0,0,0,0) 0%,
            rgba(0,0,0,0) calc(50% - 0.8px),
            rgba(0,0,0,1) 50%,
            rgba(0,0,0,0) calc(50% + 0.8px),
            rgba(0,0,0,0) 100%);
}
/*#endregion*/

/*#region FAQ*/
#faq_acc{
    border-top: 1px solid #DFDFE0;
}
.faq_item{
    border-bottom: 1px solid #DFDFE0;
    position: relative;
}
.faq_qtn{
    cursor: pointer;
    display: flex;
    width: 100%;
    text-align: left;
}

.faq_item .collapsed .p_faq_qtn::before{
    transform: rotate(0deg);
}
.p_faq_qtn::before{
    position: absolute;
    content: "";
    left: 0;
    margin-top: -1px;
    width: 28px;
    height: 28px;
    background-image: url("../img/required/forward-right-small-blue.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transform: rotate(90deg);
    transition: transform .3s;
}

.p_faq_qtn{
    position: relative;
    padding: 1rem 1rem 1rem 1.75rem;
    font-weight: 500;
    font-size: 18px;
    min-width: 0;
    max-width: 100%;
    flex: 10000 1 0%;
    color: #005691;
}
.collapsed .p_faq_qtn{
    color: #000;
}
.faq_qtn:hover .p_faq_qtn{
    color: #005691;
}

.p_faq_ans{
    padding: .25rem 1rem 1.5rem 1.75rem;
}

@media only screen and (max-width: 575.98px){
    .p_faq_qtn{
        padding: .75rem .75rem .75rem 1.5rem;
    }
    .p_faq_qtn::before{
        width: 24px;
        height: 24px;
    }
    .p_faq_qtn{
        font-size: 16px;
    }
    .p_faq_ans{
        font-size: 14px;
        padding: .25rem .75rem 1.25rem 1.5rem;
    }
}
/*#endregion*/

/*#region Quiz*/
#sec_quiz .container-xl{
    position: relative;
}

.quiz_item{
    padding: 1rem 0;
    border-left: 2px solid #A8AFB5;
}

.quiz_header{
    padding: 0 1.5rem;
}
.p_quiz_header{
    font-size: 14px;
    text-transform: uppercase;
    color: #A8AFB5;
    padding-bottom: .5rem;
    font-weight: 700;
}
.p_quiz_qtn{
    font-weight: 500;
    font-size: 18px;
    opacity: .5;
}

.quiz_content_container{
    padding: 1rem 1.5rem 0;
}
.quiz_content_container .custom-checkbox, .quiz_content_container .custom-radio{
    padding-top: .5rem;
    border-radius: 0;
}
.quiz_content_container .custom-checkbox .custom-control-label::before{
    border-radius: 2px;
}
.quiz_content_container .custom-control-input:checked~.custom-control-label::before{
    border-color: #005691;
    background-color: #005691;
}
.quiz_content_container .custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before, .quiz_content_container .custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{
    border-color: #005691;
    background-color: #005691;
    opacity: .5;
}
.quiz_content_container .custom-control-label{
    padding-top: 1px;
}
.quiz_content_container .custom-control-label:hover{
    color: #005691;
}
.quiz_content_container .custom-control-input:disabled~.custom-control-label, .custom-control-input[disabled]~.custom-control-label{
    pointer-events: none;
}

.quiz_controls{
    margin-top: 1.5rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.btn_quiz{
    margin-right: .5rem;
    text-transform: uppercase;
}

.quiz_active{
    border-left: 2px solid #003B6A;
}
.quiz_active .p_quiz_header{
    color: #003B6A;
}
.quiz_active .p_quiz_qtn{
    opacity: 1;
}
.quiz_correct{
    border-left: 2px solid #006249;
}
.quiz_correct .p_quiz_header{
    color: #006249;
}
.quiz_incorrect{
    border-left: 2px solid #EA0016;
}
.quiz_incorrect .p_quiz_header{
    color: #EA0016;
}

#spinner_result{
    display: none;
    border-color: #003B6A;
    border-right-color: transparent;
}
.quiz_result_msg{
    display: none;
    padding: 1rem;
}
.quiz_result_msg p{
    font-size: 18px;
}
#quiz_won{
    background: rgba(0, 97, 73, .15);
    border: 1px solid #006249;
}
.p_quiz_won{
    color: #006249;
}
#quiz_lost{
    margin-top: 5px;
    background: rgba(234, 0, 22, .15);
    border: 1px solid #EA0016;
}

#btn_retake_quiz{
    position: relative;
    margin-top: .5rem;
    text-transform: uppercase;
    text-align: left;
    display: flex;
    align-items: center;
}
#btn_retake_quiz span{
    margin-right: 2px;
}
#btn_retake_quiz img{
    width: 24px;
    height: 24px;
}
#btn_retake_quiz:hover{
    text-decoration: underline;
}

.endmsg{
    margin-top: 1rem;
}
.endmsg p{
    font-size: 16px;
}

.tt_quiz_correct{
    display: none;
    width: 38px;
    height: 38px;
    animation: jump_in_correct .4s ease-out;
}
.tt_quiz_incorrect{
    display: none;
    width: 38px;
    height: 38px;
    animation: jump_in_incorrect .4s ease-out;
}
.tt_quiz_correct img{
    width: 100%;
    height: 100%;
}
.tt_quiz_incorrect img{
    width: 100%;
    height: 100%;
}
.quiz_correct .tt_quiz_correct{
    display: inline-block;
}
.quiz_incorrect .tt_quiz_incorrect{
    display: inline-block;
}
@keyframes jump_in_correct{
    0%{
        transform: scale(.5) rotate(75deg);
    }
    40%{
        transform: scale(1.3);
    }
    70%{
        transform: scale(.8);
    }
    100%{
        transform: scale(1) rotate(0deg);
    }
}
@keyframes jump_in_incorrect{
    0%{
        transform: scale(.5) rotate(-75deg);
    }
    40%{
        transform: scale(1.3);
    }
    70%{
        transform: scale(.8);
    }
    100%{
        transform: scale(1) rotate(0deg);
    }
}

@media only screen and (max-width: 767.98px){
    .quiz_header{
        padding: 0 1rem;
    }
    .quiz_content_container{
        padding: 1rem 1rem 0;
    }
}
@media only screen and (max-width: 575.98px){
    .p_quiz_qtn{
        font-size: 16px;
    }
    .quiz_content_container .custom-control-label{
        font-size: 14px;
        padding-top: 3px;
    }
    .btn_quiz{
        font-size: 14px;
        font-weight: 500;
    }
    .quiz_result_msg p{
        font-size: 16px;
    }
    #btn_retake_quiz{
        font-size: 14px;
        font-weight: 500;
    }
    .endmsg p{
        font-size: 14px;
    }
}
/*#endregion*/

/*#region Certificate*/
#cert{
    display: none;
    padding-top: 1rem;
}
.p_cert{
    margin-bottom: .5rem;
}
.cert_form{
    display: flex;
}
#btn_cert{
    display: flex;
    align-items: center;
    height: 48px;
}
#btn_cert img{
    height: 100%;
    margin-right: .25rem;
}
#btn_cert span{
    margin-right: .5rem;
}
.cert_input{
    position: relative;
    height: 3rem;
    width: auto;
    margin-right: .5rem;
    width: 100%;
    max-width: 300px;
}
.cert_input .cert_input_field{
    background-color: #e0e2e5;
    border: 0;
    border-bottom: .0625rem solid #000;
    height: 3rem;
    padding: 0 1rem;
    width: 100%;
    border-radius: 0;
}
.cert_input .cert_input_field:hover{
    background-color: #c1c7cc;
}
.cert_input .cert_input_field:active{
    background-color: #a4abb3;
}
.cert_input .cert_input_field:focus{
    background-color: #d1e4ff;
    border-bottom-color: #007bc0;
    outline: none;
}
.cert_input .cert_input_label{
    position: absolute;
    margin: .25rem 1rem auto;
    font-size: .75rem;
    max-width: calc(100% - 4rem);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cert_input .cert_input_label+.cert_input_field{
    padding-top: 1.125rem;
    padding-bottom: .3125rem;
}

@media only screen and (max-width: 575.98px){
    .p_cert{
        margin-bottom: 1rem;
    }
    .cert_form{
        flex-direction: column;
    }
    .cert_input{
        max-width: none;
        margin-bottom: .5rem;
    }
    #btn_cert{
        margin-right: auto;
        font-size: 14px;
    }
}
/*#endregion*/

/*#region Footer*/
#sec_footer{
    padding: 0;
}
.footer_content{
    padding: 30px 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top: 1px solid #DFDFE0;
}
.footer_content p, .footer_content a{
    margin: 0 1rem;
}
.footer_links{
    display: flex;
}
.supergraphic_bottom{
    background-image: url("../img/required/supergraphic.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 10px;
}

@media only screen and (max-width: 991.98px){
    .footer_content{
        padding: 30px 0;
        flex-direction: column-reverse;
        align-items: center;
        text-align: center;
    }
    .footer_links{
        margin-bottom: .5rem;
    }
}
@media only screen and (max-width: 575.98px){
    .footer_content{
        font-size: 14px;
    }
    .footer_links{
        flex-direction: column;
    }
    .footer_content p, .footer_content a{
        margin: auto;
    }
}
/*#endregion*/
