:root {
    --price-tag-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M11.5019 22C11.2152 22.0009 10.9312 21.9444 10.6663 21.8338C10.4014 21.7233 10.1609 21.5609 9.95871 21.356L2.63862 13.978C2.22971 13.5659 2 13.0069 2 12.4242C2 11.8414 2.22971 11.2825 2.63862 10.8703L10.8017 2.64615C11.2117 2.23451 11.7662 2.00233 12.3449 2L18.7282 2.00879C19.5959 2.00879 20.4281 2.35612 21.0417 2.97437C21.6553 3.59262 22 4.43115 22 5.30549V11.4187C22 11.7227 21.9374 12.0235 21.8161 12.3019C21.6949 12.5804 21.5176 12.8304 21.2955 13.0363L13.044 21.3527C12.8423 21.5582 12.6021 21.7212 12.3374 21.8323C12.0727 21.9434 11.7887 22.0004 11.5019 22ZM11.5019 19.8022L19.785 11.4505L19.8188 5.30549C19.8188 5.01405 19.7039 4.73454 19.4994 4.52845C19.2949 4.32237 19.0175 4.20659 18.7282 4.20659L12.3439 4.1978L4.18073 12.422L11.5019 19.8022Z' fill='%23F6F7F8'/%3E%3Cpath d='M16.0017 9.14285C16.604 9.14285 17.0923 8.65086 17.0923 8.04395C17.0923 7.43705 16.604 6.94505 16.0017 6.94505C15.3994 6.94505 14.9111 7.43705 14.9111 8.04395C14.9111 8.65086 15.3994 9.14285 16.0017 9.14285Z' fill='%23F6F7F8'/%3E%3C/svg%3E");
}



.hentry.type-page .entry-header {
    display: none;
}

.woocommerce-MyAccount-navigation {
    border-radius: 0px;
}

.hentry {
    margin: 0;
}

.site-main {
    margin-bottom: 0px;
}

.edit-link {
    display: none;
}



/* sidebar */

/* ================== GLOBAL SIDEBAR (STORE​FRONT + WOOCOMMERCE) ================== */

body {
    position: relative;
}

body.page .site-content>.col-full {
    display: block;
}

/* #content.site-content .woocommerce:first-child {
    display: flex;
    flex-direction: column;
    position: absolute !important;
    top: 0;
    right: 0;
    z-index: 999;
}

.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews, p.no-comments {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
} */

body.page .content-area {
    width: 100% !important;
}

.storefront-breadcrumb {
    padding: 1rem 3rem !important;
    margin-bottom: 0 !important;
    background: var(--gray-100, #EBEDF0);
}

.storefront-breadcrumb .woocommerce-breadcrumb {
    color: var(--gray-500);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 19.6px */
}

.storefront-breadcrumb .woocommerce-breadcrumb a {
    color: var(--gray-700, #465663) !important;
    text-decoration: none !important;
}

.storefront-breadcrumb .woocommerce-breadcrumb a::before {
    display: none !important;
}

.storefront-breadcrumb .woocommerce-breadcrumb .breadcrumb-separator {
    padding: 0 1rem !important;
}

.storefront-breadcrumb .woocommerce-breadcrumb .breadcrumb-separator::after {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #7C8EA2;
}

#primary.content-area {
    width: 100%;
}

#secondary.widget-area {
    background: var(--primary-900, #091E43);
    color: var(--gray-50, #F6F7F8);
    margin-right: 0;
    margin-bottom: 0 !important;
}

#secondary.widget-area .widget.woocommerce.widget_shopping_cart {
    display: none !important;
}

/* Widgets */
#secondary.widget-area .widget {
    background: transparent;
    padding: 0;
    border: none;
    margin-bottom: 28px;
}

/* Widget titles */
#secondary.widget-area .widget-title {
    color: var(--gray-50, #F6F7F8);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-2xl-24, 24px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    text-transform: capitalize;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    margin-bottom: 12px;
}

/* Lists */
#secondary.widget-area ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

#secondary.widget-area ul li {
    list-style: none;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .15);
}

#secondary.widget-area ul li:last-child {
    border-bottom: none;
}

/* Links */
#secondary.widget-area a {
    color: var(--gray-100, #EBEDF0);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    opacity: 0.5;
    text-decoration: none;
    display: inline-block;
    margin-right: 6px;
}

#secondary.widget-area a:hover {
    padding-left: 0;
    transition: all 0.2s ease;
}

.widget_product_categories ul li a::before {
    content: var(--folder-icon);
    margin-right: 8px;
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 24px;
}


.widget_product_categories ul li:hover {
    background-color: transparent !important;
    cursor: pointer;
}

.widget-area ul li::before {
    display: none !important;
}

/* Woo price filter */
body.woocommerce .widget_price_filter .ui-slider-range {
    background: #ffd24d;
}

/* ================= FULL HEIGHT LEFT SIDEBAR (FIGMA MATCH) ================= */

/* Make site content stretch full height */
body.woocommerce .site-content {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

body.woocommerce .site-content .col-full {
    display: flex;
    align-items: stretch;
    flex: 1;
    padding: 0;
    margin: 0;
    max-width: 100%;
}

body.woocommerce-shop #primary.content-area {
    background: var(--gray-50) !important;
}

/* Product category list alignment */
.widget.woocommerce .product-categories li {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 0;
}

.widget.woocommerce .product-categories li.cat-parent {
    display: block;
}

.widget.woocommerce .product-categories li.cat-parent ul.children {
    margin-left: 1rem !important;
}


/* Count on the right */
.widget.woocommerce .product-categories li .count {
    margin: 0;
    color: var(--gray-100, #EBEDF0);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    opacity: 0.5;
    display: inline-block;
    /* float: unset !important; */
}

.widget.woocommerce .product-categories li.current-cat a,
.widget.woocommerce .product-categories li.current-cat .count,
.widget.woocommerce .product-categories li:hover a,
.widget.woocommerce .product-categories li:hover .count {
    color: var(--primary-500) !important;
    opacity: 1 !important;
}

.widget.woocommerce .product-categories li.current-cat ul li a,
.widget.woocommerce .product-categories li.current-cat ul li .count,
.widget.woocommerce .product-categories li:hover ul li a,
.widget.woocommerce .product-categories li:hover ul li .count {
    color: var(--gray-100, #EBEDF0) !important;
    opacity: 0.5 !important;
}

.widget.woocommerce .product-categories ul.children li.current-cat a,
.widget.woocommerce .product-categories ul.children li.current-cat .count,
.widget.woocommerce .product-categories ul.children li:hover a,
.widget.woocommerce .product-categories ul.children li:hover .count {
    color: var(--primary-500) !important;
    opacity: 1 !important;
}

/* shop */
/* Break out of col-full */
.jbs-fullwidth-wrapper {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
}

.shop-outside-carousel {
    width: 100%;
}

.shop-outside-carousel img {
    width: 100%;
    height: auto;
}

.swiper-slide {
    display: block !important;
}

.home .home-featured-scroll ul.products {
    display: flex !important;
    overflow-x: auto;
    gap: 1rem !important;
    padding-right: 1rem;
}

/* home page */

.content-area h3 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-4xl-36, 36px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin-bottom: 28px;
}

.woocommerce ul.products,
.wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.home .wc-block-grid__products {
    overflow-x: auto;
    flex-wrap: nowrap;
    display: flex !important;
    align-items: stretch;
    gap: 1rem !important;
    padding-right: 1rem;
}

ul.products::after,
ul.products::before {
    display: none !important;
}


ul.products li.product,
.wc-block-grid__products .wc-block-grid__product {
    border-radius: 12px;
    border: 1px solid var(--gray-200, #DADEE3);
    background: var(--white, #FFF);
    overflow: hidden;
    width: 100% !important;
    flex: 1 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 20px !important;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    justify-content: space-between;
    max-width: unset !important;

}

.home ul.products li.product,
.home .wc-block-grid__product {
    min-width: 324px !important;
    max-width: 324px !important;
}

.wc-block-grid__product .wc-block-grid__product-link {
    width: 100%;
}

.wc-block-grid__product .wc-block-grid__product-add-to-cart,
.wc-block-grid__product .wc-block-grid__product-onsale,
.wc-block-grid__product .wc-block-grid__product-price,
.wc-block-grid__product .wc-block-grid__product-rating {
    width: 100%;
}

ul.products li.product .product-card-image,
.wc-block-grid__product .wc-block-grid__product-image {
    width: 100%;
    background: var(--gray-200);
}

ul.products li.product img,
.wc-block-grid__product .wc-block-grid__product-image img {
    width: auto;
    max-height: 220px;
    mix-blend-mode: multiply;
}

.wc-block-grid__product .wc-block-grid__product-image img {
    margin-bottom: 0 !important;
}


ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product .wc-block-grid__product-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    color: #252C31;
    text-overflow: ellipsis;
    white-space: normal;
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: 18px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin: 0 20px;
    text-align: left;
    min-height: 44px;
}

ul.products li.product .woocommerce-loop-product__title:hover,
.wc-block-grid__product .wc-block-grid__product-title:hover {
    color: var(--primary-500, #006CD1) !important;
}

ul.products li.product .price,
.wc-block-grid__product .woocommerce-Price-amount.amount {
    color: #465663 !important;
    font-family: var(--typeface-text, "Open Sans") !important;
    font-size: 18px !important;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 145%;
    text-align: left;
}

ul.products li.product .price,
.wc-block-grid__product .wc-block-grid__product-price.price {
    text-align: left;
    margin-left: 20px !important;
}

.wc-block-grid__product .wc-block-grid__product-price.price .amount+span {
    vertical-align: super;
    font-weight: 600;
    margin: 0 4px;
}

.wc-block-grid__product .wc-block-grid__product-add-to-cart {
    margin-bottom: 0 !important;
}

ul.products li.product a.button,
.wc-block-grid__product .wp-block-button__link {
    display: flex !important;
    padding: var(--25, 10px) var(--5, 20px) !important;
    justify-content: center !important;
    align-items: center !important;
    gap: var(--2, 8px) !important;
    border-radius: var(--rounded-lg, 8px) !important;
    border: 1px solid var(--gray-200, #DADEE3) !important;
    margin: 0 auto;
    width: calc(100% - 40px);
    background-color: var(--white) !important;
    color: var(--gray-900, #131921) !important;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px) !important;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 140% !important;
    /* 19.6px */
}

ul.products li.product a.button::before,
.wc-block-grid__product .wp-block-button__link::before {
    content: var(--cart-icon);
}

ul.products li.product a.button:hover,
.wc-block-grid__product .wp-block-button__link:hover {
    background-color: var(--gray-50) !important;
}

.wc-block-grid.has-aligned-buttons .wc-block-grid__product>:last-child {
    padding-bottom: 0;
}

ul.products li.product .price ins,
ul.products .wc-block-grid__product .price ins,
.wc-block-grid__products li.product .price ins,
.wc-block-grid__products .wc-block-grid__product .price ins {
    margin-left: 0 !important;
    background-color: rgba(0, 0, 0, 0);
}

/* shop jbs */

#primary.content-area .storefront-sorting:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#primary.content-area .storefront-sorting:first-child form {
    margin-bottom: 0 !important;
}

#primary.content-area .storefront-sorting:first-child .woocommerce-result-count,
#primary.content-area .storefront-sorting:first-child .woocommerce-pagination {
    display: none;
}

.woocommerce-products-header__title.page-title {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-4xl-36, 36px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 43.2px */
}


#primary.content-area .storefront-sorting:first-child .woocommerce-ordering {
    float: right !important;
    margin-left: auto;
    position: relative;
    margin-right: 0 !important;
}

#primary.content-area .storefront-sorting:first-child .woocommerce-ordering select {
    display: flex;
    width: 214px;
    padding: var(--15, 6px) var(--3, 12px);
    align-items: center;
    gap: var(--25, 10px);
    align-self: stretch;
    gap: var(--2, 8px);
    border-radius: 8px;
    border: 1px solid var(--gray-300, #C0C8D0);
    background: var(--gray-50, #F6F7F8);
    color: var(--gray-500, #647484) !important;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    appearance: none;
    background-image: var(--down-arrow-icon);
    background-position: right 8px center;
    background-repeat: no-repeat;
}


#primary.content-area .storefront-sorting:last-child {
    margin-top: 2rem;
    margin-bottom: 0 !important;
}

#primary.content-area .storefront-sorting:last-child .woocommerce-ordering {
    display: none;
}

#primary.content-area .storefront-sorting:last-child .woocommerce-result-count {
    color: var(--gray-500, #647484);
    text-align: center;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 19.6px */
}

.woocommerce-pagination ul.page-numbers {
    display: flex;
    justify-content: center;
}

.woocommerce-pagination .page-numbers li .page-numbers {
    display: flex;
    height: 32px;
    min-width: 33px;
    padding: var(--15, 6px);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--0, 0);
    border: 1px solid var(--gray-300, #C0C8D0);
    background: var(--white, #FFF);
    color: var(--gray-600, #5B6977) !important;
    text-align: center;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 19.6px */
}

.woocommerce-pagination .page-numbers li .page-numbers.prev {
    border-radius: 8px 0 0 8px;
}

.woocommerce-pagination .page-numbers li .page-numbers.next {
    border-radius: 0 8px 8px 0;
}

.woocommerce-pagination .page-numbers li .page-numbers.current {
    background-color: var(--primary-50) !important;
    color: var(--primary-500) !important;
    border-color: var(--gray-300) !important;
}


/* product details page */

.single-product div.product .woocommerce-product-gallery {
    background: var(--gray-50);
}

.single-product div.product .woocommerce-product-gallery img {
    margin: 0 auto !important;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
    top: unset !important;
    bottom: 2rem;
    background-color: #fff !important;
    border-radius: 8px !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 8px;
}

.single-product div.product .summary h1.product_title {
    color: var(--gray-900, #131921);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-3xl-30, 30px) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 36px */
}

.single-product div.product .summary p.price {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xl-20, 20px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin: 8px 0 20px 0 !important;
    display: flex;
    align-items: center;
    gap: 12px;
}

.single-product div.product .summary .woocommerce-variation-price .amount {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xl-20, 20px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    margin: 8px 0 20px 0 !important;
}

.single-product div.product .summary p.price::before {
    content: var(--price-tag-icon);
    display: block;
    height: 24px;
}

.single-product div.product .summary .stock {
    margin-bottom: 0 !important;
}

.single-product div.product .woocommerce-product-details__short-description {
    margin-bottom: 10px;
}

.single-product div.product .woocommerce-product-details__short-description a {
    color: var(--primary-500, #006CD1);
    font-family: var(--typeface-Open-Sans, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.single-product div.product .woocommerce-product-details__short-description p,
.single-product div.product .woocommerce-product-details__short-description ul li {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-Open-Sans, "Open Sans");
    font-size: var(--size-lg-18, 18px);
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
    margin-bottom: 0 !important
}

.single-product div.product .woocommerce-product-details__short-description ul {
    padding: 8px 0 0 20px !important;
}

.single-product div.product .product_meta {
    border-top: none !important;
    display: block;
    align-items: center;
    flex-wrap: wrap;
    color: var(--gray-500, #647484) !important;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    padding-top: 0 !important;
}

.single-product div.product .product_meta>* {
    border-right: 2px solid var(--gray-300);
    padding-right: 8px;
    margin-right: 8px;
}

.single-product div.product .product_meta .sku_wrapper,
.single-product div.product .product_meta .posted_in,
.single-product div.product .product_meta .tagged_as {
    display: unset !important;
}

.single-product div.product .product_meta .sku {
    color: var(--primary-500, #006CD1);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.single-product div.product .product_meta a {
    color: var(--primary-500, #006CD1) !important;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400 !important;
    line-height: 150%;
    text-decoration-line: underline !important;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.single-product div.product .product_meta>*:last-child {
    border-right: none;
}

.single-product div.product .summary .stock {
    margin-top: 20px;
}

.single-product div.product .summary p.first-payment-date {
    margin: 0 !important;
}

.single-product div.product .summary form {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.single-product div.product .summary form .single_variation_wrap {
    width: 100%;
}

.single-product div.product .summary form.cart::before,
.single-product div.product .summary .variations_button::before {
    display: none !important;
}

.single-product div.product .summary form label {
    color: var(--gray-900, var(--gray-900, #131921));
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.single-product div.product .summary form .value {
    position: relative;
}

.single-product div.product .summary form select {
    padding: var(--25, 10px) var(--4, 16px);
    border-radius: 8px;
    border: 1px solid var(--gray-300, #C0C8D0);
    background: var(--gray-50, #F6F7F8);
    color: var(--gray-500, #647484) !important;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    appearance: none;
    width: 180px;
}

.single-product div.product .summary form select {
    background-image: var(--down-arrow-icon);
    background-position: right 8px center;
    background-repeat: no-repeat;
}

.single-product div.product .summary form a {
    display: inline-flex;
    align-items: center;
    width: fit-content;
}

.single-product div.product .summary form a::before {
    padding: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    border: 1px solid var(--gray-200, #DADEE3);
    color: #131921;
    width: 24px;
    height: 24px;
    text-align: center;
}

.single-product div.product .summary form.cart,
.single-product div.product .summary form .variations_button {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 20px;
    padding-top: 0px !important;
}

.single-product div.product .summary form .quantity {
    display: flex;
    align-items: center;
    margin: 0 !important;
    margin-bottom: 0;
    flex: 0 0 auto;
    position: relative;
    padding-top: 25px;
}

.single-product div.product .summary form .quantity label.screen-reader-text {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
    height: auto;
    clip: auto;
    clip-path: none;
    overflow: visible;
    font-size: 0;
    /* Hide "JBS Donation quantity" */
    display: block !important;
    margin-bottom: 8px;
    line-height: 1;
}

.single-product div.product .summary form .quantity label.screen-reader-text::before {
    content: "No of Copies";
    color: var(--gray-900);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.single-product div.product .summary form .quantity button,
.single-product div.product .summary form .quantity input {
    padding: 8px 12px !important;
    /* 19.6px */
}

.single-product div.product .summary form .quantity button {
    width: 40px;
    height: 40px;
    font-size: 16px !important;
    font-weight: 700 !important;
    border: 1px solid var(--gray-300, #C0C8D0) !important;
    background-color: var(--gray-100, #EBEDF0) !important;
}

.single-product div.product .summary form .quantity input {
    border: 1px solid var(--gray-300, #C0C8D0) !important;
    background-color: var(--gray-50) !important;
    color: var(--gray-500, #647484);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    height: 40px;
}

.single-product div.product .summary form .quantity input:hover {
    appearance: none !important;
}

.single-product div.product .summary form .quantity button.minus {
    border-radius: 8px 0 0 8px !important;
}

.single-product div.product .summary form .quantity button.plus {
    border-radius: 0 8px 8px 0 !important;
}

.single-product div.product .summary form button.button,
.storefront-sticky-add-to-cart a.button {
    display: flex;
    padding: var(--25, 10px) var(--5, 20px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px) !important;
    background-color: var(--primary-600, #0062BE) !important;
    color: var(--white, var(--white, #FFF));
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    height: 40px;
}

.single-product div.product .summary form button.button::before {
    content: var(--cart-white-icon);
    display: block;
    height: 20px;
}

.single-product div.product .summary form button.button:hover {
    background-color: var(--primary-700) !important;
}

.single-product div.product .product-description h2 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-3xl-30, 30px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    padding: 3rem 0 0 3rem;
}

.single-product div.product .product-description .description h2 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    border-top: none !important;
    padding: 0 !important;
}

.single-product div.product .product-description .description h3 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    border-top: none !important;
    padding: 0 !important;
}

.single-product div.product .product-description .description {
    padding-left: 3rem;
    margin-top: 1rem;
    padding-bottom: 1rem;
    padding-right: 3rem;
}

.single-product div.product .product-description .description p,
.single-product div.product .product-description .description ul li {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 24px */
}

.single-product div.product .product-description .description ul {
    margin-left: 1.5rem !important;
    margin-bottom: 1rem !important;
}

.single-product div.product section.products {
    padding: 3rem;
    background: var(--gray-50);
    display: grid;
    padding-right: 0 !important;
}

.single-product div.product section.products h2 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-3xl-30, 30px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
}

.single-product div.product section.products ul.products {
    display: flex !important;
    overflow-x: auto !important;
    gap: 1rem;
    padding-right: 1rem;
}

.single-product div.product section.products ul.products li.product {
    min-width: 324px !important;
    max-width: 324px !important;
}

.single-product div.product section.products ul.products li.product h2 {
    font-size: 18px !important;
}

.single-product div.product .summary .awdr-bulk-customizable-table {
    margin: 20px 0 !important;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table {
    margin-bottom: 0 !important;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table thead {
    border-radius: 8px 8px 0 0;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table th {
    border: 1px solid var(--gray-200, #DADEE3);
    background-color: transparent !important;
    padding: 10px 1rem !important;
    color: var(--gray-500, #647484);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-transform: uppercase;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table thead tr:first-child th:nth-child(2) {
    border-top-left-radius: 8px;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table thead tr:first-child th:last-child {
    border-top-right-radius: 8px;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table td {
    border: 1px solid var(--gray-200, #DADEE3);
    background-color: transparent !important;
    padding: 10px 1rem !important;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table tbody tr:last-child td:nth-child(2) {
    border-bottom-left-radius: 8px;
}

.single-product div.product .summary .awdr-bulk-customizable-table table#sort_customizable_table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 8px;
}

.single-product div.product .summary .woocommerce-variation-availability {
    margin-bottom: 1rem !important;
}

.single-product div.product .up-sells.upsells.products h2:first-child {
    display: none !important;
}

.single-product div.product .up-sells.upsells.products::before {
    content: "You may also like";
    visibility: visible;
    display: block;
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-3xl-30, 30px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin-bottom: 2rem;
}

p+h2,
p+header h2,
p+h3,
p+h4,
ul+h2,
ul+header h2,
ul+h3,
ul+h4,
ol+h2,
ol+header h2,
ol+h3,
ol+h4,
table+h2,
table+header h2,
table+h3,
table+h4,
blockquote+h2,
blockquote+header h2,
blockquote+h3,
blockquote+h4,
form+h2,
form+header h2,
form+h3,
form+h4 {
    margin-top: 0 !important;
}

body.page-tna #primary.content-area h2.wp-block-heading {
    margin-bottom: 2rem;
}

/* Desktop width */
@media (min-width: 768px) {

    body.woocommerce #primary.content-area,
    body.page-tna #primary.content-area {
        flex: 1;
        order: 2;
        padding: 16px;
        background: #ffffff;
    }

    body.single-product #primary.content-area {
        padding: 0 !important;
    }

    #secondary.widget-area {
        width: 300px;
        max-width: 300px;
        min-width: 300px;
        padding: var(--12, 24px);
    }

    .single-product div.product .woocommerce-product-gallery {
        width: 100% !important;
        max-width: 100% !important;
        padding: 1rem;
        background-color: var(--gray-50);
        height: 100%;
        margin: 0 auto !important;
    }

    .single-product div.product .summary {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 0 !important;
        padding: 1rem;
        flex: unset !important;
    }
}

@media (min-width: 1024px) {

    .single-product div.product .woocommerce-product-gallery {
        width: 35% !important;
        max-width: 35% !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-left: 0 !important;
    }

    .single-product div.product .summary {
        width: 65% !important;
    }
}


@media (min-width: 1280px) {

    body.woocommerce #primary.content-area,
    body.page-tna #primary.content-area {
        flex: 1;
        order: 2;
        padding: 48px;
        background: #ffffff;
    }

    body.single-product #primary.content-area {
        padding: 0 !important;
    }

    #secondary.widget-area {
        width: 330px;
        max-width: 330px;
        min-width: 330px;
        padding: var(--12, 48px);
    }

    .single-product div.product .woocommerce-product-gallery,
    .single-product div.product .summary {
        padding: 48px;
    }
}

@media (min-width:1640px) {

    .woocommerce ul.products,
    .wc-block-grid__products {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 1280px) {

    .woocommerce-shop ul.products,
    .woocommerce ul.products,
    .wc-block-grid__products {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 1024px) {
    .storefront-breadcrumb {
        display: none;
    }
}

@media (max-width: 768px) {
    .storefront-breadcrumb {
        padding: 8px 1rem !important;
        margin-bottom: 0 !important;
    }

    .content-area h3,
    .woocommerce-products-header__title.page-title {
        font-size: 1.5rem;
    }

    body.woocommerce #primary.content-area,
    body.page-tna #primary.content-area {
        padding: 1rem;
    }

    body.single-product #primary.content-area {
        padding: 0 !important;
    }

    .single-product div.product .woocommerce-product-gallery,
    .single-product div.product .summary {
        padding: 1rem;
        margin-bottom: 0 !important;
    }

    .single-product div.product .product-description h2 {
        padding: 1rem 0 0 1rem;
    }

    .single-product div.product .product-description .description {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .single-product div.product section.products {
        margin-top: 0 !important;
        padding: 1rem;
    }
}

@media (max-width: 570px) {
    #primary.content-area .storefront-sorting:first-child::before {
        font-size: 30px;
    }

    .woocommerce-shop ul.products {
        grid-template-columns: repeat(1, 1fr);
    }

    .single-product div.product .summary h1.product_title,
    .single-product div.product .product-description h2,
    .single-product div.product section.products h2 {
        font-size: 1.5rem !important;
    }

    .single-product div.product .product-description .description h2,
    .single-product div.product .product-description .description h3 {
        font-size: 1rem !important;
    }

    .single-product div.product .summary form button.button {
        width: 100%;
    }
}

/* my Account */

/* Layout */
body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: flex;
    align-items: stretch;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
    flex: 0 0 328px;
}

body.woocommerce-account .woocommerce-MyAccount-content {
    flex: 1;
    padding: 48px;
}


/* Sidebar container */
.woocommerce-MyAccount-navigation {
    display: flex;
    width: 328px;
    padding: var(--12, 48px) !important;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    background: var(--primary-900, #091E43);
}

/* Sidebar title */
.woocommerce-MyAccount-navigation::before {
    content: "My Account";
    display: block;
    color: var(--gray-50, #F6F7F8);
    font-family: var(--typeface-DM-Serif-Display, "DM Serif Display");
    font-size: var(--size-2xl-24, 24px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    width: 100%;
}

/* Menu list */
.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Menu item */
.woocommerce-MyAccount-navigation li {
    margin-bottom: 12px !important;
}

/* Links */
.woocommerce-MyAccount-navigation li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 !important;
    color: var(--gray-100, #EBEDF0);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-decoration: none;
    opacity: 0.8;
    padding-left: 6px !important;
}

.woocommerce-MyAccount-navigation li a::before {
    font-size: 18px;
    width: 20px !important;
    height: 20px !important;
    text-align: center;
    content: "";
    float: left !important;
    margin-left: 0 !important;
    margin-right: 8px;
    line-height: 1.2 !important;
    min-width: 20px;
    opacity: 0.8 !important;
}

/* Hover */
.woocommerce-MyAccount-navigation li a:hover {
    color: var(--blue-500, #248EFF);
    opacity: 1;
}

/* Active item */
.woocommerce-MyAccount-navigation li.is-active a {
    border-left: 2px solid var(--blue-500, #248EFF);
    color: var(--blue-500, #248EFF);
    opacity: 1;
}

/* Icon base */


/* Individual icons */
.woocommerce-MyAccount-navigation-link--dashboard a::before {
    content: "\f022" !important;
}

.woocommerce-MyAccount-navigation-link--orders a::before {
    content: "\f543" !important;
}

.woocommerce-MyAccount-navigation-link--subscriptions a::before {
    content: "\f2d2" !important;
}

.woocommerce-MyAccount-navigation-link--downloads a::before {
    content: "\f019" !important;
}

.woocommerce-MyAccount-navigation-link--edit-address a::before {
    content: "\f2b9" !important;
    transform: scaleX(-1);
}

.woocommerce-MyAccount-navigation-link--payment-methods a::before {
    content: "\f09d" !important;
}

.woocommerce-MyAccount-navigation-link--edit-account a::before {
    content: "\f2bd" !important;
}

.woocommerce-MyAccount-navigation-link--customer-logout a::before {
    content: "\f08b";
}

.woocommerce-MyAccount-content h1 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display") !important;
    font-size: var(--size-3xl-30, 30px);
    font-style: normal;
    font-weight: 400 !important;
    line-height: 120%;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--gray-200);
}

.woocommerce-MyAccount-content p {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 24px */
}

.woocommerce-MyAccount-content p a {
    color: var(--blue-500, #248EFF);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.woocommerce-MyAccount-content .jbs-hello {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-lg-18, 18px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 21.6px */
}

.woocommerce-MyAccount-content .jbs-hello strong {
    font-weight: 400 !important;
    text-transform: capitalize;
}

.woocommerce-MyAccount-content .jbs-hello a {
    text-decoration: none;
}

.woocommerce-MyAccount-content .jbs-hello a:hover {
    text-decoration: underline;
}

.woocommerce-MyAccount-content h2 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display") !important;
    font-size: 1.5rem !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 120%;
    margin-bottom: 1rem !important;
}

.woocommerce-MyAccount-content .new-american,
.woocommerce-MyAccount-content .jbs-members {
    display: flex;
    padding: var(--5, 20px);
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    border-radius: var(--rounded-3xl, 24px);
    border: 1px solid var(--gray-200, #DADEE3);
}

.woocommerce-MyAccount-content .new-american {
    margin-bottom: 1.5rem;
}

.woocommerce-MyAccount-content .jbs-members ul {
    padding-left: 20px;
}

.woocommerce-orders .woocommerce-MyAccount-content::before {
    content: "Orders";
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display") !important;
    font-size: var(--size-3xl-30, 30px);
    font-style: normal;
    font-weight: 400 !important;
    line-height: 120%;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--gray-200);
    display: block;
}

.woocommerce-orders .woocommerce-MyAccount-content .custom-orders-wrapper {
    overflow-x: auto;
    width: 100%;
}

.woocommerce-orders .woocommerce-MyAccount-content table {
    min-width: 1000px;
}

.woocommerce-orders .woocommerce-MyAccount-content table thead th {
    background-color: var(--gray-100, #EBEDF0) !important;
    padding: var(--3, 12px) var(--5, 20px);
    border-top: 1px solid var(--gray-200);
}

.woocommerce-orders .woocommerce-MyAccount-content table thead th span {
    color: var(--gray-500);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-transform: uppercase;
}

.woocommerce-orders .woocommerce-MyAccount-content table thead tr th:first-child {
    border-top-left-radius: 8px;
    border-left: 1px solid var(--gray-200);
}

.woocommerce-orders .woocommerce-MyAccount-content table thead tr th:last-child {
    border-top-right-radius: 8px;
    text-align: center;
    border-right: 1px solid var(--gray-200);
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody th,
.woocommerce-orders .woocommerce-MyAccount-content table tbody td {
    background-color: transparent !important;
    border-bottom: 1px solid var(--gray-200);
    padding: var(--4, 16px) var(--5, 20px);
    vertical-align: middle;
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody tr th {
    border-left: 1px solid var(--gray-200);
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 19.2px */
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody tr td {
    color: var(--gray-900, var(--gray-900, #131921));
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 19.6px */
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody tr:last-child th {
    border-bottom-left-radius: 8px;
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody tr td:last-child {
    border-right: 1px solid var(--gray-200);
    text-align: center;
}

.woocommerce-orders .woocommerce-MyAccount-content table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 8px;
}

.woocommerce-MyAccount-content table a.button {
    padding: var(--2, 8px) var(--3, 12px);
    border-radius: var(--rounded-lg, 8px);
    background-color: var(--primary-600, #0062BE);
    color: var(--white);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    width: fit-content;
    margin-right: 8px;
}

.woocommerce-MyAccount-content table a.button:hover {
    background-color: var(--primary-700);
}

.woocommerce-orders .woocommerce-MyAccount-content table a.button::after {
    display: none !important;
}

.woocommerce-view-order .woocommerce-MyAccount-content h2 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans") !important;
    font-size: var(--size-lg-18, 18px) !important;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 145%;
    /* 26.1px */
}

.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-pagination a.button {
    padding: var(--2, 8px) var(--3, 12px);
    border-radius: var(--rounded-lg, 8px);
    background-color: var(--gray-200);
    color: var(--gray-900);
    font-family: var(--typeface-text, "Open Sans");
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    width: fit-content;
}

.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-pagination a.button:hover {
    background-color: var(--gray-300);
}

/* Status Badges (Pills) */
.order-status-badge {
    display: flex;
    padding: var(--05, 2px) var(--25, 10px);
    justify-content: center;
    align-items: center;
    gap: var(--0, 0);
    text-align: center;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    border-radius: var(--rounded-md, 6px);
    width: fit-content;
    min-width: 84px;
}

.status-processing {
    background: #CCEEE0 !important;
    color: #005F3B !important;
}

.status-on-hold {
    background: #FFF9C5 !important;
    color: #984C08 !important;
}

.status-completed {
    background: #CCEEE0 !important;
    color: #005F3B !important;
}

.status-cancelled,
.status-failed {
    background: #FDD !important;
    color: #B71A1A !important;
}

.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-view-order-divider {
    display: none !important;
}

.woocommerce-view-order .woocommerce-MyAccount-content table .product-name a {
    color: var(--gray-800, #252C31) !important;
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-base-16, 16px) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    text-decoration-line: underline !important;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.woocommerce-view-order .woocommerce-MyAccount-content table .product-name a:hover {
    color: var(--blue-500) !important;
}

.woocommerce-view-order .woocommerce-MyAccount-content table .product-name .product-quantity {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
}

.woocommerce-view-order .woocommerce-MyAccount-content table .amount {
    color: var(--gray-900);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 19.6px */
}

.woocommerce-view-order .woocommerce-MyAccount-content table tbody th,
.woocommerce-view-order .woocommerce-MyAccount-content table tbody td,
.woocommerce-view-order .woocommerce-MyAccount-content table tfoot th,
.woocommerce-view-order .woocommerce-MyAccount-content table tfoot td {
    background-color: #fff !important;
}

.woocommerce-view-order .woocommerce-MyAccount-content table tfoot th {
    color: var(--gray-800, #252C31) !important;
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-base-16, 16px) !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 120%;
    /* 19.2px */
}

.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details-card {
    display: flex;
    max-width: 496px;
    padding: var(--7, 28px);
    flex-direction: column;
    align-items: flex-start;
    border-radius: var(--rounded-3xl, 24px);
    border: 1px solid var(--gray-200, #DADEE3);
    background: #fff;
}

.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details-card .billing-address-pill {
    display: flex;
    padding: var(--2, 8px) var(--3, 12px) !important;
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px) !important;
    border: 1px solid var(--gray-600, #5B6977);
    background: var(--gray-800, #252C31);
    color: var(--white, #FFF);
    font-family: var(--typeface-text, "Open Sans") !important;
    font-size: var(--size-sm-14, 14px) !important;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 140%;
    /* 19.6px */
}

.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details-card address {
    margin-bottom: 0 !important;
    color: var(--gray-600, #5B6977);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 24px */
}

.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details-card address p {
    margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
    body.woocommerce-account .woocommerce-MyAccount-content {
        padding: 1.5rem 1rem;
    }
}

@media (max-width: 767px) {
    .woocommerce-account .woocommerce {
        flex-direction: column;
    }

    .woocommerce-MyAccount-navigation {
        width: 100%;
        padding: 24px 16px !important;
    }

    .woocommerce-MyAccount-content h1 {
        padding-bottom: 1.25rem;
        margin-bottom: 1.25rem;
    }

    table.shop_table_responsive thead {
        display: table-header-group !important;
    }

    table.shop_table_responsive tbody th {
        display: table-cell !important;
    }

    table.shop_table_responsive tr td {
        display: table-cell !important;
        text-align: unset !important;
        clear: both;
    }

    table.shop_table_responsive tr td:last-child {
        text-align: center !important;
    }

    table.shop_table_responsive tr td[data-title]::before {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .woocommerce-MyAccount-navigation {
        width: 40% !important;
        margin-right: 0px !important;
        padding-left: 20px;
        padding-right: 20px;
    }

    .woocommerce-orders .woocommerce-MyAccount-content {
        max-width: calc(100% - 320px);
    }

}

/* Address Page Custom Styling */

.woocommerce-edit-address .woocommerce-MyAccount-content .address-book-header {
    display: none !important;
}

.my-account-address-book {
    padding: 0;
}

.section-description {
    margin-bottom: 2rem !important;
}

.my-account-custom-addresses,
.billing_address_book {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid var(--gray-200);
}

.address-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 24px;
}

.address-card {
    padding: var(--7, 28px);
    border-radius: var(--rounded-3xl, 24px);
    border: 1px solid var(--gray-200, #DADEE3);
}

.my-account-custom-addresses .address-card-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 20px !important;
    gap: 1rem;
}

.custom-address-book-wrapper .address-card-header {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    margin-bottom: 20px !important;
    gap: 1rem;
    border-bottom: none !important;
}

.custom-address-book-wrapper .address-card-header .actions-right {
    display: flex !important;
    align-items: center !important;
    gap: 1rem;
}

.custom-address-book-wrapper .address-card-header .actions-right a {
    display: block;
    height: 24px;
}

.address-badge {
    display: flex;
    padding: var(--2, 8px) var(--3, 12px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    text-transform: capitalize;
    font-family: var(--typeface-Open-Sans, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    /* 19.6px */
}

.badge-billing {
    border: 1px solid var(--gray-600, #5B6977);
    background: var(--gray-800, #252C31);
    color: #fff;
}

.badge-shipping {
    background: var(--yellow-400, #FDCE34);
    color: #000;
}

.default-badge {
    display: flex;
    padding: var(--05, 2px) var(--25, 10px);
    justify-content: center;
    align-items: center;
    gap: var(--0, 0);
    border-radius: var(--rounded-md, 6px);
    background: var(--gray-100, #EBEDF0);
    color: var(--gray-900, var(--gray-900, #131921));
    text-align: center;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    /* 18px */
}

.address-actions {
    display: flex !important;
    gap: 14px !important;
    align-items: flex-start !important;
}

.address-actions a {
    height: 24px;
}

.address-card address {
    color: var(--gray-600, #5B6977);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 24px */
    border: none !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.woocommerce-account .address_book {
    margin-top: 0 !important;
}

.book-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: none !important;
    margin-bottom: 2rem !important;
}

.book-header h3 {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-display, "DM Serif Display");
    font-size: var(--size-xl-20, 20px);
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin-bottom: 10px !important;
}

.book-header p {
    color: var(--gray-600, #5B6977);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-bottom: 0 !important;
}

.header-action span.button {
    display: none !important;
}

.wc-address-book-add-billing-button,
.wc-address-book-add-shipping-button {
    display: flex;
    padding: var(--25, 10px) var(--5, 20px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    background: var(--primary-600, #0062BE);
    color: var(--white);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    /* 19.6px */
}

.wc-address-book-add-billing-button::before,
.wc-address-book-add-shipping-button::before {
    content: var(--plus-icon);
    display: block;
    height: 20px;
}

.wc-address-book-add-billing-button:hover,
.wc-address-book-add-shipping-button:hover {
    background-color: var(--primary-700) !important;
    color: #fff !important;
}

/* Book Card Specifics */
.book-card .address-card-header {
    margin-bottom: 10px;
}

.set-default-link {
    color: var(--primary-500, #006CD1);
    text-align: center;
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    background-color: transparent !important;
    border-color: unset !important;
    padding: 0 !important;
}

.set-default-link:hover {
    color: var(--primary-500, #006CD1) !important;
    text-decoration: underline;
}

.address-title {
    font-weight: 700;
    font-size: 16px;
    margin: 0 0 8px 0;
    color: #333;
}

/* Fix plugin default injected elements if necessary */
.wc-address-book-add-new-address {
    display: inline-block;
}


@media (max-width: 768px) {
    .section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .addresses-grid {
        grid-template-columns: 1fr;
    }
}

/* Payment Methods Custom Styling - Exact Mirror of 2nd Image */
.custom-payment-methods-wrapper {
    padding: 0;
}

.payment-methods-header {
    margin-bottom: 2rem !important;
}

.payment-methods-title {
    margin-bottom: 2rem !important;
}

.payment-methods-divider {
    border: 0;
    border-top: 1px solid var(--gray-200);
    margin: 0;
}

.payment-methods-notice-banner {
    display: flex;
    padding: var(--3, 12px) var(--3, 12px) var(--3, 12px) var(--4, 16px);
    align-items: center;
    justify-content: space-between;
    gap: var(--4, 16px);
    border-radius: var(--rounded-2xl, 16px);
    background: var(--primary-500, #006CD1);
}

.payment-methods-notice-banner .banner-left {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--white, #FFF);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xl-20, 20px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    /* 30px */
}

.payment-methods-notice-banner .banner-icon {
    display: flex;
    align-items: center;
}

.woocommerce-PaymentMethods .woocommerce-PaymentMethod {
    border-radius: 12px;
    background-color: var(--gray-100) !important;
}

.woocommerce-PaymentMethods .woocommerce-PaymentBox {
    border-radius: 0 0 12px 12px;
}

.woocommerce-PaymentMethods .woocommerce-PaymentBox label {
    color: var(--gray-900, #131921);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 8px;
}

.woocommerce-PaymentMethods .woocommerce-PaymentBox input {
    display: flex;
    padding: var(--25, 10px) var(--4, 16px);
    align-items: center;
    gap: var(--25, 10px);
    align-self: stretch;
    border-radius: 8px;
    border: 1px solid var(--gray-300, #C0C8D0);
    background-color: var(--gray-50, #F6F7F8);
    height: 44px;
    box-shadow: none !important;
    color: var(--gray-500, #647484);
    font-family: var(--typeface-text, "Open Sans");
    font-size: 1rem !important;
    font-style: normal;
    font-weight: 400;
    line-height: 125%;
}

.woocommerce-PaymentMethods .woocommerce-PaymentBox input:focus {
    border: 1px solid var(--primary-500) !important;
    background: var(--gray-50, #F6F7F8) !important;
}

.woocommerce-Payment button.button,
.custom-payment-methods-wrapper a.add-payment-method-btn {
    display: flex;
    padding: var(--25, 10px) var(--5, 20px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    background-color: var(--primary-600, #0062BE) !important;
    color: var(--white, #FFF);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px) !important;
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    width: fit-content;
}

.woocommerce-Payment button.button:hover,
.custom-payment-methods-wrapper a.add-payment-method-btn:hover {
    background-color: var(--primary-700) !important;
}

.custom-payment-methods-wrapper .add-payment-method-banner-btn {
    display: flex;
    padding: var(--25, 10px) var(--5, 20px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    background-color: var(--white, #FFF) !important;
    color: var(--gray-900, #131921) !important;
    font-family: var(--typeface-text, "Open Sans") !important;
    font-size: var(--size-sm-14, 14px) !important;
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    /* 19.6px */
}

.custom-payment-methods-wrapper .add-payment-method-banner-btn:hover {
    background-color: var(--gray-50);
}

form#add_payment_method {
    margin-bottom: 0 !important;
}

.custom-payment-methods-wrapper table thead th {
    background-color: var(--gray-100, #EBEDF0) !important;
    padding: var(--3, 12px) var(--5, 20px);
}

.custom-payment-methods-wrapper table thead th span {
    color: var(--gray-500);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    text-transform: uppercase;
}

.custom-payment-methods-wrapper table thead tr th:first-child {
    border-top-left-radius: 12px;
}

.custom-payment-methods-wrapper table thead tr th:last-child {
    border-top-right-radius: 12px;
    text-align: center;
}

.custom-payment-methods-wrapper table tbody th,
.custom-payment-methods-wrapper table tbody td {
    background-color: var(--gray-50, #F6F7F8) !important;
    padding: var(--4, 16px) var(--5, 20px);
    vertical-align: middle;
}

.custom-payment-methods-wrapper table tbody tr td span {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-base-16, 16px);
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
}

.custom-payment-methods-wrapper table tbody tr td span.default-badge {
    display: flex;
    padding: var(--05, 2px) var(--25, 10px);
    justify-content: center;
    align-items: center;
    gap: var(--0, 0);
    border-radius: var(--rounded-md, 6px);
    background: var(--gray-100, #EBEDF0);
    color: var(--gray-900, var(--gray-900, #131921));
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-xs-12, 12px) !important;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    width: fit-content;
}

.custom-payment-methods-wrapper table tbody tr td .payment-method-actions {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.custom-payment-methods-wrapper table tbody tr td .payment-method-actions a.delete {
    height: 26px;
}

.custom-payment-methods-wrapper table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 12px;
}

.custom-payment-methods-wrapper table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 12px;
}

@media (min-width: 768px) {
    .woocommerce-MyAccount-content .form-row-first {
        width: 44% !important;
    }
}

@media (max-width: 767px) {
    .payment-methods-notice-banner {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }

    .add-payment-method-banner-btn {
        width: 100%;
        text-align: center;
    }
}

@media (max-width: 480px) {

    .woocommerce-Payment button.button,
    .custom-payment-methods-wrapper a.add-payment-method-btn {
        width: 100%;
    }
}

/* Account Details Page Custom Styling */
.custom-edit-account-form {
    max-width: 100%;
}

.custom-edit-account-form .form-row-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 0;
}

.custom-edit-account-form .form-row {
    margin-bottom: 20px !important;
    width: 100% !important;
    float: none !important;
}

.custom-edit-account-form label {
    display: block;
    color: var(--gray-900, #131921);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 4px;
}

.custom-edit-account-form label .required {
    color: #D92222;
    text-decoration: none;
}

.custom-edit-account-form .woocommerce-Input {
    display: flex;
    padding: var(--25, 10px) var(--4, 16px);
    align-items: center;
    gap: var(--25, 10px);
    align-self: stretch;
    border-radius: 8px;
    border: 1px solid var(--gray-300, #C0C8D0);
    background-color: var(--gray-50, #F6F7F8);
    height: 44px;
    box-shadow: none !important;
    color: var(--gray-500, #647484);
    font-family: var(--typeface-text, "Open Sans");
    font-size: 1rem !important;
    font-style: normal;
    font-weight: 400;
    line-height: 125%;
}

.custom-edit-account-form .woocommerce-Input:focus {
    border: 1px solid var(--primary-500) !important;
    background: var(--gray-50, #F6F7F8) !important;
}

.custom-edit-account-form em,
.custom-edit-account-form #account_display_name_description,
.custom-edit-account-form .field-instruction {
    display: block;
    color: var(--gray-500, #647484);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 400;
    line-height: 125%;
    margin-top: 8px;
    font-style: normal;
}

/* Password Change Card */
.password-change-card {
    display: flex;
    padding: var(--7, 28px);
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    border-radius: var(--rounded-3xl, 24px);
    background: var(--gray-50, #F6F7F8);
    margin-top: 1rem;
}

.password-change-card fieldset {
    border: none;
    padding: 0;
    margin: 0;
    background-color: transparent !important;
    width: 100%;
}

.password-change-card legend {
    color: var(--gray-800, #252C31);
    font-family: var(--typeface-text, "Open Sans");
    font-size: var(--size-lg-18, 18px);
    font-style: normal;
    font-weight: 600;
    line-height: 145%;
    margin: 0 !important;
    margin-bottom: 1.5rem !important;
    background-color: transparent !important;
    padding: 0 !important;
}

.password-change-card .form-actions {
    margin-top: 1rem;
    margin-bottom: 0;
}

.custom-save-button {
    display: flex;
    padding: var(--25, 10px) var(--5, 20px);
    justify-content: center;
    align-items: center;
    gap: var(--2, 8px);
    border-radius: var(--rounded-lg, 8px);
    background-color: var(--primary-600, #0062BE);
    color: var(--white, var(--white, #FFF));
    font-family: var(--typeface-Open-Sans, "Open Sans");
    font-size: var(--size-sm-14, 14px);
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    /* 19.6px */
}

.custom-save-button:hover {
    background-color: var(--primary-700);
    color: var(--white, var(--white, #FFF)) !important;
}

@media (max-width: 768px) {
    .custom-edit-account-form .form-row-group {
        grid-template-columns: 1fr;
        gap: 0;
    }
}