/*
Theme Name:   TAB
Theme URI:    https://xstore.8theme.com
Description:  XStore is a multi-purpose theme that offers the ultimate WordPress and WooCommerce synergy, providing a comprehensive, all-in-one solution.
Author:       8theme
Author URI:   https://www.8theme.com
Template:     thinkaboutbooks
Version:      1.0
Text Domain:  xstore-child
Tags: e-commerce, two-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, custom-logo, featured-images, full-width-template, threaded-comments, accessibility-ready, rtl-language-support, footer-widgets, sticky-post, theme-options, translation-ready, ecommerce, woocommerce, shop, elementor, business, corporate, blog, news, light, dark
*/

/* =========================================================
   THINK ABOUT BOOKS — GLOBAL BRAND SYSTEM
   ========================================================= */

:root {
    --tab-navy: #071B3D;
    --tab-teal: #1687A3;
    --tab-teal-dark: #086B85;
    --tab-aqua: #78C8D8;
    --tab-soft: #EAF5F7;
    --tab-ice: #F3F9FB;
    --tab-border: #DCE9EE;
    --tab-slate: #607086;
}


/* =========================================================
   GLOBAL TAB HEADER
   ========================================================= */

body:not(.home) .header-wrapper,
body:not(.home) #header {
    display: none !important;
}

.tab-global-header {
    position: relative;
    z-index: 999;

    width: 100%;

    background: rgba(255,255,255,.98);

    border-bottom: 1px solid var(--tab-border);
}

.tab-global-header__inner {
    width: min(calc(100% - 70px),1520px);
    height: 92px;

    margin-inline: auto;

    display: grid;

    grid-template-columns:
        210px
        minmax(520px,1fr)
        minmax(390px,480px);

    gap: 25px;

    align-items: center;
}


/* Logo */

.tab-global-logo,
.tab-global-logo img {
    width: 190px !important;
    max-width: 190px !important;
}

.tab-global-logo img {
    display: block;

    height: auto !important;
    max-height: 78px;

    object-fit: contain;
}


/* Navigation */

.tab-global-nav {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: clamp(24px,2vw,38px);
}

.tab-global-nav a {
    color: var(--tab-navy);

    font-family: var(--tab-font-ui,Arial,sans-serif);
    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    white-space: nowrap;
}

.tab-global-nav a:hover {
    color: var(--tab-teal);
}


/* Header actions */

.tab-global-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    gap: 15px;
}


/* Search */

.tab-global-search {
    width: 330px;
    height: 42px;

    display: flex;

    overflow: hidden;

    margin: 0;

    border: 1px solid var(--tab-border);
    border-radius: 10px;

    background: #fff;
}

.tab-global-search input[type="search"] {
    flex: 1;

    min-width: 0;
    height: 42px;

    margin: 0 !important;
    padding: 0 15px !important;

    border: 0 !important;

    background: #fff !important;

    color: var(--tab-navy);

    font-size: 12px;

    outline: 0;
    box-shadow: none !important;
}

.tab-global-search button {
    flex: 0 0 48px;

    width: 48px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: var(--tab-teal) !important;
    color: #fff !important;

    font-size: 17px;
}

.tab-global-search button:hover {
    background: var(--tab-teal-dark) !important;
}


/* Account */

.tab-global-account {
    position: relative;

    width: 40px;
    height: 40px;

    flex: 0 0 40px;

    border: 2px solid var(--tab-navy);
    border-radius: 50%;
}

.tab-global-account__head {
    position: absolute;

    top: 7px;
    left: 50%;

    width: 9px;
    height: 9px;

    border: 2px solid var(--tab-navy);
    border-radius: 50%;

    transform: translateX(-50%);
}

.tab-global-account__body {
    position: absolute;

    left: 50%;
    bottom: 6px;

    width: 19px;
    height: 10px;

    border: 2px solid var(--tab-navy);
    border-bottom: 0;

    border-radius: 12px 12px 0 0;

    transform: translateX(-50%);
}


/* Cart */

.tab-global-cart {
    position: relative;

    width: 42px;
    height: 42px;

    flex: 0 0 42px;
}

.tab-global-cart__basket {
    position: absolute;

    left: 8px;
    top: 13px;

    width: 25px;
    height: 17px;

    border: 2px solid var(--tab-navy);
    border-top: 0;

    transform: skew(-7deg);
}

.tab-global-cart__basket::before {
    content: "";

    position: absolute;

    left: -5px;
    top: -8px;

    width: 9px;
    height: 9px;

    border-left: 2px solid var(--tab-navy);
    border-top: 2px solid var(--tab-navy);
}

.tab-global-cart__count {
    position: absolute;

    top: -3px;
    right: -3px;

    display: grid;

    min-width: 20px;
    height: 20px;

    padding: 0 5px;

    place-items: center;

    border-radius: 20px;

    background: var(--tab-teal);
    color: #fff;

    font-size: 10px;
    font-weight: 800;
}


/* =========================================================
   GLOBAL WOOCOMMERCE BRAND COLORS
   ========================================================= */

.woocommerce a,
.woocommerce-page a {
    transition: color .2s ease;
}

.woocommerce a:hover,
.woocommerce-page a:hover {
    color: var(--tab-teal-dark);
}


/* Buttons */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button,
.checkout-button,
button[name="woocommerce_checkout_place_order"] {
    border-color: var(--tab-teal) !important;
    border-radius: 7px !important;

    background: var(--tab-teal) !important;
    color: #fff !important;

    font-family: var(--tab-font-ui,Arial,sans-serif) !important;
    font-weight: 700 !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
button[name="woocommerce_checkout_place_order"]:hover {
    border-color: var(--tab-teal-dark) !important;

    background: var(--tab-teal-dark) !important;
    color: #fff !important;
}


/* Buy Now / XStore secondary commerce actions */

.buy-now-button,
.et-single-buy-now,
.single-buy-now {
    border-color: var(--tab-navy) !important;

    background: var(--tab-navy) !important;
    color: #fff !important;
}

.buy-now-button:hover,
.et-single-buy-now:hover,
.single-buy-now:hover {
    background: var(--tab-teal) !important;
}


/* Prices */

.price,
.woocommerce-Price-amount,
.product-content .price {
    color: var(--tab-teal) !important;
}


/* Stock */

.stock.in-stock,
.in-stock {
    color: #168A62 !important;
}


/* Ratings */

.star-rating,
.stars,
.stars a {
    color: #F39A27 !important;
}


/* Product headings */

.single-product .product_title,
.woocommerce-products-header__title,
.woocommerce-loop-product__title {
    color: var(--tab-navy) !important;
}


/* Product tabs */

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover {
    color: var(--tab-teal) !important;
}

.woocommerce-tabs ul.tabs li.active {
    border-color: var(--tab-teal) !important;
}


/* Breadcrumb area */

.page-heading,
.breadcrumbs {
    color: var(--tab-slate);
}

.breadcrumbs a {
    color: var(--tab-navy);
}

.breadcrumbs a:hover {
    color: var(--tab-teal);
}


/* Sale labels */

.onsale,
.sale-wrapper .sale-value,
.content-product .label-product {
    background: var(--tab-teal) !important;
    color: #fff !important;
}


/* Form focus */

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
    border-color: var(--tab-teal) !important;

    box-shadow:
        0 0 0 2px rgba(22,135,163,.10) !important;
}


/* Product metadata */

.product_meta,
.product_meta a {
    color: var(--tab-slate);
}

.product_meta a:hover {
    color: var(--tab-teal);
}


/* =========================================================
   RESPONSIVE GLOBAL HEADER
   ========================================================= */

@media (max-width: 1250px) {

    .tab-global-header__inner {
        width: calc(100% - 40px);

        grid-template-columns:
            175px
            minmax(420px,1fr)
            285px;

        gap: 15px;
    }

    .tab-global-logo,
    .tab-global-logo img {
        width: 165px !important;
        max-width: 165px !important;
    }

    .tab-global-nav {
        gap: 16px;
    }

    .tab-global-nav a {
        font-size: 12px;
    }

    .tab-global-search {
        width: 210px;
    }
}

@media (max-width: 900px) {

    .tab-global-header__inner {
        width: calc(100% - 28px);

        height: 78px;

        display: flex;

        align-items: center;
        justify-content: space-between;
    }

    .tab-global-logo,
    .tab-global-logo img {
        width: 145px !important;
        max-width: 145px !important;
    }

    .tab-global-nav,
    .tab-global-search {
        display: none;
    }
}



/* =========================================================
   THINK ABOUT BOOKS — PRODUCT DETAIL R2
   ========================================================= */

body.single-product {
    background: #fff;
    color: var(--tab-navy);
}


/* Remove old oversized XStore breadcrumb band */

body.single-product .page-heading {
    min-height: 0 !important;

    padding: 16px 0 !important;

    background: #fff !important;

    border-bottom: 1px solid var(--tab-border);
}

body.single-product .page-heading .container {
    width: min(calc(100% - 70px),1520px) !important;
    max-width: 1520px !important;
}

body.single-product .breadcrumbs {
    font-size: 12px !important;
    color: var(--tab-slate) !important;
}


/* Main product area */

body.single-product .content-page,
body.single-product .site-content {
    background: #fff;
}

body.single-product .product {
    color: var(--tab-navy);
}


/* Product title */

body.single-product .product_title {
    margin-bottom: 8px !important;

    color: var(--tab-navy) !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-size: clamp(32px,3vw,48px) !important;
    font-weight: 800 !important;

    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
}


/* Product image */

body.single-product
.woocommerce-product-gallery__wrapper {
    border-radius: 14px;

    background: #F8FAFB;
}

body.single-product
.woocommerce-product-gallery__image img {
    object-fit: contain;
}


/* Thumbnail gallery */

body.single-product
.flex-control-thumbs li {
    overflow: hidden;

    border: 1px solid var(--tab-border);
    border-radius: 8px;

    background: #fff;
}

body.single-product
.flex-control-thumbs li img.flex-active {
    border: 2px solid var(--tab-teal);
}


/* Price */

body.single-product .summary .price {
    margin: 15px 0 !important;

    color: var(--tab-navy) !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-size: 30px !important;
    font-weight: 800 !important;
}

body.single-product .summary .price del {
    color: #98A5B4 !important;
    font-size: 17px;
    font-weight: 500;
}

body.single-product .summary .price ins {
    color: var(--tab-navy) !important;
    text-decoration: none;
}


/* Short description */

body.single-product
.woocommerce-product-details__short-description {
    max-width: 620px;

    color: #42546A;

    font-size: 15px;
    line-height: 1.7;
}


/* Rating */

body.single-product
.woocommerce-product-rating {
    display: flex;
    align-items: center;

    gap: 10px;

    margin: 12px 0 !important;
}

body.single-product
.woocommerce-review-link {
    color: var(--tab-slate) !important;
    font-size: 12px;
}


/* Stock */

body.single-product .stock {
    margin: 14px 0 !important;

    color: #168A62 !important;

    font-size: 14px;
    font-weight: 700;
}


/* Quantity */

body.single-product .quantity {
    overflow: hidden;

    border: 1px solid var(--tab-border);
    border-radius: 7px;
}

body.single-product .quantity input {
    border-color: var(--tab-border) !important;
}


/* Add to cart */

body.single-product
.single_add_to_cart_button {
    min-height: 52px !important;

    padding: 0 38px !important;

    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85,
            #1687A3
        ) !important;

    color: #fff !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase;
}

body.single-product
.single_add_to_cart_button:hover {
    background: var(--tab-navy) !important;
}


/* Wishlist / compare */

body.single-product
.yith-wcwl-add-to-wishlist a,
body.single-product
.compare,
body.single-product
.add_to_wishlist {
    color: var(--tab-navy) !important;
}

body.single-product
.yith-wcwl-add-to-wishlist a:hover,
body.single-product
.compare:hover {
    color: var(--tab-teal) !important;
}


/* Product metadata */

body.single-product .product_meta {
    margin-top: 18px;

    padding-top: 15px;

    border-top: 1px solid var(--tab-border);

    color: var(--tab-slate) !important;

    font-size: 12px;
    line-height: 1.8;
}

body.single-product .product_meta > span {
    display: block;
}


/* =========================================================
   PRODUCT DESCRIPTION / INFORMATION
   ========================================================= */

body.single-product .woocommerce-tabs {
    margin-top: 55px !important;

    padding-top: 0;

    border-top: 1px solid var(--tab-border);
}

body.single-product
.woocommerce-tabs ul.tabs {
    display: flex;

    justify-content: center;

    gap: 35px;

    margin-bottom: 35px !important;
}

body.single-product
.woocommerce-tabs ul.tabs::before {
    border-bottom-color: var(--tab-border) !important;
}

body.single-product
.woocommerce-tabs ul.tabs li {
    border: 0 !important;

    background: transparent !important;
}

body.single-product
.woocommerce-tabs ul.tabs li a {
    padding: 17px 5px !important;

    color: var(--tab-slate) !important;

    font-size: 12px !important;
    font-weight: 700 !important;

    text-transform: uppercase;
}

body.single-product
.woocommerce-tabs ul.tabs li.active a {
    color: var(--tab-teal) !important;

    border-bottom: 2px solid var(--tab-teal);
}

body.single-product
.woocommerce-Tabs-panel {
    max-width: 1200px;

    margin-inline: auto;

    color: #42546A;

    font-size: 15px;
    line-height: 1.8;
}

body.single-product
.woocommerce-Tabs-panel h2,
body.single-product
.woocommerce-Tabs-panel h3 {
    color: var(--tab-navy);

    font-family:
        var(--tab-font-editorial,Georgia,serif) !important;
}


/* =========================================================
   RELATED / UPSELL PRODUCTS
   ========================================================= */

body.single-product .related,
body.single-product .upsells {
    margin-top: 55px !important;

    padding-top: 35px;

    border-top: 1px solid var(--tab-border);
}

body.single-product .related > h2,
body.single-product .upsells > h2 {
    margin-bottom: 30px;

    color: var(--tab-navy);

    font-family:
        var(--tab-font-editorial,Georgia,serif) !important;

    font-size: 30px;
    font-weight: 700;

    text-align: center;
}


/* Product recommendation cards */

body.single-product
.related .product,
body.single-product
.upsells .product {
    background: transparent;
}

body.single-product
.related .product img,
body.single-product
.upsells .product img {
    border-radius: 8px;

    object-fit: contain;
}

body.single-product
.related .product-title,
body.single-product
.upsells .product-title,
body.single-product
.related .woocommerce-loop-product__title,
body.single-product
.upsells .woocommerce-loop-product__title {
    color: var(--tab-navy) !important;

    font-size: 14px !important;
}


/* =========================================================
   REVIEWS
   ========================================================= */

body.single-product #reviews {
    margin-top: 35px;
}

body.single-product #reviews h2,
body.single-product #reviews h3 {
    color: var(--tab-navy);

    font-family:
        var(--tab-font-editorial,Georgia,serif) !important;
}

body.single-product
.comment_container {
    padding: 22px;

    border: 1px solid var(--tab-border);
    border-radius: 10px;

    background: #fff;

    box-shadow:
        0 7px 22px rgba(7,27,61,.05);
}


/* =========================================================
   PRODUCT TRUST STRIP
   ========================================================= */

body.single-product
.product-information::after {
    content:
        "100% Original Books     •     Fast Delivery     •     Secure Payments     •     Easy Returns";

    display: block;

    clear: both;

    margin-top: 30px;
    padding: 18px 20px;

    border: 1px solid var(--tab-border);
    border-radius: 10px;

    background: var(--tab-ice);

    color: var(--tab-navy);

    font-size: 12px;
    font-weight: 700;

    text-align: center;

    word-spacing: 3px;
}


/* =========================================================
   PRODUCT PAGE MOBILE
   ========================================================= */

@media (max-width: 767px) {

    body.single-product .page-heading .container {
        width: calc(100% - 28px) !important;
    }

    body.single-product .product_title {
        font-size: 34px !important;
    }

    body.single-product
    .woocommerce-tabs ul.tabs {
        gap: 10px;

        overflow-x: auto;

        justify-content: flex-start;
    }

    body.single-product
    .product-information::after {
        line-height: 2;
    }
}


/* =========================================================
   TAB PRODUCT PAGE — APPROVED BREADCRUMB + COMMERCE PALETTE
   ========================================================= */


/* ---------------------------------------------------------
   BREADCRUMB — REMOVE XSTORE HERO BAND
   --------------------------------------------------------- */

body.single-product .page-heading {
    width: 100% !important;

    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #FFFFFF !important;

    border-top: 0 !important;
    border-bottom: 1px solid #E5EEF2 !important;

    box-shadow: none !important;
}

body.single-product .page-heading .container {
    width: min(calc(100% - 70px),1520px) !important;
    max-width: 1520px !important;

    min-height: 58px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}


/* Kill any title occupying the breadcrumb area */

body.single-product .page-heading .title,
body.single-product .page-heading h1,
body.single-product .page-heading .page-title {
    display: none !important;
}


/* Breadcrumb itself */

body.single-product .breadcrumbs {
    width: 100% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    gap: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #607086 !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-size: 12px !important;
    font-weight: 500 !important;

    line-height: 1.3 !important;

    text-align: left !important;
}


/* Breadcrumb links */

body.single-product .breadcrumbs a {
    color: #071B3D !important;

    font-size: 12px !important;
    font-weight: 600 !important;

    text-decoration: none !important;
}

body.single-product .breadcrumbs a:hover {
    color: #1687A3 !important;
}


/* Breadcrumb separators */

body.single-product .breadcrumbs .delimeter,
body.single-product .breadcrumbs .delimiter,
body.single-product .breadcrumbs .separator {
    margin: 0 10px !important;

    color: #9BA8B6 !important;
}


/* Current breadcrumb */

body.single-product .breadcrumbs .current,
body.single-product .breadcrumbs span:last-child {
    color: #607086 !important;
}


/* ---------------------------------------------------------
   REMOVE EXCESS GAP BELOW BREADCRUMB
   --------------------------------------------------------- */

body.single-product .content-page,
body.single-product .site-content {
    padding-top: 34px !important;
}

body.single-product .product-content {
    margin-top: 0 !important;
}


/* ---------------------------------------------------------
   PRODUCT TITLE / PRICE
   --------------------------------------------------------- */

body.single-product .product_title {
    color: #071B3D !important;
}

body.single-product .summary .price,
body.single-product .summary .price ins,
body.single-product .woocommerce-Price-amount {
    color: #071B3D !important;
}

body.single-product .summary .price del,
body.single-product .summary .price del .woocommerce-Price-amount {
    color: #9AA6B3 !important;
}


/* ---------------------------------------------------------
   ADD TO CART — TAB TEAL
   --------------------------------------------------------- */

body.single-product form.cart .single_add_to_cart_button,
body.single-product button.single_add_to_cart_button,
body.single-product .single_add_to_cart_button.button,
body.single-product .etheme-sticky-cart .single_add_to_cart_button {
    min-height: 52px !important;

    border: 1px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #1687A3 !important;
    background-image:
        linear-gradient(
            90deg,
            #086B85 0%,
            #1687A3 100%
        ) !important;

    color: #FFFFFF !important;

    font-weight: 800 !important;

    box-shadow: none !important;
}

body.single-product form.cart .single_add_to_cart_button:hover,
body.single-product button.single_add_to_cart_button:hover {
    border-color: #071B3D !important;

    background: #071B3D !important;
    background-image: none !important;

    color: #FFFFFF !important;
}


/* ---------------------------------------------------------
   BUY NOW — WHITE / TEAL OUTLINE
   Approved visual treatment
   --------------------------------------------------------- */

body.single-product .et-single-buy-now,
body.single-product .buy-now-button,
body.single-product .single-buy-now,
body.single-product button[name="buy-now"],
body.single-product button[name="buy_now"],
body.single-product .etheme-buy-now,
body.single-product [class*="buy-now"],
body.single-product [class*="buy_now"] {
    min-height: 52px !important;

    border: 2px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #FFFFFF !important;
    background-image: none !important;

    color: #086B85 !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-weight: 800 !important;

    box-shadow: none !important;
}

body.single-product .et-single-buy-now:hover,
body.single-product .buy-now-button:hover,
body.single-product .single-buy-now:hover,
body.single-product .etheme-buy-now:hover,
body.single-product [class*="buy-now"]:hover,
body.single-product [class*="buy_now"]:hover {
    border-color: #086B85 !important;

    background: #EAF5F7 !important;

    color: #071B3D !important;
}


/* ---------------------------------------------------------
   OR DIVIDER
   --------------------------------------------------------- */

body.single-product .etheme-product-option-divider,
body.single-product .et-or-wrapper,
body.single-product .buy-now-or,
body.single-product [class*="divider"] {
    color: #8B98A8 !important;
}


/* ---------------------------------------------------------
   WISHLIST / COMPARE
   --------------------------------------------------------- */

body.single-product .yith-wcwl-add-to-wishlist a,
body.single-product .add_to_wishlist,
body.single-product .compare,
body.single-product [class*="wishlist"] a {
    color: #071B3D !important;
}

body.single-product .yith-wcwl-add-to-wishlist a:hover,
body.single-product .add_to_wishlist:hover,
body.single-product .compare:hover {
    color: #1687A3 !important;
}


/* ---------------------------------------------------------
   STOCK
   --------------------------------------------------------- */

body.single-product .stock,
body.single-product .stock.in-stock {
    color: #168A62 !important;

    font-weight: 700 !important;
}


/* ---------------------------------------------------------
   RATINGS
   --------------------------------------------------------- */

body.single-product .star-rating,
body.single-product .stars,
body.single-product .stars a {
    color: #F3A51F !important;
}


/* ---------------------------------------------------------
   PRODUCT META
   --------------------------------------------------------- */

body.single-product .product_meta {
    border-top: 1px solid #E5EEF2 !important;
}

body.single-product .product_meta,
body.single-product .product_meta span {
    color: #607086 !important;
}

body.single-product .product_meta a {
    color: #071B3D !important;
}

body.single-product .product_meta a:hover {
    color: #1687A3 !important;
}


/* ---------------------------------------------------------
   QUANTITY
   --------------------------------------------------------- */

body.single-product .quantity {
    border-color: #DCE9EE !important;
}

body.single-product .quantity input,
body.single-product .quantity button {
    color: #071B3D !important;

    background: #FFFFFF !important;

    border-color: #DCE9EE !important;
}


/* ---------------------------------------------------------
   LINKS / ACCENTS
   --------------------------------------------------------- */

body.single-product .summary a {
    color: #1687A3;
}

body.single-product .summary a:hover {
    color: #086B85;
}


/* ---------------------------------------------------------
   MOBILE BREADCRUMB
   --------------------------------------------------------- */

@media (max-width: 767px) {

    body.single-product .page-heading .container {
        width: calc(100% - 28px) !important;

        min-height: 48px !important;
    }

    body.single-product .breadcrumbs {
        overflow-x: auto;

        font-size: 11px !important;

        white-space: nowrap;
    }

    body.single-product .breadcrumbs a {
        font-size: 11px !important;
    }

    body.single-product .content-page,
    body.single-product .site-content {
        padding-top: 22px !important;
    }
}


/* =========================================================
   THINK ABOUT BOOKS — R2 PURCHASE CARD
   ========================================================= */

body.single-product .tab-purchase-card {
    width: min(100%, 460px);

    margin: 32px 0 45px auto;
    padding: 22px;

    border: 1px solid #E4EDF1;
    border-radius: 16px;

    background: #FFFFFF;

    box-shadow:
        0 12px 35px rgba(7,27,61,.07);

    font-family:
        var(--tab-font-ui,Arial,sans-serif);
}


/* Format selectors */

body.single-product .tab-format-options {
    display: grid;
    grid-template-columns:
        repeat(auto-fit,minmax(90px,1fr));

    gap: 0;

    margin-bottom: 28px;

    overflow: hidden;

    border: 1px solid #E4EDF1;
    border-radius: 9px;
}

body.single-product .tab-format-option {
    min-height: 82px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 6px;

    margin: 0 !important;
    padding: 12px 8px !important;

    border: 0 !important;
    border-right: 1px solid #E4EDF1 !important;
    border-radius: 0 !important;

    background: #FFFFFF !important;
    color: #071B3D !important;

    box-shadow: none !important;
}

body.single-product
.tab-format-option:last-child {
    border-right: 0 !important;
}

body.single-product
.tab-format-option strong {
    color: #071B3D;

    font-size: 13px;
    font-weight: 700;
}

body.single-product
.tab-format-option span {
    color: #071B3D;

    font-size: 12px;
    font-weight: 700;
}

body.single-product
.tab-format-option.is-active {
    position: relative;
    z-index: 2;

    box-shadow:
        inset 0 0 0 2px #1687A3 !important;

    background: #F7FCFD !important;
}


/* Main price */

body.single-product .tab-purchase-price {
    margin-bottom: 12px;

    color: #071B3D;

    font-size: 30px;
    font-weight: 800;
}

body.single-product
.tab-purchase-price .amount {
    color: #071B3D !important;
}


/* Stock */

body.single-product .tab-purchase-stock {
    display: flex;
    align-items: center;

    gap: 8px;

    margin-top: 18px;

    color: #168A62;

    font-size: 14px;
    font-weight: 700;
}

body.single-product
.tab-purchase-stock span {
    width: 11px;
    height: 11px;

    border-radius: 50%;

    background: #39B86B;
}

body.single-product
.tab-purchase-stock.is-out {
    color: #A64242;
}

body.single-product
.tab-purchase-stock.is-out span {
    background: #C94C4C;
}

body.single-product .tab-purchase-delivery {
    margin: 5px 0 18px;

    color: #607086;

    font-size: 12px;
}


/* WooCommerce cart form inside purchase card */

body.single-product
.tab-native-cart form.cart {
    display: flex !important;

    gap: 10px;

    margin: 0 0 12px !important;
}

body.single-product
.tab-native-cart .quantity {
    flex: 0 0 78px;
}

body.single-product
.tab-native-cart .single_add_to_cart_button {
    flex: 1;

    min-height: 52px !important;

    border: 0 !important;
    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85,
            #1687A3
        ) !important;

    color: #FFFFFF !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase;
}


/* Buy now */

body.single-product .tab-buy-now-button {
    width: 100% !important;
    min-height: 52px !important;

    display: flex !important;
    align-items: center;
    justify-content: center;

    gap: 8px;

    margin: 0 0 14px !important;

    border: 2px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #FFFFFF !important;

    color: #086B85 !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase;

    box-shadow: none !important;
}

body.single-product
.tab-buy-now-button:hover {
    background: #EAF5F7 !important;

    color: #071B3D !important;
}


/* Wishlist */

body.single-product
.tab-purchase-wishlist {
    margin: 8px 0 18px;

    text-align: center;
}

body.single-product
.tab-purchase-wishlist a {
    color: #071B3D !important;

    font-size: 13px;
}


/* Referral card */

body.single-product .tab-share-earn {
    display: grid;

    grid-template-columns: 58px 1fr;

    gap: 15px;

    margin-top: 18px;
    padding: 18px;

    border-radius: 10px;

    background:
        linear-gradient(
            135deg,
            #F3F9FB,
            #FFFFFF
        );
}

body.single-product
.tab-share-earn__icon {
    display: grid;

    width: 52px;
    height: 52px;

    place-items: center;

    border: 1px solid #78C8D8;
    border-radius: 50%;

    color: #1687A3;

    font-size: 23px;
}

body.single-product
.tab-share-earn__content strong {
    display: block;

    margin-bottom: 5px;

    color: #086B85;

    font-size: 13px;
}

body.single-product
.tab-share-earn__content p {
    margin: 0 0 12px;

    color: #42546A;

    font-size: 12px;
    line-height: 1.55;
}

body.single-product .tab-share-link {
    display: inline-flex;

    min-height: 38px;

    align-items: center;
    justify-content: center;

    padding: 0 25px;

    border: 1px solid #1687A3;
    border-radius: 6px;

    color: #086B85 !important;

    font-size: 11px;
    font-weight: 800;

    text-transform: uppercase;
    text-decoration: none;
}


/* Hide the OLD XStore Buy Now specifically */

body.single-product
.summary .et-single-buy-now,
body.single-product
.summary .buy-now-button,
body.single-product
.summary .etheme-buy-now,
body.single-product
.summary [class*="buy-now"],
body.single-product
.summary [class*="buy_now"] {
    display: none !important;
}


/* Mobile */

@media (max-width: 767px) {

    body.single-product .tab-purchase-card {
        width: 100%;

        margin: 25px 0;

        padding: 16px;
    }

    body.single-product .tab-format-options {
        grid-template-columns:
            repeat(2,1fr);
    }

    body.single-product
    .tab-native-cart form.cart {
        flex-direction: column;
    }

    body.single-product
    .tab-native-cart .quantity {
        width: 100%;
        flex-basis: auto;
    }
}


/* =========================================================
   TAB PRODUCT DETAIL — NATIVE COMMERCE FINAL OVERRIDE
   Use XStore/WooCommerce functionality, TAB appearance
   ========================================================= */


/* ---------------------------------------------------------
   TOP PRODUCT COMPOSITION
   --------------------------------------------------------- */

body.single-product .product-content {
    width: min(calc(100% - 70px), 1420px) !important;
    max-width: 1420px !important;

    margin: 0 auto !important;
    padding: 34px 0 42px !important;
}


/* Gallery */

body.single-product .product-images,
body.single-product .woocommerce-product-gallery {
    background: #fff !important;
}

body.single-product
.woocommerce-product-gallery__wrapper {
    overflow: hidden;

    border-radius: 12px !important;

    background: #F8FAFB !important;
}

body.single-product
.woocommerce-product-gallery__image img {
    width: 100% !important;
    height: auto !important;

    object-fit: contain !important;
}


/* ---------------------------------------------------------
   PRODUCT SUMMARY
   --------------------------------------------------------- */

body.single-product .summary {
    color: #071B3D;
}

body.single-product .summary .product_title {
    margin: 0 0 8px !important;

    color: #071B3D !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-size: clamp(36px,3vw,52px) !important;
    font-weight: 800 !important;

    line-height: 1.03 !important;
    letter-spacing: -.04em !important;
}


/* Price */

body.single-product .summary .price {
    margin: 6px 0 12px !important;

    color: #071B3D !important;

    font-size: 28px !important;
    font-weight: 800 !important;
}

body.single-product
.summary .price .woocommerce-Price-amount {
    color: #071B3D !important;
}


/* Rating */

body.single-product
.summary .woocommerce-product-rating {
    margin: 12px 0 17px !important;
}


/* Short description */

body.single-product
.summary
.woocommerce-product-details__short-description {
    margin-bottom: 18px !important;

    color: #42546A !important;

    font-size: 15px !important;
    line-height: 1.65 !important;
}


/* ---------------------------------------------------------
   NATIVE PURCHASE AREA AS APPROVED CARD
   --------------------------------------------------------- */

body.single-product .summary form.cart {
    margin-top: 20px !important;
    margin-bottom: 15px !important;
}


/* Quantity + Add To Cart */

body.single-product
.summary form.cart:not(.variations_form) {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 10px !important;
}

body.single-product
.summary form.cart .quantity {
    flex: 0 0 78px !important;

    height: 52px !important;

    border: 1px solid #DCE9EE !important;
    border-radius: 7px !important;

    background: #fff !important;
}

body.single-product
.summary form.cart .single_add_to_cart_button {
    flex: 1 1 300px !important;

    min-height: 52px !important;

    margin: 0 !important;

    border: 0 !important;
    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85 0%,
            #1687A3 100%
        ) !important;

    color: #fff !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    letter-spacing: .02em !important;
    text-transform: uppercase !important;

    box-shadow: none !important;
}


/* ---------------------------------------------------------
   XSTORE NATIVE BUY NOW
   --------------------------------------------------------- */

/*
 * Earlier rule hid the XStore Buy Now.
 * Restore it and give it the approved white/teal treatment.
 */

body.single-product
.summary .et-single-buy-now,
body.single-product
.summary .buy-now-button,
body.single-product
.summary .etheme-buy-now,
body.single-product
.summary [class*="buy-now"],
body.single-product
.summary [class*="buy_now"] {
    display: flex !important;

    width: 100% !important;
    min-height: 52px !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 12px 0 14px !important;
    padding: 0 25px !important;

    border: 2px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #FFFFFF !important;
    background-image: none !important;

    color: #086B85 !important;

    font-family:
        var(--tab-font-ui,Arial,sans-serif) !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;

    box-shadow: none !important;
}

body.single-product
.summary [class*="buy-now"]:hover,
body.single-product
.summary [class*="buy_now"]:hover {
    background: #EAF5F7 !important;

    color: #071B3D !important;
}


/* OR separator */

body.single-product .summary .et-or-wrapper,
body.single-product .summary .buy-now-or,
body.single-product .summary [class*="or-wrapper"] {
    color: #8B98A8 !important;

    font-size: 10px !important;

    text-align: center !important;
}


/* ---------------------------------------------------------
   FORMAT / VARIATION SELECTOR
   --------------------------------------------------------- */

/*
 * Formats are shown ONLY when WooCommerce has variations.
 */

body.single-product
.summary form.variations_form table.variations {
    width: 100% !important;

    margin: 0 0 22px !important;

    border: 0 !important;
}

body.single-product
.summary form.variations_form table.variations tr {
    display: block !important;
}

body.single-product
.summary form.variations_form table.variations th.label {
    display: block !important;

    margin-bottom: 8px !important;

    color: #071B3D !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    text-transform: uppercase;
}

body.single-product
.summary form.variations_form table.variations td.value {
    display: block !important;

    width: 100% !important;
}


/*
 * Native dropdown remains functional.
 * Styled cleanly until we convert format options into
 * clickable visual cards.
 */

body.single-product
.summary form.variations_form select {
    width: 100% !important;
    height: 50px !important;

    padding: 0 14px !important;

    border: 1px solid #DCE9EE !important;
    border-radius: 7px !important;

    background: #fff !important;

    color: #071B3D !important;

    font-weight: 700 !important;
}


/* Variation price */

body.single-product
.summary .woocommerce-variation-price {
    margin: 14px 0 !important;

    color: #071B3D !important;

    font-size: 28px !important;
    font-weight: 800 !important;
}


/* ---------------------------------------------------------
   WISHLIST / COMPARE
   --------------------------------------------------------- */

body.single-product
.summary .yith-wcwl-add-to-wishlist,
body.single-product
.summary .compare {
    margin-top: 9px !important;
}

body.single-product
.summary .yith-wcwl-add-to-wishlist a,
body.single-product
.summary .compare {
    color: #071B3D !important;

    font-size: 13px !important;
}

body.single-product
.summary .yith-wcwl-add-to-wishlist a:hover,
body.single-product
.summary .compare:hover {
    color: #1687A3 !important;
}


/* ---------------------------------------------------------
   META
   --------------------------------------------------------- */

body.single-product .summary .product_meta {
    margin-top: 20px !important;
    padding-top: 18px !important;

    border-top: 1px solid #E5EEF2 !important;

    color: #607086 !important;

    font-size: 12px !important;
}

body.single-product .summary .product_meta a {
    color: #1687A3 !important;
}


/* ---------------------------------------------------------
   REMOVE OLD TAB INJECTED CARD IF CACHED
   --------------------------------------------------------- */

body.single-product .tab-purchase-card {
    display: none !important;
}


/* ---------------------------------------------------------
   REMOVE GAP BEFORE PRODUCT TABS
   --------------------------------------------------------- */

body.single-product .woocommerce-tabs {
    margin-top: 25px !important;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    body.single-product .product-content {
        width: calc(100% - 28px) !important;

        padding-top: 22px !important;
    }

    body.single-product
    .summary form.cart:not(.variations_form) {
        display: block !important;
    }

    body.single-product
    .summary form.cart .quantity {
        width: 100% !important;

        margin-bottom: 10px !important;
    }

    body.single-product
    .summary form.cart .single_add_to_cart_button {
        width: 100% !important;
    }
}


/* =========================================================
   TAB R2 — FINAL PRODUCT TOP LAYOUT
   ========================================================= */

body.single-product div.product {
    position: relative;
}


/*
 * Main product area becomes:
 * gallery | information | purchase panel
 */

@media (min-width: 1100px) {

    body.single-product .product-content {
        position: relative;

        width: min(calc(100% - 70px), 1520px) !important;
        max-width: 1520px !important;

        padding-right: 450px !important;
    }

    /*
     * TAB purchase panel is injected immediately after
     * the summary area and positioned as the right column.
     */

    body.single-product .tab-purchase-card {
        position: absolute !important;

        top: 34px !important;
        right: 0 !important;

        display: block !important;

        width: 410px !important;

        margin: 0 !important;
        padding: 22px !important;

        border: 1px solid #E4EDF1 !important;
        border-radius: 16px !important;

        background: #FFFFFF !important;

        box-shadow:
            0 12px 35px rgba(7,27,61,.07) !important;

        z-index: 10;
    }
}


/* =========================================================
   HIDE NATIVE COMMERCE FROM ORIGINAL SUMMARY
   after JS has moved its real form into TAB panel
   ========================================================= */

body.single-product
.summary.tab-commerce-moved
> .price,

body.single-product
.summary.tab-commerce-moved
> .stock,

body.single-product
.summary.tab-commerce-moved
> form.cart,

body.single-product
.summary.tab-commerce-moved
> .yith-wcwl-add-to-wishlist,

body.single-product
.summary.tab-commerce-moved
> .compare,

body.single-product
.summary.tab-commerce-moved
> .et-single-buy-now,

body.single-product
.summary.tab-commerce-moved
> .buy-now-button,

body.single-product
.summary.tab-commerce-moved
> .etheme-buy-now {
    display: none !important;
}


/* Our panel must always be visible */

body.single-product .tab-purchase-card {
    color: #071B3D;
}


/* Price */

body.single-product .tab-purchase-price {
    margin: 5px 0 15px !important;

    color: #071B3D !important;

    font-size: 30px !important;
    font-weight: 800 !important;
}

body.single-product
.tab-purchase-price .woocommerce-Price-amount {
    color: #071B3D !important;
}


/* Stock */

body.single-product .tab-purchase-stock {
    margin: 12px 0 3px !important;
}


/* Actual moved WooCommerce form */

body.single-product
#tab-native-cart-target form.cart {
    width: 100% !important;

    display: grid !important;

    grid-template-columns: 78px 1fr !important;

    gap: 10px !important;

    margin: 18px 0 10px !important;
}

body.single-product
#tab-native-cart-target .quantity {
    width: 78px !important;
    height: 52px !important;

    margin: 0 !important;
}

body.single-product
#tab-native-cart-target
.single_add_to_cart_button {
    width: 100% !important;
    min-height: 52px !important;

    margin: 0 !important;

    border: 0 !important;
    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85,
            #1687A3
        ) !important;

    color: #fff !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;
}


/* Approved Buy Now */

body.single-product .tab-buy-now-button {
    width: 100% !important;
    min-height: 52px !important;

    margin: 0 0 15px !important;

    border: 2px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #FFFFFF !important;

    color: #086B85 !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;
}

body.single-product
.tab-buy-now-button:hover {
    background: #EAF5F7 !important;

    color: #071B3D !important;
}


/* Referral block */

body.single-product .tab-share-earn {
    margin-top: 18px !important;

    border: 1px solid #E4EDF1;

    background:
        linear-gradient(
            135deg,
            #F3F9FB,
            #FFFFFF
        ) !important;
}


/* Prevent description/tabs from beginning beside card */

body.single-product
.woocommerce-tabs {
    clear: both !important;

    margin-top: 45px !important;
}


/* Mobile/tablet returns to normal flow */

@media (max-width: 1099px) {

    body.single-product .product-content {
        padding-right: 0 !important;
    }

    body.single-product .tab-purchase-card {
        position: static !important;

        display: block !important;

        width: 100% !important;
        max-width: 620px !important;

        margin: 30px auto !important;
    }
}


/* =========================================================
   TAB PRODUCT — FINAL TOP COMPOSITION
   ========================================================= */


/* Middle column = information ONLY */

body.single-product
.summary.tab-commerce-moved
form.cart,

body.single-product
.summary.tab-commerce-moved
.single_add_to_cart_button,

body.single-product
.summary.tab-commerce-moved
.quantity,

body.single-product
.summary.tab-commerce-moved
.et-single-buy-now,

body.single-product
.summary.tab-commerce-moved
.buy-now-button,

body.single-product
.summary.tab-commerce-moved
.etheme-buy-now,

body.single-product
.summary.tab-commerce-moved
.compare,

body.single-product
.summary.tab-commerce-moved
.yith-wcwl-add-to-wishlist {

    display: none !important;
}


/*
 * But the SAME WooCommerce form becomes visible again
 * after JS physically moves it inside our panel.
 */

body.single-product
.tab-purchase-card
#tab-native-cart-target
form.cart {

    display: grid !important;

    grid-template-columns:
        76px minmax(0,1fr) !important;

    gap: 10px !important;

    width: 100% !important;

    margin: 18px 0 10px !important;
}


body.single-product
.tab-purchase-card
#tab-native-cart-target
.quantity {

    display: flex !important;

    width: 76px !important;
    height: 52px !important;

    margin: 0 !important;
}


body.single-product
.tab-purchase-card
#tab-native-cart-target
.single_add_to_cart_button {

    display: flex !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;

    border: 0 !important;
    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85,
            #1687A3
        ) !important;

    color: #FFFFFF !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;
}


/* Purchase card slightly wider like approved design */

@media (min-width: 1100px) {

    body.single-product .product-content {

        padding-right: 470px !important;
    }

    body.single-product .tab-purchase-card {

        width: 430px !important;

        padding: 24px !important;
    }
}


/* Purchase panel price */

body.single-product
.tab-purchase-card
.tab-purchase-price {

    margin: 0 0 15px !important;

    color: #071B3D !important;

    font-size: 30px !important;
    font-weight: 800 !important;
}


/* BUY NOW — approved outline treatment */

body.single-product
.tab-purchase-card
.tab-buy-now-button {

    display: flex !important;

    width: 100% !important;
    min-height: 52px !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 8px;

    margin: 10px 0 15px !important;

    border: 2px solid #1687A3 !important;
    border-radius: 7px !important;

    background: #FFFFFF !important;

    color: #086B85 !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;
}


/* Wishlist inside purchase card */

body.single-product
.tab-purchase-card
.tab-purchase-wishlist {

    display: block !important;

    margin: 12px 0 18px !important;

    text-align: center;
}

body.single-product
.tab-purchase-card
.tab-purchase-wishlist
.yith-wcwl-add-to-wishlist {

    display: block !important;
}


/* Referral box */

body.single-product .tab-share-earn {

    margin-top: 15px !important;

    padding: 18px !important;

    border: 1px solid #E4EDF1 !important;
    border-radius: 10px !important;

    background:
        linear-gradient(
            135deg,
            #F3F9FB,
            #FFFFFF
        ) !important;
}


/* Remove excessive height before tabs */

body.single-product .product-content {

    min-height: 0 !important;
}

body.single-product
.woocommerce-tabs {

    margin-top: 20px !important;
}


/* Mobile */

@media (max-width: 1099px) {

    body.single-product
    .tab-purchase-card
    #tab-native-cart-target
    form.cart {

        grid-template-columns: 1fr !important;
    }

    body.single-product
    .tab-purchase-card
    #tab-native-cart-target
    .quantity {

        width: 100% !important;
    }
}


/* =========================================================
   TAB PRODUCT — NO COMMERCE IN INFORMATION COLUMN
   ========================================================= */

/*
 * Defensive cleanup of XStore enhancements that may be
 * inserted independently of WooCommerce's cart callback.
 */

body.single-product
.summary
.et-single-buy-now,

body.single-product
.summary
.buy-now-button,

body.single-product
.summary
.etheme-buy-now,

body.single-product
.summary
[class*="buy-now"],

body.single-product
.summary
[class*="buy_now"],

body.single-product
.summary
.yith-wcwl-add-to-wishlist,

body.single-product
.summary
.compare {

    display: none !important;
}


/* Our purchase panel overrides those rules */

body.single-product
.tab-purchase-card
.tab-buy-now-button {

    display: flex !important;
}

body.single-product
.tab-purchase-card
.yith-wcwl-add-to-wishlist {

    display: block !important;
}


/* Native cart exists only in TAB purchase panel */

body.single-product
.tab-purchase-card
form.cart {

    display: grid !important;

    grid-template-columns:
        76px minmax(0,1fr) !important;

    gap: 10px !important;

    width: 100% !important;

    margin: 18px 0 10px !important;
}


body.single-product
.tab-purchase-card
form.cart .quantity {

    display: flex !important;

    width: 76px !important;
    height: 52px !important;

    margin: 0 !important;
}


body.single-product
.tab-purchase-card
form.cart
.single_add_to_cart_button {

    display: flex !important;

    width: 100% !important;
    min-height: 52px !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;

    border: 0 !important;
    border-radius: 7px !important;

    background:
        linear-gradient(
            90deg,
            #086B85,
            #1687A3
        ) !important;

    color: #FFFFFF !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    text-transform: uppercase !important;
}


/* Variable products need full-width variation UI */

body.single-product
.tab-purchase-card
form.variations_form {

    display: block !important;
}


body.single-product
.tab-purchase-card
form.variations_form
.single_variation_wrap {

    width: 100% !important;
}


body.single-product
.tab-purchase-card
form.variations_form
.woocommerce-variation-add-to-cart {

    display: grid !important;

    grid-template-columns:
        76px minmax(0,1fr) !important;

    gap: 10px !important;
}


/* Information column now has room to breathe */

body.single-product .summary {

    padding-right: 15px !important;
}


/* Approved three-column proportions */

@media (min-width: 1100px) {

    body.single-product .product-content {

        width:
            min(
                calc(100% - 70px),
                1520px
            ) !important;

        max-width:
            1520px !important;

        padding-right:
            470px !important;
    }


    body.single-product
    .tab-purchase-card {

        position: absolute !important;

        top: 34px !important;
        right: 0 !important;

        display: block !important;

        width: 430px !important;

        margin: 0 !important;
    }
}


/* =========================================================
   THINK ABOUT BOOKS — WIDE PRODUCT DETAIL LAYOUT
   ========================================================= */

body.single-product {
    --tab-navy: #071B3D;
    --tab-teal: #1687A3;
    --tab-teal-dark: #086B85;
    --tab-aqua: #78C8D8;
    --tab-ice: #F3F9FB;
    --tab-border: #DCE9EE;
    --tab-slate: #607086;
}


/* ---------------------------------------------------------
   WIDER PAGE
   --------------------------------------------------------- */

@media (min-width: 1200px) {

    body.single-product .page-heading .container,
    body.single-product .product-content,
    body.single-product .woocommerce-tabs,
    body.single-product .related,
    body.single-product .upsells {
        width: min(calc(100% - 80px), 1640px) !important;
        max-width: 1640px !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* ---------------------------------------------------------
   TOP PRODUCT AREA
   Gallery + Information + Purchase
   --------------------------------------------------------- */

@media (min-width: 1200px) {

    body.single-product .product-content {
        position: relative !important;

        /*
         * Reserve space for right purchase panel.
         */
        padding:
            42px
            500px
            65px
            0 !important;

        /*
         * Prevent purchase card overlapping tabs/content.
         */
        min-height: 650px !important;
    }


    /*
     * Gallery gets more useful width.
     */

    body.single-product
    .product-images,

    body.single-product
    .woocommerce-product-gallery {

        width: 48% !important;
        max-width: 520px !important;

        margin-right: 4% !important;
    }


    /*
     * Middle information column.
     */

    body.single-product .summary {

        width: 48% !important;

        padding-right: 15px !important;

        color: var(--tab-navy) !important;
    }


    /*
     * Right purchase panel.
     */

    body.single-product
    .tab-purchase-card {

        position: absolute !important;

        top: 42px !important;
        right: 0 !important;

        width: 455px !important;
        max-width: 455px !important;

        margin: 0 !important;
        padding: 28px !important;

        border:
            1px solid var(--tab-border) !important;

        border-radius: 16px !important;

        background: #fff !important;

        box-shadow:
            0 14px 38px
            rgba(7,27,61,.075) !important;
    }
}


/* ---------------------------------------------------------
   MAIN BOOK COVER
   --------------------------------------------------------- */

body.single-product
.woocommerce-product-gallery__wrapper {

    width: 100% !important;

    margin: 0 !important;

    border-radius: 12px !important;

    background: #fff !important;
}


body.single-product
.woocommerce-product-gallery__image {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    background: #fff !important;
}


body.single-product
.woocommerce-product-gallery__image img {

    display: block !important;

    width: auto !important;
    max-width: 100% !important;

    height: auto !important;
    max-height: 590px !important;

    margin: auto !important;

    object-fit: contain !important;
}


/* ---------------------------------------------------------
   THUMBNAILS BELOW MAIN BOOK
   --------------------------------------------------------- */

/*
 * XStore/FlexSlider thumbnail navigation.
 */

body.single-product
.woocommerce-product-gallery
.flex-control-thumbs {

    position: static !important;

    width: 100% !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;

    align-items: center !important;
    justify-content: flex-start !important;

    gap: 10px !important;

    margin: 15px 0 0 !important;
    padding: 0 !important;

    transform: none !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs li {

    float: none !important;

    flex: 0 0 72px !important;

    width: 72px !important;
    height: 92px !important;

    margin: 0 !important;

    overflow: hidden !important;

    border:
        1px solid var(--tab-border) !important;

    border-radius: 7px !important;

    background: #fff !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs li img {

    width: 100% !important;
    height: 100% !important;

    padding: 4px !important;

    object-fit: contain !important;

    opacity: .7 !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs li img.flex-active {

    opacity: 1 !important;

    box-shadow:
        inset 0 0 0 2px
        var(--tab-teal) !important;
}


/*
 * XStore sometimes uses its own gallery thumbnail wrapper.
 */

body.single-product
.product-images
[class*="thumbnails"] {

    position: static !important;

    width: 100% !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;

    gap: 10px !important;

    margin-top: 15px !important;

    transform: none !important;
}


/* ---------------------------------------------------------
   INFORMATION COLUMN TYPOGRAPHY
   --------------------------------------------------------- */

body.single-product .summary .product_title {

    color: var(--tab-navy) !important;

    font-size:
        clamp(38px,3vw,54px) !important;

    font-weight: 800 !important;

    line-height: 1.02 !important;
}


body.single-product
.summary
.woocommerce-product-details__short-description {

    color: #42546A !important;

    font-size: 15px !important;
    line-height: 1.7 !important;
}


body.single-product
.summary
.woocommerce-review-link {

    color: var(--tab-slate) !important;
}


body.single-product
.summary
.product_meta {

    border-color:
        var(--tab-border) !important;

    color:
        var(--tab-slate) !important;
}


body.single-product
.summary
.product_meta a {

    color:
        var(--tab-teal) !important;
}


/* ---------------------------------------------------------
   PURCHASE PANEL — TAB COLORS
   --------------------------------------------------------- */

body.single-product
.tab-purchase-card
.tab-purchase-price,

body.single-product
.tab-purchase-card
.tab-purchase-price
.woocommerce-Price-amount {

    color:
        var(--tab-navy) !important;
}


body.single-product
.tab-purchase-stock {

    color: #168A62 !important;
}


body.single-product
.tab-purchase-stock span {

    background: #39B86B !important;
}


/* Add to cart */

body.single-product
.tab-purchase-card
.single_add_to_cart_button {

    border: 0 !important;

    background:
        linear-gradient(
            90deg,
            var(--tab-teal-dark),
            var(--tab-teal)
        ) !important;

    color: #fff !important;

    box-shadow: none !important;
}


body.single-product
.tab-purchase-card
.single_add_to_cart_button:hover {

    background:
        var(--tab-navy) !important;
}


/* Buy now */

body.single-product
.tab-purchase-card
.tab-buy-now-button {

    border:
        2px solid
        var(--tab-teal) !important;

    background:
        #fff !important;

    color:
        var(--tab-teal-dark) !important;
}


body.single-product
.tab-purchase-card
.tab-buy-now-button:hover {

    background:
        var(--tab-ice) !important;

    color:
        var(--tab-navy) !important;
}


/* Format options */

body.single-product
.tab-format-options {

    border-color:
        var(--tab-border) !important;
}


body.single-product
.tab-format-option {

    border-color:
        var(--tab-border) !important;

    background:
        #fff !important;

    color:
        var(--tab-navy) !important;
}


body.single-product
.tab-format-option.is-active {

    background:
        #F7FCFD !important;

    box-shadow:
        inset 0 0 0 2px
        var(--tab-teal) !important;
}


/* Referral panel */

body.single-product
.tab-share-earn {

    border:
        1px solid
        var(--tab-border) !important;

    background:
        linear-gradient(
            135deg,
            var(--tab-ice),
            #fff
        ) !important;
}


body.single-product
.tab-share-earn__icon {

    border-color:
        var(--tab-aqua) !important;

    color:
        var(--tab-teal) !important;
}


body.single-product
.tab-share-earn__content strong {

    color:
        var(--tab-teal-dark) !important;
}


body.single-product
.tab-share-link {

    border-color:
        var(--tab-teal) !important;

    color:
        var(--tab-teal-dark) !important;
}


/* ---------------------------------------------------------
   TABS — FORCE BELOW COMPLETE TOP AREA
   --------------------------------------------------------- */

body.single-product
.woocommerce-tabs {

    position: relative !important;

    clear: both !important;

    width:
        min(
            calc(100% - 80px),
            1640px
        ) !important;

    max-width:
        1640px !important;

    margin:
        0 auto 55px !important;

    padding-top:
        28px !important;

    border-top:
        1px solid
        var(--tab-border) !important;
}


body.single-product
.woocommerce-tabs
ul.tabs
li.active a {

    color:
        var(--tab-teal) !important;

    border-bottom-color:
        var(--tab-teal) !important;
}


/* ---------------------------------------------------------
   FREQUENTLY BOUGHT + RELATED
   --------------------------------------------------------- */

body.single-product
.related > h2,

body.single-product
.upsells > h2,

body.single-product
[class*="frequently"] h2 {

    color:
        var(--tab-navy) !important;
}


body.single-product
.related .price,

body.single-product
.upsells .price {

    color:
        var(--tab-teal) !important;
}


/* ---------------------------------------------------------
   TABLET
   --------------------------------------------------------- */

@media
(max-width: 1199px)
and
(min-width: 768px) {

    body.single-product
    .product-content {

        width:
            calc(100% - 50px) !important;

        padding:
            35px 0 50px !important;

        min-height:
            0 !important;
    }


    body.single-product
    .tab-purchase-card {

        position:
            static !important;

        width:
            100% !important;

        max-width:
            650px !important;

        margin:
            35px auto 0 !important;
    }
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    body.single-product
    .product-content {

        width:
            calc(100% - 28px) !important;

        padding:
            25px 0 40px !important;

        min-height:
            0 !important;
    }


    body.single-product
    .woocommerce-product-gallery
    .flex-control-thumbs li {

        flex-basis:
            58px !important;

        width:
            58px !important;

        height:
            76px !important;
    }


    body.single-product
    .tab-purchase-card {

        position:
            static !important;

        width:
            100% !important;

        margin:
            25px 0 0 !important;
    }


    body.single-product
    .woocommerce-tabs {

        width:
            calc(100% - 28px) !important;
    }
}


/* =========================================================
   THINK ABOUT BOOKS
   PRODUCT DETAIL — SCREENSHOT 1 LAYOUT LOCK
   ========================================================= */

body.single-product {
    --tab-navy: #071B3D;
    --tab-teal: #1687A3;
    --tab-teal-dark: #086B85;
    --tab-aqua: #78C8D8;
    --tab-ice: #F3F9FB;
    --tab-border: #DCE9EE;
    --tab-slate: #607086;
}


/* =========================================================
   DESKTOP PRODUCT STAGE
   ========================================================= */

@media (min-width: 1200px) {

    /*
     * IMPORTANT:
     * Do NOT reserve the right panel by padding the
     * XStore product-content element.
     *
     * That was what collapsed the gallery.
     */
    body.single-product .product-content {
        position: relative !important;

        width: min(calc(100% - 64px), 1680px) !important;
        max-width: 1680px !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding:
            44px
            0
            70px
            0 !important;

        min-height: 680px !important;
    }


    /* -----------------------------------------------------
       LEFT — BOOK GALLERY
       ----------------------------------------------------- */

    body.single-product .product-images,
    body.single-product .woocommerce-product-gallery {
        position: relative !important;

        float: left !important;

        width: 34% !important;
        max-width: 520px !important;

        margin:
            0
            4%
            0
            0 !important;

        padding: 0 !important;
    }


    /*
     * Main cover must remain large.
     */
    body.single-product
    .woocommerce-product-gallery__wrapper {

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #fff !important;

        border: 0 !important;
        border-radius: 12px !important;
    }


    body.single-product
    .woocommerce-product-gallery__image {

        width: 100% !important;

        display: flex !important;

        align-items: flex-start !important;
        justify-content: center !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #fff !important;
    }


    body.single-product
    .woocommerce-product-gallery__image
    a {

        display: flex !important;

        width: 100% !important;

        align-items: flex-start !important;
        justify-content: center !important;
    }


    body.single-product
    .woocommerce-product-gallery__image
    img {

        display: block !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        max-height: 600px !important;

        margin: 0 auto !important;

        object-fit: contain !important;
    }


    /* -----------------------------------------------------
       MIDDLE — BOOK INFORMATION
       ----------------------------------------------------- */

    body.single-product .summary {
        position: relative !important;

        float: left !important;

        width: 29% !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 0 18px 0 0 !important;

        color: var(--tab-navy) !important;
    }


    body.single-product
    .summary
    .product_title {

        margin:
            0
            0
            8px !important;

        color:
            var(--tab-navy) !important;

        font-size:
            clamp(
                40px,
                3.2vw,
                58px
            ) !important;

        font-weight:
            800 !important;

        line-height:
            1.02 !important;

        letter-spacing:
            -.04em !important;
    }


    /* -----------------------------------------------------
       RIGHT — TAB PURCHASE PANEL
       ----------------------------------------------------- */

    body.single-product
    .tab-purchase-card {

        position: absolute !important;

        top: 44px !important;
        right: 0 !important;

        display: block !important;

        width: 31% !important;
        max-width: 470px !important;

        margin: 0 !important;
        padding: 28px !important;

        border:
            1px solid
            var(--tab-border) !important;

        border-radius:
            16px !important;

        background:
            #fff !important;

        box-shadow:
            0 14px 38px
            rgba(7,27,61,.075) !important;
    }
}


/* =========================================================
   THUMBNAILS — HORIZONTAL UNDER MAIN COVER
   ========================================================= */

body.single-product
.woocommerce-product-gallery
.flex-control-thumbs {

    position: static !important;

    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;

    width: 100% !important;
    max-width: 100% !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;

    align-items: flex-start !important;
    justify-content: flex-start !important;

    gap: 12px !important;

    margin:
        16px
        0
        0 !important;

    padding: 0 !important;

    transform: none !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs
li {

    position: static !important;

    float: none !important;

    flex:
        0
        0
        78px !important;

    width: 78px !important;
    height: 102px !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    border:
        1px solid
        var(--tab-border) !important;

    border-radius:
        7px !important;

    background:
        #fff !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs
li
img {

    display: block !important;

    width: 100% !important;
    height: 100% !important;

    padding: 4px !important;

    object-fit: contain !important;

    opacity: .72 !important;
}


body.single-product
.woocommerce-product-gallery
.flex-control-thumbs
li
img.flex-active {

    opacity: 1 !important;

    box-shadow:
        inset
        0
        0
        0
        2px
        var(--tab-teal) !important;
}


/*
 * XStore alternative thumbnail containers.
 */

body.single-product
.product-images
[class*="thumbnail"] {

    position: static !important;

    left: auto !important;
    right: auto !important;

    transform: none !important;
}


/* =========================================================
   PURCHASE PANEL COLORS
   ========================================================= */

body.single-product
.tab-purchase-price,
body.single-product
.tab-purchase-price
.woocommerce-Price-amount {

    color:
        var(--tab-navy) !important;
}


body.single-product
.tab-purchase-stock {

    color:
        #168A62 !important;
}


body.single-product
.tab-purchase-card
.single_add_to_cart_button {

    background:
        linear-gradient(
            90deg,
            var(--tab-teal-dark),
            var(--tab-teal)
        ) !important;

    color:
        #fff !important;
}


body.single-product
.tab-purchase-card
.single_add_to_cart_button:hover {

    background:
        var(--tab-navy) !important;
}


body.single-product
.tab-purchase-card
.tab-buy-now-button {

    border:
        2px solid
        var(--tab-teal) !important;

    background:
        #fff !important;

    color:
        var(--tab-teal-dark) !important;
}


body.single-product
.tab-purchase-card
.tab-buy-now-button:hover {

    background:
        var(--tab-ice) !important;

    color:
        var(--tab-navy) !important;
}


body.single-product
.tab-share-earn {

    border-color:
        var(--tab-border) !important;

    background:
        linear-gradient(
            135deg,
            var(--tab-ice),
            #fff
        ) !important;
}


/* =========================================================
   PRODUCT INFORMATION COLORS
   ========================================================= */

body.single-product
.summary
.woocommerce-product-details__short-description {

    color:
        #42546A !important;
}


body.single-product
.summary
.product_meta {

    color:
        var(--tab-slate) !important;

    border-color:
        var(--tab-border) !important;
}


body.single-product
.summary
.product_meta
a {

    color:
        var(--tab-teal) !important;
}


body.single-product
.summary
.product_meta
a:hover {

    color:
        var(--tab-teal-dark) !important;
}


/* =========================================================
   FIX TOP-SECTION / DESCRIPTION COLLISION
   ========================================================= */

/*
 * Tabs must start BELOW gallery, middle info and purchase card.
 */

@media (min-width: 1200px) {

    body.single-product
    .woocommerce-tabs {

        position: relative !important;

        clear: both !important;

        width:
            min(
                calc(100% - 64px),
                1680px
            ) !important;

        max-width:
            1680px !important;

        margin:
            0
            auto
            60px !important;

        padding-top:
            32px !important;

        border-top:
            1px solid
            var(--tab-border) !important;
    }
}


/* =========================================================
   FREQUENTLY BOUGHT / RELATED WIDTH
   ========================================================= */

@media (min-width: 1200px) {

    body.single-product
    .related,

    body.single-product
    .upsells,

    body.single-product
    [class*="frequently"] {

        width:
            min(
                calc(100% - 64px),
                1680px
            ) !important;

        max-width:
            1680px !important;

        margin-left:
            auto !important;

        margin-right:
            auto !important;
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media
(max-width:1199px)
and
(min-width:768px) {

    body.single-product
    .product-content {

        width:
            calc(100% - 50px) !important;

        padding:
            35px
            0
            50px !important;

        min-height:
            0 !important;
    }


    body.single-product
    .tab-purchase-card {

        position:
            static !important;

        width:
            100% !important;

        max-width:
            650px !important;

        margin:
            35px
            auto
            0 !important;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:767px) {

    body.single-product
    .product-content {

        width:
            calc(100% - 28px) !important;

        padding:
            24px
            0
            40px !important;

        min-height:
            0 !important;
    }


    body.single-product
    .product-images,

    body.single-product
    .woocommerce-product-gallery,

    body.single-product
    .summary {

        float:
            none !important;

        width:
            100% !important;

        max-width:
            100% !important;

        margin:
            0
            0
            25px !important;
    }


    body.single-product
    .tab-purchase-card {

        position:
            static !important;

        width:
            100% !important;

        max-width:
            100% !important;

        margin:
            20px
            0
            0 !important;
    }
}

