:root { --ibx-market-accent: #1769e0; --ibx-market-ink: #18212f; --ibx-market-muted: #667085; --ibx-market-line: #dce2ea; --ibx-market-soft: #f6f8fb; }
.ibx-marketplace-ui { color: var(--ibx-market-ink); }
.ibx-marketplace-ui .woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ibx-marketplace-ui .woocommerce ul.products::before,.ibx-marketplace-ui .woocommerce ul.products::after { display: none; }
.ibx-marketplace-ui .woocommerce ul.products li.product.ibx-marketplace-product { position: relative; width: auto; margin: 0; padding: 0 0 18px; overflow: hidden; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; box-shadow: 0 8px 24px rgba(24,33,47,.06); }
.ibx-marketplace-ui .woocommerce ul.products li.product.ibx-marketplace-product:hover { border-color: #b8c4d4; box-shadow: 0 14px 34px rgba(24,33,47,.11); transform: translateY(-2px); }
.ibx-marketplace-ui .ibx-marketplace-product img { margin: 0 0 16px !important; aspect-ratio: 16 / 10; object-fit: cover; }
.ibx-marketplace-ui .related.products,.ibx-marketplace-ui .related-products-wrapper { clear: both; margin-top: 42px; padding-top: 30px; border-top: 1px solid var(--ibx-market-line); }
.ibx-marketplace-ui .related.products > h2,.ibx-marketplace-ui .related-products-wrapper > h3 { margin: 0 0 22px; color: var(--ibx-market-ink); font-size: 24px; font-weight: 750; text-transform: none; }
.ibx-marketplace-ui .related.products ul.products { align-items: stretch; gap: 20px; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product { display: flex; min-height: 100%; flex-direction: column; padding-bottom: 0; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > a { display: flex; flex: 1; flex-direction: column; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .woocommerce-loop-product__title { min-height: 0; margin-top: 2px !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .ibx-market-card-meta { min-height: 52px; margin-top: 4px; margin-bottom: 0; padding-top: 8px; border: 0; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .price { margin-top: auto !important; padding-top: 14px; border-top: 1px solid var(--ibx-market-line); }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .button { margin-top: 14px !important; margin-bottom: 18px !important; text-align: center; }
.ibx-marketplace-ui .related.products .woocommerce-placeholder { height: 140px !important; padding: 34px !important; object-fit: contain !important; background: var(--ibx-market-soft); }
.ibx-marketplace-ui .related.products .ibx-no-product-image > a > img.woocommerce-placeholder { display: none !important; }
.ibx-marketplace-ui .related.products .ibx-no-product-image > a::before { content: "INOBARIX"; display: grid; width: 100%; height: 140px; margin-bottom: 16px; place-items: center; color: #fff; background: #111827; font-size: 14px; font-weight: 750; line-height: 1.4; letter-spacing: 0; text-align: center; }
.ibx-marketplace-ui .related.products .mpa-subscription-badge { display: none !important; }

/* Flatsome uses its own related-product box instead of WooCommerce's list card. */
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .row { align-items: stretch; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.col { display: flex; padding-bottom: 20px; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.box { display: flex; width: 100%; min-height: 100%; overflow: hidden; flex-direction: column; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; box-shadow: 0 8px 24px rgba(24,33,47,.06); transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.box:hover { border-color: #b8c4d4; box-shadow: 0 14px 34px rgba(24,33,47,.11); transform: translateY(-2px); }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image { width: 100%; margin: 0; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image img { width: 100%; height: 140px; margin: 0 !important; object-fit: cover; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-no-product-image .box-image img { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-no-product-image .box-image a::before { content: "INOBARIX"; display: grid; width: 100%; height: 140px; place-items: center; color: #fff; background: #111827; font-size: 14px; font-weight: 750; line-height: 1.4; text-align: center; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text { display: flex; flex: 1; flex-direction: column; padding: 16px 18px 18px !important; text-align: left; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text > * { width: 100%; margin-left: 0 !important; margin-right: 0 !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .category { margin: 0 0 8px !important; color: var(--ibx-market-muted); font-size: 11px; line-height: 1.3; opacity: 1; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .name { min-height: 48px; margin: 0 0 8px !important; padding: 0; font-size: 17px; line-height: 1.4; text-align: left; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .name a { color: var(--ibx-market-ink); }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-market-card-meta { min-height: 48px; margin: 0 !important; padding: 8px 0 10px; border: 0; color: var(--ibx-market-muted); line-height: 1.45; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price-wrapper { margin-top: auto !important; padding-top: 14px; border-top: 1px solid var(--ibx-market-line); }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price { color: var(--ibx-market-ink) !important; font-size: 20px; font-weight: 750; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price .subscription-details { white-space: normal; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .add-to-cart-button { margin-top: 14px; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .add-to-cart-button .button { display: block; width: 100%; margin: 0; text-align: center; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .mpa-subscription-badge { display: none !important; }
.ibx-marketplace-ui .ibx-marketplace-product .woocommerce-loop-product__title,.ibx-marketplace-ui .ibx-marketplace-product .price,.ibx-marketplace-ui .ibx-marketplace-product .button,.ibx-market-card-meta { margin-left: 18px !important; margin-right: 18px !important; }
.ibx-marketplace-ui .ibx-marketplace-product .woocommerce-loop-product__title { min-height: 48px; font-size: 17px !important; line-height: 1.4; }
.ibx-marketplace-ui .ibx-marketplace-product .price { color: var(--ibx-market-ink) !important; font-size: 21px !important; font-weight: 700 !important; }
.ibx-marketplace-ui .ibx-marketplace-product .button,.ibx-marketplace-ui button.alt,.ibx-marketplace-ui .button.alt { background: var(--ibx-market-accent) !important; color: #fff !important; border-radius: 4px !important; }
.ibx-market-card-meta { min-height: 40px; color: var(--ibx-market-muted); font-size: 13px; }
.ibx-market-badge { display: inline-flex; position: relative; z-index: 2; margin: 0 0 10px; padding: 5px 9px; color: #14532d; background: #dcfce7; border-radius: 3px; font-size: 12px; font-weight: 700; }
.products .ibx-market-badge { position: absolute; top: 12px; left: 12px; margin: 0; }
.single-product .product.ibx-marketplace-product .summary { padding: 24px; border: 1px solid var(--ibx-market-line); border-radius: 6px; background: #fff; }
.ibx-market-purchase-benefits { display: grid; gap: 10px; margin: 20px 0; padding: 16px 0; border-top: 1px solid var(--ibx-market-line); border-bottom: 1px solid var(--ibx-market-line); color: var(--ibx-market-muted); font-size: 14px; }
.ibx-market-purchase-benefits span::before,.ibx-market-details li::before { content: "✓"; margin-right: 8px; color: #15803d; font-weight: 800; }
.ibx-market-details { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: start; margin: 36px 0; padding: 30px 0; border-top: 1px solid var(--ibx-market-line); border-bottom: 1px solid var(--ibx-market-line); }
.ibx-market-details ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; padding: 0; list-style: none; }
.ibx-market-details nav { display: flex; gap: 10px; }
.ibx-market-modal[hidden] { display: none; }
.ibx-market-modal { position: fixed; z-index: 100000; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(16,24,40,.66); }
.ibx-market-modal__dialog { position: relative; width: min(520px,100%); padding: 32px; text-align: center; background: #fff; border-radius: 6px; box-shadow: 0 24px 70px rgba(0,0,0,.25); }
.ibx-market-modal__close { position: absolute; top: 10px; right: 12px; width: 36px; height: 36px; padding: 0; color: #475467; background: transparent; border: 0; font-size: 28px; cursor: pointer; }
.ibx-market-modal__check { width: 54px; height: 54px; margin: 0 auto 14px; color: #fff; background: #16a34a; border-radius: 50%; font-size: 34px; line-height: 54px; }
.ibx-market-modal__actions { display: flex; justify-content: center; gap: 12px; margin-top: 24px; }
.ibx-modal-open { overflow: hidden; }
.ibx-alert { position: fixed; z-index: 100001; top: 24px; left: 50%; display: grid; grid-template-columns: 42px minmax(0,1fr) 34px; gap: 14px; align-items: center; width: min(540px,calc(100% - 32px)); padding: 16px; opacity: 0; color: var(--ibx-market-ink); background: #fff; border: 1px solid var(--ibx-market-line); border-left: 5px solid #16a34a; border-radius: 6px; box-shadow: 0 18px 50px rgba(16,24,40,.2); transform: translate(-50%,-20px); transition: opacity .2s ease,transform .2s ease; pointer-events: none; }
.ibx-alert.is-visible { opacity: 1; transform: translate(-50%,0); pointer-events: auto; }
.ibx-alert--error { border-left-color: #dc2626; }
.ibx-alert__icon { width: 40px; height: 40px; color: #fff; background: #16a34a; border-radius: 50%; font-size: 24px; font-weight: 800; line-height: 40px; text-align: center; }
.ibx-alert--error .ibx-alert__icon { background: #dc2626; }
.ibx-alert__message { line-height: 1.45; }
.ibx-alert__close { width: 34px; height: 34px; padding: 0; color: var(--ibx-market-muted); background: transparent; border: 0; font-size: 25px; cursor: pointer; }
.ibx-marketplace-ui .woocommerce-notices-wrapper > .woocommerce-message,.ibx-marketplace-ui .woocommerce-notices-wrapper > .woocommerce-error,.ibx-marketplace-ui .woocommerce-notices-wrapper > .woocommerce-info { display: none !important; }
.ibx-checkout-shell { width: 100%; margin: 0 0 24px; }
.ibx-checkout-progress { display: grid; width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0 0 28px; padding: 0; overflow: hidden; list-style: none; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; counter-reset: steps; }
.ibx-checkout-progress li { position: relative; min-width: 0; padding: 16px 16px 16px 54px; color: var(--ibx-market-muted); border-bottom: 4px solid var(--ibx-market-line); font-weight: 700; }
.ibx-checkout-progress li + li { border-left: 1px solid var(--ibx-market-line); }
.ibx-checkout-progress li::before { counter-increment: steps; content: counter(steps); position: absolute; left: 16px; top: 11px; width: 32px; height: 32px; text-align: center; line-height: 32px; background: #eef2f6; border-radius: 50%; }
.ibx-checkout-progress li.is-active,.ibx-checkout-progress li.is-complete { color: var(--ibx-market-ink); border-color: var(--ibx-market-accent); }
.ibx-checkout-progress li.is-active::before,.ibx-checkout-progress li.is-complete::before { color: #fff; background: var(--ibx-market-accent); }
.ibx-checkout-account { margin: 0 0 18px; padding: 20px; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-step-title { margin: 0 0 6px; padding: 0; border: 0; background: transparent; font-size: 23px; }
.ibx-step-description { margin: 0 0 22px; color: var(--ibx-market-muted); }
.ibx-checkout-account.is-complete { display: flex; justify-content: space-between; gap: 20px; }
.ibx-google-login { margin: 18px 0; }
.ibx-google-login a { display: flex !important; justify-content: center; width: 100% !important; min-height: 48px; }
.ibx-google-login .nsl-button-svg-container svg { display: block; width: 20px; height: 20px; }
.ibx-marketplace-ui .ibx-account-login { width: min(100%, 520px); margin: 48px auto; padding: 36px; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; box-shadow: 0 8px 24px rgba(24,33,47,.06); }
.ibx-marketplace-ui .ibx-account-login h1 { margin: 0 0 10px; color: var(--ibx-market-ink); font-size: 26px; line-height: 1.25; }
.ibx-marketplace-ui .ibx-account-login p { margin: 0; color: var(--ibx-market-muted); font-size: 15px; line-height: 1.5; }
.ibx-marketplace-ui .ibx-account-login .ibx-google-login { margin: 24px 0 0; }
@media (max-width: 600px) { .ibx-marketplace-ui .ibx-account-login { margin: 24px auto; padding: 24px; } }
.ibx-checkout-divider { display: flex; align-items: center; gap: 12px; color: var(--ibx-market-muted); font-size: 13px; }
.ibx-checkout-divider::before,.ibx-checkout-divider::after { content: ""; height: 1px; flex: 1; background: var(--ibx-market-line); }
.ibx-marketplace-ui form.checkout { display: block !important; width: 100%; max-width: none; margin: 0; }
.ibx-marketplace-ui form.checkout .ibx-checkout-account { width: 100%; }
.ibx-marketplace-ui form.checkout .ibx-checkout-account #billing_email_field { max-width: 520px; margin: 18px 0 0; }
.ibx-marketplace-ui form.checkout .ibx-checkout-account #billing_email { width: 100%; }
.ibx-marketplace-ui form.checkout .ibx-checkout-account .ibx-step-navigation { margin-top: 16px; }
.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout #customer_details,.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout #order_review,.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout [data-ibx-step-title],.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout [data-ibx-step-description],.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout > .ibx-step-description { display: none !important; }
.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout .ibx-checkout-details-column,.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout .ibx-checkout-payment-column,.ibx-marketplace-ui[data-ibx-checkout-step="payment"] form.checkout .ibx-checkout-details-column { display: none !important; }
.ibx-marketplace-ui[data-ibx-checkout-step="account"] .woocommerce-form-coupon-toggle,.ibx-marketplace-ui[data-ibx-checkout-step="account"] form.checkout_coupon { display: none !important; }
.ibx-marketplace-ui[data-ibx-checkout-step="details"] form.checkout .ibx-checkout-account,.ibx-marketplace-ui[data-ibx-checkout-step="payment"] form.checkout .ibx-checkout-account { display: none !important; }
.ibx-marketplace-ui form.checkout .ibx-step-navigation:not(.ibx-step-navigation--start) { justify-content: space-between; gap: 12px; }
.ibx-marketplace-ui form.checkout .ibx-account-next { margin-left: auto !important; }
.ibx-marketplace-ui form.checkout #customer_details,.ibx-marketplace-ui form.checkout #order_review { float: none !important; width: 100% !important; margin: 0; padding: 26px; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-marketplace-ui form.checkout #customer_details .col-1,.ibx-marketplace-ui form.checkout #customer_details .col-2 { float: none !important; width: 100% !important; }
.ibx-marketplace-ui form.checkout #customer_details .col-2 { margin-top: 22px; }
.ibx-marketplace-ui form.checkout #order_review_heading { float: none !important; width: 100% !important; max-width: none; margin: 0 0 12px; }
.theme-flatsome.ibx-marketplace-ui form.checkout .ibx-checkout-steps-row { display: block !important; width: 100%; margin: 0 !important; }
.theme-flatsome.ibx-marketplace-ui form.checkout .ibx-checkout-steps-row > .col { width: 100% !important; max-width: 100% !important; flex-basis: 100% !important; padding: 0 !important; }
.theme-flatsome.ibx-marketplace-ui form.checkout .ibx-checkout-payment-column > .col-inner { width: 100%; padding: 0 !important; border: 0 !important; }
.theme-flatsome.ibx-marketplace-ui form.checkout:not(.ibx-show-payment) .ibx-checkout-payment-column { display: none !important; }
.theme-flatsome.ibx-marketplace-ui form.checkout.ibx-show-payment .ibx-checkout-details-column { display: none !important; }
.theme-flatsome.ibx-marketplace-ui form.checkout .woocommerce-checkout-review-order-table,.theme-flatsome.ibx-marketplace-ui form.checkout #payment { width: 100%; }
.ibx-marketplace-ui .woocommerce-form-coupon-toggle { width: 100%; margin: 18px 0 0; }
.ibx-marketplace-ui .woocommerce-form-coupon-toggle .woocommerce-info { margin: 0 !important; padding: 14px 16px !important; color: var(--ibx-market-ink); background: var(--ibx-market-soft); border: 1px solid var(--ibx-market-line); border-radius: 6px; font-size: 14px; }
.ibx-marketplace-ui .woocommerce-form-coupon-toggle .showcoupon { color: var(--ibx-market-accent); font-weight: 700; text-decoration: none; }
.ibx-marketplace-ui form.checkout_coupon { display: grid !important; width: 100%; grid-template-columns: minmax(0,1fr) auto; gap: 10px; margin: 10px 0 22px !important; padding: 16px !important; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-marketplace-ui form.checkout_coupon > p:first-child { display: none; }
.ibx-marketplace-ui form.checkout_coupon .form-row { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
.ibx-marketplace-ui form.checkout_coupon input[name="coupon_code"] { width: 100%; height: 44px; margin: 0 !important; padding: 0 13px; background: #fff; border: 1px solid #bfc8d4; border-radius: 4px; box-shadow: none; }
.ibx-marketplace-ui form.checkout_coupon button { width: auto; min-width: 150px; height: 44px; margin: 0 !important; padding: 0 18px; color: #fff !important; background: var(--ibx-market-accent) !important; border: 0; border-radius: 4px !important; font-weight: 700; }
.theme-flatsome.ibx-marketplace-ui .checkout-sidebar .coupon,.theme-flatsome.ibx-marketplace-ui .checkout-sidebar .coupon-form,.theme-flatsome.ibx-marketplace-ui .cart-sidebar .coupon,.theme-flatsome.ibx-marketplace-ui .cart-sidebar .coupon-form { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--ibx-market-line); }
.theme-flatsome.ibx-marketplace-ui .checkout-sidebar .coupon h3,.theme-flatsome.ibx-marketplace-ui .cart-sidebar .coupon h3 { margin: 0 0 12px; font-size: 16px; text-transform: none; }
.theme-flatsome.ibx-marketplace-ui .checkout-sidebar .coupon input,.theme-flatsome.ibx-marketplace-ui .cart-sidebar .coupon input { height: 44px; margin: 0 0 10px; border: 1px solid #bfc8d4; border-radius: 4px; box-shadow: none; }
.theme-flatsome.ibx-marketplace-ui .checkout-sidebar .coupon button,.theme-flatsome.ibx-marketplace-ui .cart-sidebar .coupon button { width: 100%; min-height: 44px; margin: 0; color: #fff; background: var(--ibx-market-accent); border: 0; border-radius: 4px; font-weight: 700; }
.ibx-marketplace-ui form.checkout:not(.ibx-show-payment) #order_review,.ibx-marketplace-ui form.checkout:not(.ibx-show-payment) #order_review_heading,.ibx-marketplace-ui form.checkout:not(.ibx-show-payment) [data-ibx-step-title="payment"] { display: none; }
.ibx-marketplace-ui form.checkout:not(.ibx-show-payment) [data-ibx-step-description="payment"] { display: none; }
.ibx-marketplace-ui form.checkout.ibx-show-payment #customer_details,.ibx-marketplace-ui form.checkout.ibx-show-payment [data-ibx-step-title="details"],.ibx-marketplace-ui form.checkout.ibx-show-payment [data-ibx-step-title="details"] + .ibx-step-description { display: none; }
.ibx-step-navigation { display: flex; align-items: center; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--ibx-market-line); }
.ibx-step-navigation--end { justify-content: flex-end; }
.ibx-step-navigation--start { justify-content: flex-start; margin: 0 0 22px; padding: 0 0 18px; border-top: 0; border-bottom: 1px solid var(--ibx-market-line); }
.ibx-step-navigation .button { margin: 0 !important; }
.ibx-single-quantity-one form.cart .quantity,.ibx-marketplace-product form.cart .quantity { display: none !important; }
.ibx-fixed-quantity { display: inline-grid; place-items: center; min-width: 34px; min-height: 34px; color: var(--ibx-market-muted); background: var(--ibx-market-soft); border: 1px solid var(--ibx-market-line); border-radius: 4px; font-weight: 700; }
.ibx-marketplace-ui .woocommerce-cart-form,.ibx-marketplace-ui .cart_totals,.ibx-marketplace-ui .woocommerce-MyAccount-content { padding: 22px; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-marketplace-licenses .shop_table th { color: var(--ibx-market-muted); font-size: 12px; text-transform: uppercase; }
.ibx-marketplace-licenses .shop_table td { vertical-align: middle; }
.ibx-marketplace-licenses .shop_table code { padding: 5px 8px; color: var(--ibx-market-ink); background: var(--ibx-market-soft); }
.ibx-builder-catalog { display: grid; grid-template-columns: repeat(var(--ibx-catalog-columns,3),minmax(0,1fr)); gap: 24px; width: 100%; }
.ibx-wporg-featured { width: 100%; overflow: hidden; color: var(--ibx-market-ink); background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-wporg-featured__media { display: block; width: 100%; background: #f2f7f8; }
.ibx-wporg-featured__media img { display: block; width: 100%; height: auto; aspect-ratio: 772 / 250; margin: 0; object-fit: cover; }
.ibx-wporg-featured__media--icon { display: grid; min-height: 180px; place-items: center; }
.ibx-wporg-featured__media--icon img { width: 128px; height: 128px; aspect-ratio: 1; object-fit: contain; }
.ibx-wporg-featured__placeholder { display: grid; min-height: 150px; place-items: center; color: #31527d; background: #f2f7f8; font-size: 22px; font-weight: 700; }
.ibx-wporg-featured__body { padding: 24px; }
.ibx-wporg-featured__eyebrow { margin: 0 0 12px; color: #167044; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.ibx-wporg-featured__bottom { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.ibx-wporg-featured__copy { min-width: 0; max-width: 72ch; }
.ibx-wporg-featured__copy h2 { margin: 0 0 10px; color: var(--ibx-market-ink); font-size: 26px; line-height: 1.25; }
.ibx-wporg-featured__copy p { margin: 0; color: var(--ibx-market-muted); font-size: 15px; line-height: 1.55; }
.ibx-wporg-featured .ibx-wporg-featured__button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; flex: 0 0 auto; margin: 0; padding: 10px 18px; color: #fff; background: var(--ibx-market-accent); border-radius: 4px; text-decoration: none; }
@media (max-width: 600px) { .ibx-wporg-featured__body { padding: 18px; } .ibx-wporg-featured__bottom { align-items: stretch; flex-direction: column; gap: 18px; } .ibx-wporg-featured__copy h2 { font-size: 21px; } .ibx-wporg-featured .ibx-wporg-featured__button { width: 100%; } }
.ibx-catalog-card { display: flex; min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; box-shadow: 0 8px 24px rgba(24,33,47,.06); }
.ibx-catalog-card--grid { flex-direction: column; }
.ibx-catalog-card--list { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(180px,28%) minmax(0,1fr); }
.ibx-catalog-card__image { display: block; background: var(--ibx-market-soft); }
.ibx-catalog-card__image img { display: block; width: 100%; height: 100%; max-height: 260px; margin: 0; object-fit: cover; aspect-ratio: 16 / 10; }
.ibx-catalog-card__content { display: flex; flex: 1; flex-direction: column; min-width: 0; padding: 20px; }
.ibx-catalog-card__labels { display: flex; flex-wrap: wrap; gap: 6px; min-height: 24px; }
.ibx-catalog-card__labels span { padding: 3px 7px; color: #344054; background: #eef2f6; border-radius: 3px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.ibx-catalog-card h3 { margin: 10px 0 8px; font-size: 18px; line-height: 1.35; }
.ibx-catalog-card h3 a { color: var(--ibx-market-ink); text-decoration: none; }
.ibx-catalog-card__excerpt,.ibx-catalog-card__support { margin: 0 0 12px; color: var(--ibx-market-muted); font-size: 14px; }
.ibx-catalog-card__support::before { content: "\2713"; margin-right: 7px; color: #15803d; font-weight: 800; }
.ibx-catalog-card__footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--ibx-market-line); }
.ibx-catalog-card__price { color: var(--ibx-market-ink); font-size: 20px; font-weight: 700; }
.ibx-catalog-card__price del { color: var(--ibx-market-muted); font-size: 13px; }
.ibx-builder-purchase { max-width: 480px; padding: 24px; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; }
.ibx-builder-purchase__price { margin: 0 0 8px; color: var(--ibx-market-ink); font-size: 28px; font-weight: 800; }
.ibx-builder-purchase__support { color: var(--ibx-market-muted); }
.ibx-builder-purchase .button { width: 100%; text-align: center; }
.ibx-builder-features ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; padding: 0; list-style: none; }
.ibx-builder-features li::before { content: "\2713"; margin-right: 8px; color: #15803d; font-weight: 800; }
/* Flatsome product boxes and UX Builder previews. */
.theme-flatsome .ibx-builder-catalog .button,.theme-flatsome .ibx-builder-purchase .button { min-height: 40px; margin: 0; line-height: 40px; }
.theme-flatsome .ibx-catalog-card p { margin-bottom: 12px; }
.theme-flatsome .off-canvas-cart .ibx-market-modal { font-size: 16px; }
/* Elementor product/archive templates retain their own section widths. */
.elementor-page .ibx-builder-catalog,.elementor-location-single .ibx-builder-catalog { max-width: 100%; }
.elementor-widget-ibx-marketplace-catalog .ibx-builder-catalog,.elementor-widget-ibx-marketplace-purchase .ibx-builder-purchase { font-family: inherit; }

/* Compact addon cards used by both WooCommerce and Flatsome related products. */
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product { display: grid !important; grid-template-columns: minmax(0,1fr) auto; align-content: start; padding: 20px !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .woocommerce-loop-product__link { display: block; grid-column: 1 / -1; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .woocommerce-loop-product__link > img,.ibx-marketplace-ui .related.products .ibx-no-product-image > a > img.woocommerce-placeholder { display: block !important; width: calc(100% + 40px); max-width: none; height: 150px !important; margin: -20px -20px 18px !important; padding: 28px !important; object-fit: contain !important; background: var(--ibx-market-soft); }
.ibx-marketplace-ui .related.products .ibx-no-product-image > a::before { content: none !important; display: none !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .ibx-market-badge { position: static; display: inline-flex; margin: 0 0 10px !important; padding: 5px 8px; color: #344054; background: #eef2f6; border-radius: 3px; font-size: 11px; text-transform: uppercase; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .woocommerce-loop-product__title { min-height: 0; margin: 0 0 8px !important; color: var(--ibx-market-ink); font-size: 18px !important; line-height: 1.35; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .ibx-market-card-meta { display: block; min-height: 0; grid-column: 1 / -1; margin: 0 !important; padding: 0 0 16px; border: 0; border-bottom: 1px solid var(--ibx-market-line); }
.ibx-market-card-excerpt { margin: 0 0 12px; color: var(--ibx-market-muted); font-size: 14px; line-height: 1.55; }
.ibx-market-card-support { margin: 0; color: var(--ibx-market-muted); font-size: 14px; line-height: 1.45; }
.ibx-market-card-support span { color: #15803d; font-weight: 800; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .price { align-self: center; margin: 0 !important; padding: 18px 14px 0 0; border: 0; font-size: 20px !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .button:not(.ibx-related-view) { display: none !important; }
.ibx-marketplace-ui .related.products .ibx-related-view { align-self: end; margin: 18px 0 0 !important; padding: 12px 18px !important; border-radius: 0 !important; background: #111 !important; line-height: 1.2; text-align: center; }

.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.box { display: block; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image { display: block !important; width: 100%; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image img,.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-no-product-image .box-image img { display: block !important; width: 100%; height: 150px !important; margin: 0 !important; padding: 28px !important; object-fit: contain !important; background: var(--ibx-market-soft); }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-no-product-image .box-image a::before { content: none !important; display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text { display: grid; grid-template-columns: minmax(0,1fr) auto; align-content: start; padding: 20px !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text::before { content: none; display: none; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .category,.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text .ibx-market-badge { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .name { min-height: 0; grid-column: 1 / -1; margin: 0 0 8px !important; font-size: 18px; line-height: 1.35; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-market-card-meta { display: block; min-height: 0; grid-column: 1 / -1; margin: 0 !important; padding: 0 0 16px; border: 0; border-bottom: 1px solid var(--ibx-market-line); }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price-wrapper { align-self: stretch; margin: 0 !important; padding: 18px 14px 0 0; border: 0; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price { margin: 0; font-size: 20px; line-height: 1.25; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .add-to-cart-button { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-related-view { align-self: end; margin: 18px 0 0 !important; padding: 12px 18px !important; border-radius: 0 !important; background: #111 !important; color: #fff !important; line-height: 1.2; text-align: center; }

/* Final related-card renderer: isolates the layout from theme-specific markup. */
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product { display: block !important; padding: 0 !important; overflow: visible; background: transparent; border: 0; box-shadow: none; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product:hover { border: 0; box-shadow: none; transform: none; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > :not(.ibx-related-custom-card) { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-marketplace-product > .box { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-marketplace-product { display: flex; }
.ibx-related-custom-card { display: flex; width: 100%; min-width: 0; min-height: 100%; padding: 20px; flex-direction: column; text-align: left; background: #fff; border: 1px solid var(--ibx-market-line); border-radius: 6px; box-shadow: 0 6px 20px rgba(24,33,47,.05); transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.ibx-related-custom-card:hover { border-color: #b8c4d4; box-shadow: 0 12px 28px rgba(24,33,47,.1); transform: translateY(-2px); }
.ibx-related-custom-card__badge { align-self: flex-start; margin: 0 0 10px; padding: 5px 8px; color: #344054; background: #eef2f6; border-radius: 3px; font-size: 11px; font-weight: 700; line-height: 1.2; text-transform: uppercase; }
.ibx-related-custom-card h3 { min-height: 49px; margin: 0 0 8px; padding: 0; font-size: 18px; line-height: 1.35; letter-spacing: 0; }
.ibx-related-custom-card h3 a { color: var(--ibx-market-ink); text-decoration: none; }
.ibx-related-custom-card__excerpt { min-height: 66px; margin: 0 0 12px; color: var(--ibx-market-muted); font-size: 14px; line-height: 1.55; }
.ibx-related-custom-card__support { margin: 0 0 16px; color: var(--ibx-market-muted); font-size: 14px; line-height: 1.45; }
.ibx-related-custom-card__support span { color: #15803d; font-weight: 800; }
.ibx-related-custom-card footer { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; align-items: center; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--ibx-market-line); }
.ibx-related-custom-card__price { min-width: 0; color: var(--ibx-market-ink); font-size: 20px; font-weight: 750; line-height: 1.3; }
.ibx-related-custom-card__price .mpa-subscription-badge { display: none !important; }
.ibx-related-custom-card .ibx-related-view { display: inline-flex !important; min-height: 44px; align-items: center; justify-content: center; margin: 0 !important; padding: 11px 18px !important; color: #fff !important; background: #111 !important; border: 0 !important; border-radius: 0 !important; font-size: 13px; font-weight: 700; line-height: 1.2; text-align: center; text-transform: uppercase; white-space: nowrap; }

/* Native related products: visual styling only, without replacing theme markup. */
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product { display: flex !important; min-height: 260px; padding: 20px !important; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid var(--ibx-market-line); box-shadow: 0 6px 20px rgba(24,33,47,.05); }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product:hover { border-color: #b8c4d4; box-shadow: 0 12px 28px rgba(24,33,47,.1); transform: translateY(-2px); }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .woocommerce-loop-product__link { display: block !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .woocommerce-loop-product__link > img { display: none !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .woocommerce-loop-product__title { min-height: 49px; margin: 0 0 12px !important; font-size: 18px !important; line-height: 1.35; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product .ibx-market-card-meta { display: block !important; min-height: 48px; margin: 0 !important; padding: 0 0 14px; color: var(--ibx-market-muted); border: 0; font-size: 14px; line-height: 1.45; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .price { display: block !important; width: 100%; margin: auto 0 0 !important; padding: 16px 0 0; border-top: 1px solid var(--ibx-market-line); font-size: 20px !important; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product > .button:not(.ibx-related-view) { display: inline-flex !important; width: 100%; min-height: 42px; align-items: center; justify-content: center; margin: 14px 0 0 !important; }

.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-marketplace-product { display: flex; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-marketplace-product > .box { display: flex !important; width: 100%; min-height: 260px; flex-direction: column; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image { display: block !important; width: 100%; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-image img { display: block !important; width: 100%; height: auto !important; aspect-ratio: 1 / 1; margin: 0 !important; padding: 0 !important; object-fit: cover !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text { display: flex !important; width: 100%; min-height: 260px; padding: 20px !important; flex: 1; flex-direction: column; text-align: left; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .box-text::before { content: none; display: none; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .category { display: block !important; margin: 0 0 8px !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .title-wrapper { width: 100%; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .name { min-height: 49px; margin: 0 0 12px !important; font-size: 18px; line-height: 1.35; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .ibx-market-card-meta { display: block !important; min-height: 48px; margin: 0 !important; padding: 0 0 14px; color: var(--ibx-market-muted); border: 0; font-size: 14px; line-height: 1.45; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price-wrapper { display: block; width: 100%; margin: 8px 0 0 !important; padding: 16px 0 0; border-top: 1px solid var(--ibx-market-line); text-align: left; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .price-wrapper .price { display: block; margin: 0 !important; padding: 0; text-align: left; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .add-to-cart-button { display: block !important; width: 100%; margin: 14px 0 0; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .add-to-cart-button .button { display: flex; width: 100%; min-height: 42px; align-items: center; justify-content: center; margin: 0; }

/* Compact fallback used only until the WooCommerce product gets a featured image. */
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product.ibx-no-product-image::before { content: "INOBARIX"; display: flex; width: calc(100% + 40px); height: 88px; align-items: center; justify-content: center; margin: -20px -20px 18px; color: #31527d; background: #f1f5f9; border-bottom: 1px solid var(--ibx-market-line); font-size: 12px; font-weight: 750; letter-spacing: 0; }
.ibx-marketplace-ui .related.products li.product.ibx-marketplace-product.ibx-no-product-image > .woocommerce-loop-product__link > img { display: none !important; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-no-product-image > .box::before { content: "INOBARIX"; display: flex; width: 100%; height: 88px; flex: 0 0 88px; align-items: center; justify-content: center; color: #31527d; background: #f1f5f9; border-bottom: 1px solid var(--ibx-market-line); font-size: 12px; font-weight: 750; letter-spacing: 0; }
.theme-flatsome.ibx-marketplace-ui .related-products-wrapper .product-small.ibx-no-product-image .box-image { display: none !important; }
@media (max-width: 900px) { .ibx-marketplace-ui .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); } .ibx-market-details { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .ibx-builder-catalog { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { .ibx-marketplace-ui .woocommerce ul.products,.ibx-builder-catalog { grid-template-columns: 1fr; } .ibx-catalog-card--list { grid-template-columns: 1fr; } .ibx-market-details ul,.ibx-builder-features ul { grid-template-columns: 1fr; } .ibx-market-details nav,.ibx-market-modal__actions { flex-direction: column; } .ibx-checkout-progress li { padding: 40px 4px 8px; text-align: center; font-size: 12px; } .ibx-checkout-progress li::before { left: 50%; transform: translateX(-50%); } .ibx-checkout-account.is-complete,.ibx-catalog-card__footer { flex-direction: column; align-items: stretch; } .ibx-marketplace-ui form.checkout #customer_details,.ibx-marketplace-ui form.checkout #order_review { padding: 18px; } .ibx-step-navigation .button { width: 100%; white-space: normal; } .ibx-alert { top: 12px; } .ibx-related-custom-card footer { grid-template-columns: 1fr; } .ibx-related-custom-card .ibx-related-view { width: 100%; } .ibx-marketplace-ui form.checkout_coupon { grid-template-columns: 1fr; } .ibx-marketplace-ui form.checkout_coupon button { width: 100%; } }
