:root {
    --dark-blue-new-color: #1f305c;
    --dark-gray-new-color: #363636;
    --light-gray-new-color: #808080;
    --tertiary-color: #263578
}
.text-dark-blue-new { 
    color: var(--dark-blue-new-color) !important;
}
.text-dark-gray-new { 
    color: var(--dark-gray-new-color) !important;
}
.fw-700 { 
    font-weight: 700 !important 
}
.fs-sm {
    font-size: 0.7rem !important;
}
.bg-gray { 
    background-color: #f3f3f3 !important; 
}
span.product-tagline { 
    font-size: calc(1.25625rem + .0642857143vw); 
    line-height: 1.4761904762; 
    text-transform: none !important 
}
.product-price-container { 
    background-color: #F5F5F5; 
    padding: 20px; 
    border-radius: 14px; 
}
.product-price-container span.heading { 
    font-size: 1.1rem; 
    line-height: 1 
}
.light-gray-outlined-btn { 
    border-color: var(--light-gray-new-color); 
    color: var(--light-gray-new-color); 
    border-width: 2px 
}
.light-gray-outlined-btn:hover { 
    background-color: var(--light-gray-new-color); 
    color: #FFFFFF 
}
.tertiary-outlined-btn { 
    border-color: var(--tertiary-color); 
    color: var(--tertiary-color); 
    border-width: 2px 
}
.tertiary-outlined-btn:hover { 
    background-color: var(--tertiary-color); 
    color: #FFFFFF 
}
body.admin-bar main { 
    padding-top: calc(276px); 
}
body,
.product-overview, 
p{ 
    color: #777!important; 
    line-height: 1.9!important 
}
.hot_tub-template-default{
    padding-top: 0!important;
}
input[type="text"], 
input[type="number"], 
input[type="email"], 
input[type="tel"], 
input[type="password"],
.form-select,
textarea {
    width: 100%;
    padding: 10px 15px;
    font-size: 12px!important;
    border: 1px solid #a1a1a1!important;
    border-radius: 0!important;
}
input[type="file"] {
    border: none;
}
input[type="text"]:focus, 
input[type="number"]:focus, 
input[type="email"]:focus, 
input[type="tel"]:focus, 
input[type="password"]:focus,
textarea:focus {
    border: 2px solid #082b7d !important;
    outline: none!important;
    box-shadow: none!important;
}

@media(min-width: 991px){
    body main { padding-top: calc(240px); }
}

#woo-breadcrumb,
.ui-accordion-header-icon.ui-icon.ui-icon-triangle-1-e,
.ui-accordion .ui-accordion-header .ui-accordion-header-icon { 
    display: none; 
}
.finishes-box img { 
    aspect-ratio: 1 / 1; 
    object-fit: cover; 
    max-width: 100px; 
    max-height: 100px; 
}
.tp-widget-wrapper { 
    text-align: left !important; 
}
#quickchat-embedded-container { 
    height: 0px; 
    overflow: hidden; 
    position: fixed; 
    bottom: 10px; 
    right: 10px; 
    background: white; 
    z-index: 3; 
    transition: 0.3s min-height; 
}
#quickchat-header { 
    background: linear-gradient(34deg, rgba(37, 41, 167, 1) -8.85%, rgba(98, 115, 246, 1) 87.26%); 
    height: 55px; 
}
.wrapper{ 
    color: #252525; 
}
h1.product_title,
.novua-finance-options p.price { 
    display: none!important; 
}
.novua-finance-options form.cart,
.novua-finance-options form.cart>div.quantity{ 
    display: inline-block; 
}
.novua-finance-options form.cart>div.quantity>input[type="number"]{ 
    max-width: 75px; 
    border-radius: 30px!important; 
}
div#PBFPopup{ 
    background: transparent!important; 
    padding: 0!important; 
}
.feature-box {
    box-shadow: 0 3px 5px rgba(0, 0, 0, .1);
    height: 130px;
    width: 130px;
    max-width: 130px;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-self: center;
    background: #fbfbfb;
    justify-content: center;
    margin-right: 20px;
    border-radius: 20px;
}
.feature-box:last-child { 
    margin-right: 0
}
.feature-box div { 
    color: var(--dark-blue-new-color); 
    font-weight: 700; 
    text-transform: uppercase; 
}
.feature-box div.highlight-item-text { 
    font-size: 3rem !important 
}
.sticker-wrapper { 
    position: absolute; 
    right: 10%; 
    bottom: 5%; 
    width: 20%; 
    height: auto; 
    z-index: 99; 
    display: flex; 
    align-items: flex-end; 
}
.hot_tub-template-default .hts-product-images .slick-slide .sticker-wrapper img { 
    height: auto !important; 
}
.running-costs-wrapper { 
    background: #83a3ce !important; 
    background: linear-gradient(0deg, #83a3ce 0%, #25367a 100%) !important 
}
.gallery-controls { 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    gap: 0px; 
    position: absolute; 
    right: -10px; 
    top: 35%; 
    transform: translateY(-50%); 
    z-index: 10; 
}
.gallery-controls i svg{ 
    fill: #FFFFFF; 
}
.gallery-controls button {
    background: #082b7d;
    color: white;
    border: none;
    width: 60px;
    min-height: 60px;
    padding: 2px;
    font-size: 20px;
    margin-bottom: 3px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease-in-out;
}
.gallery-controls button.video-btn{
    background-color: #f2f2f2;
    color: rgba(255,68,54,1)!important;
    flex-direction: column;
}
.gallery-controls button.video-btn svg{
    fill: rgb(217,58,46)!important;
}
.gallery-controls button.video-btn small{
    font-size: 8px;
    font-weight: 600
}
.gallery-controls button:hover { 
    background: #0056b3; 
}
.gallery-controls button i { 
    font-size: 20px; 
}
.thumbnail-slider-wrapper { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 10px; 
}
.thumb-prev,
.thumb-next { 
    width: 100px; 
    height: 100px; 
    border-radius: 0; 
    background-color: #082B7D; 
    color: #FFFFFF; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    border: none; 
    cursor: pointer; 
    padding: 0 20px;
}
.thumb-prev i svg,
.thumb-next i svg{
    fill: #FFF;
    width: 20px;
}
.thumbnail-slider-wrapper .slick-prev,
.thumbnail-slider-wrapper .slick-next { display: none !important; }
.thumb-prev i,
.thumb-next i { font-size: 16px; }
.mobile-video-btn button {
    background: #082b7d;
    color: white;
    border: none;
    width: 100%;
    font-size: 23px;
    margin: 10px 0;
    font-weight: bold;
    cursor: pointer;
    /* border-radius: 5px; */
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease-in-out;
}
.mobile-video-btn i { 
    color: #ffff; 
    border: none; 
    margin: 0 15px; 
    font-size: 20px; 
}
.thumb-prev:hover,
.thumb-next:hover { 
    background: #082B7D; 
}
.thumbnail-slider { 
    display: flex; 
    overflow-x: auto; 
    justify-content: center; 
    scroll-behavior: smooth; 
}
.thumb-item img { 
    width: 100%; 
    height: auto; 
    cursor: pointer; 
    border-radius: 5px; 
    border: 2px solid transparent; 
    transition: border 0.3s ease-in-out; 
}
.thumb-item img:hover,
.thumb-item img.active { 
    border: 2px solid #007bff; 
    opacity: 0.7; 
}
.main-product-slider { 
    position: relative; 
}
.main-product-slider img { 
    width: 100%; 
    max-width: 100%; 
    border-radius: 5px; 
    display: block; 
}
.main-product-slider .slick-track,
.thumbnail-slider .slick-track { 
    display: flex !important 
}
.hot_tub-template-default section.product-details-section .main-product-slider .slick-slide { 
    max-height: 450px; 
    margin: 0 !important; 
    border-radius: 0 !important; 
    border: none!important; 
}
.hot_tub-template-default section.product-details-section .thumbnail-slider .slick-slide{ 
    border-radius: 0 !important;
    border: 1px solid transparent!important;
    margin: 0!important;
    border-color: transparent!important;
    height: 100px!important;
}
.main-product-slider .slick-slide div,
.thumbnail-slider .slick-slide div{ 
    height: 100%; 
}
.main-product-slider .slick-slide div img,
.thumbnail-slider .slick-slide div img{ 
    object-fit: cover; 
    height: 100%; 
}
.gallery-container { 
    position: relative; 
    text-align: center; 
}
.image-counter {
    position: absolute;
    bottom: 139px;
    left: 0;
    background: rgba(255, 255, 255, 0.8);
    color: #003366;
    padding: 10px;
    font-size: 16px;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 5px;
}
.image-counter i { 
    font-size: 16px; 
    margin-left: 10px; 
}

.maintainence-guide .slick-slide {
    margin-left: 5px;
    margin-right: 5px;
    height: inherit !important;
    border-radius: 10px;
    overflow: hidden;
    border-radius: 0 !important;
    padding: 0px 5px;
}
.maintainence-guide.slick-full-container .slick-btns, 
.maintainence-guide.slick-container .slick-btns {
    color: var(--bs-dark) !important;
    background-color: transparent !important;
    margin-top: 0px;
    z-index: 1;
}
.maintainence-guide .slick-btns {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 50px;
    height: 50px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: var(--bs-dark-border-subtle);
    border: none;
    outline: none;
    background: transparent;
}
.maintainence-guide .slick-arrow {
    top: 50%;
    background-color: #082b7d;
    border-radius: 50%;
    margin-top: -25px !important;
}
.maintainence-guide .slick-btns.prev { left: -50px; }
.maintainence-guide .slick-btns.next { right: -50px; }
.maintainence-guide .slick-dots {
    position: unset;
    display: inline-flex;
    width: auto;
    padding: 0;
    margin: 20px auto 0;
    list-style: none;
    text-align: center;
}
.maintainence-guide .slick-dots li, 
.maintainence-guide .slick-dots li.slick-active {
    position: relative !important;
    display: inline-flex !important;
    width: 60px !important;
    font-size: 14px !important;
    font-weight: 700;
    color: #082b7d;
}
.maintainence-guide .slick-dots li {
    transform: none !important;
    text-align: center;
    top: 0;
    left: 0;
    line-height: 60px;
    height: 30px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}
.maintainence-guide .slick-dots li svg{ opacity: 0.25; }
.maintainence-guide .slick-dots li.slick-active svg{ opacity: 1; }
.maintainence-guide .btn-dark-2 {
    --bs-text-opacity: 1;
    --bs-border-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

/*
* Finance Styling
*/
.woocommerce div.product form.cart{ 
    display: flex!important; 
}
.woocommerce div.product form.cart .button{ 
    width: 49%; 
    display: inline-flex!important; 
    justify-content: center; 
    padding: 25px 0 !important; 
    border-radius: 20px !important; 
    text-transform: capitalize!important; 
    font-weight: normal!important; 
}
.text-pink{ 
    color: #e51b6d!important; 
}
.product-price-container{ 
    background: none!important; 
    padding: 0!important; 
    border-radius: 0; 
}
/* .novua-finance-options form.cart{ display: none; } */
#PBFPopup img { 
    width: 50%; 
    position: absolute; 
}
div#PBFPopup .pbf-finance-widget .pbf-finance-widget-text { 
    margin-top: 35px; 
    margin-bottom: 0px; 
}
@media( max-width: 667px ){
    #PBFPopup img{ 
        margin: 0 auto; 
        max-width: 100%; 
        width: 100%; 
        display: block; 
        position: relative; 
    }
    .pbf-finance-widget-button{ 
        margin: 0 auto!important; 
    }
}
.finance-box { 
    background-color: #FFFFFF; 
    padding: 25px 12px; 
    border-radius: 10px; 
    border: 1px solid #efefef; 
}
.finance-box p { 
    font-size: 12px!important; 
    line-height: 1.3!important; 
    margin-bottom: 0!important; 
    color: #000000; 
}
.finance-box a.apply_finance_btn { 
    font-size: 12px !important; 
    text-transform: none; 
    padding: 5px 8px !important; 
    width: 100%; 
    border-radius: 5px; 
}
#financeCalculator.modal .modal-dialog.modal-lg .modal-content iframe { 
    min-height: 1530px; 
}
#financeCalculator.modal .btn-close{ 
    background: rgba(0,0,0,0) url("../assets/images/close-btn-finance.svg") center/1em auto no-repeat!important 
}
#financeCalculator.modal .modal-body{ 
    padding-left: 0!important; 
    padding-right: 0!important; 
}
.contact-links a{ 
    font-size: 14px; 
    color: #000000; 
}
.contact-links i{ 
    margin-right: 5px; 
}
.free-items-list{ 
    background-color: #efefef; 
    padding: 20px 15px; 
    border-radius: 20px; 
    font-size: 14px; 
}
.free-items-list i{ 
    margin-right: 5px; 
}
.silver-btn{ 
    background-color: #efefef; 
    color: #000000; 
    border: 1px solid #efefef; 
    display: flex; 
    justify-content: center; 
}
.enquire_now_btn { 
    background-color: #efefef!important; 
    color: #000000!important; 
    border: 1px solid #efefef!important; 
    margin-left: 2%; 
}

@media (max-width: 992px) {
    .thumb-prev,
    .thumb-next {
        height: 70px!important;
        width: 70px!important;
    }
    .thumb-prev i svg,
    .thumb-next i svg{ 
        width: 70px!important;
    }
    .thumbnail-slider .slick-slide img{ 
        height: 70px!important; 
    }
}

@media (max-width: 768px) {
    .image-counter-wrapper { 
        display: flex; 
        justify-content: space-between; 
        align-items: center; 
        position: absolute; 
        bottom: 45%; 
        left: 5px; 
        right: 5px; 
        z-index: 10; 
        width: calc(100% - 20px); 
    }
    .image-counter { 
        left: unset !important; 
        bottom: unset !important; 
        padding: 10px; 
        display: flex; 
        align-items: center; 
        gap: 5px; 
    }
    .gallery-controls.mobile-view { 
        display: block; 
    }
    .zoom-btn { 
        border: none; 
        padding: 8px 12px; 
        border-radius: 5px; 
        font-size: 16px; 
        display: flex; 
        align-items: center; 
        justify-content: center; 
    }
    .product-price-container span.heading { 
        font-size: .7rem; 
        line-height: 1 
    }
    .h2, 
    .typography .h2, 
    .typography h2 { 
        font-size: 150%; 
    }
    .thumbnail-slider-wrapper{
        gap: 5px;
    }
    .product-price-container span.heading.fs-4 { 
        font-size: 1rem!important; 
    }
    .hot_tub-template-default section.product-details-section .thumbnail-slider .slick-slide,
    .thumbnail-slider .slick-slide img {
        height: 50px!important;
    }
    .thumb-prev,
    .thumb-next {
        height: 50px!important;
        width: 40px!important;
        background: #082B7D;
    }
    .thumb-prev i svg,
    .thumb-next i svg{ 
        width: 20px!important;
    }
}

@media(max-width: 667px) {
    main{ 
        padding-top: 135px!important; 
    }
    .bg-mob-white { 
        background-color: #FFFFFF !important; 
    }
    .hot_tub-template-default {
        padding-top: 0 !important;
    }
    .hot_tub-template-default section.product-details-section{ 
        margin-top: 0; 
    }
    .hot_tub-template-default section.product-details-section .main-product-slider .slick-slide .sticker-wrapper>img{ 
        height: auto!important; 
    }
    .hot_tub-template-default section.product-details-section .main-product-slider .slick-slide a>img{ 
        height: 100%!important; 
        object-fit: cover!important;
        overflow: hidden; 
    }
    .hot_tub-template-default section.product-details-section .hts-product-images .slick-slide { 
        margin-left: 0 !important; 
        margin-right: 0 !important; 
        border: none !important; 
        border-radius: 0 !important; 
    }
    .single-product-detail h1.h2 { 
        font-size: 2.2rem !important; 
    }
    .btn { 
        font-size: 12px !important; 
    }
    .pe-mob-0 { 
        padding-right: 0 !important; 
    }
    .feature-box { 
        height: 80px; 
        width: 80px; 
        max-width: 110px; 
        margin-right: 10px; 
        border-radius: 10px; 
    }
    .feature-box>div { 
        font-size: 12px; 
    }
    .feature-box div.highlight-item-text { 
        font-size: 2rem !important; 
    }
    .h2 { 
        font-size: 2rem !important; 
    }
    h2.price-main { 
        font-size: 26px !important; 
    }
    .finance-box { 
        padding: 20px 15px; 
    }
    .finance-box img.novuna-finance-logo{ 
        max-width: 150px 
    }
}
