﻿/*
Theme Name: Pro Child
Theme URI: https://theme.co/pro
Template: pro
Author: Themeco
Author URI: https://theme.co
Description: The Most Advanced Website Creator for WordPress.
Version: 6.5.8.20260518.2
Updated: 2026-05-18 10:02:00

*/

/*
[products]
 */

/*
001489-ffc72c-ffffff-475feb
 */

/* style.css */
.woocommerce ul.products li.product, .li.product {
    width: unset !important;
}

.onsale {
    display: none;
}

.woocommerce ul.products{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
    gap:20px;
    justify-items:start;
    align-items:start;
}

.p-card .entry-header  {
    line-height: 1.2;
}
.p-card {
    border: 1px solid #eee;
    border-radius: 10px;
    padding: 16px;
    text-align: center;
    background: #fff;
    position: relative;
    /*max-width: 205px;*/
}



.p-card img {
    max-height: 140px;
    object-fit: contain;
    margin-bottom: 10px;
}

.p-card .badge.sale {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #f29f05; /* orange */
    color: #000;
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 12px;
    font-weight: 900;
    font-family: 'Inter', Arial, Helvetica, sans-serif !important;
}

.woocommerce ul.products li.product .price {
    color: #bf3617;
    font-weight: 700;
    font-size: 18px;
}

.woocommerce ul.products li.product .button {
    background: none;
    color: #034c8c;
    font-weight: 600;
    text-transform: none;
}

.p-card h3, .p-card .price {
    text-align: left;
}
.p-card a {
    padding-left: 0 !important;
}

.p-card .entry-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

.woocommerce ul.products {
    gap: 3px !important;
}

.woocommerce ul.products::before, ul.products::after {
    content: unset !important;
}


/* Filter catalog */
.wc-vehicle-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    background: #fff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
    font-family: sans-serif;
    justify-content: center;
    align-items: center;
    width: 100%;
    /*max-width: 600px;*/
    margin: 2em auto;
    transition: all 0.3s ease;
    box-sizing: border-box;
}

.vf-atts {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    flex: 1 1 100%;
    justify-content: center;
}

.vf-select {
    padding: 10px 16px;
    border: 2px solid #009aff;
    border-radius: 8px;
    background: #fff;
    color: #044e8d;
    min-width: 120px;
    transition: 0.2s all ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.vf-select:focus {
    border-color: #f29f05;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    outline: none;
}
.vf-select:disabled {
    background: #e6f2ff;
    color: #009aff;
    cursor: not-allowed;
}

.vf-vin {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    flex: 1 1 100%;
    justify-content: center;
}

.vf-vin-input {
    padding: 10px 16px;
    border: 2px solid #009aff;
    border-radius: 8px;
    width: 220px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: 0.2s all ease;
}
.vf-vin-input:focus {
    border-color: #f29f05;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    outline: none;
}

.vf-submit {
    background: linear-gradient(135deg, #044e8d, #009aff);
    color: #fff;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    transition: all 0.2s ease;
}
.vf-submit:hover {
    opacity: 0.95;
    box-shadow: 0 6px 20px rgba(0,0,0,0.25);
}

.vf-reset {
    color: #f29f05;
    cursor: pointer;
    margin-left: 15px;
    align-self: center;
    font-weight: 600;
    transition: 0.2s all ease;
}
.vf-reset:hover {
    text-decoration: underline;
}
.vf-atts .vf-select {
    width: 200px; /* or any fixed width */
    min-width: 200px;
    max-width: 200px;
    box-sizing: border-box;
}


@media (max-width: 480px) {
    .vf-select, .vf-vin-input {
        width: 100%;
        min-width: 0;
    }
    .wc-vehicle-filter {
        padding: 15px;
        gap: 10px;
    }
}

/*end filter */

.dataTables_info {
    display: none;
}

/* product tiles */

/* =========================
   FACTORY XENON PRODUCT CARDS
   clean white version
   ========================= */

.woocommerce ul.products,
.woocommerce-page ul.products {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce ul.products li.product.fx-product-card,
.woocommerce-page ul.products li.product.fx-product-card {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    clear: none !important;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__inner,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    padding: 12px;
    border-radius: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
    border: 2px solid #1f35bf;
    box-shadow: 0 14px 34px rgba(0, 10, 70, 0.10);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__inner::before,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__inner::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 34%;
    background:
            linear-gradient(135deg, rgba(255,199,44,.20) 0%, rgba(255,199,44,0) 34%),
            linear-gradient(90deg, #2035bb 0%, #4961ef 100%);
    clip-path: polygon(0 100%, 0 24%, 100% 100%);
    opacity: .88;
    pointer-events: none;
}

.woocommerce ul.products li.product.fx-product-card:hover .fx-product-card__inner,
.woocommerce-page ul.products li.product.fx-product-card:hover .fx-product-card__inner {
    transform: translateY(-4px);
    border-color: #001489;
    box-shadow: 0 18px 42px rgba(0, 10, 70, 0.16);
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__media-wrap,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__media-wrap {
    position: relative;
    z-index: 2;
    margin-bottom: 14px;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__media,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__media {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 150px;
    padding: 14px;
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f2f4fa 100%);
    border: 1px solid rgba(0, 20, 137, 0.08);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.10);
    text-decoration: none;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__media img,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__media img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100%;
    max-height: 118px;
    margin: 0 !important;
    object-fit: contain;
    filter: drop-shadow(0 8px 14px rgba(0,0,0,.10));
    transition: transform .25s ease;
}

.woocommerce ul.products li.product.fx-product-card:hover .fx-product-card__media img,
.woocommerce-page ul.products li.product.fx-product-card:hover .fx-product-card__media img {
    transform: scale(1.04);
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__content,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__title,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__title {
    margin: 0 0 12px;
    font-size: 16px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
    min-height: 3.55em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-wrap: balance;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__title a,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__title a {
    color: #001489;
    text-decoration: none;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__title a:hover,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__title a:hover {
    color: #2035bb;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__price,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__price {
    margin: 0 0 16px;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__price .price,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__price .price,
.woocommerce ul.products li.product.fx-product-card .fx-product-card__price .amount,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__price .amount,
.woocommerce ul.products li.product.fx-product-card .price,
.woocommerce-page ul.products li.product.fx-product-card .price {
    color: #ffc72c !important;
    font-size: 17px;
    line-height: 1;
    font-weight: 900 !important;
}

.fx-product-card__price {
    text-align: right;
}

.woocommerce ul.products li.product.fx-product-card .price del,
.woocommerce-page ul.products li.product.fx-product-card .price del {
    color: #7a82a6 !important;
    opacity: 1;
    font-size: .82em;
    margin-right: 5px;
}

.woocommerce ul.products li.product.fx-product-card .price ins,
.woocommerce-page ul.products li.product.fx-product-card .price ins {
    text-decoration: none;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__button,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 42px;
}

/* robust button reset */
.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button,
.woocommerce ul.products li.product.fx-product-card a.button,
.woocommerce-page ul.products li.product.fx-product-card a.button {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: auto;
    min-width: 0;
    min-height: 38px;
    padding: 10px 16px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #ffc72c !important;
    color: #001489 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(255, 199, 44, 0.34);
    white-space: nowrap;
    overflow: hidden;
    text-indent: 0 !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button:hover,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button:hover,
.woocommerce ul.products li.product.fx-product-card a.button:hover,
.woocommerce-page ul.products li.product.fx-product-card a.button:hover {
    background: #ffd451 !important;
    color: #001489 !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(255, 199, 44, 0.42);
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button:focus,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button:focus,
.woocommerce ul.products li.product.fx-product-card a.button:focus,
.woocommerce-page ul.products li.product.fx-product-card a.button:focus {
    outline: 2px solid #001489;
    outline-offset: 2px;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button::after,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button::after,
.woocommerce ul.products li.product.fx-product-card a.button::after,
.woocommerce-page ul.products li.product.fx-product-card a.button::after {
    content: ">";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(0, 20, 137, 0.10);
    color: #001489;
    font-size: 15px;
    line-height: 1;
    font-weight: 900;
    flex: 0 0 18px;
}

/* kill theme cart icon so text stays visible */
.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button i,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button i,
.woocommerce ul.products li.product.fx-product-card a.button i,
.woocommerce-page ul.products li.product.fx-product-card a.button i,
.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button svg,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button svg,
.woocommerce ul.products li.product.fx-product-card a.button svg,
.woocommerce-page ul.products li.product.fx-product-card a.button svg {
    display: none !important;
}

.woocommerce ul.products li.product.fx-product-card .fx-product-card__button .added_to_cart,
.woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .added_to_cart {
    display: none !important;
}

.woocommerce ul.products li.product.fx-product-card .onsale,
.woocommerce-page ul.products li.product.fx-product-card .onsale {
    top: 10px;
    left: 10px;
    right: auto;
    min-width: 0;
    min-height: 0;
    padding: 7px 10px;
    border-radius: 999px;
    background: #ffc72c;
    color: #001489;
    font-size: 10px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    box-shadow: 0 6px 14px rgba(255,199,44,.34);
}

/* extra protection against theme styling */
.woocommerce ul.products li.product.fx-product-card .p-card,
.woocommerce ul.products li.product.fx-product-card .entry-product,
.woocommerce ul.products li.product.fx-product-card .entry-wrap,
.woocommerce ul.products li.product.fx-product-card .entry-header,
.woocommerce ul.products li.product.fx-product-card .entry-featured,
.woocommerce-page ul.products li.product.fx-product-card .p-card,
.woocommerce-page ul.products li.product.fx-product-card .entry-product,
.woocommerce-page ul.products li.product.fx-product-card .entry-wrap,
.woocommerce-page ul.products li.product.fx-product-card .entry-header,
.woocommerce-page ul.products li.product.fx-product-card .entry-featured {
    all: unset;
}

/* if some products are still using theme markup, style that too */
.woocommerce ul.products li.product:not(.fx-product-card) .p-card,
.woocommerce-page ul.products li.product:not(.fx-product-card) .p-card {
    position: relative;
    overflow: hidden;
    padding: 12px;
    border-radius: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
    border: 2px solid #1f35bf;
    box-shadow: 0 14px 34px rgba(0, 10, 70, 0.10);
}

.woocommerce ul.products li.product:not(.fx-product-card) .p-card::before,
.woocommerce-page ul.products li.product:not(.fx-product-card) .p-card::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 34%;
    background:
            linear-gradient(135deg, rgba(255,199,44,.20) 0%, rgba(255,199,44,0) 34%),
            linear-gradient(90deg, #2035bb 0%, #4961ef 100%);
    clip-path: polygon(0 100%, 0 24%, 100% 100%);
    opacity: .88;
    pointer-events: none;
}

@media (max-width: 1400px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .woocommerce ul.products li.product.fx-product-card .fx-product-card__inner,
    .woocommerce-page ul.products li.product.fx-product-card .fx-product-card__inner {
        padding: 10px;
        border-radius: 16px;
    }

    .woocommerce ul.products li.product.fx-product-card .fx-product-card__media,
    .woocommerce-page ul.products li.product.fx-product-card .fx-product-card__media {
        min-height: 120px;
        padding: 10px;
        border-radius: 14px;
    }

    .woocommerce ul.products li.product.fx-product-card .fx-product-card__media img,
    .woocommerce-page ul.products li.product.fx-product-card .fx-product-card__media img {
        max-height: 96px;
    }

    .woocommerce ul.products li.product.fx-product-card .fx-product-card__title,
    .woocommerce-page ul.products li.product.fx-product-card .fx-product-card__title {
        font-size: 14px;
    }

    .woocommerce ul.products li.product.fx-product-card .fx-product-card__button .button,
    .woocommerce-page ul.products li.product.fx-product-card .fx-product-card__button .button,
    .woocommerce ul.products li.product.fx-product-card a.button,
    .woocommerce-page ul.products li.product.fx-product-card a.button {
        min-height: 34px;
        padding: 9px 13px !important;
        font-size: 11px !important;
    }
}

.h3-header h3{
    margin: 0;
    display: inline-block;
    padding: 12px 20px;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.2;
    color: #ffffff !important;
    background: linear-gradient(135deg, #001489 0%, #475feb 65%, #001489 100%);
    border-left: 6px solid #ffc72c;
    border-bottom: 3px solid #ffc72c;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(0, 20, 137, 0.18);
    letter-spacing: 0.4px;
}

.white-bg-section{
    position: relative;
    overflow: hidden;
    background:
            radial-gradient(circle at 12% 18%, rgba(31, 63, 255, 0.08) 0%, transparent 28%),
            radial-gradient(circle at 88% 14%, rgba(255, 191, 0, 0.10) 0%, transparent 22%),
            radial-gradient(circle at 78% 82%, rgba(31, 63, 255, 0.06) 0%, transparent 26%),
            linear-gradient(135deg, #ffffff 0%, #f7f8ff 42%, #fcfcff 100%);
    border-top: 1px solid rgba(31, 63, 255, 0.08);
    border-bottom: 1px solid rgba(31, 63, 255, 0.08);
    isolation: isolate;
}

.white-bg-section::before{
    content: "";
    position: absolute;
    inset: 0;
    background:
            linear-gradient(120deg, transparent 0 43%, rgba(31, 63, 255, 0.035) 50%, transparent 57%),
            linear-gradient(300deg, transparent 0 45%, rgba(255, 191, 0, 0.045) 50%, transparent 55%);
    background-size: 160% 160%;
    mix-blend-mode: multiply;
    pointer-events: none;
    z-index: 0;
}

.white-bg-section::after{
    content: "";
    position: absolute;
    width: 640px;
    height: 640px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -45%);
    background: radial-gradient(circle, rgba(31, 63, 255, 0.08) 0%, rgba(31, 63, 255, 0.03) 32%, transparent 68%);
    filter: blur(32px);
    pointer-events: none;
    z-index: 0;
}

.white-bg-section > *{
    position: relative;
    z-index: 1;
}

.woocommerce-ordering {
    display: none !important;
}
.fx-product-card__meta {
    display: none !important;
}

.woocommerce-product-gallery {
    width: 100% !important;
}

@media(max-width: 768px){
    .vf-atts { flex-direction: column; }
    .vf-vin-input { width: 100%; }
}

/*.woocommerce ul.products {*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*}*/



/* light */

/*.x-bg {*/
/*    position: relative;*/
/*    overflow: hidden;*/
/*}*/

/*.light-wave {*/
/*    position: absolute;*/
/*    top: 0;*/
/*    left: -40%;*/
/*    width: 40%;*/
/*    height: 100%;*/
/*    pointer-events: none;*/
/*    background: linear-gradient(*/
/*            110deg,*/
/*            transparent 0%,*/
/*            rgba(255,255,255,0.0) 35%,*/
/*            rgba(180,220,255,0.85) 50%,*/
/*            rgba(255,255,255,0.0) 65%,*/
/*            transparent 100%*/
/*    );*/
/*    filter: blur(6px);*/
/*    mix-blend-mode: screen;*/
/*    animation: lightSweep 1.2s ease-out forwards;*/
/*}*/

/*@keyframes lightSweep {*/
/*    0%   { transform: translateX(0); opacity: 0; }*/
/*    10%  { opacity: 1; }*/
/*    90%  { opacity: 1; }*/
/*    100% { transform: translateX(350%); opacity: 0; }*/
/*}*/

/* modal ninja forms */
.x-modal-content .nf-form-cont {
    max-width: 720px;
    margin: 0 auto;
}

/* Final cart table layout override */
.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row,
.woocommerce-cart .wc-block-cart-items__row {
    display: table-row !important;
    width: auto !important;
}

.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td,
.woocommerce-cart .wc-block-cart-items__row > td,
.woocommerce-cart .wc-block-cart-item__image,
.woocommerce-cart .wc-block-cart-item__product,
.woocommerce-cart .wc-block-cart-item__total {
    display: table-cell !important;
    vertical-align: top !important;
    width: auto !important;
    min-width: 0 !important;
    grid-column: auto !important;
}

.woocommerce-cart .wc-block-cart-item__image {
    width: 92px !important;
    min-width: 92px !important;
}

.woocommerce-cart .wc-block-cart-item__total {
    width: 128px !important;
    min-width: 128px !important;
    text-align: right !important;
    padding-left: 12px !important;
}

.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    width: 100% !important;
}

.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name,
.woocommerce-cart .wc-block-components-product-metadata,
.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-cart .wc-block-cart-item__wrap {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
}

@media (max-width: 767px) {
    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row,
    .woocommerce-cart .wc-block-cart-items__row,
    .woocommerce-cart .wc-block-cart-items__row > td,
    .woocommerce-cart .wc-block-cart-item__image,
    .woocommerce-cart .wc-block-cart-item__product,
    .woocommerce-cart .wc-block-cart-item__total {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    .woocommerce-cart .wc-block-cart-item__image {
        width: 76px !important;
        min-width: 76px !important;
    }

    .woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
        justify-content: flex-start !important;
    }
}

.x-modal-content .nf-form-wrap {
    padding: 28px;
    border: 2px solid #1f35bf;
    border-radius: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
    box-shadow: 0 14px 34px rgba(0, 10, 70, 0.10);
}

.x-modal-content .nf-form-fields-required,
.x-modal-content .nf-response-msg,
.x-modal-content .nf-form-errors,
.x-modal-content .nf-error-msg {
    font-size: 14px;
    line-height: 1.5;
}

.x-modal-content .nf-form-fields-required {
    margin-bottom: 18px;
    color: #044e8d;
    font-weight: 600;
}

.x-modal-content .nf-field-container {
    margin-bottom: 18px;
}

.x-modal-content .nf-field-label label {
    display: inline-block;
    margin-bottom: 8px;
    color: #001489;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.x-modal-content .ninja-forms-req-symbol {
    color: #bf3617;
}

.x-modal-content .nf-field-element input:not([type="submit"]),
.x-modal-content .nf-field-element textarea {
    width: 100%;
    min-height: 52px;
    padding: 13px 16px;
    border: 2px solid rgba(0, 154, 255, 0.35);
    border-radius: 12px;
    background: #ffffff;
    color: #001489;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.x-modal-content .nf-field-element textarea {
    min-height: 148px;
    resize: vertical;
}

.x-modal-content .nf-field-element input:not([type="submit"]):focus,
.x-modal-content .nf-field-element textarea:focus {
    outline: none;
    border-color: #f29f05;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.16);
}

.x-modal-content .nf-fail .nf-field-element input:not([type="submit"]),
.x-modal-content .nf-fail .nf-field-element textarea,
.x-modal-content .nf-field-element input[aria-invalid="true"],
.x-modal-content .nf-field-element textarea[aria-invalid="true"] {
    border-color: #bf3617;
    background: #fff8f6;
}

.x-modal-content .nf-error-wrap {
    margin-top: 8px;
}

.x-modal-content .nf-error-msg,
.x-modal-content .nf-form-errors .nf-error-msg {
    color: #bf3617;
    font-weight: 600;
}

.x-modal-content .nf-form-errors {
    margin-top: 10px;
    padding: 12px 14px;
    border: 1px solid rgba(191, 54, 23, 0.24);
    border-radius: 12px;
    background: #fff8f6;
}

.x-modal-content .submit-wrap {
    margin-top: 8px;
}

.x-modal-content .submit-wrap input[type="submit"] {
    min-width: 160px;
    min-height: 48px;
    padding: 12px 24px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #044e8d, #009aff);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
    cursor: pointer;
}

.x-modal-content .submit-wrap input[type="submit"]:hover:not(:disabled),
.x-modal-content .submit-wrap input[type="submit"]:focus-visible:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
    opacity: 0.96;
    outline: none;
}

.x-modal-content .submit-wrap input[type="submit"]:disabled,
.x-modal-content .submit-wrap input[type="submit"][aria-disabled="true"] {
    opacity: 0.55;
    cursor: not-allowed;
    box-shadow: none;
}

.x-modal-content .nf-form-hp {
    display: none;
}

@media (max-width: 767px) {
    .x-modal-content .nf-form-wrap {
        padding: 20px 16px;
        border-radius: 18px;
    }

    .x-modal-content .submit-wrap input[type="submit"] {
        width: 100%;
    }
}

/* top desktop navigation */
.x-bar.x-bar-top {
    background:
        linear-gradient(135deg, #001489 0%, #1537c7 58%, #0a1f7a 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 14px 36px rgba(0, 20, 137, 0.22);
}

.x-bar.x-bar-top .x-bar-content {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 18px;
    width: 100%;
}

.x-bar.x-bar-top .x-bar-container {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 72px;
}

.x-bar.x-bar-top #contact-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
    justify-content: flex-end;
    flex: 0 0 auto;
}

.x-bar.x-bar-top .x-anchor {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.x-bar.x-bar-top .x-anchor:focus-visible {
    outline: 2px solid #ffc72c;
    outline-offset: 2px;
}

.x-bar.x-bar-top .x-anchor-content {
    align-items: center;
    gap: 10px;
}

.x-bar.x-bar-top .x-anchor-text-primary {
    color: #ffffff;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.02em;
}

.x-bar.x-bar-top .x-anchor-sub-indicator {
    color: rgba(255, 255, 255, 0.7);
    transition: transform 0.2s ease, color 0.2s ease;
}

.x-bar.x-bar-top .x-anchor:hover,
.x-bar.x-bar-top .x-anchor:focus-visible,
.x-bar.x-bar-top .current-menu-item > .x-anchor,
.x-bar.x-bar-top .current-menu-parent > .x-anchor,
.x-bar.x-bar-top .current-page-ancestor > .x-anchor {
    background: rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14), 0 8px 18px rgba(0, 0, 0, 0.14);
    transform: translateY(-1px);
}

.x-bar.x-bar-top .x-anchor:hover .x-anchor-sub-indicator,
.x-bar.x-bar-top .x-anchor:focus-visible .x-anchor-sub-indicator,
.x-bar.x-bar-top .menu-item-has-children:hover > .x-anchor .x-anchor-sub-indicator {
    color: #ffc72c;
    transform: translateY(1px);
}

.x-bar.x-bar-top .e1918-e3 {
    padding: 0 18px;
    min-height: 42px;
    background: linear-gradient(135deg, #ffc72c 0%, #ffda63 100%);
    box-shadow: 0 12px 26px rgba(255, 199, 44, 0.28);
}

.x-bar.x-bar-top .e1918-e3 .x-anchor-text-primary,
.x-bar.x-bar-top .e1918-e20 .x-anchor-text-primary {
    color: #001489;
}

.x-bar.x-bar-top .e1918-e3 .x-toggle-burger-bun-t,
.x-bar.x-bar-top .e1918-e3 .x-toggle-burger-patty,
.x-bar.x-bar-top .e1918-e3 .x-toggle-burger-bun-b {
    background-color: #001489;
}

.x-bar.x-bar-top .x-menu.x-menu-inline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
}

.x-bar.x-bar-top .x-menu.x-menu-inline > li {
    margin: 0;
}

.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor {
    min-height: 48px;
    padding: 0 18px;
    background: rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor .x-anchor-sub-indicator {
    color: #ffffff;
}

.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:hover,
.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:focus-visible,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-item > .x-anchor,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-parent > .x-anchor,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-page-ancestor > .x-anchor {
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
}

.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:hover .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:focus-visible .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-item > .x-anchor .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-parent > .x-anchor .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-page-ancestor > .x-anchor .x-anchor-text-primary,
.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:hover .x-anchor-sub-indicator,
.x-bar.x-bar-top .x-menu.x-menu-inline > li > .x-anchor:focus-visible .x-anchor-sub-indicator,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-item > .x-anchor .x-anchor-sub-indicator,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-menu-parent > .x-anchor .x-anchor-sub-indicator,
.x-bar.x-bar-top .x-menu.x-menu-inline > li.current-page-ancestor > .x-anchor .x-anchor-sub-indicator {
    color: #001489;
}

.x-bar.x-bar-top .x-dropdown {
    min-width: 240px;
    margin-top: 12px;
    padding: 12px;
    border: 1px solid rgba(0, 20, 137, 0.08);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 20px 48px rgba(0, 18, 78, 0.18);
    backdrop-filter: blur(10px);
}

.x-bar.x-bar-top .x-dropdown .x-anchor {
    border-radius: 14px;
}

.x-bar.x-bar-top .x-dropdown .x-anchor-text-primary,
.x-bar.x-bar-top .x-dropdown .x-anchor-sub-indicator {
    color: #001489;
}

.x-bar.x-bar-top .x-dropdown .x-anchor:hover,
.x-bar.x-bar-top .x-dropdown .x-anchor:focus-visible {
    background: linear-gradient(135deg, rgba(0, 154, 255, 0.10), rgba(255, 199, 44, 0.18));
    box-shadow: none;
}

.x-bar.x-bar-top .fx-contact-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    min-width: max-content;
    padding: 0 24px;
    background: linear-gradient(135deg, #ffffff 0%, #eef5ff 100%);
    box-shadow: 0 12px 28px rgba(0, 18, 78, 0.2);
    white-space: nowrap;
}

.x-bar.x-bar-top .fx-contact-button .x-anchor-content,
.x-bar.x-bar-top .fx-contact-button .x-anchor-text-primary {
    white-space: nowrap;
    color: #044e8d;
}

.x-bar.x-bar-top .fx-contact-button:hover,
.x-bar.x-bar-top .fx-contact-button:focus-visible {
    background: linear-gradient(135deg, #ffc72c 0%, #ffda63 100%);
}

.x-bar.x-bar-top .fx-contact-button:hover .x-anchor-text-primary,
.x-bar.x-bar-top .fx-contact-button:focus-visible .x-anchor-text-primary {
    color: #001489;
}

.x-bar.x-bar-top #contact-bar > .x-anchor,
.x-bar.x-bar-top #contact-bar > .e1918-e20 {
    min-height: 48px;
    height: 48px;
}

.x-bar.x-bar-top #contact-bar > .x-anchor {
    padding: 0 20px;
}

.x-bar.x-bar-top #contact-bar > .x-anchor .x-anchor-content,
.x-bar.x-bar-top #contact-bar > .e1918-e20 .x-anchor-content {
    min-height: 48px;
}

.x-bar.x-bar-top .e1918-e20 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    min-width: 48px;
    min-height: 48px;
    padding: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffc72c 0%, #ffda63 100%);
    box-shadow: 0 12px 26px rgba(255, 199, 44, 0.28);
    flex: 0 0 48px;
}

.x-bar.x-bar-top .e1918-e20 .x-anchor-content {
    justify-content: center;
    gap: 0;
}

.x-bar.x-bar-top .e1918-e20 .fa-solid {
    font-size: 16px;
}

/* mini cart */
.fx-mini-cart .widget_shopping_cart_content {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding: 16px;
    border: 1px solid rgba(0, 20, 137, 0.12);
    border-radius: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f8ff 100%);
    box-shadow: 0 24px 54px rgba(0, 20, 137, 0.18);
    box-sizing: border-box;
    overflow: hidden;
}

.fx-mini-cart ul.woocommerce-mini-cart {
    margin: 0;
    padding: 0;
    list-style: none;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item {
    position: relative;
    margin: 0;
    padding: 0 0 14px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item + li.woocommerce-mini-cart-item {
    margin-top: 14px;
    padding-top: 14px;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a:not(.remove) {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 12px;
    width: 100%;
    min-width: 0;
    color: #001489;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 800;
    text-decoration: none;
    padding-right: 32px;
    box-sizing: border-box;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a:not(.remove):hover,
.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a:not(.remove):focus {
    color: #475feb;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item img {
    flex: 0 0 72px;
    width: 72px;
    min-width: 72px;
    height: 72px;
    margin: 0;
    border: 1px solid rgba(71, 95, 235, 0.14);
    border-radius: 14px;
    background: #ffffff;
    object-fit: contain;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
    float: none;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item .quantity {
    display: block;
    align-items: center;
    margin-top: 10px;
    color: #475569;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    clear: both;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item .amount {
    color: #001489;
    font-weight: 900;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a.remove {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    border: 1px solid rgba(191, 54, 23, 0.16);
    border-radius: 999px;
    background: #fff5f2;
    color: #bf3617 !important;
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    transition: transform 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a.remove:hover,
.fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a.remove:focus {
    background: #bf3617;
    color: #ffffff !important;
    transform: scale(1.05);
}

.fx-mini-cart .woocommerce-mini-cart__total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 14px 0 0;
    padding: 14px 16px;
    border: 1px solid rgba(0, 20, 137, 0.08);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.9);
    color: #001489;
    box-sizing: border-box;
}

.fx-mini-cart .woocommerce-mini-cart__total strong {
    margin: 0;
    color: #334155;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fx-mini-cart .woocommerce-mini-cart__total .amount {
    color: #001489;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.fx-mini-cart .woocommerce-mini-cart__buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 14px 0 0;
}

.fx-mini-cart .woocommerce-mini-cart__buttons .x-anchor {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 0 14px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #001489 0%, #475feb 100%);
    box-shadow: 0 16px 34px rgba(0, 20, 137, 0.22);
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
    box-sizing: border-box;
    overflow: hidden;
}

.fx-mini-cart .woocommerce-mini-cart__buttons .x-anchor .x-anchor-content {
    width: 100%;
    min-width: 0;
    min-height: 46px;
}

.fx-mini-cart .woocommerce-mini-cart__buttons .x-anchor .x-anchor-text-primary {
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.fx-mini-cart .woocommerce-mini-cart__buttons .x-anchor:hover,
.fx-mini-cart .woocommerce-mini-cart__buttons .x-anchor:focus {
    background: linear-gradient(135deg, #1537c7 0%, #5d72ff 100%);
    box-shadow: 0 18px 36px rgba(0, 20, 137, 0.28);
    transform: translateY(-1px);
}

.fx-mini-cart .woocommerce-mini-cart__buttons .checkout.x-anchor {
    background: linear-gradient(135deg, #ffc72c 0%, #ffda63 100%);
    box-shadow: 0 16px 34px rgba(255, 199, 44, 0.28);
}

.fx-mini-cart .woocommerce-mini-cart__buttons .checkout.x-anchor .x-anchor-text-primary {
    color: #001489;
}

.fx-mini-cart .woocommerce-mini-cart__buttons .checkout.x-anchor:hover,
.fx-mini-cart .woocommerce-mini-cart__buttons .checkout.x-anchor:focus {
    background: linear-gradient(135deg, #ffd34f 0%, #ffe07d 100%);
    box-shadow: 0 18px 36px rgba(255, 199, 44, 0.34);
}

.fx-mini-cart .woocommerce-mini-cart__empty-message {
    margin: 0;
    padding: 18px;
    border: 1px dashed rgba(0, 20, 137, 0.16);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.86);
    color: #475569;
    text-align: center;
    font-weight: 700;
}

@media (max-width: 540px) {
    .fx-mini-cart .widget_shopping_cart_content {
        padding: 16px;
        border-radius: 20px;
    }

    .fx-mini-cart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item img {
        flex-basis: 64px;
        width: 64px;
        min-width: 64px;
        height: 64px;
    }

    .fx-mini-cart .woocommerce-mini-cart__buttons {
        grid-template-columns: 1fr;
    }
}

/* WooCommerce cart and checkout */
.woocommerce-cart,
.woocommerce-checkout {
    --fx-checkout-blue: #001489;
    --fx-checkout-blue-soft: #eef2ff;
    --fx-checkout-gold: #ffc72c;
    --fx-checkout-gold-soft: #ffd966;
    --fx-checkout-ink: #0f172a;
    --fx-checkout-muted: #5b6475;
    --fx-checkout-line: #dbe3f3;
    --fx-checkout-surface: #ffffff;
    --fx-checkout-shadow: 0 22px 60px rgba(0, 20, 137, 0.08);
}

.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-cart .x-main,
.woocommerce-checkout .x-main {
    width: min(1280px, calc(100% - 32px));
    margin-left: auto;
    margin-right: auto;
}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
    color: var(--fx-checkout-ink);
}

.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error {
    margin: 0 0 24px;
    padding: 16px 20px 16px 52px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 18px;
    background: var(--fx-checkout-surface);
    box-shadow: var(--fx-checkout-shadow);
    color: var(--fx-checkout-ink);
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-checkout form.checkout {
    margin-bottom: 40px;
}

.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table {
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    background: transparent;
}

.woocommerce-cart .shop_table th,
.woocommerce-checkout .shop_table th {
    color: var(--fx-checkout-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.woocommerce-cart .shop_table td,
.woocommerce-checkout .shop_table td {
    border-top: 0;
}

.woocommerce-cart .woocommerce-cart-form__contents thead th {
    padding: 0 0 16px;
    border-bottom: 1px solid var(--fx-checkout-line);
}

.woocommerce-cart .woocommerce-cart-form__cart-item {
    display: grid;
    grid-template-columns: 32px 92px minmax(0, 1fr) 120px 146px 132px;
    gap: 20px;
    align-items: start;
    margin-bottom: 18px;
    padding: 24px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 24px;
    background: var(--fx-checkout-surface);
    box-shadow: var(--fx-checkout-shadow);
}

.woocommerce-cart .woocommerce-cart-form__cart-item td {
    display: block;
    padding: 0;
}

.woocommerce-cart td.product-remove {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.woocommerce-cart td.product-remove a.remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 999px;
    background: #fff;
    color: #64748b !important;
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.woocommerce-cart td.product-remove a.remove:hover,
.woocommerce-cart td.product-remove a.remove:focus {
    border-color: #fecaca;
    background: #fff5f5;
    color: #dc2626 !important;
}

.woocommerce-cart td.product-thumbnail a,
.woocommerce-cart td.product-thumbnail img {
    display: block;
}

.woocommerce-cart td.product-thumbnail img {
    width: 92px;
    height: 92px;
    border: 1px solid #edf2fb;
    border-radius: 20px;
    background: #fff;
    object-fit: contain;
    padding: 8px;
}

.woocommerce-cart td.product-name a {
    color: var(--fx-checkout-ink);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none;
}

.woocommerce-cart td.product-name a:hover,
.woocommerce-cart td.product-name a:focus {
    color: var(--fx-checkout-blue);
}

.woocommerce-cart td.product-name .variation,
.woocommerce-cart td.product-name .wc-item-meta {
    margin-top: 10px;
    color: var(--fx-checkout-muted);
    font-size: 14px;
}

.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal {
    color: var(--fx-checkout-blue);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.2;
}

.woocommerce-cart td.product-price .amount,
.woocommerce-cart td.product-subtotal .amount {
    color: inherit;
}

.woocommerce-cart td.product-quantity .quantity {
    display: inline-flex;
    align-items: center;
}

.woocommerce-cart td.product-quantity .qty {
    width: 88px;
    min-height: 48px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 14px;
    background: #fff;
    color: var(--fx-checkout-ink);
    font-weight: 700;
    text-align: center;
    box-shadow: none;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions {
    padding: 8px 0 0;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions > .coupon,
.woocommerce-cart .woocommerce-cart-form__contents .actions > button[name="update_cart"] {
    margin-top: 16px;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions .coupon {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions .coupon .input-text,
.woocommerce-cart .woocommerce-checkout input.input-text,
.woocommerce-cart .woocommerce-checkout textarea,
.woocommerce-cart .woocommerce-checkout select,
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select {
    min-height: 52px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 14px;
    background: #fff;
    color: var(--fx-checkout-ink);
    box-shadow: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions .coupon .input-text {
    width: min(280px, 100%);
    padding: 0 16px;
}

.woocommerce-cart .woocommerce-cart-form__contents .actions .coupon .input-text:focus,
.woocommerce-cart .woocommerce-checkout input.input-text:focus,
.woocommerce-cart .woocommerce-checkout textarea:focus,
.woocommerce-cart .woocommerce-checkout select:focus,
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
    border-color: #8ea3ff;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(71, 95, 235, 0.12);
}

.woocommerce-cart .button,
.woocommerce-cart button.button,
.woocommerce-cart input.button,
.woocommerce-checkout .button,
.woocommerce-checkout button.button,
.woocommerce-checkout input.button,
.woocommerce-checkout #place_order {
    min-height: 52px;
    padding: 0 24px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--fx-checkout-blue) 0%, #2f49df 100%);
    box-shadow: 0 18px 36px rgba(0, 20, 137, 0.18);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.woocommerce-cart .button:hover,
.woocommerce-cart .button:focus,
.woocommerce-cart button.button:hover,
.woocommerce-cart button.button:focus,
.woocommerce-cart input.button:hover,
.woocommerce-cart input.button:focus,
.woocommerce-checkout .button:hover,
.woocommerce-checkout .button:focus,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout button.button:focus,
.woocommerce-checkout input.button:hover,
.woocommerce-checkout input.button:focus,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus {
    background: linear-gradient(135deg, #1934b6 0%, #4a63ef 100%);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 22px 38px rgba(0, 20, 137, 0.22);
}

.woocommerce-cart .checkout-button.button,
.woocommerce-checkout #place_order {
    background: linear-gradient(135deg, var(--fx-checkout-gold) 0%, #ffd966 100%);
    color: var(--fx-checkout-blue);
    box-shadow: 0 18px 36px rgba(255, 199, 44, 0.26);
}

.woocommerce-cart .checkout-button.button:hover,
.woocommerce-cart .checkout-button.button:focus,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus {
    background: linear-gradient(135deg, #ffd34a 0%, #ffe183 100%);
    color: var(--fx-checkout-blue);
    box-shadow: 0 22px 40px rgba(255, 199, 44, 0.3);
}

.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout {
    display: grid;
    gap: 28px;
}

.woocommerce-cart .cart-collaterals {
    grid-template-columns: minmax(0, 1fr) 360px;
    align-items: start;
}

.woocommerce-cart .cross-sells {
    min-width: 0;
}

.woocommerce-cart .cart_totals {
    position: sticky;
    top: 24px;
    padding: 28px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 28px;
    background: var(--fx-checkout-surface);
    box-shadow: var(--fx-checkout-shadow);
}

.woocommerce-cart .cart_totals h2,
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3,
.woocommerce-checkout #order_review_heading {
    margin: 0 0 20px;
    color: var(--fx-checkout-blue);
    font-size: 28px;
    font-weight: 900;
    line-height: 1.1;
}

.woocommerce-cart .cart_totals table.shop_table tr:first-child th,
.woocommerce-cart .cart_totals table.shop_table tr:first-child td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr:first-child th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr:first-child td {
    padding-top: 0;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    padding: 14px 0;
    border-bottom: 1px solid var(--fx-checkout-line);
}

.woocommerce-cart .cart_totals table.shop_table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    text-align: right;
    color: var(--fx-checkout-ink);
    font-weight: 700;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
    padding-top: 20px;
    border-bottom: 0;
    color: var(--fx-checkout-blue);
    font-size: 22px;
    font-weight: 900;
}

.woocommerce-cart .cart_totals .wc-proceed-to-checkout {
    margin-top: 20px;
}

.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button {
    width: 100%;
    margin-bottom: 0;
}

.woocommerce-checkout form.checkout {
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    align-items: start;
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
    min-width: 0;
}

.woocommerce-checkout #customer_details {
    display: grid;
    gap: 24px;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2,
.woocommerce-checkout #order_review {
    float: none;
    width: 100%;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout #order_review {
    padding: 28px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 28px;
    background: var(--fx-checkout-surface);
    box-shadow: var(--fx-checkout-shadow);
}

.woocommerce-checkout .form-row {
    margin-bottom: 16px;
}

.woocommerce-checkout .form-row label {
    margin-bottom: 8px;
    color: var(--fx-checkout-ink);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.woocommerce-checkout .form-row .optional {
    color: var(--fx-checkout-muted);
}

.woocommerce-checkout textarea {
    min-height: 132px;
    padding: 14px 16px;
    resize: vertical;
}

.woocommerce-checkout .woocommerce-shipping-fields h3 label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.woocommerce-checkout .woocommerce-shipping-fields .input-checkbox,
.woocommerce-checkout .woocommerce-account-fields .input-checkbox,
.woocommerce-checkout .woocommerce-form__label-for-checkbox .input-checkbox {
    width: 18px;
    height: 18px;
    min-width: 18px;
    accent-color: var(--fx-checkout-blue);
}

.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
    padding-top: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name {
    padding-right: 18px;
    color: var(--fx-checkout-ink);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity {
    color: var(--fx-checkout-muted);
    font-weight: 700;
}

.woocommerce-checkout #payment {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid var(--fx-checkout-line);
}

.woocommerce-checkout #payment ul.payment_methods {
    margin: 0 0 22px;
    padding: 0;
    border: 0;
}

.woocommerce-checkout #payment ul.payment_methods li {
    margin: 0 0 12px;
    padding: 18px 20px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 18px;
    background: #fff;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
    margin-bottom: 0;
}

.woocommerce-checkout #payment ul.payment_methods li > label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--fx-checkout-ink);
    font-weight: 800;
}

.woocommerce-checkout #payment div.payment_box {
    margin: 16px 0 0;
    padding: 18px;
    border-radius: 18px;
    background: var(--fx-checkout-blue-soft);
    color: var(--fx-checkout-ink);
}

.woocommerce-checkout .place-order {
    margin-top: 24px;
}

.woocommerce-checkout .place-order .woocommerce-privacy-policy-text,
.woocommerce-checkout .place-order .form-row.terms,
.woocommerce-checkout .place-order .woocommerce-terms-and-conditions-wrapper {
    color: var(--fx-checkout-muted);
    font-size: 14px;
}

.woocommerce-checkout #place_order {
    width: 100%;
    margin-top: 12px;
}

@media (max-width: 1100px) {
    .woocommerce-cart .woocommerce-cart-form__cart-item {
        grid-template-columns: 32px 84px minmax(0, 1fr) 110px 128px;
    }

    .woocommerce-cart td.product-subtotal {
        grid-column: 4 / -1;
        justify-self: end;
    }

    .woocommerce-cart .cart-collaterals,
    .woocommerce-checkout form.checkout {
        grid-template-columns: 1fr;
    }

    .woocommerce-cart .cart_totals {
        position: static;
    }
}

@media (max-width: 767px) {
    .woocommerce-cart .entry-content,
    .woocommerce-checkout .entry-content,
    .woocommerce-cart .x-main,
    .woocommerce-checkout .x-main {
        width: min(100% - 20px, 100%);
    }

    .woocommerce-cart .woocommerce-cart-form__contents thead {
        display: none;
    }

    .woocommerce-cart .woocommerce-cart-form__cart-item {
        grid-template-columns: 28px 76px minmax(0, 1fr);
        gap: 16px;
        padding: 20px;
    }

    .woocommerce-cart td.product-thumbnail img {
        width: 76px;
        height: 76px;
        border-radius: 16px;
    }

    .woocommerce-cart td.product-name a {
        font-size: 18px;
    }

    .woocommerce-cart td.product-price,
    .woocommerce-cart td.product-quantity,
    .woocommerce-cart td.product-subtotal {
        grid-column: 3;
    }

    .woocommerce-cart td.product-price::before,
    .woocommerce-cart td.product-quantity::before,
    .woocommerce-cart td.product-subtotal::before {
        content: attr(data-title);
        display: block;
        margin-bottom: 6px;
        color: var(--fx-checkout-blue);
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .woocommerce-cart .woocommerce-cart-form__contents .actions .coupon {
        flex-direction: column;
        align-items: stretch;
    }

    .woocommerce-cart .woocommerce-cart-form__contents .actions .coupon .input-text,
    .woocommerce-cart .woocommerce-cart-form__contents .actions .coupon button,
    .woocommerce-cart .woocommerce-cart-form__contents .actions > button[name="update_cart"] {
        width: 100%;
    }

    .woocommerce-cart .cart_totals,
    .woocommerce-checkout .woocommerce-billing-fields,
    .woocommerce-checkout .woocommerce-shipping-fields,
    .woocommerce-checkout .woocommerce-additional-fields,
    .woocommerce-checkout #order_review {
        padding: 22px;
        border-radius: 22px;
    }

    .woocommerce-cart .cart_totals h2,
    .woocommerce-checkout .woocommerce-billing-fields > h3,
    .woocommerce-checkout .woocommerce-shipping-fields > h3,
    .woocommerce-checkout .woocommerce-additional-fields > h3,
    .woocommerce-checkout #order_review_heading {
        font-size: 24px;
    }
}

/* WooCommerce blocks cart and checkout */
.woocommerce-cart .wc-block-components-sidebar-layout,
.woocommerce-checkout .wc-block-components-sidebar-layout {
    gap: 32px;
    align-items: flex-start;
}

.woocommerce-cart .wc-block-cart__main,
.woocommerce-checkout .wc-block-checkout__main {
    min-width: 0;
    flex: 1 1 auto;
}

.woocommerce-cart .wc-block-cart__sidebar,
.woocommerce-checkout .wc-block-checkout__sidebar {
    width: 400px;
    min-width: 400px;
    max-width: 400px;
    flex: 0 0 400px;
}

.woocommerce-cart .wc-block-components-sidebar,
.woocommerce-checkout .wc-block-components-sidebar,
.woocommerce-checkout .wc-block-components-checkout-step,
.woocommerce-checkout .wc-block-components-express-payment {
    padding: 28px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--fx-checkout-shadow);
}

.woocommerce-cart .wc-block-cart__totals-title,
.woocommerce-checkout .wc-block-components-checkout-order-summary__title,
.woocommerce-checkout .wc-block-components-checkout-step__title,
.woocommerce-checkout .wc-block-components-express-payment__title {
    color: var(--fx-checkout-blue);
    font-size: 22px;
    font-weight: 800;
    letter-spacing: 0;
}

.woocommerce-cart table.wc-block-cart-items {
    border-collapse: separate;
    border-spacing: 0 18px;
}

.woocommerce-cart table.wc-block-cart-items thead th {
    color: var(--fx-checkout-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td {
    padding: 24px 0;
    border-top: 1px solid var(--fx-checkout-line);
    border-bottom: 1px solid var(--fx-checkout-line);
    background: #fff;
    vertical-align: top;
}

.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:first-child {
    width: 92px;
    padding-left: 24px;
    border-left: 1px solid var(--fx-checkout-line);
    border-radius: 24px 0 0 24px;
}

.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:last-child {
    width: 136px;
    padding-right: 24px;
    border-right: 1px solid var(--fx-checkout-line);
    border-radius: 0 24px 24px 0;
    text-align: right;
}

.woocommerce-cart .wc-block-cart-item__image img,
.woocommerce-checkout .wc-block-components-order-summary-item__image img {
    display: block;
    border: 1px solid #edf2fb;
    border-radius: 18px;
    background: #fff;
    object-fit: contain;
    padding: 8px;
}

.woocommerce-cart .wc-block-cart-item__image img {
    width: 92px;
    height: 92px;
}

.woocommerce-checkout .wc-block-components-order-summary-item__image img {
    width: 72px;
    height: 72px;
}

.woocommerce-cart .wc-block-components-product-name,
.woocommerce-checkout .wc-block-components-product-name {
    display: block;
    margin: 0 0 12px;
    color: var(--fx-checkout-ink);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: 0;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
    text-decoration: none;
}

.woocommerce-cart .wc-block-components-product-badge,
.woocommerce-checkout .wc-block-components-product-badge {
    display: inline-flex;
    align-items: center;
    margin: 0 0 14px;
    padding: 6px 14px;
    border: 1px solid var(--fx-checkout-blue);
    border-radius: 999px;
    background: #fff;
    color: var(--fx-checkout-blue);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.woocommerce-cart .wc-block-components-product-price__value,
.woocommerce-checkout .wc-block-components-product-price__value,
.woocommerce-checkout .wc-block-components-order-summary-item__individual-price,
.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    color: var(--fx-checkout-blue);
    font-weight: 900;
}

.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price__value,
.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__value {
    font-size: 18px;
    line-height: 1.1;
}

.woocommerce-cart .wc-block-components-product-metadata,
.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-checkout .wc-block-components-product-metadata,
.woocommerce-checkout .wc-block-components-product-metadata__description {
    color: var(--fx-checkout-muted);
    font-size: 14px;
    line-height: 1.55;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
}

.woocommerce-cart .wc-block-components-quantity-selector {
    border: 1px solid var(--fx-checkout-line);
    border-radius: 14px;
    background: #fff;
}

.woocommerce-cart .wc-block-components-quantity-selector::after {
    display: none;
}

.woocommerce-cart .wc-block-components-quantity-selector__button,
.woocommerce-cart .wc-block-components-quantity-selector__input {
    min-height: 46px;
    border: 0;
    box-shadow: none;
}

.woocommerce-cart .wc-block-cart-item__remove-link {
    color: var(--fx-checkout-muted);
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
}

.woocommerce-cart .wc-block-components-panel,
.woocommerce-checkout .wc-block-components-panel,
.woocommerce-checkout .wc-block-components-radio-control__option {
    border: 1px solid var(--fx-checkout-line);
    border-radius: 18px;
    background: #fff;
}

.woocommerce-cart .wc-block-components-totals-item,
.woocommerce-checkout .wc-block-components-totals-item,
.woocommerce-checkout .wc-block-components-order-summary-item {
    border-bottom-color: var(--fx-checkout-line);
}

.woocommerce-cart .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-radio-control__label {
    color: var(--fx-checkout-ink);
    font-weight: 700;
}

.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-checkout-order-summary__title-price {
    color: var(--fx-checkout-blue);
    font-size: 22px;
    font-weight: 900;
}

.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    min-height: 54px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--fx-checkout-gold) 0%, var(--fx-checkout-gold-soft) 100%);
    color: var(--fx-checkout-blue);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    box-shadow: 0 18px 36px rgba(255, 199, 44, 0.26);
}

.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text,
.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
    color: var(--fx-checkout-blue);
}

.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button {
    color: var(--fx-checkout-blue);
    font-weight: 700;
}

.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input textarea,
.woocommerce-checkout .wc-block-components-form .wc-blocks-components-select .wc-blocks-components-select__select {
    min-height: 52px;
    border: 1px solid var(--fx-checkout-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: none;
}

.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input:focus,
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input textarea:focus,
.woocommerce-checkout .wc-block-components-form .wc-blocks-components-select .wc-blocks-components-select__select:focus {
    border-color: #8ea3ff;
    box-shadow: 0 0 0 4px rgba(71, 95, 235, 0.12);
    outline: 0;
}

.woocommerce-checkout .wc-block-components-order-summary-item {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    gap: 14px 16px;
    align-items: start;
    padding: 18px 0;
}

.woocommerce-checkout .wc-block-components-order-summary-item__image {
    grid-column: 1;
    grid-row: 1 / span 3;
    width: 56px;
    min-width: 56px;
}

.woocommerce-checkout .wc-block-components-order-summary-item__description {
    grid-column: 2;
    grid-row: 1 / span 3;
}

.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    white-space: nowrap;
    font-size: 18px;
    line-height: 1.1;
}

.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices {
    display: block;
    margin: 0 0 8px;
    font-size: 15px;
}

@media (max-width: 1100px) {
    .woocommerce-cart .wc-block-cart__sidebar,
    .woocommerce-checkout .wc-block-checkout__sidebar {
        width: 100%;
        min-width: 0;
        max-width: none;
        flex: 1 1 auto;
    }
}

@media (max-width: 767px) {
    .woocommerce-cart table.wc-block-cart-items {
        border-spacing: 0 14px;
    }

    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:first-child,
    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:last-child,
    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td {
        display: block;
        width: 100%;
        padding: 0 18px 14px;
        border-left: 1px solid var(--fx-checkout-line);
        border-right: 1px solid var(--fx-checkout-line);
        border-radius: 0;
        text-align: left;
    }

    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:first-child {
        padding-top: 18px;
        border-radius: 22px 22px 0 0;
    }

    .woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td:last-child {
        padding-bottom: 18px;
        border-radius: 0 0 22px 22px;
    }

    .woocommerce-cart .wc-block-cart-item__image {
        width: 76px;
    }

    .woocommerce-cart .wc-block-cart-item__image img {
        width: 76px;
        height: 76px;
    }

    .woocommerce-cart .wc-block-components-sidebar,
    .woocommerce-checkout .wc-block-components-sidebar,
    .woocommerce-checkout .wc-block-components-checkout-step,
    .woocommerce-checkout .wc-block-components-express-payment {
        padding: 22px;
        border-radius: 22px;
    }

    .woocommerce-cart .wc-block-components-product-name,
    .woocommerce-checkout .wc-block-components-product-name {
        font-size: 16px;
    }

    .woocommerce-checkout .wc-block-components-order-summary-item {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 12px;
    }

    .woocommerce-checkout .wc-block-components-order-summary-item__image {
        width: 48px;
        min-width: 48px;
    }

    .woocommerce-checkout .wc-block-components-order-summary-item__description {
        grid-column: 2;
        grid-row: 1;
    }

    .woocommerce-checkout .wc-block-components-order-summary-item__total-price {
        grid-column: 2;
        grid-row: auto;
        justify-self: start;
    }
}

.fx-customer-service-page {
    width: 100%;
    padding: 40px 0 72px;
    background: #f6f8fc;
}

.fx-customer-service-layout {
    width: 100%;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.fx-customer-service-nav__card {
    background: #fff;
    border: 1px solid #d9e1f2;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 20, 137, 0.08);
}

.fx-customer-service-nav__card {
    padding: 24px 22px;
    position: sticky;
    top: 30px;
    margin-left: 20px;
}

.fx-customer-service-nav__title {
    margin: 0 0 18px;
    color: #001489;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
}

.fx-customer-service-nav__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.fx-customer-service-nav__item a {
    display: block;
    padding: 12px 14px;
    border-radius: 12px;
    color: #1a1a1a;
    font-weight: 600;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.fx-customer-service-nav__item a:hover,
.fx-customer-service-nav__item.is-active a {
    background: #001489;
    color: #fff;
}

.fx-customer-service-content__header {
    margin: 0 20px 24px 0;
}

.fx-customer-service-content__header .entry-title {
    margin: 0;
    color: #001489;
    font-size: 40px;
    line-height: 1.1;
}

.fx-customer-service-entry {
    color: #1a1a1a;
    margin-right: 20px;
}

.fx-customer-service-pdf {
    width: 100%;
    background: transparent;
}

.fx-customer-service-pdf__page {
    margin: 0 0 24px;
}

.fx-customer-service-pdf__canvas {
    display: block;
    width: 100%;
    height: auto;
    background: #fff;
}

.fx-customer-service-pdf.is-error a {
    color: #001489;
    font-weight: 600;
}

@media (max-width: 979px) {
    .fx-customer-service-layout {
        grid-template-columns: 1fr;
    }

    .fx-customer-service-nav__card {
        position: static;
        margin: 0 16px;
    }

    .fx-customer-service-content__header .entry-title {
        font-size: 32px;
    }

    .fx-customer-service-content__header,
    .fx-customer-service-entry {
        margin-left: 16px;
        margin-right: 16px;
    }
}

@media (max-width: 767px) {
    .fx-customer-service-page {
        padding: 24px 0 48px;
    }

}
