
/* ACCORDION TABS STYLES */
.sp_tabs-accordion-wrap {
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.sp_tabs-accordion-wrap .sp_tabs-accordion-item {
    margin-bottom: 12px;
    border-radius: 4px;
    border: 1px solid #E5E5E5;
}

.sp_tabs-accordion-wrap button.sp_tabs-accordion-header {
    width: 100%;
    background-color: #F6F6F6;
    border: none;
    outline: none;
    text-align: left;
    padding: 16px 24px;
    font-size: 18px;
    color: #333;
    cursor: pointer;
    border-radius: 0;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    transition: background-color 0.2s linear;
}

.sp_tabs-accordion-wrap button.sp_tabs-accordion-header:after {
    font-family: 'sp_tabs-fontello';
    content: '\f004';
    font-size: 18px;
    float: right;
}

.sp_tabs-accordion-wrap button.sp_tabs-accordion-header.is-open:after {
    content: "\f005";
}

.sp_tabs-accordion-wrap button.sp_tabs-accordion-header:hover,
.sp_tabs-accordion-wrap button.sp_tabs-accordion-header.is-open {
    background-color: #E5E5E5;
}

.sp_tabs-accordion-wrap .sp_tabs-accordion-body {
    background-color: #fff;
    max-height: 0;
    max-height: 0;
    overflow: hidden;
    border-radius: 4px;
    transition: max-height 0.2s ease-in-out;
}

.sp_tabs-accordion-wrap .sp_tabs-accordion-body .sp_accordion-content {
    padding: 15px;
}

.sp_tabs-accordion-wrap .sp_tabs-accordion-body .sp_accordion-content p {
    padding: 0;
}

.sp_tabs-accordion-wrap .sp_tabs-accordion-body .sp_accordion-content p:last-child {
    margin: 0;
}

body.theme-storefront .sp_tabs-accordion-wrap button.sp_tabs-accordion-header:after,
body.theme-storefront .sp_tabs-accordion-wrap button.sp_tabs-accordion-header.is-open:after {
    display: block;
}

body.woocommerce.sptpro-smart-tabs ul.wc-tabs li {
    border-bottom: 0;
    display: inline-block;
}

/* STYLES FOR PRODUCT DOWNLOADABLE SECTION */
.sp-tab__tab-content .sp-product-tabs-download-section {
    display: flex;
    align-items: center;
    border: 1px solid;
    justify-content: space-between;
    padding: 16px 20px;
    gap: 22px;
    border-radius: 4px;
    border: 1px solid #C3C4C7;
    background: #FAFAFA;
    margin-bottom: 20px;
}

.sp-product-tabs-download-section span.sp-tabs-download-icon {
    font-size: 20px;
    font-weight: 500;
    color: #3c3333;
}

.sp-product-tabs-download-section span.sp-tabs-downloadable-file-size {
    color: #9b9b9b;
    font-size: 16px;
}

.sp-product-tabs-download-section .sp_downloadable-button {
    border: 1px solid #2C3333;
    border-radius: 40px;
    padding: 8px 20px;
    background: #F6F6F6;
    cursor: pointer;
}

.sp-product-tabs-download-section .sp_downloadable-button:hover {
    background: #edebebd1;
    transition: .2s ease-in-out;
}

.sp-product-tabs-download-section .sp_downloadable-button>a.tab-download-button {
    text-decoration: none;
    font-size: 20px;
    color: #000;
    font-weight: 500;
    display: flex;
}

.sp_downloadable-button>a.tab-download-button:focus {
    outline: 0;
}

/* 
 * STYLES FOR TABS CONTACT FORM
 */
body.sptpro-smart-tabs .sp-contact-form-wrapper {
    padding: 56px;
    box-sizing: border-box;
    background: #a8a8a80d;
    border-radius: 10px;
    padding-bottom: 28px;
    border: 1px solid #ccccccad;
}

body.sptpro-smart-tabs .sp-tabs-contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

body.sptpro-smart-tabs .sp-tabs-form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

body.sptpro-smart-tabs .sp-tabs-form-row.three-columns .sp-form-group {
    flex: 1 1 calc(33.33% - 13.33px);
}

body.sptpro-smart-tabs .sp-tabs-form-row .full {
    flex: 1 1 100%;
}

body.sptpro-smart-tabs .sp-form-group {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    position: relative;
}

body.sptpro-smart-tabs .sp-form-label-wrap {
    display: flex;
    gap: 5px;
    align-items: center;
}

body.sptpro-smart-tabs .sp-form-group label {
    font-weight: 600;
    margin-bottom: 6px;
    color: #333;
    font-size: 14px;
}

body.sptpro-smart-tabs .sp-form-group input,
body.sptpro-smart-tabs .sp-form-group textarea {
    padding: 10px 14px;
    border: 1px solid #ccc;
    border-radius: 0;
    font-size: 14px;
    resize: vertical;
    box-shadow: none;
}

body.sptpro-smart-tabs .sp-form-group textarea {
    height: 118px;
}

body.sptpro-smart-tabs .sp-form-group input:focus,
body.sptpro-smart-tabs .sp-form-group textarea:focus {
    border-color: #0073aa;
    outline: none;
}

body.sptpro-smart-tabs .sp-submit-button {
    padding: 10px 22px;
    background-color: #0073aa;
    color: #fff;
    font-size: 16px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin-top: 12px;
    transition: background-color 0.3s ease;
}

body.sptpro-smart-tabs .sp-submit-button:hover {
    background-color: #005f8d;
}

body.sptpro-smart-tabs .sp-required-field {
    color: #f41919;
    margin-left: 2px;
}

body.sptpro-smart-tabs .sp-show-error {
    border-color: #f41919;
}

body.sptpro-smart-tabs .sp-error-message {
    color: #f41919;
    font-size: 12px;
    margin-top: 4px;
}

body.sptpro-smart-tabs span.sp-error-message {
    left: 2px;
    bottom: -22px;
    position: absolute;
}

@media (max-width: 768px) {
    body.sptpro-smart-tabs .sp-tabs-form-row.three-columns .sp-form-group {
        flex: 1 1 100%;
    }
}

@media (max-width: 484px) {
    body.sptpro-smart-tabs .sp-contact-form-wrapper {
        padding: 20px;
    }
}

/* accordion body style in store-front theme. */
html body.sptpro-smart-tabs.theme-storefront ul.tabs.wc-tabs {
    width: 100%;
}

.sptpro-smart-tabs.theme-storefront .woocommerce-tabs .woocommerce-Tabs-panel.panel {
    width: 100%;
}

.sptpro-smart-tabs.theme-storefront .woocommerce-tabs .wc-tabs li:after {
    display: none;
}

.sptpro-smart-tabs.wp-theme-storefront .woocommerce-tabs ul.tabs li {
    margin-right: 0;
}

.sptpro-smart-tabs div.product .woocommerce-tabs ul.tabs::after {
    display: none !important;
}

.sptpro-smart-tabs.wp-theme-astra .accordion-enabled.woocommerce-tabs .panel {
    float: none;
    margin-bottom: 0;
}

/* Tabs style on Hello elementor theme */
.theme-hello-elementor.sptpro-smart-tabs div.product .woocommerce-tabs ul.tabs li {
    border: none;
}

.theme-hello-elementor.sptpro-smart-tabs div.product .woocommerce-tabs ul.tabs li::before,
.theme-hello-elementor.sptpro-smart-tabs div.product .woocommerce-tabs ul.tabs li::after {
    border: none;
    width: 0;
}

html body.woocommerce.sptpro-smart-tabs .woocommerce-tabs.wc-tabs-wrapper .accordion-header.active .accordion-title a:focus,
html body.woocommerce.sptpro-smart-tabs .woocommerce-tabs.wc-tabs-wrapper ul.wc-tabs li.active a:focus {
    outline: 0 !important;
    border: none;
    border-color: unset;
}

.woocommerce.sptpro-smart-tabs div.product .woocommerce-tabs ul.tabs li.active a {
    border-color: unset;
}

/* Remove extra border and padding from the content panel in elementor */
.woocommerce.sptpro-smart-tabs div.product.elementor .woocommerce-tabs .panel {
    padding: 0;
    border-top: none;
}

/* Remove extra border and box-shadow from active indicator in 'Neve' Theme. */
.woocommerce.theme-neve div.product .woocommerce-tabs ul.tabs li.active::after {
    box-shadow: none !important;
    border: none;
}


/* Style for Product Tabs content */
#sp-smart-product-tabs.woocommerce {
    box-sizing: border-box;
    position: relative;
}

#sp-smart-product-tabs.woocommerce figure {
    position: relative;
}

/* Hide duplicate tab on Block Theme. */
.woocommerce-uses-block-theme div:has(.wc-tabs-wrapper)+.wp-block-woocommerce-product-details .woocommerce-tabs.wc-tabs-wrapper {
    display: none !important;
}

/* Tabs plus-minus icons */
@font-face {
    font-family: 'sp_tabs-plus';
    src: url('./font/plus.eot?13139384');
    src: url('./font/plus.eot?13139384#iefix') format('embedded-opentype'),
        url('./font/plus.woff2?13139384') format('woff2'),
        url('./font/plus.woff?13139384') format('woff'),
        url('./font/plus.ttf?13139384') format('truetype'),
        url('./font/plus.svg?13139384#plus') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
  @media screen and (-webkit-min-device-pixel-ratio:0) {
    @font-face {
      font-family: 'plus';
      src: url('../font/plus.svg?13139384#plus') format('svg');
    }
  }
  */
[class^="sp-accordion-tabs-icon-"]:before,
[class*=" sp-accordion-tabs-icon-"]:before {
    font-family: "sp_tabs-plus";
    font-style: normal;
    font-weight: normal;
    speak: never;

    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    margin-right: .2em;
    text-align: center;
    /* opacity: .8; */

    /* For safety - reset parent styles, that can break glyph codes*/
    font-variant: normal;
    text-transform: none;

    /* fix buttons height, for twitter bootstrap */
    line-height: 1em;

    /* Animation center compensation - margins should be symmetric */
    /* remove if not needed */
    margin-left: .2em;

    /* you can be more comfortable with increased icons size */
    /* font-size: 120%; */

    /* Font smoothing. That was taken from TWBS */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    /* Uncomment for 3D effect */
    /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.sp-accordion-tabs-icon-plus:before {
    content: '\e800' !important;
}

/* '' */
.sp-accordion-tabs-icon-minus:before {
    content: '\e801' !important;
}

/* '' */