/*---- product details ----*/
.product-gallery-wrap {
    display: flex;
    flex-wrap: wrap;
}
.product-mainSlider {
    height: 720px;
    width: calc(100% - 220px);
    margin-right: 15px;
}
.product-thumbSlider {
    width: 200px;
    height: 720px;
}
.product-thumbSlider .swiper-slide {
    width: 100%;
    opacity: 0.8;
    cursor: pointer;
}
.product-thumbSlider .swiper-slide-thumb-active {
    opacity: 1;
}
.product-mainSlider img,
.product-thumbSlider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.product-gallery-wrap .swiper-button-next, .product-gallery-wrap .swiper-button-prev {
    color: var(--bs-white);
}

/*----switch button----*/
.form-switch.started-switch .form-check-input {
    width: 48px;
    margin-left: -40px;
    height: 24px;
    background-size: 26px;
    border-radius: 24px;
    border: 1px solid var(--bs-gray-500);
    background-color: var(--bs-gray-500);
    background-position: left -2px center !important;
    background-image: url("../images/icon-circle.svg");
    background-repeat: no-repeat;
}
.form-switch.started-switch .form-check-input:focus {
    background-image: url("../images/icon-circle.svg");
}
.started-switch .form-check-input:checked {
    background-position: left 22px center !important;
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.started-switch .form-check-input:focus {
    box-shadow: none;
}

/*----radio----*/
.woodSpecies-radio {
    border: 1px solid #CCCFDB;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    padding: 0;
    margin: 0;
    height: 100%;
    line-height: 1.2;
    cursor: pointer;
}
.woodSpecies-radio .form-check-input {
    position: absolute;
    z-index: 2;
    right: 8px;
    top: 8px;
    margin: 0;
    background-color: transparent;
    border-width: 2px;
    border-radius: 2px;
    border-color: #fff;
}
.woodSpecies-radio-text {
    padding: 7px 10px;
}
.woodSpecies-radio-text p { font-size: 14px; font-weight: 500;}
.woodSpecies-radio-img img { width: 100%;}
.woodSpecies-radio .form-check-label { width: 100%;}
.woodSpecies-radio .form-check-input[type=radio] {
    border-radius: 50%;
    height: 24px;
    margin-left: 25px;
    width: 24px;
    background: transparent;
    border: 2px solid #ffffff;
    margin-top: 0;
    margin-bottom: 0;
    cursor: pointer;
}
.woodSpecies-radio .form-check-input[type=radio]:checked {
    background: var(--bs-primary);
    background-position: 50%;
    background-repeat: no-repeat;
    border-color: var(--bs-primary);;
    box-shadow: inset 0px 0px 0px 5px #fff;
}
.woodSpecies-radio:has(.form-check-input[type=radio]:checked) {
    border-color: var(--bs-primary);
    background-color: var(--bs-light-green);
    color: var(--bs-green-darker);
}
.product-radio-list {
    border: 1px solid #CCCFDB;
    border-radius: 5px;
    background: #fff;
    padding: 6px 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-items: center;
    width: 100%;
    font-size: 14px;
}
.form-check-input[type=radio] {
    border-radius: 50%;
    height: 24px;
    width: 24px;
    background: #fff;
    border: 2px solid var(--bs-gray-600);
    margin-top: 0;
    margin-bottom: 0;
    cursor: pointer;
}
.form-check-input[type=radio]:checked {
    background: var(--bs-primary);
    background-position: 50%;
    background-repeat: no-repeat;
    border-color: var(--bs-primary);
    box-shadow: inset 0px 0px 0px 5px #fff;
}
.product-radio-list:has(.form-check-input[type=radio]:checked){
    border-color: var(--bs-primary);
    background-color: var(--bs-white);
    color: var(--bs-green-darker);
}

/*---- product accordion ----*/
.proAccordionRow { flex-direction:row-reverse; margin-bottom: 10px;}
.proAccordionRow:last-child .step-box::after{ display: none;}
.step-box {
    width: 70px;
    display: flex;
    align-items: start;
    justify-content: center;
    position: relative;
    text-align: center;
}
.step-box::after {
    position: absolute;
    content: "";
    width: 1px;
    height: calc(100% - 0px);
    background: var(--bs-green-darker);
    top: 11px;
    left: calc(50% - 1px);
    z-index: 2;
}
.step-number {
    background: var(--bs-white);
    color: var(--bs-secondary);
    border: 1px solid var(--bs-secondary);
    height: 46px;
    width: 100%;
    line-height: 1.2;
    font-family: "Open Sans", sans-serif;
    font-weight: 300;
    border-radius:0px 3px 3px 0px;
    padding-top: 8px;
    position: relative;
    z-index: 3;
    top: 1px;
}
.step-number:before {
    position: absolute;
    content: "";
    border-right: 9px solid var(--bs-secondary);
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    left: -9px;
    bottom: 14px
}
.step-number span { text-transform: uppercase; font-size: 12px; width: 100%; font-weight: 800;}
/* .productAccordion .accordion-item:not(:first-of-type) {
    border-top: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
} */
.productAccordion .accordion-button {
    background: var(--bs-white);
    border-color: var(--bs-gray-500);
    color: var(--bs-secondary);
    border-style: solid;
    border-width: 1px;
}
.productAccordion .accordion-button:focus { box-shadow: none;}
.productAccordion .accordion-button:not(.collapsed) {
    background: var(--bs-primary);
    border-color: var(--bs-primary);
    color: #fff;
    box-shadow: none;
}
.productAccordion .accordion-item {
    width: calc(100% - 90px);
    margin-right: 20px;
    border-radius: 0 !important;
    font-family: "Open Sans", sans-serif;
    border: none;
}
.productAccordion .accordion-item .accordion-button {
    padding-top: 13px;
    padding-bottom: 13px;
    font-family:'helveticaneuelight';
    border-radius: 0 !important;
}
.productAccordion .card {
    padding: 10px 15px;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    border-radius: 0;
    background: #f9f9f9;
    border-color: #ececec;
}
.productAccordion .card:nth-child(odd) {
    background: #fff;
}
.productAccordion .accordion-item:has(.accordion-collapse.show) .accordion-button {
    background-color: var(--bs-primary);
    color: var(--bs-secondary);
    border-color: var(--bs-primary);
}
.productAccordion .accordion-button::after { display: none;}
.productAccordion .accordion-header.success .accordion-button {
  background: #3b9786;
  border-color:#3b9786 ;
  color: #fff;
  /* background: linear-gradient(to right, #75c0b2, #35b57a); */
}
.productAccordion .accordion-header.success.current .accordion-button {
  background: linear-gradient(to right, #75c0b2, #75c0b2);
  color: var(--bs-secondary);
}
.productAccordion .accordion-header.success .accordion-button::before {
    content: "\f00c";
    font-family: "FontAwesome";
    position: absolute;
    right: 20px;
    color: var(--bs-white);
}
.accordion-body {
    border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}

/*----toggle----*/
.tooltip-text-wrap {
    display: none;
    position: absolute;
    bottom: 35px;
    background: var(--bs-secondary);
    color: #fff;
    width: 260px;
    padding: 15px 15px;
    font-size: 14px;
    line-height: 20px;
    border-radius: 7px;
    right: -8px;
    text-align: left;
    z-index: 5;
}
.tooltip-text-wrap:before {
    position: absolute;
    content: "";
    border-top: 6px solid var(--bs-secondary);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    right: 18px;
    bottom: -6px;
}
.tooltip-text {
    width: 100%;
    max-height: 350px;
    overflow: auto;
    line-height: 1.2;
    padding-right: 5px;
    scrollbar-gutter: stable;
    background-clip: padding-box;
    font-family: "Open Sans", sans-serif;
}
.tooltip-text p {
    font-family: "Open Sans", sans-serif;
}
.tooltip-text ul {
    padding-left: 1rem;
}
.tooltip-text ul li {
    margin-bottom: 10px;
}
.tl-tp-close { 
    color: var(--bs-green);
    font-size: 18px;
    position: relative;
    float: right;
    top: -5px;
    right: -5px;
}
.tl-tp-close i {
    cursor: pointer;
}
.qa-btn { cursor: pointer;}
/* scrollbar */
.tooltip-text::-webkit-scrollbar {
  width: 8px;
}
.tooltip-text::-webkit-scrollbar-track {
  background: #585858;
  border-radius: 10px;
}
.tooltip-text::-webkit-scrollbar-thumb {
  background: var(--bs-green);
  border-radius: 10px;
}
.tooltip-text::-webkit-scrollbar-thumb:hover {
  background: var(--bs-primary);
}

/*----*/
.formCheck-input[type=checkbox] {
    border-radius: 0%;
    height: 20px;
    width: 20px;
    background: #fff;
    border: 2px solid var(--bs-gray-600);
    margin-top: 0;
    margin-bottom: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    position: relative;
}
.formCheck-input[type=checkbox]:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.formCheck-input[type=checkbox]:checked::after {
    content: "";
    position: absolute;
    left: 4px;
    top: -1px;
    width: 8px;
    height: 14px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
}
.nav-proSpc-step {
    width: calc(100% - 0px);
    display: flex;
    justify-content: space-between;
    border-top: 1px solid var(--bs-gray-500);
    border-bottom: 1px solid var(--bs-gray-500);
    border-right: 1px solid var(--bs-gray-500);
}
.notification-msg .icon-close {
    width: 12px;
    height: 12px;
    background-size: 100% auto;
}
.nav-proSpc-step .nav-item {
    width: 33.333%;
}
.nav-proSpc-step.two .nav-item{ width: 50%;}
.proSpc-nav-link {
    border: 0;
    width: 100%;
    text-align: left;
    background: none;
    border-left: 1px solid var(--bs-gray-500);
    padding: 12px 12px 15px;
    position: relative;
    height: 100%;
}
.proSpc-nav-link:after {
    position: absolute;
    content: "";
    width: 0%;
    height: 3px;
    background: var(--bs-primary);
    left: 0;
    bottom: -1px;
    transition: all 0.3s ease-in-out;
}
.proSpc-nav-link.active:after {
    width: 100%;
}
.proSpc-nav-link h3 {
    color: #555555;
    font-size: 16px;
    margin-bottom: 0;
    font-weight: 400;
    margin-top: 0px;
}
.step-status {
    color: #B3B3B3;
    font-size: 12px;
    position: relative;
    text-transform: uppercase;
    font-weight: 400;
    font-family: "Open Sans", sans-serif;
}
.proSpc-nav-link.active .step-status {
    color: #305e68;
}
.proSpc-nav-link.active h3 {
    color: var(--bs-secondary);
}
.proSpc-nav-link.active {
    background: var(--bs-light-green);
}
.icon-pass-step {
    width: 18px;
    height: 12px;
    background: url(../images/icon-checkmark.svg);
    /* content: "\f00c";
    font-family: "FontAwesome"; */
    display: inline-block;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: 15px;
    top: 22px;
    opacity: 0;
}
.step-status:after {
    position: relative;
    content: "Next";
}
.current .step-status:after, .current.success .step-status:after {
    content: "Current";
    color: var(--bs-secondary);
    font-weight: 400;
}
.success .step-status:after {
    content: "Done";
    color: #3b9750;
    font-weight: 600;
}
.success.step-number {
    background: #f5fffd;
    border-color:#3b9786;
}
.success.step-number:before {
    border-right: 9px solid #3b9786;
}
.success.current.step-number {
    background: var(--bs-white);
    border-color: var(--bs-secondary);
}
.success.current.step-number:before {
    border-right: 9px solid var(--bs-secondary);
}

/*-------------------------*/
.product-details-spc-tabs {
    font-family: "Open Sans", sans-serif;
    font-size: 16px;
}
.product-details-spc-tabs h2{
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 30px;
}
.product-details-spc-tabs h3{
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 17px;
}
.product-details-spc-tabs h4{
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 12px;
    color: var(--bs-green-darker);
}
.product-details-spc-tabs h6{
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--bs-primary);
}
.product-details-spc-tabs .accordion-body {
    padding: 30px;
    border: 1px solid var(--bs-green);
}
.product-details-spc-tabs .card {
    padding: 10px 15px;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    border-radius: 0;
    background: #f9f9f9;
    border-color: #ececec;
}
.product-details-spc-tabs .card:nth-child(odd) {
    background: #fff;
}
.product-details-spc-tabs .card:last-child {
    border-bottom: 1px solid #ececec;
}
.product-details-spc-tabs ul {
    margin-bottom: 30px;
}
.product-details-spc-tabs ul li {
    margin-bottom: 10px;
}
.product-details-spc-tabs ol {
    column-count: 2;
    column-gap: 50px;
    padding-left: 0px;
    margin-left: 0;
    list-style-position: inside;
}
.product-details-spc-tabs ol li {
    padding: 10px 15px;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    border-radius: 0;
    background: #f9f9f9;
    border-color: #ececec;
    border-bottom: 1px solid #ececec;
    font-size: 16px;
}
.product-details-spc-tabs ol li::marker { font-weight: 700;}
.product-details-spc-tabs ol li:nth-child(odd) {
    background: #fff;
}
.product-details-spc-tabs ol.default {column-count: 1;}
.product-details-spc-tabs ol.default li {background: none !important; padding: 5px 0; border: none;}
.decorative-cutouts-box img{ max-width: 80px;}
.decorative-cutouts-box h5 {
    font-size: 16px;
    font-weight: 700;
    margin-top: 10px;
}
.card-image { 
	position: relative; 
	padding-bottom: 130%;
	background: #fff;
	margin-bottom: 20px;
}
.card-image.lg {
    padding-bottom: 101%;
}
.card-image img {
	position: absolute;
	width: auto;
    max-width: 100%;
	height: auto;
    max-height: 100%;
	left: 0;
	top: 0;
    right: 0;
    margin: auto;
	object-fit: contain;
	padding: 10px;
    bottom: 0;
}
.design-pro-box .card-body{
    border-top: 1px solid #ececec;
    background: #f9f9f9;
}
.design-pro-box .card-body h6 {
    font-weight: 700;
    margin-bottom: 5px;
}
.design-pro-box .card-body h2 {
    font-size: 22px;
    margin-bottom: 17px;
}
.design-pro-box .card-body p{
    font-size: 16px;
}
.product-details-spc-tabs h2.accordion-header {
    margin-bottom: 0;
}
.product-details-spc-tabs .accordion-item { margin-top: 20px;}
.product-details-spc-tabs .accordion-header .accordion-button {
    border: 1px solid var(--bs-green);
    padding: 12px 15px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 20px;
    border-radius: 0px;
    background: var(--bs-light-green);
    font-weight: 400;
    color: var(--bs-secondary);
}
.product-details-spc-tabs .accordion-header .accordion-button small {
    display: block;
}
.product-details-spc-tabs .accordion-button::after {
    content: "\f0fe";
    font-family: "FontAwesome";
    font-weight: 400;
    color: var(--bs-primary);
}
.product-details-spc-tabs .accordion-header .accordion-button:not(.collapsed) {
    background: var(--bs-green);
    color: var(--bs-white);
}
.product-details-spc-tabs .accordion-button:not(.collapsed)::after {
    color: var(--bs-white);
    content: "\f146";
}
.proSpc-nav-link {
    display: flex;
    align-items: center;
}
.specifications-icon {
    background: url(../images/specification-icon.svg); 
}
.design-options-icon {
    background: url(../images/design-options-icon.svg);
}
.installation-guide-icon {
    background: url(../images/installation-guide-icon.svg);
}
.specifications-icon, .design-options-icon, .installation-guide-icon {
    background-repeat: no-repeat;
    background-size: auto 100%;
    width: 35px;
    height: 35px;
    margin-right: 15px;
}

.sub-option {
    position: relative;
    width: calc(100% + 30px);
    margin-left: -15px;
    border-left: 5px solid #dee2e6;
    bottom: -10px;
}
/*----select 2----*/
.select2-container .select2-selection--single {
    height: 29.5px !important;
    border-color: var(--bs-gray-400);
    background-color: var(--bs-white);
    padding: 2px 12px;
    border-radius: 15px;
    font-size: 13px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 24px;
    padding-left: 0;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 29.7px;
    right: 10px;
    background: url(../images/dropdown-icon.svg);
    background-repeat: no-repeat;
    background-size: 16px 12px;
    background-position: center center;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b { display: none;}
.select2-dropdown {
    border: 1px solid var(--bs-green) !important;
}
.select2-results__option {font-size: 13px;}
.select2-container--default .select2-search--dropdown .select2-search__field:focus-visible {
    outline: none;
}
.form-select {
    border-color: var(--bs-gray-400);
    background-color: var(--bs-white);
    font-size: 13px;
    border-radius: 15px;
}
.productAccordion .form-select { padding: 4px 36px 4px 12px;}
.form-select:focus {
    box-shadow: none;
    border-color: var(--bs-green);
}
.productAccordion .select2-container { width: 100% !important;}

/*----installation tabs----*/
.nav-install-tabs {
    width: 100%;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid var(--bs-gray-500);
    border-bottom: 1px solid var(--bs-gray-500);
    border-right: 1px solid var(--bs-gray-500);
}
.nav-install-tabs .nav-item {
    width: 25%;
    margin-bottom: 0;
}
.install-nav-link {
    border: 0;
    width: 100%;
    text-align: left;
    background: none;
    border-left: 1px solid var(--bs-gray-500);
    padding: 12px 12px 15px;
    position: relative;
    height: 100%;
    background: var(--bs-light-green);
    font-family: helveticaneuebold;
}
.install-nav-link.active {
    background: var(--bs-secondary);
    color: var(--bs-white);
}


/*-----responsive-----*/
@media (max-width: 1599px) {
    .product-mainSlider {width: calc(100% - 190px); height: 705px;}
    .product-thumbSlider { width: 160px;  height: 705px;}
    .product-details-spc-tabs h2 { font-size: 30px;}
    .design-pro-box .card-body h2 { font-size: 20px;}
    .woodSpecies-radio-text p { font-size: 12px;}
    .woodSpecies-radio .form-check-input { top: 5px; right: 5px;}
}

@media (max-width: 1399px) {
    .product-mainSlider {width: calc(100% - 0px); margin-right: 0; height: 590px;}
    .product-thumbSlider { width: 100%; height: 125px; margin-top: 15px;}
    .product-details-spc-tabs p { font-size: 15px;}
    .decorative-cutouts-box img { max-width: 60px;}
    .decorative-cutouts-box h5 {font-weight: 600; font-size: 14px;}
    .product-details-spc-tabs ol li, .product-details-spc-tabs .card { font-size: 14px;}
    .product-details-spc-tabs ol { gap: 30px;}
}

@media (max-width: 1199px) {
    .step-box { display: none;}
    .productAccordion .accordion-item { width: calc(100% - 0px); margin-right: 0;}
    .product-details-spc-tabs h3 { font-size: 20px; margin-bottom: 12px;}
    .proSpc-nav-link { padding: 12px 10px 15px;}
    .proSpc-nav-link h3 { font-size: 14px;}
    .specifications-icon, .design-options-icon, .installation-guide-icon{ margin-right: 10px}

    .install-nav-link { font-size: 14px;}
}

@media (max-width: 991px) {
    .product-details-spc-tabs h3 { font-size: 16px;}
    .product-details-spc-tabs h4 { font-size: 20px; margin-bottom: 10px;}
    .product-details-spc-tabs h6 { font-size: 16px;}
    .product-details-spc-tabs .accordion-body { padding: 20px;}
    .product-thumbSlider { height: 150px;}
}

@media (max-width: 767px) {
    .product-details-spc-tabs .accordion-body { padding: 15px;}
    .product-details-spc-tabs ol {column-count: 1;}
    .product-details-spc-tabs .accordion-header .accordion-button { font-size: 18px; font-weight: 600;}
    .nav-proSpc-step .nav-item { width: 100%; border-top: 1px solid var(--bs-gray-500);}
    .nav-proSpc-step .nav-item:first-child { border-top: 0px;}
    .proSpc-nav-link { padding: 8px 12px 10px;}
    .no-border { border: none !important;}
    .product-mainSlider { height: 610px;}
    .product-thumbSlider { height: 160px;}

    .nav-install-tabs .nav-item { width: 100%; border-top: 1px solid var(--bs-gray-500);}
    .nav-install-tabs .nav-item:first-child { border-top: 0px;}
}

@media (max-width: 575px) {
    .productAccordion .card { padding: 10px;}
    .product-details-spc-tabs .accordion-header .accordion-button { font-size: 16px; padding: 10px 10px 10px 10px;}
    .product-details-spc-tabs .accordion-item { margin-top: 12px;}
    .product-details-spc-tabs .accordion-button::after { font-size: 18px;}
    .product-details-spc-tabs h2 { font-size: 24px; margin-bottom: 20px;}
    .design-pro-box .card-body { padding: 10px;}
    .design-pro-box .card-body p { font-size: 14px;}
    .design-pro-box .card-body h2 { font-size: 18px; margin-bottom: 10px;}
    .product-mainSlider { height: 450px;}
    .product-thumbSlider { height: 120px;}
    .productAccordion .accordion-item .accordion-button { padding-left: 10px; padding-right: 10px;}
    .productAccordion .accordion-header.success .accordion-button::before {right: 10px;}
    .productAccordion .fs-6{ font-size: 13px !important;}
    .sub-option { width: calc(100% + 20px); margin-left:-10px; border-width: 3px;}
    
}

@media (min-width: 1600px) {
    .product-details-spc-tabs .xxxl {font-size: 18px;}
    .product-thumbSlider { width: 170px; margin-right: 30px;}
}