/* Optional horizontal catalog. All rules stay inside the style-two column. */
.cart-products-column.cart-style-two {
    --cart-catalog-blue: #0068ed;
    --cart-catalog-border: #e5e8ee;
    box-sizing: border-box;
    flex: 0 1 calc(100% - 48px);
    width: calc(100% - 48px);
    max-width: 1280px;
    min-width: 0;
    /* Size the catalog to its products and optional terms, not the viewport. */
    min-height: 0;
    margin: 24px auto;
    padding: 16px !important;
    border: 1px solid var(--cart-catalog-border);
    background: #fff;
    color: #263445;
    font-size: 13px;
}
.cart-style-two *,
.cart-style-two *::before,
.cart-style-two *::after { box-sizing: border-box; }
.cart-style-two__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--cart-catalog-border);
}
.cart-style-two__back { display: inline-flex; align-items: center; gap: 12px; color: #263445; text-decoration: none; }
.cart-style-two__back h1 { margin: 0; color: inherit; font-size: 14px; font-weight: 400; }
.cart-style-two__back i { font-size: 12px; }
.cart-style-two__search { display: flex; width: 220px; max-width: 55%; height: 30px; margin: 0; border: 1px solid var(--cart-catalog-border); }
.cart-style-two__search input { width: 100%; min-width: 0; padding: 5px 8px; border: 0; border-radius: 0; background: #fff; color: #263445; font: inherit; font-size: 12px; }
.cart-style-two__search button { flex: 0 0 30px; border: 0; background: #fff; color: #8796aa; cursor: pointer; }
.cart-style-two__search:focus-within { border-color: var(--cart-catalog-blue); }
.cart-style-two__categories { display: grid; gap: 14px; padding: 18px 0; }
.cart-style-two__category-row { display: flex; align-items: flex-start; gap: 18px; min-width: 0; }
.cart-style-two__label { flex: 0 0 76px; padding-top: 7px; font-size: 13px; }
.cart-style-two__options { display: flex; flex: 1; flex-wrap: wrap; align-items: flex-start; gap: 12px 10px; min-width: 0; }
.cart-style-two__option { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 32px; min-width: 150px; max-width: 100%; padding: 6px 18px; border: 1px solid transparent; background: #f2f3f5; color: #263445; font-size: 13px; line-height: 1.5; text-align: center; text-decoration: none; overflow-wrap: anywhere; }
.cart-style-two__option:hover { background: #f0f7ff; color: var(--cart-catalog-blue); }
.cart-style-two__option.is-active { border-color: #3989ff; background: #f0f7ff; color: var(--cart-catalog-blue); }
.cart-style-two__categories--bold .cart-style-two__category-row:first-child .cart-style-two__option { font-weight: 700; }
.cart-style-two__badges { position: absolute; top: -8px; right: -1px; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 2px; max-width: 100%; }
.cart-style-two__badge { padding: 0 3px; background: #ff5365; color: #fff; font-size: 10px; line-height: 14px; }
.cart-style-two__no-groups { padding: 7px 0; color: #8b95a5; }
.cart-style-two a:focus-visible,
.cart-style-two button:focus-visible,
.cart-style-two input:focus-visible { outline: 2px solid var(--cart-catalog-blue); outline-offset: 2px; }
.cart-style-two .bgw { margin: 0; padding: 0; background: transparent; }
.cart-style-two .ewy-elem-quote { margin: 0 0 14px; padding: 10px 14px; font-size: 12px; line-height: 1.7; }
.cart-style-two .login-alert { display: flex; align-items: baseline; gap: 8px; border: 0; background: #f0f7ff; color: #35465b; }
.cart-style-two .login-alert::before { content: "\f05a"; font-family: "Font Awesome 6 Free"; font-weight: 900; color: var(--cart-catalog-blue); }
.cart-style-two .login-alert p { margin: 0; }
.cart-style-two .login-alert a { color: var(--cart-catalog-blue); font-weight: 600; }
.cart-style-two .cart-slogan-tip { display: flex !important; }
.cart-style-two .announcement-wrapper { margin: 0 0 14px; padding: 0; }
.cart-style-two .products-container { width: 100%; padding: 0 !important; overflow: visible; }
.cart-style-two__selection { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; margin-top: 18px; padding: 18px 0 16px; border-top: 1px solid var(--cart-catalog-border); }
.cart-style-two__selection h2 { margin: 0; padding-left: 9px; border-left: 3px solid var(--cart-catalog-blue); color: #18283e; font-size: 14px; font-weight: 600; line-height: 1; }
.cart-style-two__group { color: #485467; font-size: 12px; overflow-wrap: anywhere; }
.cart-style-two__group:not(:empty)::before { content: "-"; margin-right: 12px; color: #a3adbb; }
.cart-style-two .products-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; transition: none; }
.cart-style-two .product-item { min-width: 0; padding: 15px; border: 1px solid var(--cart-catalog-border); border-radius: 0; background: #fff; box-shadow: none; cursor: default; }
.cart-style-two .product-item:hover { border-color: #99bff5; box-shadow: none; transform: none; }
.cart-style-two .product-header { gap: 10px; align-items: flex-start; padding: 0 0 14px; border-bottom: 1px solid var(--cart-catalog-border); background: #fff; }
.cart-style-two .product-title { min-width: 0; margin: 0; color: #16253a; font-size: 16px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.cart-style-two .product-cloud-icon { width: 24px; height: 22px; flex-basis: 24px; }
.cart-style-two .product-stock { flex-shrink: 0; margin: 1px 0 0; padding: 2px 6px; background: #ff801a; color: #fff; font-size: 11px; line-height: 17px; white-space: nowrap; }
.cart-style-two .product-stock.danger { background: #ff697b; }
.cart-style-two .product-stock::after { display: none; }
.cart-style-two .product-body { flex: 1; padding: 13px 0; background: transparent; }
.cart-style-two .product-description { color: #354154; font-size: 12px; line-height: 2; overflow-wrap: anywhere; }
.cart-style-two .product-description .content-item { justify-content: flex-start !important; gap: 6px !important; }
.cart-style-two .product-description .content-item .value-text { min-width: 0; color: inherit !important; }
.cart-style-two .product-description img { max-width: 100%; height: auto; }
.cart-style-two .product-description table { max-width: 100%; }
.cart-style-two .product-description pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.cart-style-two .sdesc-kv { flex-direction: column; gap: 0; }
.cart-style-two .sdesc-kv-item { line-height: 2; }
.cart-style-two .sdesc-row { flex-wrap: wrap; gap: 4px; padding: 2px 0; border: 0; }
.cart-style-two .sdesc-label,
.cart-style-two .sdesc-kv-label { width: auto; color: inherit; font-size: 12px; }
.cart-style-two .sdesc-value,
.cart-style-two .sdesc-kv-value { flex: initial; min-width: 0; font-size: 12px; font-weight: 400; }
.cart-style-two .product-footer { margin-top: auto; padding: 12px 0 0; border-top: 1px solid var(--cart-catalog-border); }
.cart-style-two .product-price-section { margin: 0 0 10px; }
.cart-style-two .price-main { flex-wrap: wrap; gap: 3px; color: #ff3048; }
.cart-style-two .price-main .currency { font-size: 13px; }
.cart-style-two .price-main .amount { font-size: 24px; font-weight: 600; line-height: 1.3; }
.cart-style-two .price-main .period { color: #98a1ae; font-size: 12px; }
.cart-style-two .btn-buy,
.cart-style-two .sold-out { display: block; width: 100%; margin: 0; padding: 9px 6px; border: 0; border-radius: 0; font: inherit; font-size: 12px; line-height: 1.5; text-align: center; }
.cart-style-two .btn-buy { background: var(--cart-catalog-blue); color: #fff; }
.cart-style-two .btn-buy:hover { background: #0058cd; }
.cart-style-two .sold-out { background: #edeef1; color: #a7aeba; opacity: 1; cursor: not-allowed; }
.cart-style-two .product-item--sold-out .product-title,
.cart-style-two .product-item--sold-out .product-description { color: #878d97; }
.cart-style-two .product-item--sold-out .price-main { color: #ff697b; }
.cart-style-two .product-item--sold-out:hover { border-color: var(--cart-catalog-border); }
.cart-style-two .pagination-wrapper { margin-top: 18px; }
.cart-style-two .pagination { margin-bottom: 0; }
.cart-style-two__terms { margin-top: 18px; border: 1px solid #ff8b43; color: #354154; }
.cart-style-two__terms h2 { display: flex; align-items: center; gap: 8px; margin: 0; padding: 12px 15px; background: #fff2e9; color: #fa711e; font-size: 13px; font-weight: 600; line-height: 1.5; }
.cart-style-two__terms-content { padding: 14px 15px; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.cart-style-two__terms-content p:last-child { margin-bottom: 0; }
.cart-style-two__terms-content img { max-width: 100%; height: auto; }
.cart-style-two .product-item.cart-pjax-skeleton-card { min-height: 290px; }
.cart-style-two .cart-skeleton-specs { margin-top: 20px; }
.cart-style-two .cart-pjax-spinner-card { grid-column: 1 / -1; min-height: 300px; border: 0; }
@media (max-width: 1050px) {
    .cart-style-two .product-item { padding: 12px; }
    .cart-style-two .product-title { font-size: 14px; }
}
@media (max-width: 900px) {
    .cart-style-two .products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .cart-products-column.cart-style-two { flex-basis: calc(100% - 20px); width: calc(100% - 20px); margin: 12px auto 24px; padding: 12px !important; }
    .cart-style-two__toolbar { gap: 10px; }
    .cart-style-two__search { max-width: 58%; }
    .cart-style-two__category-row { flex-direction: column; gap: 8px; }
    .cart-style-two__label { flex-basis: auto; padding: 0; }
    .cart-style-two__options { width: 100%; gap: 12px 8px; }
    .cart-style-two__option { flex: 1 1 calc(50% - 8px); min-width: 0; padding: 7px 10px; }
    .cart-style-two .products-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    .cart-style-two .product-title { font-size: 16px; }
    .cart-style-two .product-description { font-size: 13px; }
    .cart-style-two .btn-buy,
    .cart-style-two .sold-out { min-height: 40px; padding: 10px; }
    .cart-style-two .ewy-elem-quote { padding: 10px; }
    .cart-style-two__selection { margin-top: 14px; padding: 16px 0; }
}
