﻿* {
    font-family: 'Gotham-Book';
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 16px;
}

html {
    font-size: 5.208333333333334vw !important;
}

.adv-bootom .advbootomNav .productDetailsBanner_headingRow .webHeadingSmall {
    font-size: 36px;
}

@media (min-width: 1920px) {
    html {
        font-size: 100px !important;
    }
}

.contentHeader {
    /* display: flex;
    padding: 100px 50px 50px 50px; */
    position: relative;
}

    .contentHeader .contentHeader-content {
        display: flex;
        /* font-size: 5.208333333333334vw; */
        /* padding: 60px 50px 0px 50px; */
        padding: 0.6rem 0.5rem 0 0.5rem;
        position: absolute;
        top: 0;
    }

    .contentHeader .headline {
        /* width: 480px;
        margin-right: 30px;
        margin-left: 100px; */
        /* width: 4.8rem; */
        margin-right: 2rem;
        margin-left: 1rem;
    }

    .contentHeader .shortDesc {
        /* font-size: 20px !important; */
        font-size: 0.24rem !important;
        /* line-height: 0.2rem; */
        text-transform: uppercase;
        font-weight: normal !important;
    }

    .contentHeader ul, li {
        list-style: none;
    }

    .contentHeader .description {
        color: #363636;
        /* font-size: 18px !important; */
        /* line-height: 25px; */
        font-size: 0.20rem !important;
        line-height: 0.25rem;
        font-family: 'Gotham-Light' !important;
        font-weight: lighter;
    }

.top_con {
    display: flex;
}

.advlog li span, .advlog li b {
    /* font-size: 70px !important; */
    font-size: 0.96rem !important;
    line-height: 0.96rem;
}

.advlog li b {
    text-stroke: 4px #000;
    -webkit-text-stroke: 4px #000;
}

.advlog li span {
    margin-left: 12px;
    font-family: 'Gotham-Light' !important;
    font-weight: normal;
}

.advlog li {
    /* font-size: 21px; */
    /* font-size: 5.208333333333334vw; */
    white-space: nowrap;
}

    .advlog li:not(:first-of-type) {
        margin-top: 0.24rem;
    }

.top_con p {
    margin-left: 28px;
    font-size: 18px;
    color: #868686;
}

.banner {
    /*padding: 50px 50px;*/
    /*padding-bottom: 105px;*/
    margin-bottom: 50px;
}

.swiper {
    width: 91.5%;
    overflow: hidden;
    position: relative;
    margin: 0 auto;
    /* margin-top: 50px; */
}

.banner > div {
    position: relative;
}

    .banner > div .swiper-button-prev img, .banner > div .swiper-button-next img {
        width: 1.2vw;
    }

    .banner > div .swiper-button-prev {
        /*left: 50px;*/
        cursor: pointer;
    }

    .banner > div .swiper-button-next {
        /*right: 50px;*/
        cursor: pointer;
    }

.swiper-button-prev:after, .swiper-button-next:after {
    display: none;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: 0.1;
}

.adv-bootom {
    padding-left: 77.3605px;
    display: flex;
    padding-top: 40px;
}

/* .product-configurator {
    display: flex;
    align-items: center;
}
.product-configurator .projectDetails {
    display: flex;
    align-items: center;
    width: 100%;
}

.product-configurator .otherBtn {
    flex: 1
} */
.documentsOnTop {
    background: #F9F9F9;
    width: 100%;
    padding: 15px 30px;
}

.advbootomNav .webHeadingSmall {
    text-align: right;
}

.downloadList .downloadFiles {
    padding-left: 60px;
}

.downloadFiles p {
    font-family: 'Gotham-Medium';
    color: #363636;
    text-transform: uppercase;
    font-size: 16px;
    cursor: pointer;
}

    .downloadFiles p:hover {
        text-decoration: underline;
    }

.advbootomNav .webHeadingSmall {
    /* width: 730.953px; */
    width: 350px;
}

.downloadList .downloadTypes {
    /* width: 730.953px; */
    width: 350px;
}

.downloadList .downloadFiles {
    /* width: calc(100% - 730.953px); */
    width: calc(100% - 350px);
    flex-direction: initial;
}

    .downloadList .downloadFiles .downImg {
        padding-left: 100px;
    }

    .downloadList .downloadFiles ul li a {
        height: 20px;
        margin-bottom: 6px;
        display: block;
    }

        .downloadList .downloadFiles ul li a img {
            height: 20px;
        }

/*.topButtonContainer .buttonsAbovePriceBuilder {
    width: 100% !important;*/
/*padding-left: 10px !important;*/
/*}

    .topButtonContainer .buttonsAbovePriceBuilder .priceBuilderTopButtons.active {
        background: #000;
        display: flex;
        align-items: center;
        color: #fff;
        justify-content: center;
        border-radius: unset;
    }

    .topButtonContainer .buttonsAbovePriceBuilder .priceBuilderTopButtons {
        width: calc((100% / (var(--columnCount) )) - 10px) !important;
        padding: 0;
    }*/

.downloadList .downloadTypes .item.selected a:not(.fa) {
    cursor: pointer;
}

    .downloadList .downloadTypes .item.selected a:not(.fa):hover {
        text-decoration: underline !important;
    }



@media (max-width: 1790px) {
    .downloadFiles p {
        font-size: 14px;
    }

    .advbootomNav .webHeadingSmall {
        width: 300px;
    }

    .downloadList .downloadTypes {
        width: 200px;
        font-size: 26px;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 300px);
    }

        .downloadList .downloadFiles table .downloadFilesName a,
        .downloadList .downloadTypes .item a {
            font-size: 16px;
        }
}

@media (max-width: 1570px) {
    .downloadFiles p {
        font-size: 12px;
    }

    .advbootomNav .webHeadingSmall {
        width: 150px;
    }

    .downloadList .downloadTypes {
        width: 100px;
        font-size: 22px;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 150px);
    }

        .downloadList .downloadFiles table .downloadFilesName a,
        .downloadList .downloadTypes .item a {
            font-size: 15px;
        }

        .downloadList .downloadFiles table .downloadFilesName {
            width: 50%;
        }
}

@media (max-width: 1400px) {

    .advbootomNav .webHeadingSmall {
        width: 100px;
    }

    .downloadList .downloadTypes {
        width: 50px;
        font-size: 20px;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 100px);
    }

        .downloadList .downloadFiles table .downloadFilesName a,
        .downloadList .downloadTypes .item a {
            font-size: 14px;
        }
}

@media (max-width: 1200px) {

    .advbootomNav .webHeadingSmall {
        width: 80px;
    }

    .downloadList .downloadTypes {
        width: 50px;
        font-size: 22px;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 100px);
    }

        .downloadList .downloadFiles table .downloadFilesName a,
        .downloadList .downloadTypes .item a {
            font-size: 12px;
        }
}

@media (max-width: 800px) {

    .documentsOnTop {
        padding: 0;
    }

    .advbootomNav .webHeadingSmall {
        width: 80px;
    }

    .downloadList .downloadTypes {
        width: 50px;
        font-size: 14px;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 50px);
    }

    .downloadList .downloadTypes .item {
        margin: 0px !important;
    }

        .downloadList .downloadFiles table .downloadFilesName a,
        .downloadList .downloadTypes .item a {
            font-size: 12px;
        }
}


.advselect {
    padding-left: 42px;
}

.downlightttype {
    width: 100%;
}

    .downlightttype ul {
        width: 100%;
        display: flex;
    }

        .downlightttype ul li {
            width: calc((100% / var(--columnCount)) - 10px);
            margin-right: 10px;
        }

            .downlightttype ul li img {
                width: 100%;
            }


.topButtonContainer .buttonsAbovePriceBuilder .priceBuilderTopButtons:hover span {
    color: #000 !important;
}

.Source {
    display: flex;
    margin-bottom: 30px;
}

    .Source .downSource {
        width: calc(50% - 10px);
        margin-right: 10px;
        flex-shrink: 0;
    }

.downSource .customDiv {
    height: 100%;
}

    .downSource .customDiv ul {
        display: flex;
        justify-content: space-between;
        padding-top: 5px;
    }

.Source .customDiv ul li p {
    display: flex;
}

.Source .downSource .customDiv ul li p {
    margin-bottom: 20px;
}

.downSource .customDiv ul li {
    margin-left: 8px;
}

.Source .downSource .downSourceName {
    font-size: 12px !important;
    font-family: Gotham-Bold !important;
}

.downSource .customDiv ul li.li60 {
    margin-right: 8px;
}

.Source .customDiv ul li .downSource_imgtext {
    width: 1vw;
    height: 1vw;
    /* background: #E5E5E5; */
    display: block;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
    /*font-size: 0.1em;*/
}

.Source .customDiv ul li .downSource_imgtext_background {
    background-color: #E5E5E5;
}

.Source .customDiv ul li img {
    /* height: 20px !important; */
    height: 0.2rem !important;
    margin-right: 2px;
    cursor: pointer;
    transition: height .35s, weight .35s;
}

.Source .linear {
    margin-right: 10px;
    width: calc(20% - 10px);
}

    .Source .linear .customDiv ul li p {
        margin-bottom: 0px;
    }

.linear .customDiv .catNumber {
    margin-left: 10px;
    /* margin-right: 3px; */
}

.linear .customDiv .item {
    margin-left: 10px;
}

    .linear .customDiv .item p {
        margin-bottom: 5px;
    }

.Source .linear .pricebuilderList > li > p {
    margin: 0;
}

    .Source .linear .pricebuilderList > li > p > i {
        border: 2px solid #000;
        display: inline-block;
        width: 70px;
        height: 18px;
        margin-left: 10px;
        border-bottom: 3px solid #000;
        margin-right: 2px;
    }

.Source .linear .pricebuilderList > li {
    /* margin-top: 1.58px; */
}

    .Source .linear .pricebuilderList > li.lin2 {
        margin-top: 0;
    }

    .Source .linear .pricebuilderList > li.lin3 > p > i {
        width: 105px;
    }

    .Source .linear .pricebuilderList > li.lin4 > p > i {
        width: 140px;
    }

    .Source .linear .pricebuilderList > li.lin5 > p > i {
        width: 175px;
    }

    .Source .linear .pricebuilderList > li.lin6 > p > i {
        width: 210px;
    }

    .Source .linear .pricebuilderList > li.lin7 > p > i {
        width: 245px;
    }

    .Source .linear .pricebuilderList > li.lin8 > p > i {
        width: 280px;
    }

    .Source .linear .pricebuilderList > li > div > p {
        margin: 0;
        padding-left: 10px;
    }

    .Source .linear .pricebuilderList > li > span {
        padding: 0;
        padding-left: 10px;
    }

.Source .Test .pricebuilderList {
    padding-top: 5px;
}

.Source .Test.downSource .pricebuilderList {
    padding-right: 8px;
}

.Source .linear .pricebuilderList {
    padding-right: 30px
}

.Source .linear .liniaSourcesName {
    font-size: 12px !important;
    font-family: 'Gotham-Medium' !important;
}

.mech .pricebuilderList > li > div > p {
    margin-left: 10px;
    /* margin-bottom: 1.58px; */
}

.Source .mech .pricebuilderList .catNumber {
    font-size: 0.14rem !important;
    font-family: 'Gotham-bold' !important;
}


.mech .mech_con {
    display: flex;
}


.mech .customDiv ul li {
    margin: 0px 10px;
    height: auto !important;
}

.Source .mech .customDiv ul li p {
    margin-bottom: 0px;
}

.mech .mech_con ul li span i {
    font-style: normal;
    font-size: 12px;
}

.Source .mech .mechSourceName {
    font-size: 12px !important;
    font-family: 'Gotham-Book' !important;
}

.targetArea .dropArea .sources {
    display: flex;
}

.targetArea .somebutton .right {
    align-items: end !important;
}

.targetArea .somebutton {
    height: auto !important;
    /* margin-bottom: 50px !important; */
}

.Source .componentDescr {
    font-size: 12px !important;
    margin-left: 2px;
}

@media (max-width: 1800px) {
    .Source .customDiv ul li .downSource_imgtext {
        width: 0.8vw !important;
        height: 0.8vw !important;
        font-size: 0.12rem !important;
        line-height: 12px;
    }

    .Source .customDiv ul li img {
        height: 0.9vw !important;
    }

    .Source .downSource .downSourceName {
        font-size: 0.12rem !important;
    }

    .Source .linear .liniaSourcesName {
        font-size: 0.12rem !important;
    }

    .Source .mech .mechSourceName {
        font-size: 0.12rem !important;
    }

    .Source .linear .pricebuilderList li {
        height: 30px !important;
    }

    .Source .Test .mech_con .pricebuilderList > li {
        width: auto !important;
        margin-right: 10%;
    }
}

.Source .PriceBuilderColumnTitle span {
    font-weight: normal;
    font-size: 0.12rem !important;
    display: inline-block;
    /* -webkit-transform: scale(0.8);
    -webkit-transform-origin: 0 50%; */
}

@media screen and (max-width: 1560px) {
    .Source .PriceBuilderColumnTitle span {
        zoom: 0.8;
    }
}

.Source .PriceBuilderColumnTitle {
    font-size: 0.16rem !important;
}

.weui-popu_container {
    position: fixed;
    /*width: 300px;*/
    left: 50%;
    margin-left: -100px;
    top: 300px;
    border: 1px solid #000;
    background: #fff;
    display: none;
    z-index: 999;
    max-width: 300px;
    width: fit-content;
}

.weui-popup__overlay {
    width: 100%;
    background: #dedede;
    display: flex;
    padding: 5px;
    justify-content: space-between;
    font-size: 14px;
}

    .weui-popup__overlay h3 {
        font-size: 14px;
        margin: 0;
    }

    .weui-popup__overlay .close {
        cursor: pointer;
        font-size: 14px;
    }

.weui-popup__modal {
    width: 100%;
    background: #fff;
    padding: 10px;
}

.weui-popu_container .btndiv {
    width: 100%;
    display: flex;
    justify-content: center;
}

.weui-popu_container .btnclose {
    background: #000;
    color: #fff;
    font-size: 16px;
    margin: 5px;
    padding: 2px 3px;
    border-radius: 2px;
    opacity: 1;
}

.targetArea .totalLine {
    width: 100%;
}


.targetArea .dropArea .sources li {
    position: relative;
}

    .targetArea .dropArea .sources li.dropbgsuccess {
        /* background: #86c998; */
        position: relative;
    }

        .targetArea .dropArea .sources li.dropbgsuccess::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 100%;
            background: rgba(134, 201, 152, 0.5);
            z-index: 9;
            transform: translate(-50%, -50%);
        }

    .targetArea .dropArea .sources li.dropbgerror {
        position: relative;
    }

        .targetArea .dropArea .sources li.dropbgerror::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 100%;
            background: rgb(255, 0, 0, 0.5);
            z-index: 9;
            transform: translate(-50%, -50%);
        }

    .targetArea .dropArea .sources li.dropisins {
        background: #dee9b2;
    }

    .targetArea .dropArea .sources li.dropmove .dropdiv {
        overflow: hidden;
        /* visibility: hidden; */
    }

    .targetArea .dropArea .sources li p {
        margin: 0;
    }

    .targetArea .dropArea .sources li .dropdiv > img {
        /* height: auto; */
        height: 100%;
        width: 100%;
        margin-bottom: 30px;
        display: block;
        /* background: #000; */
    }

    .targetArea .dropArea .sources li .dropdiv .fa-trash {
        position: absolute;
        top: 50%;
        z-index: 4;
        cursor: pointer;
        background: #ff4747;
        color: #fff;
        width: 16px;
        height: 16px;
    }

    .targetArea .dropArea .sources li .dropdiv > div {
        width: 100%;
        text-align: center;
        position: relative;
    }

        .targetArea .dropArea .sources li .dropdiv > div .wallLeft {
            position: absolute;
            left: 0;
            top: 10px;
            width: 1px;
            height: 20px;
            background-color: #000;
        }

        .targetArea .dropArea .sources li .dropdiv > div .des {
            width: 100%;
        }

        .targetArea .dropArea .sources li .dropdiv > div .downLine {
            display: flex;
            align-items: center;
        }

            .targetArea .dropArea .sources li .dropdiv > div .downLine > div {
                width: 100%;
                height: 1px;
                background-color: #000;
            }

        .targetArea .dropArea .sources li .dropdiv > div .wallRight {
            position: absolute;
            /* right: -2px; */
            right: 0;
            top: 10px;
            width: 1px;
            height: 20px;
            background-color: #000;
        }

    .targetArea .dropArea .sources li .dropdiv {
        height: 100%;
        position: absolute;
        /* left: -1px; */
        left: 0;
        top: 0;
        z-index: 3;
    }

.downlightMarkLine {
    margin-bottom: 100px !important;
}


.targetArea .dropArea .sources li .downlight_spacing {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
}

    .targetArea .dropArea .sources li .downlight_spacing > .placeholderDiv {
        height: auto;
        width: 100%;
        margin-bottom: 60px;
        height: 100%;
    }


.targetArea .dropArea .sources li .remainDiv {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 3;
    height: 100%;
}

    .targetArea .dropArea .sources li .remainDiv > .placeholderDiv {
        height: auto;
        width: 100%;
        margin-bottom: 30px;
        height: 100%;
        /* border: 2px solid #4d4d4d;
        border-top-width: 4px;
        border-bottom-width: 4px */
    }


    .targetArea .dropArea .sources li .remainDiv > div {
        width: 100%;
        text-align: center;
        position: relative;
    }

        .targetArea .dropArea .sources li .remainDiv > div .wallLeft {
            position: absolute;
            left: 0;
            top: 10px;
            width: 1px;
            height: 20px;
            background-color: #000;
        }

        .targetArea .dropArea .sources li .remainDiv > div .des {
            color: #ff4d4f;
            width: 100%;
        }

        .targetArea .dropArea .sources li .remainDiv > div .downLine {
            display: flex;
            align-items: center;
        }

            .targetArea .dropArea .sources li .remainDiv > div .downLine > div {
                width: 100%;
                height: 1px;
                background-color: #ff4d4f;
            }

        .targetArea .dropArea .sources li .remainDiv > div .wallRight {
            position: absolute;
            right: 0;
            top: 10px;
            width: 1px;
            height: 20px;
            background-color: #000;
        }


.targetArea .somebutton .left span {
    font-family: 'Gotham-Bold';
}


.targetArea .continue_drop .totalLine {
    width: 50%;
}

.targetArea .somebutton .right .resetButton {
    white-space: nowrap;
}

.targetArea .totalLine span {
    z-index: 3 !important;
}

.totalLine > img {
    z-index: 5;
}

.resetButton {
    width: 15.46666666vw;
}

.product-configurator.projectHeader .resetButton {
    width: auto;
    flex: 1;
    max-width: 295px;
    text-align: center;
}

.swiper-wrapper .swiper-slide {
    cursor: pointer;
}

.Source .Test .pricebuilderList li div {
    width: auto;
}

.Source .mech .pricebuilderList li div {
    align-items: center;
}

.Source .Test .mech_con .pricebuilderList {
    /* display: flex; */
    /*grid-template-columns: 60% 40%;*/
    /* display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 20px;
    width: 100%; */
    /* flex-direction: column; */
    /* flex-wrap: wrap; */
}

    .Source .Test .mech_con .pricebuilderList > li {
        margin-bottom: 10px;
        width: 45%;
        float: left;
    }

        .Source .Test .mech_con .pricebuilderList > li > ul > li span:first-child,
        .Source .linear .pricebuilderList .catNumber {
            white-space: nowrap;
        }

.Source .linear .pricebuilderList li {
    display: flex;
    align-items: center;
    margin-left: 10px;
    height: 40px;
}

/*.Source .Test .mech_con .pricebuilderList > li:not(li:nth-child(2)) ul > li > div {
    display: flex !important;
    justify-content: space-between;
    align-items: start;
}*/

.Source .Test .mech_con .pricebuilderList > li:nth-child(2) ul > li > div .catNumber {
    width: 16px;
}

/* .Source .Test .mech_con .pricebuilderList .pricebuilderListItem {
    margin-left: 20px;
} */

.Source .mech .pricebuilderListItem li {
    height: 40px;
}

@media (max-width: 1800px) {
    .Source .Test .mech_con .pricebuilderList > li > .catNumber {
        /* font-size: 13px !important; */
        font-size: 0.13rem !important;
    }

    .Source .Test .mech_con .pricebuilderList .pricebuilderListItem li .catNumber,
    .Source .linear .pricebuilderList .catNumber {
        font-size: 12px !important;
    }

    .Source .componentDescr {
        font-size: 10px !important;
    }
    /* .Source .Test .mech_con .pricebuilderList .pricebuilderListItem {
        margin-left: 5px;
    } */
}

@media (max-width: 1450px) {
    .Source .Test .mech_con .pricebuilderList > li > .catNumber {
        /* font-size: 13px !important; */
        font-size: 0.13rem !important;
    }

    .Source .Test .mech_con .pricebuilderList .pricebuilderListItem li .catNumber,
    .Source .linear .pricebuilderList .catNumber {
        font-size: 12px !important;
    }

    .Source .componentDescr {
        font-size: 10px !important;
    }
    /* .Source .Test .mech_con .pricebuilderList .pricebuilderListItem {
        margin-left: 5px;
    } */

    .targetArea .somebutton .left {
        width: auto;
        text-align: center;
    }
}

@media (max-width: 992px) {
    .Source .Test .mech_con .pricebuilderList > li > .catNumber {
        /* font-size: 12px !important; */
        font-size: 0.12rem !important;
    }

    .Source .Test .mech_con .pricebuilderList .pricebuilderListItem li .catNumber,
    .Source .linear .pricebuilderList .catNumber {
        font-size: 10px !important;
    }

    .Source .componentDescr {
        font-size: 8px !important;
    }
}

.mech {
    width: 30%;
}

.adv-bootom .advlog li label {
    font-weight: normal;
    font-size: 21px !important;
}

.clearallsel {
    /* display: flex;
    justify-content: flex-end; */
}


.margin-r-0 {
    margin-right: 0px !important;
}

.projectDetails {
    /*margin-bottom: 30px;*/
}

    .projectDetails .data_row .half {
        width: 50%;
        margin-top: 0px !important;
        margin-bottom: 0px !important;
    }

        .projectDetails .data_row .half .data_row {
            margin-top: 0px !important;
            margin-bottom: 0px !important;
        }

    .projectDetails .data_row .smalllabel {
        width: 85px !important;
    }

    .projectDetails .data_row .smalltext {
        width: calc(100% - 85px) !important;
    }

    .projectDetails .data_row .smalltext {
        width: calc(100% - 85px) !important;
    }

    .projectDetails .data_row .catalogLeft {
        text-align: left;
        /*height: 180px;*/
    }

        .projectDetails .data_row .catalogLeft .label {
            height: calc(100% - 5px);
            display: block !important;
            line-height: 30px;
        }

    .projectDetails .data_row .catalogRight {
        text-align: right;
        width: calc(100% - 130px) !important;
    }

        .projectDetails .data_row .catalogRight .text {
            margin-bottom: 5px;
            width: 100% !important;
        }

.alert-danger .close {
    top: 5px;
    position: absolute;
    right: 5px;
}

.paddingSideZero {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.tableBtn {
    width: 100%;
    border: none;
    color: #000 !important;
    display: inline-block;
    font-size: 90%;
}

.activetableBtn {
    background-color: #fff;
    color: #000 !important;
}

.tableBtn:hover {
    BACKGROUND-COLOR: #fff;
    BORDER: none;
    CURSOR: pointer;
    TEXT-DECORATION: none;
}

.pb_labelFontSize, label, li a, td, li span {
    /* font-size: 16px !important;
    font-size: 0.16rem !important;
    font-family: 'Gotham-Light'; */
}

.mech .pricebuilderList > li > p {
    margin-left: 10px;
    /* margin-bottom: 1.58px; */
}






.PriceBuilderColumnTitle {
    text-transform: uppercase;
    white-space: nowrap;
}

@media (max-width: 425px) {
    .Source {
        flex-direction: column;
    }

        .Source .downSource,
        .Source .linear {
            margin-right: 0;
            margin-bottom: 10px;
        }

        .Source .downSource, .mech {
            width: auto;
        }
}

.customDiv {
    /* height: 200px; */
    width: 100% !important;
    text-align: left !important;
}

.OptionsTitle {
    font-weight: bold;
    display: block;
    padding-top: 5px !important;
}


.HideControl {
    visibility: hidden;
    width: 0px !important;
}

.PageAlert {
    display: none;
}

.priceBuilderLoading {
    width: 100%;
    background: rgba(0,0,0,0);
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 9;
    display: none;
}


.webHeadingSmall .littleHeading {
    font-size: 14px !important;
    text-transform: none !important;
    letter-spacing: 1px !important;
    padding-left: 10px;
}

.priceBuilderTopButtons:hover, .priceBuilderTopButtons.active {
    background: #000;
    color: #fff;
}

    .priceBuilderTopButtons .btnImg.activeImg,
    .priceBuilderTopButtons.active .btnImg,
    .priceBuilderTopButtons:hover .btnImg {
        display: none;
    }

        .priceBuilderTopButtons:hover .btnImg.activeImg,
        .priceBuilderTopButtons.active .btnImg.activeImg {
            display: block;
        }

.priceBuilderTopButtons {
    display: flex;
    flex-direction: column;
    background: #fff;
    color: #000;
    border: 1px solid #000;
    padding: 5px 15px;
    margin: 0.55%;
    width: 15.45%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    font-weight: bold;
}

    .priceBuilderTopButtons .btnText {
        width: calc(100% - 70px);
        white-space: initial;
        font-size: 16px;
        font-weight: bold;
        text-align: left;
    }

    .priceBuilderTopButtons .btnImg {
        width: 58px;
    }


.priceBuilderTopButtons_row {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 5px 0px;
}

@media (max-width: 425px) {
    .buttonsAbovePriceBuilder {
        justify-content: center;
    }
}

.priceBuilderTopButtonsVisionTwo, .priceBuilderTopButtonsVisionTwo {
    background: #000;
    color: #FFF !important;
}

    .priceBuilderTopButtonsVisionTwo:not(.active) .btnTextVisionTwo {
        color: #ffffff80 !important;
        font-weight: 400 !important;
    }

.priceBuilderTopButtonsVisionTwo {
    position: relative;
    flex-direction: column;
    background: #fff;
    color: #000;
    border: 1px solid #000;
    padding: 0;
    margin-right: 10px;
    margin-bottom: 10px;
    width: calc((100% / var(--columnCount
        )) - 10px) !important;
    text-align: center;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-radius: 0;
    font-weight: bold;
}

    .priceBuilderTopButtonsVisionTwo .btnTextVisionTwo {
        position: absolute;
        /* left: 35px; */
        /* bottom: 0; */
        bottom: 2px;
        /* width: calc(100% - 70px); */
        white-space: initial;
        /* font-size: 0.625vw; */
        font-size: 0.12rem;
        font-weight: bold;
        font-family: Gotham Black;
        /* line-height: 15px; */
        line-height: 0.15rem;
    }

    .priceBuilderTopButtonsVisionTwo .btnImgVisionTwo {
        width: 100%;
    }

.priceBuilderTopButtonsVisionTwo_row {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 5px 0px;
}

.priceBuilderTopButtonsVisionTwo.active .btnTextVisionTwo {
    text-shadow: 0px 1px 2px rgb(50 50 50 / 0.75);
}

.priceBuilderTopButtonsVisionTwo:not(.active) .btnTextVisionTwo {
    color: #ffffff80;
    font-weight: 400;
    text-shadow: 0px 1px 1px #CCCCCC;
}


.visualSelectedTitle {
    display: flex;
}

    .visualSelectedTitle .colName {
        width: 80%;
        border-right: 1px solid #000;
    }

    .visualSelectedTitle .qty {
        width: 20%;
        font-weight: lighter !important;
        text-align: center
    }

.visualPerSelected {
    display: flex;
    background: rgb(128,128,128);
    color: #FFF !important;
    margin-bottom: 1px;
}

    .visualPerSelected .selectedPerText {
        width: 80%;
        margin-bottom: 0 !important;
        padding: 10px 5px 10px 10px;
        border-right: 1px solid #000;
        display: inline-flex;
    }

    .visualPerSelected .selectedPerQTY {
        width: 20%;
        margin-bottom: 0 !important;
        padding: 10px 5px 10px 10px;
        text-align: center;
    }

.clearbtndiv > div {
    display: flex;
    justify-content: flex-end;
    margin-right: 10px;
}

.targetArea .start {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

    .targetArea .start span:nth-of-type(2) {
        display: flex;
        align-items: center;
    }

    .targetArea .start .lengthLine {
        width: 80px;
        height: 1px;
        background-color: #000;
        margin-left: 10px;
    }

.targetArea .dropArea {
    position: relative;
    height: 1.565vw;
    /* height: 0.26vw; */
    margin-bottom: 65px;
}

    .targetArea .dropArea .target {
        height: 100%;
        display: flex;
        /* width: min-content; */
    }

        .targetArea .dropArea .target li {
            /* width: 1.565vw; */
            width: 0.26vw;
            /* background: #000; */
            height: 100%;
            position: relative;
            top: 0;
        }

            .targetArea .dropArea .target li p {
                position: relative;
                background-color: transparent;
                border-right: 1px solid #767676;
                /* height: 2.45vw; */
                width: 100%;
                height: 25%;
                /* margin-top: 100%; */
                margin-top: 600%;
                position: absolute;
                top: 0;
            }

                .targetArea .dropArea .target li p.half {
                    height: 37.5%;
                    border-right: 1px dashed #767676;
                }

                .targetArea .dropArea .target li p.full {
                    border-right: 1px solid #767676;
                    height: 50%;
                }

.targetArea > .dropArea .target li:first-child p::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 200%;
    border-left: 1px solid #767676;
}

.targetArea .dropArea .target li p.leftBorderNormal::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-left: 1px solid #767676;
}

.targetArea .dropArea .target li p.half.leftBorderNormal::after {
    height: 66%;
}

.targetArea .dropArea .target li p.full.leftBorderNormal::after {
    height: 50%;
}

.targetArea .dropArea .target li p.leftBorderHalf::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 150%;
    border-left: 1px dashed #767676;
}

.targetArea .dropArea .target li p.leftBorderFull::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 200%;
    border-left: 1px solid #767676;
}

.targetArea .dropArea .sources {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    max-width: 100%;
}

    .targetArea .dropArea .sources li {
        /* width: 1.565vw; */
        width: 0.26vw;
        /* background: #000; */
    }

        .targetArea .dropArea .sources li > img {
            height: auto;
            width: 100%;
            margin-bottom: 30px;
        }

        .targetArea .dropArea .sources li > div {
            width: 100%;
            text-align: center;
            position: relative;
        }

            .targetArea .dropArea .sources li > div .downLine {
                display: flex;
                align-items: center;
            }

            .targetArea .dropArea .sources li > div .wallLeft {
                position: absolute;
                left: 0;
                top: 10px;
                width: 1px;
                height: 20px;
                background-color: #000;
            }

            .targetArea .dropArea .sources li > div .wallRight {
                position: absolute;
                right: 0;
                top: 10px;
                width: 1px;
                height: 20px;
                background-color: #000;
            }

            .targetArea .dropArea .sources li > div .downLine > div {
                width: 100%;
                height: 1px;
                background-color: #000;
            }

            .targetArea .dropArea .sources li > div .des {
                width: 100%;
            }

.targetArea .totalLine {
    position: relative;
    height: 30px;
    display: flex;
    align-items: center;
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    margin-bottom: 30px;
    max-width: 100%;
}

    .targetArea .totalLine div {
        width: 100%;
        height: 1px;
        background-color: #000;
    }

    .targetArea .totalLine span {
        padding: 0 10px;
        height: 30px;
        position: absolute;
        left: calc( 50% - 62px );
        display: flex;
        align-items: center;
        z-index: 22;
        background-color: #fff;
        overflow: hidden;
    }

.targetArea .somebutton {
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

    .targetArea .somebutton .left {
        /* width: 12%; */
        height: 40px;
        background: #D9D9D9;
        /*font-weight: bold;*/
        display: flex;
        align-items: center;
        border: 1px solid #000;
    }

        .targetArea .somebutton .left span:nth-of-type(1) {
            /* width: 80%; */
            height: 100%;
            /* text-indent: 10px; */
            display: flex;
            align-items: center;
            border-right: 1px solid #000;
            padding: 10px 80px 10px 10px;
        }

        .targetArea .somebutton .left span:nth-of-type(2) {
            /* width: 20%; */
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 10px 15px 10px 25px;
        }

    .targetArea .somebutton .right {
        height: 100%;
        width: 14%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }

        .targetArea .somebutton .right span {
            width: 100%;
            height: 28px;
            display: flex;
            justify-content: center;
            align-items: center;
            border: 1px solid #000;
            font-weight: bold;
            background-color: #000;
            color: #fff;
            cursor: pointer;
        }

            .targetArea .somebutton .right span:hover {
                background-color: #fff;
                color: #000;
            }

.pb_whiteBox {
    min-height: 36px !important;
    margin-bottom: 5px !important;
}

/* .helper_border::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: transparent;
    border: 2px solid #898989;
    border-left-width: 0;
    border-right-width: 0;

    background: url('../Picture//3GiPicture/58SL_Middle.svg') no-repeat;
    background-size: cover;
    background-position: center center;
}

.helper_border_start::before {
    border-left-width: 1.5px;

    background: url('../Picture//3GiPicture/58SL_Head.svg') no-repeat;
    background-size: cover;
    background-position: 0 center;
}

.helper_border_end::before {
    border-right-width: 1.5px;

    background: url('../Picture//3GiPicture/58SL_Tail.svg') no-repeat;
    background-size: cover;
    background-position: 100% center;
} */

.dropArea .sources {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

    .dropArea .sources.firstdropli.both_border::before,
    .dropArea .sources.firstdropli.start_border::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 1px;
        height: 100%;
        border-left: 1px solid #8e8e8e;
        z-index: 19;
    }

    .dropArea .sources.firstdropli.both_border::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        width: 0;
        height: 100%;
        border-right: 1px solid #8e8e8e;
        z-index: 19;
    }

/* .dropArea .sources.firstdropli.start_border { */
/* background-size: 101%; */
/* border-left: 1px solid #8e8e8e;
    } */

.continue_drop .sources {
    /* background-size: 101%; */
}

.continue_drop .lastDropArea .sources {
    /* background-size: cover;
    background-position: right center; */
    background-size: cover;
}

    .continue_drop .lastDropArea .sources::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        width: 0;
        height: 100%;
        border-right: 1px solid #8e8e8e;
        z-index: 19;
    }

.clearallsel .resetBtn {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px;
}

.clearallsel .otherBtn {
    display: flex;
    justify-content: flex-end;
}

.pb_description {
    min-height: 100px !important;
}

.projectHeader .projectDetails {
    display: block;
}

    .projectHeader .projectDetails .data_row {
        width: 100%;
        gap: 10px;
        align-items: normal;
    }

.projectHeader .projectContent.projectDetails .data_row {
    align-items: normal;
}

.projectHeader .projectDetails .data_row .data_item {
    display: flex;
    gap: 10px;
    width: 100%;
}

    .projectHeader .projectDetails .data_row .data_item .label {
        margin: 0;
        flex-shrink: 0;
    }

.projectHeader .projectDetails .data_row .left {
    flex: 2;
    display: flex;
    gap: 10px;
}

.projectHeader .projectDetails .data_row .right {
    flex: 1;
    display: flex;
    gap: 10px;
}

    .projectHeader .projectDetails .data_row .right > div {
        display: flex;
        gap: 10px;
        width: 100%;
        justify-content: flex-end;
    }

.product-configurator.projectHeader .projectDetails .data_row .right > div > .data_item {
    justify-content: end;
}

@media (max-width: 1400px) {
    .product-configurator .projectDetails .data_row .left {
        flex: none;
    }

    .product-configurator .projectDetails .data_row .right {
        flex: none;
    }

    .product-configurator .projectDetails .data_row:last-of-type .right .data_item {
        justify-content: flex-end;
        width: auto;
    }

    .projectHeader .projectContent.projectDetails .data_row {
        flex-wrap: wrap;
    }

        .projectHeader .projectContent.projectDetails .data_row > div {
            flex: none;
            width: 100%;
        }

    .projectDetails .data_row .smalllabel {
        width: 130px !important;
    }

    .projectDetails .data_row .smalltext {
        flex: 1;
    }

    .btn .typeMenuButton {
        padding: 0px 0px !important;
    }
}

.advbootomNav {
    background: #0000000d;
    padding-bottom: 40px;
    padding-top: 30px;
    padding-left: 99px;
    margin-left: 228px;
}

    .advbootomNav .ProductShortDescription.webHeadingSmall {
        margin: 0;
    }

    .advbootomNav .productDetailsBanner_headingRow .webHeadingSmall {
        width: 30%;
        margin-bottom: 20px;
    }

    .advbootomNav .productDetailsBanner_BodyRow .downloadList .downloadTypes {
        width: 30%;
    }

    .advbootomNav .downloadList .downloadFiles {
        flex: 1;
    }

.downloadList .downloadTypes .item.fontBold {
    margin-top: 10px;
}

.reset-popup-container {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 999;
    transform: translate(-50%);
    width: 200px;
    border: 1px solid #000;
    background: #fff;
    display: none;
    z-index: 999;
}

    .reset-popup-container .reset-popup-header {
        width: 100%;
        background: #dedede;
        display: flex;
        padding: 5px;
        justify-content: space-between;
        font-size: 14px;
    }

        .reset-popup-container .reset-popup-header .cancelBtn {
            cursor: pointer;
        }

    .reset-popup-container .reset-popup-body, .reset-popup-container .reset-popup-footer {
        width: 100%;
        background: #fff;
        padding: 10px;
        text-align: center;
    }

    .reset-popup-container .reset-popup-footer {
        display: flex;
        gap: 20px;
        justify-content: space-around;
    }

        .reset-popup-container .reset-popup-footer .button {
            flex: 1;
            background: #000;
            color: #fff;
            font-size: 16px;
            border-radius: 2px;
        }

@media (max-width: 1000px) {
    .advbootomNav {
        background: #0000000d;
        padding-bottom: 40px;
        padding-top: 30px;
        padding-left: 99px;
        margin-left: 0;
    }
}

@media (max-width: 800px) {
    .adv-bootom {
        min-height: initial !important;
        margin-top: 0;
    }

        .adv-bootom .advlog {
            display: none;
        }

        .adv-bootom .advbootomNav {
            width: 100%;
            margin-left: 0;
            padding: 10px 15px 10px 15px;
        }

            .adv-bootom .advbootomNav .productDetailsBanner_headingRow .ProductShortDescription {
                width: 100%;
                text-align: left;
                padding-left: 0;
                padding-right: 0;
            }

            .adv-bootom .advbootomNav .productDetailsBanner_headingRow .webHeadingSmall {
                font-size: 20px;
                margin-bottom: 10px;
            }

            .adv-bootom .advbootomNav .productDetailsBanner_BodyRow .downloadList .downloadTypes {
                width: 135px;
                text-align: left;
                font-weight: bold;
            }

    .visualCenterLineSymbol {
        position: absolute;
        top: -40px;
        font-size: 18px;
        color: blue;
        text-align: center;
    }


    /* .downloadList .downloadTypes .item a {
        font-size: 12px;
    }

    .downloadList .downloadTypes .item.fontBold {
        margin-top: 0;
    }

    .downloadList .downloadFiles {
        width: calc(100% - 135px);
        padding-left: 0;
    }

        .downloadList .downloadFiles a {
            font-size: 12px;
        }

        .downloadList .downloadFiles table .downloadFilesDownloadIcon {
            padding-left: 5px;
        }

        .downloadList .downloadFiles table .downloadFilesName {
            width: 90%;
        }*/

}


.housing_top_100 {
    top: 100px !important;
}

.housing_top_130 {
    top: 130px !important;
}

.housing_top_160 {
    top: 160px !important;
}


.totalLine_margin_bottom_60 {
    margin-bottom: 60px !important;
}
