/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* =========================================================
   Global
========================================================= */

html {
    scroll-behavior: smooth !important;
}

#main-content,
#main-content .wd-content-area {
    padding-top: 0 !important;
}


/* =========================================================
   Product gallery
========================================================= */

.woocommerce-product-gallery .woocommerce-product-gallery__image,
.woocommerce-product-gallery .woocommerce-product-gallery__image img {
    border-radius: 11px !important;
    overflow: hidden;
}


/* =========================================================
   Shop / product archive cleanup
========================================================= */

.page-description,
.shop-loop-head {
    display: none;
}

/* Disable WoodMart product hover effects */
.product-grid-item:hover,
.wd-product:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* Remove WoodMart compare + wishlist buttons on products */
.wd-product .wd-buttons,
.product-grid-item .wd-buttons {
    display: none !important;
}

/* Keep product add button/content visible */
.product-grid-item .wd-add-btn,
.product-grid-item .hover-content,
.wd-product .wd-add-btn,
.wd-product .hover-content {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Product card spacing */
.woocommerce-shop .uicore-zoom-wrapper,
.post-type-archive-product .uicore-zoom-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Product name */
.woocommerce-shop .wd-product .wd-entities-title,
.woocommerce-shop .wd-product .wd-entities-title a,
.post-type-archive-product .wd-product .wd-entities-title,
.post-type-archive-product .wd-product .wd-entities-title a {
    color: #141414 !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
}

/* Product price */
.woocommerce-shop .wd-product .price,
.woocommerce-shop .wd-product .price .amount,
.woocommerce-shop .wd-product .price bdi,
.woocommerce-shop .wd-product .price .woocommerce-Price-currencySymbol,
.post-type-archive-product .wd-product .price,
.post-type-archive-product .wd-product .price .amount,
.post-type-archive-product .wd-product .price bdi,
.post-type-archive-product .wd-product .price .woocommerce-Price-currencySymbol {
    color: #141414 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
}

/* Product button */
.woocommerce-shop .wd-product .wd-add-btn a,
.post-type-archive-product .wd-product .wd-add-btn a {
    height: 50px !important;
    min-height: 50px !important;
    padding: 12px 24px !important;
    background: #0CBBC0 !important;
    color: #141414 !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: none !important;
}

/* Product button text */
.woocommerce-shop .wd-product .wd-add-btn a span,
.post-type-archive-product .wd-product .wd-add-btn a span {
    color: inherit !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

/* Product button hover */
.woocommerce-shop .wd-product .wd-add-btn a:hover,
.post-type-archive-product .wd-product .wd-add-btn a:hover {
    background: #163642 !important;
    color: #ffffff !important;
}

/* Remove WoodMart replace-button hover animation */
.woocommerce-shop .wd-product .wd-add-btn-replace a,
.post-type-archive-product .wd-product .wd-add-btn-replace a,
.woocommerce-shop .wd-product .wd-add-btn-replace a span,
.post-type-archive-product .wd-product .wd-add-btn-replace a span {
    transform: none !important;
}

/* Remove WoodMart cart icon / hover icon from product loop button */
.woocommerce-shop .wd-product .wd-add-btn a::before,
.woocommerce-shop .wd-product .wd-add-btn a::after,
.post-type-archive-product .wd-product .wd-add-btn a::before,
.post-type-archive-product .wd-product .wd-add-btn a::after,
.woocommerce-shop .wd-product .wd-add-btn a span::before,
.woocommerce-shop .wd-product .wd-add-btn a span::after,
.post-type-archive-product .wd-product .wd-add-btn a span::before,
.post-type-archive-product .wd-product .wd-add-btn a span::after {
    display: none !important;
    content: none !important;
}


/* =========================================================
   Header cart
========================================================= */

.whb-header .wd-header-cart > a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #141414 !important;
    text-decoration: none !important;
}

/* Hide WoodMart default cart icon */
.whb-header .wd-header-cart .wd-tools-icon::before,
.whb-header .wd-header-cart .wd-tools-icon::after {
    display: none !important;
    content: none !important;
}

/* Custom Figma cart icon */
.whb-header .wd-header-cart .wd-tools-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.22266 21.8055C7.22266 22.3212 7.42752 22.8158 7.79217 23.1805C8.15683 23.5451 8.6514 23.75 9.1671 23.75C9.6828 23.75 10.1774 23.5451 10.542 23.1805C10.9067 22.8158 11.1115 22.3212 11.1115 21.8055C11.1115 21.2898 10.9067 20.7953 10.542 20.4306C10.1774 20.066 9.6828 19.8611 9.1671 19.8611C8.6514 19.8611 8.15683 20.066 7.79217 20.4306C7.42752 20.7953 7.22266 21.2898 7.22266 21.8055Z' stroke='%23141414' stroke-width='1.45833' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.9141 21.8055C17.9141 22.3212 18.1189 22.8158 18.4836 23.1805C18.8482 23.5451 19.3428 23.75 19.8585 23.75C20.3742 23.75 20.8688 23.5451 21.2334 23.1805C21.5981 22.8158 21.803 22.3212 21.803 21.8055C21.803 21.2898 21.5981 20.7953 21.2334 20.4306C20.8688 20.066 20.3742 19.8611 19.8585 19.8611C19.3428 19.8611 18.8482 20.066 18.4836 20.4306C18.1189 20.7953 17.9141 21.2898 17.9141 21.8055Z' stroke='%23141414' stroke-width='1.45833' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19.8616 19.8611H9.1671V6.25H7.22266' stroke='%23141414' stroke-width='1.45833' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.16406 8.19443L22.7752 9.16665L21.803 15.9722H9.16406' stroke='%23141414' stroke-width='1.45833' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 30px 30px !important;
}

/* Hide WoodMart number badge over the icon */
.whb-header .wd-header-cart .wd-tools-icon .wd-tools-count,
.whb-header .wd-header-cart .wd-tools-icon .wd-cart-number {
    display: none !important;
}

/* Cart text */
.whb-header .wd-header-cart .wd-tools-text {
    display: inline-flex !important;
    align-items: center !important;
    color: #141414 !important;
    font-size: 14px !important;
    text-transform: capitalize;
    font-weight: 500 !important;
    line-height: 1 !important;
}

/* Hide subtotal/divider */
.whb-header .wd-header-cart .wd-cart-subtotal,
.whb-header .wd-header-cart .subtotal-divider {
    display: none !important;
}

@media (max-width: 1024px) {
    .whb-header .wd-header-cart > a {
        gap: 6px !important;
    }

    .whb-header .wd-header-cart .wd-tools-text {
        display: inline-flex !important;
    }
}


/* =========================================================
   Header hamburger
========================================================= */

/* Replace WoodMart hamburger icon with Figma icon */
.whb-header .wd-header-mobile-nav .wd-tools-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 8.75H8.75M25 8.75H13.75' stroke='%23163642' stroke-width='1.875' stroke-linecap='round'/%3E%3Cpath d='M25 21.25H21.25M5 21.25H16.25' stroke='%23163642' stroke-width='1.875' stroke-linecap='round'/%3E%3Cpath d='M5 15H8.75H25' stroke='%23163642' stroke-width='1.875' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 30px 30px !important;
}

.whb-header .wd-header-mobile-nav .wd-tools-icon::before,
.whb-header .wd-header-mobile-nav .wd-tools-icon::after {
    display: none !important;
    content: none !important;
}

.whb-header .wd-header-mobile-nav .wd-tools-text {
    display: none !important;
}

.ra-mobile-menu-trigger {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ra-mobile-menu-trigger svg {
    width: 30px;
    height: 30px;
    display: block;
}

@media (max-width: 1024px) {
    .whb-header .wd-header-mobile-nav {
        display: none !important;
    }
}


/* =========================================================
   Mobile menu popup text
========================================================= */

.ra-mobile-menu-popup,
.ra-mobile-menu-popup * {
    text-transform: none !important;
}


/* =========================================================
   WoodMart fullscreen popup ID 1573
========================================================= */

html body .wd-mfp-popup-wrap-1573,
html body .wd-mfp-popup-wrap-1573 .mfp-container {
    position: fixed !important;
    inset: 0 !important;
}

html body .wd-mfp-popup-wrap-1573,
html body .wd-mfp-popup-wrap-1573 .mfp-container,
html body .wd-mfp-popup-wrap-1573 .mfp-content,
html body .wd-mfp-popup-wrap-1573 .wd-popup-wrap,
html body #popup-1573 {
    width: 100vw !important;
    height: 100dvh !important;
    max-width: 100vw !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #FAFAFA !important;
}

html body .wd-mfp-popup-wrap-1573,
html body #popup-1573,
html body #popup-1573 .ra-mobile-menu-popup {
    overflow: hidden !important;
}

html body .wd-mfp-popup-wrap-1573 .wd-popup-wrap {
    transform: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    animation-duration: 0.22s !important;
    transition-duration: 0.22s !important;
}

html body #popup-1573 .wd-popup-inner,
html body #popup-1573 .wd-entry-content,
html body #popup-1573 .elementor,
html body #popup-1573 .elementor-1573,
html body #popup-1573 .elementor-element-67288fd,
html body #popup-1573 .e-con-inner,
html body #popup-1573 .elementor-widget-html,
html body #popup-1573 .elementor-widget-container {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #popup-1573 .ra-mobile-menu-popup {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #FAFAFA !important;
}

/* Fix inner Elementor boxed container */
html body #popup-1573 .elementor-element-67288fd.e-con-boxed > .e-con-inner {
    width: 100vw !important;
    max-width: 100vw !important;
    padding: 0 !important;
}

/* Popup header */
html body #popup-1573 .ra-menu-header {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 56px !important;
    padding: 10px 16px !important;
    margin: 0 !important;
}

/* Popup menu lists */
html body #popup-1573 .ra-menu-list,
html body #popup-1573 .ra-menu-back,
html body #popup-1573 .ra-product-menu-list {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
}

html body #popup-1573 .ra-menu-list {
    margin: 12px !important;
    gap: 10px !important;
}

html body #popup-1573 .ra-menu-back,
html body #popup-1573 .ra-product-menu-list {
    margin: 12px 12px 0 !important;
}

html body #popup-1573 .ra-product-menu-list {
    gap: 10px !important;
}


/* =========================================================
   WoodMart popup overlay / closing fixes
========================================================= */

/* Remove WoodMart/Magnific dark overlay flash */
html body .mfp-bg,
html body .mfp-wrap.wd-mfp-popup-wrap-1573::before {
    background: transparent !important;
    opacity: 0 !important;
}

/* Make sure transparent overlay never catches clicks */
html body .mfp-bg {
    pointer-events: none !important;
}

/* Remove lingering white screen when closing WoodMart popup */
html body .wd-mfp-popup-wrap-1573.mfp-removing,
html body .wd-mfp-popup-wrap-1573.mfp-removing .mfp-container,
html body .wd-mfp-popup-wrap-1573.mfp-removing .mfp-content,
html body .wd-mfp-popup-wrap-1573.mfp-removing .wd-popup-wrap,
html body .wd-mfp-popup-wrap-1573.mfp-removing #popup-1573,
html body .wd-mfp-popup-wrap-1573.mfp-removing .ra-mobile-menu-popup {
    opacity: 0 !important;
    visibility: hidden !important;
    transition: none !important;
    animation: none !important;
    background: transparent !important;
}

/* Disable close animation */
html body .wd-mfp-popup-wrap-1573.mfp-removing .wd-animation,
html body .wd-mfp-popup-wrap-1573.mfp-removing .wd-animated {
    animation: none !important;
    transition: none !important;
    transform: none !important;
}

/* Stop closing WoodMart popup from blocking clicks */
html.ra-popup-closing .wd-mfp-popup-wrap-1573,
html.ra-popup-closing .wd-mfp-popup-wrap-1573 *,
html body .mfp-wrap.mfp-removing,
html body .mfp-wrap.mfp-removing *,
html body .wd-mfp-popup-wrap-1573.mfp-removing,
html body .wd-mfp-popup-wrap-1573.mfp-removing *,
html body .mfp-bg.mfp-removing {
    pointer-events: none !important;
}

/* Hide popup instantly while custom closing class is active */
html.ra-popup-closing .wd-mfp-popup-wrap-1573,
html.ra-popup-closing .wd-mfp-popup-wrap-1573 * {
    opacity: 0 !important;
    visibility: hidden !important;
    transition: none !important;
    animation: none !important;
    background: transparent !important;
}


/* =========================================================
   Mobile menu submenu animation
========================================================= */

#popup-1573 .ra-mobile-menu-popup {
    position: relative;
    overflow: hidden !important;
}

#popup-1573 .ra-menu-screen {
    display: block !important;
    position: absolute;
    inset: 0;
    width: 100%;
    min-height: 100%;
    background: #FAFAFA;
    opacity: 0;
    pointer-events: none;
    transform: translateX(24px);
    transition:
        opacity 0.25s ease,
        transform 0.25s ease;
}

#popup-1573 .ra-menu-screen.is-active {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
    z-index: 2;
}

#popup-1573 .ra-menu-main.is-leaving {
    opacity: 0;
    pointer-events: none;
    transform: translateX(-24px);
    z-index: 1;
}

#popup-1573 .ra-menu-products {
    transform: translateX(32px);
}

#popup-1573 .ra-menu-products.is-active {
    transform: translateX(0);
}
/* Make closing popup unable to block clicks */
html.ra-popup-closing .wd-mfp-popup-wrap-1573,
html.ra-popup-closing .wd-mfp-popup-wrap-1573 *,
html.ra-popup-closing .mfp-bg,
html body .wd-mfp-popup-wrap-1573.mfp-removing,
html body .wd-mfp-popup-wrap-1573.mfp-removing *,
html body .mfp-wrap.mfp-removing,
html body .mfp-wrap.mfp-removing *,
html body .mfp-bg.mfp-removing {
    pointer-events: none !important;
}

/* Hide it immediately while closing */
html.ra-popup-closing .wd-mfp-popup-wrap-1573,
html.ra-popup-closing .mfp-bg,
html body .wd-mfp-popup-wrap-1573.mfp-removing,
html body .mfp-bg.mfp-removing {
    opacity: 0 !important;
    visibility: hidden !important;
    background: transparent !important;
    transition: none !important;
    animation: none !important;
}
/* Prevent popup content/logo flash before menu is fully visible */
html body .wd-mfp-popup-wrap-1573:not(.mfp-ready) #popup-1573,
html body .wd-mfp-popup-wrap-1573:not(.mfp-ready) .wd-popup-wrap,
html body .wd-mfp-popup-wrap-1573:not(.mfp-ready) .ra-mobile-menu-popup {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Hide popup content while WoodMart is preparing animation */
html body .wd-mfp-popup-wrap-1573 .wd-popup-wrap:not(.wd-animation-ready) #popup-1573,
html body .wd-mfp-popup-wrap-1573 .wd-popup-wrap:not(.wd-animation-ready) .ra-mobile-menu-popup {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Show only after WoodMart marks popup as ready */
html body .wd-mfp-popup-wrap-1573.mfp-ready .wd-popup-wrap.wd-animation-ready #popup-1573,
html body .wd-mfp-popup-wrap-1573.mfp-ready .wd-popup-wrap.wd-animation-ready .ra-mobile-menu-popup {
    opacity: 1 !important;
    visibility: visible !important;
}
/* =========================================================
   Header breadcrumbs
========================================================= */

.ra-header-breadcrumbs {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    color: #1A1A1A;
    font-size: 13px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
    padding: 10px 0;
}

.ra-header-breadcrumbs a,
.ra-header-breadcrumbs span {
    font-size: 13px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
    text-decoration: none;
    word-wrap: break-word;
}

.ra-breadcrumb-home {
    color: #1A1A1A !important;
}

.ra-breadcrumb-current {
    color: #767676 !important;
}

.ra-breadcrumb-separator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
}

.ra-breadcrumb-separator svg {
    display: block;
    width: 16px;
    height: 16px;
}

/* Hide whole WoodMart breadcrumb row when empty or homepage */
body.ra-no-breadcrumbs .whb-header-bottom,
.whb-header-bottom.ra-hide-breadcrumb-row {
    display: none !important;
}

/* Desktop spacing */
.whb-header-bottom .wd-header-text {
    width: 100%;
}

/* Mobile */
@media (max-width: 767px) {
    .ra-header-breadcrumbs {
        padding: 8px 16px;
        max-width: 100%;
        overflow-x: auto;
        white-space: nowrap;
        scrollbar-width: none;
    }

    .ra-header-breadcrumbs::-webkit-scrollbar {
        display: none;
    }
}
.woodmart-nav-link{
font-weight: 500!important;
}
/* =========================================================
   4Revi checkout layout
========================================================= */

body.woocommerce-checkout {
    background: #FAFAFA !important;
}

body.woocommerce-checkout .wd-page-content,
body.woocommerce-checkout .main-page-wrapper,
body.woocommerce-checkout #main-content,
body.woocommerce-checkout .wd-content-area {
    background: #FAFAFA !important;
}

body.woocommerce-checkout #main-content {
    padding-top: 40px !important;
    padding-bottom: 100px !important;
}

body.woocommerce-checkout .container {
    max-width: 1140px !important;
}

.ra-checkout-layout {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 40px;
}

.ra-checkout-left {
    width: 600px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.ra-checkout-summary {
    width: 433px;
    flex: 0 0 433px;
    position: sticky;
    top: 110px;
}

.ra-checkout-card,
.ra-checkout-summary-inner {
    width: 100%;
    background: #ffffff;
    border: 1px solid #ECECEC;
    border-radius: 8px;
    padding: 24px;
    overflow: hidden;
}

.ra-checkout-card {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.ra-checkout-summary-inner {
    border: none;
}

.ra-checkout-title,
.ra-checkout-summary-title {
    margin: 0;
    color: #141414;
    font-size: 18px;
    font-family: Inter, sans-serif;
    font-weight: 500;
    line-height: 1.3;
}

/* Hide duplicate/default WooCommerce headings and sections */
.woocommerce-billing-fields > h3,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
#order_review_heading,
.ra-checkout-buyer-card .woocommerce-billing-fields > h3,
.ra-checkout-buyer-card .woocommerce-shipping-fields,
.ra-checkout-buyer-card .woocommerce-additional-fields {
    display: none !important;
}

/* Hide WooCommerce attribution wrapper */
wc-order-attribution-inputs {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Hide WooCommerce optional text */
.woocommerce-checkout .optional {
    display: none !important;
}

/* Hide unused billing address fields until delivery logic is needed */
.ra-hidden-field,
.ra-checkout-buyer-card .ra-hidden-field,
.ra-checkout-buyer-card #billing_address_1_field,
.ra-checkout-buyer-card #billing_address_2_field,
.ra-checkout-buyer-card #billing_city_field,
.ra-checkout-buyer-card #billing_state_field,
.ra-checkout-buyer-card #billing_postcode_field,
.ra-checkout-buyer-card #billing_country_field {
    display: none !important;
}

/* Hide duplicate custom company fields if older PHP created them */
.ra-checkout-buyer-card #billing_pvm_kodas_field,
.ra-checkout-buyer-card #billing_imones_kodas_field {
    display: none !important;
}


/* =========================================================
   Form fields
========================================================= */

.ra-checkout .woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.ra-checkout .form-row {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.ra-checkout .form-row-first,
.ra-checkout .form-row-last {
    width: calc(50% - 8px) !important;
    float: none !important;
}

.ra-checkout .form-row label {
    display: block;
    margin-bottom: 4px;
    color: #141414;
    font-size: 12px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
}

.ra-checkout .form-row label .required {
    color: #ff0000;
    text-decoration: none;
}

.ra-checkout input.input-text,
.ra-checkout textarea,
.ra-checkout select,
.ra-checkout .select2-container--default .select2-selection--single {
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 12px 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.ra-checkout input::placeholder,
.ra-checkout textarea::placeholder {
    color: #737373 !important;
    opacity: 1 !important;
}

.ra-checkout input:focus,
.ra-checkout textarea:focus,
.ra-checkout select:focus {
    border-color: #0CBBC0 !important;
    outline: none !important;
    box-shadow: none !important;
}


/* =========================================================
   Buyer type radio buttons styled like checkboxes
========================================================= */

.ra-customer-type-field {
    width: 100% !important;
}

.ra-customer-type-field .woocommerce-input-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.ra-customer-type-field label.radio {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    color: #1D1D1B;
    font-size: 12px;
    font-family: Inter, sans-serif;
    font-weight: 500;
    cursor: pointer;
}

.ra-customer-type-field input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    margin: 0;
    border: 1px solid #EEEEEE;
    border-radius: 2px;
    background: #ffffff;
    position: relative;
    cursor: pointer;
}

.ra-customer-type-field input[type="radio"]:checked {
    background: #141414;
    border-color: #141414;
}

.ra-customer-type-field input[type="radio"]:checked::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 5px;
    height: 9px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.ra-customer-type-field label .required {
    display: none !important;
}


/* =========================================================
   Shipping methods - currently blank/hidden ready styling
========================================================= */

.ra-shipping-table,
.ra-shipping-table tbody,
.ra-shipping-table tr,
.ra-shipping-table th,
.ra-shipping-table td {
    display: block !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ra-shipping-table th {
    display: none !important;
}

.ra-shipping-table ul#shipping_method {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.ra-shipping-table ul#shipping_method li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 58px;
    padding: 16px !important;
    border: 1px solid #ECECEC;
    border-radius: 4px;
    background: #ffffff;
    margin: 0 !important;
}

.ra-shipping-table ul#shipping_method li:has(input:checked) {
    border-color: #0CBBC0;
}

.ra-shipping-table input.shipping_method {
    appearance: none;
    -webkit-appearance: none;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    border: 1.5px solid #EAEAEA;
    border-radius: 50%;
    margin: 0 !important;
    position: relative;
    cursor: pointer;
}

.ra-shipping-table input.shipping_method:checked {
    border-color: #0CBBC0;
}

.ra-shipping-table input.shipping_method:checked::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 7px;
    width: 10px;
    height: 6px;
    border-left: 1.5px solid #0CBBC0;
    border-bottom: 1.5px solid #0CBBC0;
    transform: rotate(-45deg);
}

.ra-shipping-table label {
    flex: 1;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin: 0 !important;
    color: #141414;
    font-size: 14px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
}

.ra-shipping-table label .woocommerce-Price-amount {
    color: #141414;
    font-size: 14px;
    font-weight: 500;
}

.ra-shipping-table select,
.ra-shipping-table .select2-container {
    width: 100% !important;
    margin-top: 16px !important;
}

.ra-shipping-table .select2-container--default .select2-selection--single {
    height: 40px !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
}


/* =========================================================
   Payment - fixed final version
========================================================= */

.ra-checkout-payment-card #payment {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ra-checkout-payment-card .wc_payment_methods,
.ra-checkout-payment-card .payment_methods {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: block !important;
}

.ra-checkout-payment-card .wc_payment_method,
.ra-checkout-payment-card ul.payment_methods li {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

/* Hide Stripe/Kortele title row completely */
.ra-checkout-payment-card .payment_method_stripe > input[type="radio"],
.ra-checkout-payment-card .payment_method_stripe > label,
.ra-checkout-payment-card .payment_method_stripe > label::before,
.ra-checkout-payment-card .payment_method_stripe > label::after,
.ra-checkout-payment-card .payment_method_stripe > label .ra-payment-title,
.ra-checkout-payment-card .payment_method_stripe > label img {
    display: none !important;
    content: none !important;
}

/* Active payment card box around Stripe iframe */
.ra-checkout-payment-card .payment_box.payment_method_stripe {
    display: block !important;
    margin: 0 0 24px !important;
    padding: 16px !important;
    background: #ffffff !important;
    border: 1px solid #0CBBC0 !important;
    border-radius: 4px !important;
}

/* Remove WooCommerce payment-box arrow */
.ra-checkout-payment-card .payment_box.payment_method_stripe::before,
.ra-checkout-payment-card .payment_box.payment_method_stripe::after,
.ra-checkout-payment-card .payment_box::before,
.ra-checkout-payment-card .payment_box::after {
    display: none !important;
    content: none !important;
}

/* IMPORTANT: never hide this Stripe form */
.ra-checkout-payment-card #wc-stripe-upe-form,
.ra-checkout-payment-card .wc-upe-form,
.ra-checkout-payment-card .wc-payment-form {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.ra-checkout-payment-card .wc-stripe-upe-element,
.ra-checkout-payment-card .StripeElement,
.ra-checkout-payment-card .__PrivateStripeElement {
    display: block !important;
    width: 100% !important;
    min-height: 180px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.ra-checkout-payment-card .__PrivateStripeElement iframe {
    display: block !important;
    width: 100% !important;
    min-height: 180px !important;
    border-radius: 8px !important;
}

/* Hide saved payment methods only */
.ra-checkout-payment-card .woocommerce-SavedPaymentMethods,
.ra-checkout-payment-card .wc-saved-payment-methods,
.ra-checkout-payment-card .woocommerce-SavedPaymentMethods-saveNew,
.ra-checkout-payment-card #wc-stripe-new-payment-method,
.ra-checkout-payment-card label[for="wc-stripe-new-payment-method"] {
    display: none !important;
}

/* Hide Apple Pay / Google Pay visually if a gateway outputs them */
.ra-checkout-payment-card .payment_method_apple_pay,
.ra-checkout-payment-card .payment_method_google_pay,
.ra-checkout-payment-card .payment_method_googlepay,
.ra-checkout-payment-card .payment_method_applepay {
    display: none !important;
}

/* Hide Woo privacy text because custom terms are used */
.ra-checkout-payment-card .woocommerce-terms-and-conditions-wrapper,
.ra-checkout-payment-card .woocommerce-privacy-policy-text {
    display: none !important;
}


/* =========================================================
   Custom terms checkbox
========================================================= */

.ra-checkout-terms {
    margin: 0 0 24px !important;
}

.ra-checkout-terms-label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    cursor: pointer !important;
    margin: 0 !important;
}

.ra-checkout-terms-label input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.ra-checkout-terms-box {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 1px !important;
}

.ra-checkout-terms-label input[type="checkbox"]:checked + .ra-checkout-terms-box {
    background: #141414 !important;
    border-color: #141414 !important;
}

.ra-checkout-terms-label input[type="checkbox"]:checked + .ra-checkout-terms-box::after {
    content: "" !important;
    width: 12px !important;
    height: 12px !important;
    display: block !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 12px 12px !important;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 6L5 8.5L9.5 3.5' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

.ra-checkout-terms-text {
    flex: 1 !important;
    color: #1A1A1A !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 18px !important;
}

.ra-checkout-terms-text a {
    color: #1A1A1A !important;
    text-decoration: underline !important;
}


/* =========================================================
   Place order button + secure note
========================================================= */

.ra-checkout-payment-card .form-row.place-order,
.ra-checkout-payment-card .place-order {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Do NOT use #place_order::before here. JS should set full text. */
.ra-checkout-payment-card #place_order::before,
.ra-checkout-payment-card #place_order::after {
    display: none !important;
    content: none !important;
}

.ra-checkout-payment-card #place_order {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 24px !important;
    margin: 0 !important;
    background: #0CBBC0 !important;
    color: #141414 !important;
    border: none !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-family: Poppins, Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: none !important;
    text-align: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ra-checkout-payment-card #place_order:hover {
    background: #163642 !important;
    color: #ffffff !important;
}

/* Remove old pseudo secure text to avoid duplicates */
.ra-checkout-payment-card .form-row.place-order::after {
    display: none !important;
    content: none !important;
}

/* Secure payment note added by JS */
.ra-secure-payment-note {
    width: 100% !important;
    margin-top: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 18px !important;
}

.ra-secure-payment-icon {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    display: inline-block !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 18px 18px !important;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M8.59311 15.6345C6.33508 14.9346 4.4431 13.3743 3.32602 11.2908C2.20893 9.20739 1.95644 6.76808 2.62311 4.5C4.95975 4.60692 7.24623 3.79993 8.99811 2.25C10.75 3.79993 13.0365 4.60692 15.3731 4.5C15.8821 6.23183 15.8586 8.07671 15.3056 9.795' stroke='%230CBBC0' stroke-width='0.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11.25 14.25L12.75 15.75L15.75 12.75' stroke='%230CBBC0' stroke-width='0.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='18' height='18' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") !important;
}


/* =========================================================
   Summary
========================================================= */

.ra-summary-table {
    width: 100%;
    border: none !important;
    margin: 0 !important;
}

.ra-summary-table tbody {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.ra-summary-table tr {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    border: none !important;
}

.ra-summary-table th,
.ra-summary-table td {
    display: block;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    color: #141414;
    font-size: 14px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
}

.ra-summary-table th {
    flex: 1;
    text-align: left;
}

.ra-summary-table td {
    text-align: right;
    white-space: nowrap;
}

.ra-summary-table .order-total th,
.ra-summary-table .order-total td,
.ra-summary-table .order-total .amount {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #141414 !important;
}

.ra-checkout-summary-title {
    padding-bottom: 24px;
    border-bottom: 1px solid #EAEAEA;
    margin-bottom: 24px;
}

.ra-summary-coupon-toggle {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #EAEAEA;
}

.ra-toggle-coupon {
    width: 100%;
    padding: 0;
    border: none;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #141414;
    font-size: 16px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    cursor: pointer;
}

.ra-remove-coupon {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #747474 !important;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none !important;
    margin-left: 12px;
}

.ra-remove-coupon span {
    font-size: 18px;
    line-height: 1;
}


/* =========================================================
   Coupon form
========================================================= */

.woocommerce-form-coupon-toggle {
    display: none !important;
}

.checkout_coupon {
    max-width: 600px;
    margin: 0 auto 24px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    padding: 24px !important;
}


/* =========================================================
   Woo notices
========================================================= */

.woocommerce-checkout .woocommerce-NoticeGroup,
.woocommerce-checkout .woocommerce-notices-wrapper {
    max-width: 1073px;
    margin: 0 auto 24px;
}

.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info {
    border-radius: 8px;
    border: 1px solid #ECECEC;
/*     background: #ffffff; */
}


/* =========================================================
   Responsive
========================================================= */

@media (max-width: 1024px) {
    body.woocommerce-checkout #main-content {
        padding-top: 24px !important;
        padding-bottom: 60px !important;
    }

    .ra-checkout-layout {
        flex-direction: column;
        gap: 24px;
    }

    .ra-checkout-left,
    .ra-checkout-summary {
        width: 100%;
        flex: none;
    }

    .ra-checkout-summary {
        position: static;
        order: -1;
    }
}

@media (max-width: 767px) {
    body.woocommerce-checkout #main-content {
        padding-top: 16px !important;
        padding-bottom: 40px !important;
    }

    .ra-checkout-layout {
        gap: 20px;
    }

    .ra-checkout-left {
        gap: 20px;
    }

    .ra-checkout-card,
    .ra-checkout-summary-inner {
        padding: 16px;
        border-radius: 8px;
    }

    .ra-checkout-title,
    .ra-checkout-summary-title {
        font-size: 16px;
    }

    .ra-checkout .form-row-first,
    .ra-checkout .form-row-last {
        width: 100% !important;
    }

    .ra-customer-type-field .woocommerce-input-wrapper {
        flex-direction: column;
        gap: 12px;
    }

    .ra-shipping-table ul#shipping_method li {
        padding: 14px !important;
    }
}
/* =========================================================
   Checkout summary coupon
========================================================= */

.ra-summary-coupon-form {
    width: 100%;
}

.ra-summary-coupon-fields {
    display: flex;
    gap: 8px;
    width: 100%;
}

.ra-summary-coupon-fields input.input-text {
    flex: 1;
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 12px 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
}

.ra-summary-coupon-fields button,
.ra-apply-summary-coupon {
    height: 40px !important;
    min-height: 40px !important;
    padding: 12px 16px !important;
    background: #0CBBC0 !important;
    color: #141414 !important;
    border: none !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: none !important;
    white-space: nowrap;
}

.ra-summary-coupon-fields button:hover,
.ra-apply-summary-coupon:hover {
    background: #163642 !important;
    color: #ffffff !important;
}

.ra-summary-coupon-toggle.is-loading {
    opacity: 0.6;
    pointer-events: none;
}
/* =========================================================
   Summary coupon - Figma style
========================================================= */

.ra-summary-coupon-toggle {
    width: 100%;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #EAEAEA;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ra-toggle-coupon {
    width: 100%;
    padding: 0;
    border: none;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    color: #222222;
    font-size: 16px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
    cursor: pointer;
}

.ra-toggle-coupon svg {
    width: 20px;
    height: 20px;
    min-width: 20px;
    transition: transform 0.2s ease;
}

.ra-summary-coupon-toggle:not(.is-open) .ra-toggle-coupon svg {
    transform: rotate(180deg);
}

.ra-summary-coupon-form {
    width: 100%;
    display: block;
}

.ra-summary-coupon-toggle:not(.is-open) .ra-summary-coupon-form {
    display: none;
}

.ra-summary-coupon-fields {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ra-summary-coupon-input {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.ra-summary-coupon-input::placeholder {
    color: #767676 !important;
    opacity: 1 !important;
}

.ra-summary-coupon-input:focus {
    border-color: #0CBBC0 !important;
    outline: none !important;
    box-shadow: none !important;
}

.ra-summary-coupon-input[readonly] {
    border-color: #0CBBC0 !important;
    cursor: default;
}

.ra-apply-summary-coupon {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 24px !important;
    background: #0CBBC0 !important;
    color: #141414 !important;
    border: none !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-family: Poppins, Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ra-apply-summary-coupon:hover {
    background: #163642 !important;
    color: #ffffff !important;
}

.ra-summary-coupon-toggle.is-loading {
    opacity: 0.6;
    pointer-events: none;
}

.ra-coupon-success {
    width: 100%;
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #34A853;
    font-size: 12px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    line-height: 1.3;
}

.ra-coupon-success-icon {
    width: 14px;
    height: 14px;
    min-width: 14px;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 14px;
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M12.0784 3.67091C12.1878 3.78031 12.2492 3.92865 12.2492 4.08333C12.2492 4.23801 12.1878 4.38636 12.0784 4.49575L6.24509 10.3291C6.1357 10.4384 5.98735 10.4999 5.83268 10.4999C5.678 10.4999 5.52965 10.4384 5.42026 10.3291L2.50359 7.41241C2.39733 7.3024 2.33854 7.15505 2.33987 7.0021C2.34119 6.84915 2.40254 6.70284 2.5107 6.59469C2.61885 6.48653 2.76516 6.42518 2.91811 6.42385C3.07106 6.42253 3.21841 6.48132 3.32843 6.58758L5.83268 9.09183L11.2536 3.67091C11.363 3.56156 11.5113 3.50012 11.666 3.50012C11.8207 3.50012 11.969 3.56156 12.0784 3.67091Z' fill='%2334A853'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='14' height='14' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

/* Coupon row cleanup */
.ra-summary-table .cart-discount th {
    display: flex !important;
    align-items: center;
    gap: 12px;
}

.ra-summary-table .cart-discount th > span {
    flex: 1;
}

.ra-remove-coupon {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    color: #747474 !important;
    font-size: 14px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    text-decoration: none !important;
    white-space: nowrap;
}

.ra-remove-coupon span {
    font-size: 18px;
    line-height: 1;
}

.ra-summary-table .cart-discount td {
    color: #141414 !important;
}

.ra-summary-table .cart-discount td .woocommerce-remove-coupon {
    display: none !important;
}
.woocommerce-Price-amount{
	color: #141414;
	font-size: 14px;
	font-weight: normal;
}
/* Coupon remove button fix */
.ra-remove-coupon {
    appearance: none !important;
    -webkit-appearance: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: #747474 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.ra-remove-coupon:hover {
    color: #141414 !important;
}

.ra-remove-coupon span {
    font-size: 16px !important;
    line-height: 1 !important;
}

/* Prevent theme from uppercasing coupon toggle */
.ra-toggle-coupon,
.ra-toggle-coupon span,
.ra-summary-coupon-toggle,
.ra-summary-coupon-toggle * {
    text-transform: none !important;
}

.ra-toggle-coupon span {
    color: #222222 !important;
    font-size: 16px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
}
/* =========================
   Summary coupon closed by default
========================= */

.ra-summary-coupon-toggle {
    margin-top: 24px !important;
    padding-top: 24px !important;
    border-top: 1px solid #EAEAEA !important;
}

.ra-summary-coupon-toggle .ra-summary-coupon-form {
    display: none !important;
}

.ra-summary-coupon-toggle.is-open .ra-summary-coupon-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

/* Toggle row */
.ra-toggle-coupon {
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 24px !important;
    cursor: pointer !important;
    text-transform: none !important;
}

.ra-toggle-coupon span {
    flex: 1 !important;
    color: #222222 !important;
    font-size: 16px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    text-transform: none !important;
}

.ra-toggle-coupon svg {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    transition: transform 0.2s ease !important;
}

/* Closed arrow points down */
.ra-summary-coupon-toggle:not(.is-open) .ra-toggle-coupon svg {
    transform: rotate(180deg) !important;
}

/* Open arrow points up */
.ra-summary-coupon-toggle.is-open .ra-toggle-coupon svg {
    transform: rotate(0deg) !important;
}

/* Coupon input + button */
.ra-summary-coupon-fields {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.ra-summary-coupon-input {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    box-shadow: none !important;
    outline: none !important;
}

.ra-summary-coupon-input:focus {
    border-color: #0CBBC0 !important;
}

.ra-summary-coupon-input[readonly] {
    border-color: #0CBBC0 !important;
    background: #ffffff !important;
    cursor: default !important;
}

.ra-apply-summary-coupon {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 24px !important;
    background: #0CBBC0 !important;
    color: #141414 !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-family: Poppins, Inter, sans-serif !important;
    font-weight: 400 !important;
    text-transform: none !important;
    box-shadow: none !important;
}

.ra-apply-summary-coupon:hover {
    background: #163642 !important;
    color: #ffffff !important;
}

/* Success message */
.ra-coupon-success {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #34A853 !important;
    font-size: 12px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
}

.ra-coupon-success-icon {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    display: inline-block !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M12.0784 3.67091C12.1878 3.78031 12.2492 3.92865 12.2492 4.08333C12.2492 4.23801 12.1878 4.38636 12.0784 4.49575L6.24509 10.3291C6.1357 10.4384 5.98735 10.4999 5.83268 10.4999C5.678 10.4999 5.52965 10.4384 5.42026 10.3291L2.50359 7.41241C2.39733 7.3024 2.33854 7.15505 2.33987 7.0021C2.34119 6.84915 2.40254 6.70284 2.5107 6.59469C2.61885 6.48653 2.76516 6.42518 2.91811 6.42385C3.07106 6.42253 3.21841 6.48132 3.32843 6.58758L5.83268 9.09183L11.2536 3.67091C11.363 3.56156 11.5113 3.50012 11.666 3.50012C11.8207 3.50012 11.969 3.56156 12.0784 3.67091Z' fill='%2334A853'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='14' height='14' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") !important;
}

/* =========================
   Applied coupon row cleanup
========================= */

.ra-summary-table .cart-discount {
    align-items: flex-start !important;
}

.ra-summary-table .cart-discount th {
    display: flex !important;
    flex: 1 !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    min-width: 0 !important;
}

.ra-summary-table .cart-discount th > span {
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

.ra-summary-table .cart-discount td {
    display: block !important;
    text-align: right !important;
    white-space: nowrap !important;
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
}

.ra-remove-coupon {
    appearance: none !important;
    -webkit-appearance: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: #747474 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.ra-remove-coupon:hover {
    color: #141414 !important;
}

.ra-remove-coupon span {
    font-size: 16px !important;
    line-height: 1 !important;
}
/* =========================
   Checkout summary coupon row
========================= */

.ra-summary-table tr.cart-discount {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
}

.ra-summary-table tr.cart-discount th {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.ra-summary-table tr.cart-discount td {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.ra-summary-table .ra-coupon-label,
.ra-summary-table .ra-coupon-code {
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.ra-summary-table .ra-remove-coupon {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    color: #747474 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.ra-summary-table .ra-remove-coupon span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    line-height: 1 !important;
    transform: translateY(-1px);
}

.ra-summary-table tr.cart-discount td,
.ra-summary-table tr.cart-discount td .amount,
.ra-summary-table tr.cart-discount td bdi,
.ra-summary-table tr.cart-discount td .woocommerce-Price-currencySymbol {
    color: #141414 !important;
    font-size: 14px !important;
    font-family: Inter, sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
/* Hide breadcrumb header row/column on checkout */
body.woocommerce-checkout .ra-breadcrumb-header-column,
body.woocommerce-checkout .ra-header-breadcrumbs,
body.woocommerce-checkout .whb-header-bottom {
    display: none !important;
}
/* =========================================================
   4Revi checkout mobile polish
   Add this AFTER all checkout CSS
========================================================= */

@media (max-width: 767px) {
    body.woocommerce-checkout #main-content {
        padding-top: 16px !important;
        padding-bottom: 40px !important;
    }

    body.woocommerce-checkout .container,
    body.woocommerce-checkout main.container,
    body.woocommerce-checkout #main-content.container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .ra-checkout-layout {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
        align-items: stretch !important;
    }

    .ra-checkout-summary {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        position: static !important;
        order: -1 !important;
    }

    .ra-checkout-left {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .ra-checkout-card,
    .ra-checkout-summary-inner {
        width: 100% !important;
        max-width: 100% !important;
        padding: 16px !important;
        border-radius: 8px !important;
        gap: 16px !important;
    }

    .ra-checkout-card {
        display: flex !important;
        flex-direction: column !important;
    }

    .ra-checkout-title,
    .ra-checkout-summary-title {
        font-size: 16px !important;
        line-height: 1.3 !important;
        margin: 0 !important;
    }

    .ra-checkout-summary-title {
        padding-bottom: 16px !important;
        margin-bottom: 16px !important;
    }

    /* Summary table mobile */
    .ra-summary-table tbody {
        gap: 20px !important;
    }

    .ra-summary-table tr {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 24px !important;
    }

    .ra-summary-table th,
    .ra-summary-table td,
    .ra-summary-table th span,
    .ra-summary-table td span,
    .ra-summary-table .amount,
    .ra-summary-table bdi {
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    .ra-summary-table th {
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    .ra-summary-table td {
        flex: 0 0 auto !important;
        text-align: right !important;
        white-space: nowrap !important;
    }

    .ra-summary-table .order-total th,
    .ra-summary-table .order-total td,
    .ra-summary-table .order-total .amount,
    .ra-summary-table .order-total bdi {
        font-size: 14px !important;
        font-weight: 500 !important;
    }

    /* Coupon row mobile */
    .ra-summary-table .cart-discount th {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        flex-wrap: nowrap !important;
    }

    .ra-summary-table .cart-discount th > span {
        white-space: nowrap !important;
        text-transform: none !important;
    }

    .ra-remove-coupon {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        color: #747474 !important;
        font-size: 12px !important;
        line-height: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        text-transform: none !important;
        white-space: nowrap !important;
    }

    .ra-remove-coupon span {
        width: 14px !important;
        height: 14px !important;
        font-size: 16px !important;
        line-height: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Coupon toggle mobile */
    .ra-summary-coupon-toggle {
        margin-top: 16px !important;
        padding-top: 16px !important;
        gap: 8px !important;
    }

    .ra-toggle-coupon {
        font-size: 14px !important;
        line-height: 1.3 !important;
        text-transform: none !important;
    }

    .ra-toggle-coupon span {
        text-transform: none !important;
    }

    .ra-toggle-coupon svg {
        width: 18px !important;
        height: 18px !important;
    }

    .ra-summary-coupon-form {
        margin-top: 8px !important;
    }

    .ra-summary-coupon-fields {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .ra-summary-coupon-input {
        width: 100% !important;
        height: 45px !important;
        min-height: 45px !important;
        padding: 12px 16px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        text-transform: none !important;
    }

    .ra-apply-summary-coupon {
        width: 100% !important;
        height: 45px !important;
        min-height: 45px !important;
        padding: 12px 24px !important;
        border-radius: 4px !important;
        background: #0CBBC0 !important;
        color: #141414 !important;
        font-size: 14px !important;
        font-family: Poppins, Inter, sans-serif !important;
        font-weight: 400 !important;
        text-transform: none !important;
    }

    .ra-coupon-success {
        margin-top: 8px !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        color: #34A853 !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    /* Buyer form mobile */
    .ra-checkout .woocommerce-billing-fields__field-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .ra-checkout .form-row,
    .ra-checkout .form-row-first,
    .ra-checkout .form-row-last {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        clear: both !important;
    }

    .ra-customer-type-field .woocommerce-input-wrapper {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px !important;
    }

    .ra-customer-type-field label.radio {
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    .ra-checkout .form-row label {
        font-size: 12px !important;
        margin-bottom: 4px !important;
    }

    .ra-checkout input.input-text,
    .ra-checkout textarea,
    .ra-checkout select,
    .ra-checkout .select2-container--default .select2-selection--single {
        height: 40px !important;
        min-height: 40px !important;
        font-size: 14px !important;
        padding: 12px 16px !important;
    }

    /* Shipping mobile */
    .ra-shipping-table ul#shipping_method {
        gap: 12px !important;
    }

    .ra-shipping-table ul#shipping_method li {
        padding: 16px !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }

    .ra-shipping-table label {
        font-size: 12px !important;
        line-height: 1.35 !important;
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
    }

    .ra-shipping-table label .woocommerce-Price-amount {
        font-size: 12px !important;
        font-weight: 500 !important;
    }

    .ra-shipping-table input.shipping_method {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
    }

    /* Payment mobile */
    .ra-checkout-payment-card .payment_box.payment_method_stripe {
        padding: 16px !important;
        margin-bottom: 16px !important;
    }

    .ra-checkout-payment-card .place-order {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    .ra-checkout-terms {
        margin: 0 !important;
    }

    .ra-checkout-terms-label {
        gap: 8px !important;
    }

    .ra-checkout-terms-box {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
    }

    .ra-checkout-terms-text,
    .ra-checkout-terms-text a {
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    .ra-checkout-payment-card #place_order {
        height: 45px !important;
        min-height: 45px !important;
        font-size: 14px !important;
        margin: 0 !important;
    }

    .ra-secure-payment-note {
        margin-top: 0 !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    .ra-secure-payment-icon {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
    }

    /* Woo notices mobile */
    .woocommerce-checkout .woocommerce-NoticeGroup,
    .woocommerce-checkout .woocommerce-notices-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        background: transparent !important;
    }

    .woocommerce-checkout .woocommerce-error,
    .woocommerce-checkout .woocommerce-message,
    .woocommerce-checkout .woocommerce-info {
        margin: 0 0 16px !important;
        padding: 12px 16px !important;
        border-radius: 8px !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
        background: #ffffff !important;
    }
}
/* Fix mobile buyer type checkboxes: checkbox + text on same line */
@media (max-width: 767px) {
    .ra-customer-type-field .woocommerce-input-wrapper {
        display: grid !important;
        grid-template-columns: 16px auto !important;
        column-gap: 10px !important;
        row-gap: 16px !important;
        align-items: center !important;
        width: 100% !important;
    }

    .ra-customer-type-field input[type="radio"] {
        grid-column: 1 !important;
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        margin: 0 !important;
    }

    .ra-customer-type-field label.radio {
        grid-column: 2 !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #1D1D1B !important;
        font-size: 12px !important;
        font-family: Inter, sans-serif !important;
        font-weight: 500 !important;
        line-height: 16px !important;
        cursor: pointer !important;
    }

    .ra-customer-type-field label.radio .required {
        display: none !important;
    }
}
@media (max-width: 767px) {
    .ra-checkout-terms {
        margin-bottom: 16px !important;
    }
}
/* =========================================================
   Checkout success / failed pages
========================================================= */

/* Main background + spacing */
body.woocommerce-order-received,
body.woocommerce-checkout.woocommerce-order-pay {
    background: #FAFAFA !important;
}

body.woocommerce-order-received .wd-page-content,
body.woocommerce-order-received .main-page-wrapper,
body.woocommerce-order-received #main-content,
body.woocommerce-order-received .wd-content-area,
body.woocommerce-checkout.woocommerce-order-pay .wd-page-content,
body.woocommerce-checkout.woocommerce-order-pay .main-page-wrapper,
body.woocommerce-checkout.woocommerce-order-pay #main-content,
body.woocommerce-checkout.woocommerce-order-pay .wd-content-area {
    background: #FAFAFA !important;
}

body.woocommerce-order-received #main-content,
body.woocommerce-checkout.woocommerce-order-pay #main-content {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}

/* Outer wrapper like Figma */
.ra-order-status-page {
    width: 100%;
    padding-left: 50px;
    padding-right: 50px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 40px;
    background: #FAFAFA;
}

.ra-order-status-page__inner {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 24px;
}

/* Content block */
.ra-order-status-box {
    width: 100%;
    max-width: 900px;
    display: inline-flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 24px;
    text-align: center;
    margin: 0 auto;
}

.ra-order-status-box__content {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 16px;
}

.ra-order-status-box__title {
    align-self: stretch;
    margin: 0 !important;
    color: #141414 !important;
    text-align: center;
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    font-size: 50px !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.ra-order-status-box__text {
    align-self: stretch;
    margin: 0 !important;
    color: #6D6D6D !important;
    text-align: center;
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 23px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Button area */
.ra-order-status-box__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

a.ra-order-status-box__button,
body .ra-order-status-box__button {
    height: 45px !important;
    min-height: 45px !important;
    padding: 12px 24px !important;
    background: #0CBBC0 !important;
    background-color: #0CBBC0 !important;
    color: #141414 !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    text-decoration: none !important;
    text-transform: none !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    font-family: Poppins, Inter, Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: normal !important;
    letter-spacing: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

a.ra-order-status-box__button:hover,
body .ra-order-status-box__button:hover {
    background: #163642 !important;
    background-color: #163642 !important;
    color: #ffffff !important;
}

a.ra-order-status-box__button:focus,
a.ra-order-status-box__button:active,
body .ra-order-status-box__button:focus,
body .ra-order-status-box__button:active {
    box-shadow: none !important;
    outline: none !important;
}

/* Hide default WooCommerce output that may still appear */
.woocommerce-order > p,
.woocommerce-order-overview,
.woocommerce-order-details,
.woocommerce-customer-details,
ul.wc-item-meta,
.woocommerce-thankyou-order-received {
    display: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.woocommerce-order-received #main-content,
    body.woocommerce-checkout.woocommerce-order-pay #main-content {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .ra-order-status-page {
        padding-left: 16px;
        padding-right: 16px;
        gap: 24px;
    }

    .ra-order-status-box {
        max-width: 100%;
        gap: 20px;
    }

    .ra-order-status-box__content {
        gap: 12px;
    }

    .ra-order-status-box__title {
        font-size: 30px !important;
        line-height: 1.2 !important;
    }

    .ra-order-status-box__text {
        font-size: 14px !important;
        line-height: 21px !important;
    }

    a.ra-order-status-box__button,
    body .ra-order-status-box__button {
        width: auto !important;
        min-width: 0 !important;
    }
}
/* =========================================================
   Checkout buyer type toggle
========================================================= */

.ra-checkout-buyer-card #billing_pvm_kodas_field,
.ra-checkout-buyer-card #billing_imones_kodas_field {
    display: none !important;
}

.ra-checkout-buyer-card #billing_address_1_field,
.ra-checkout-buyer-card #billing_address_2_field,
.ra-checkout-buyer-card #billing_city_field,
.ra-checkout-buyer-card #billing_state_field,
.ra-checkout-buyer-card #billing_postcode_field,
.ra-checkout-buyer-card #billing_country_field {
    display: none !important;
}

.ra-customer-type-field {
    width: 100% !important;
    flex-basis: 100% !important;
}

.ra-customer-type-field .woocommerce-input-wrapper {
    display: grid !important;
    grid-template-columns: 16px auto 16px auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 12px !important;
}

.ra-customer-type-field input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    margin: 0 !important;
    border: 1px solid #EEEEEE !important;
    border-radius: 2px !important;
    background: #ffffff !important;
    cursor: pointer !important;
    position: relative !important;
}

.ra-customer-type-field input[type="radio"]:checked {
    background: #141414 !important;
    border-color: #141414 !important;
}

.ra-customer-type-field input[type="radio"]:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 4px !important;
    top: 1px !important;
    width: 5px !important;
    height: 9px !important;
    border: solid #ffffff !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}

.ra-customer-type-field label.radio {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    color: #1D1D1B !important;
    font-family: Inter, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    cursor: pointer !important;
    text-transform: none !important;
}

.ra-customer-type-field label.radio .required {
    display: none !important;
}

@media (max-width: 767px) {
    .ra-customer-type-field .woocommerce-input-wrapper {
        grid-template-columns: 16px auto !important;
        column-gap: 10px !important;
        row-gap: 16px !important;
    }
}
/* Delivery step must not look like order summary */
.ra-checkout-shipping-card .ra-summary-table,
.ra-checkout-shipping-card .ra-summary-coupon-toggle,
.ra-checkout-shipping-card .cart-subtotal,
.ra-checkout-shipping-card .order-total,
.ra-checkout-shipping-card .cart-discount,
.ra-checkout-shipping-card .ra-summary-shipping {
    display: none !important;
}

/* Real delivery table */
.ra-checkout-shipping-table,
.ra-checkout-shipping-table tbody,
.ra-checkout-shipping-table tr,
.ra-checkout-shipping-table th,
.ra-checkout-shipping-table td {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.ra-checkout-shipping-table th {
    display: none !important;
}

.ra-checkout-shipping-table ul#shipping_method {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.ra-checkout-shipping-table ul#shipping_method li {
    width: 100% !important;
    margin: 0 !important;
    padding: 16px !important;
    border: 1px solid #ECECEC !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.ra-checkout-shipping-table ul#shipping_method li:has(input:checked) {
    border-color: #0CBBC0 !important;
}
/* =========================================================
   Checkout delivery / Omniva shipping - stable version
========================================================= */

.ra-checkout-shipping-card {
    gap: 24px;
}

.ra-checkout-shipping-methods {
    width: 100%;
}

/* Delivery table reset */
.ra-checkout-shipping-table,
.ra-checkout-shipping-table tbody,
.ra-checkout-shipping-table tr,
.ra-checkout-shipping-table th,
.ra-checkout-shipping-table td {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.ra-checkout-shipping-table th {
    display: none !important;
}

.ra-checkout-shipping-table td {
    text-align: left !important;
}

/* Shipping method list */
.ra-checkout-shipping-methods ul#shipping_method,
.ra-checkout-shipping-methods ul.woocommerce-shipping-methods {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.ra-checkout-shipping-methods ul#shipping_method > li,
.ra-checkout-shipping-methods ul.woocommerce-shipping-methods > li {
    position: relative !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    box-sizing: border-box !important;
    flex-wrap: wrap !important;
}

.ra-checkout-shipping-methods ul#shipping_method > li.is-selected,
.ra-checkout-shipping-methods ul.woocommerce-shipping-methods > li.is-selected,
.ra-checkout-shipping-methods ul#shipping_method > li:has(input.shipping_method:checked),
.ra-checkout-shipping-methods ul.woocommerce-shipping-methods > li:has(input.shipping_method:checked) {
    border-color: #0CBBC0 !important;
}

/* Radio */
.ra-checkout-shipping-methods input.shipping_method {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    flex: 0 0 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #EAEAEA !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    position: relative !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.ra-checkout-shipping-methods input.shipping_method:checked {
    border-color: #0CBBC0 !important;
}

.ra-checkout-shipping-methods input.shipping_method:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    top: 7px !important;
    width: 10px !important;
    height: 6px !important;
    border-left: 1.5px solid #0CBBC0 !important;
    border-bottom: 1.5px solid #0CBBC0 !important;
    transform: rotate(-45deg) !important;
}

/* Main shipping label */
.ra-checkout-shipping-methods input.shipping_method + label {
    flex: 1 1 calc(100% - 36px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 !important;
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-transform: none !important;
    cursor: pointer !important;
}

.ra-checkout-shipping-methods input.shipping_method + label .woocommerce-Price-amount,
.ra-checkout-shipping-methods input.shipping_method + label .amount {
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}

/* Omniva description */
.ra-checkout-shipping-methods .omnivalt-shipping-description {
    width: 100% !important;
    margin: 4px 0 0 36px !important;
    color: #737373 !important;
    font-family: Inter, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}

/* Omniva terminal container - do not hide/break it */
.ra-checkout-shipping-methods .omnivalt_terminal_container {
    width: 100% !important;
    margin: 12px 0 0 36px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Omniva button/select full width */
.ra-checkout-shipping-methods .omnivalt_terminal_container select,
.ra-checkout-shipping-methods .omnivalt_terminal_container button,
.ra-checkout-shipping-methods .omnivalt_terminal_container .button,
.ra-checkout-shipping-methods .omnivalt_terminal_container a.button {
    width: 100% !important;
    max-width: 100% !important;
}

/* Select styling */
.ra-checkout-shipping-methods select,
.ra-checkout-shipping-card select {
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 40px !important;
    text-transform: none !important;
}

.ra-checkout-shipping-methods select:focus,
.ra-checkout-shipping-card select:focus {
    border-color: #0CBBC0 !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Select2 support */
.ra-checkout-shipping-card .select2-container {
    width: 100% !important;
}

.ra-checkout-shipping-card .select2-container--default .select2-selection--single {
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 16px !important;
    background: #ffffff !important;
    border: 1px solid #ECECEC !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

.ra-checkout-shipping-card .select2-container--default .select2-selection--single .select2-selection__rendered {
    height: 40px !important;
    padding: 0 !important;
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 40px !important;
}

.ra-checkout-shipping-card .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 40px !important;
    right: 12px !important;
}

/* Prevent summary from appearing in delivery section if wrong function is used accidentally */
.ra-checkout-shipping-card .ra-summary-table,
.ra-checkout-shipping-card .ra-summary-coupon-toggle,
.ra-checkout-shipping-card .cart-subtotal,
.ra-checkout-shipping-card .order-total,
.ra-checkout-shipping-card .cart-discount,
.ra-checkout-shipping-card .ra-summary-shipping {
    display: none !important;
}

/* Empty delivery fallback */
.ra-checkout-no-shipping {
    width: 100%;
    min-height: 58px;
    padding: 16px;
    border: 1px solid #ECECEC;
    border-radius: 4px;
    background: #ffffff;
    color: #737373;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 400;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

/* Mobile */
@media (max-width: 767px) {
    .ra-checkout-shipping-card {
        gap: 16px;
    }

    .ra-checkout-shipping-methods ul#shipping_method > li,
    .ra-checkout-shipping-methods ul.woocommerce-shipping-methods > li {
        padding: 16px !important;
        align-items: flex-start !important;
    }

    .ra-checkout-shipping-methods input.shipping_method + label {
        font-size: 12px !important;
    }

    .ra-checkout-shipping-methods input.shipping_method + label .woocommerce-Price-amount,
    .ra-checkout-shipping-methods input.shipping_method + label .amount {
        font-size: 12px !important;
    }

    .ra-checkout-shipping-methods .omnivalt-shipping-description,
    .ra-checkout-shipping-methods .omnivalt_terminal_container {
        margin-left: 36px !important;
    }
}
/* =========================================================
   Omniva terminal button below text
========================================================= */

/* Put Omniva terminal area under the shipping title/price row */
.ra-checkout-shipping-methods .omnivalt_terminal_container {
    width: 100% !important;
    margin: 12px 0 0 36px !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

/* Button/link inside Omniva terminal area */
.ra-checkout-shipping-methods .omnivalt_terminal_container button,
.ra-checkout-shipping-methods .omnivalt_terminal_container .button,
.ra-checkout-shipping-methods .omnivalt_terminal_container a.button,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"] {
    width: 100% !important;
    max-width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    margin: 0 auto !important;
    padding: 12px 24px !important;

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

    background: #0CBBC0 !important;
    background-color: #0CBBC0 !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 4px !important;
    box-shadow: none !important;

    color: #141414 !important;
    font-family: Poppins, Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    cursor: pointer !important;
}

/* Hover like other checkout buttons */
.ra-checkout-shipping-methods .omnivalt_terminal_container button:hover,
.ra-checkout-shipping-methods .omnivalt_terminal_container .button:hover,
.ra-checkout-shipping-methods .omnivalt_terminal_container a.button:hover,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]:hover {
    background: #163642 !important;
    background-color: #163642 !important;
    color: #ffffff !important;
}

/* Remove theme pseudo icons / arrows if WoodMart adds them */
.ra-checkout-shipping-methods .omnivalt_terminal_container button::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container button::after,
.ra-checkout-shipping-methods .omnivalt_terminal_container .button::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container .button::after,
.ra-checkout-shipping-methods .omnivalt_terminal_container a.button::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container a.button::after,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]::after {
    display: none !important;
    content: none !important;
}

/* If Omniva outputs select/map after the button, keep it full width below */
.ra-checkout-shipping-methods .omnivalt_terminal_container select,
.ra-checkout-shipping-methods .omnivalt_terminal_container .select2-container,
.ra-checkout-shipping-methods .omnivalt_terminal_container .leaflet-container {
    width: 100% !important;
    max-width: 100% !important;
}

/* Mobile */
@media (max-width: 767px) {
    .ra-checkout-shipping-methods .omnivalt_terminal_container {
        margin-left: 36px !important;
        width: calc(100% - 36px) !important;
    }

    .ra-checkout-shipping-methods .omnivalt_terminal_container button,
    .ra-checkout-shipping-methods .omnivalt_terminal_container .button,
    .ra-checkout-shipping-methods .omnivalt_terminal_container a.button,
    .ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"] {
        width: 100% !important;
    }
}
/* =========================================================
   Omniva selected terminal + map button layout
========================================================= */

/* Shipping option card */
.ra-checkout-shipping-methods ul#shipping_method > li,
.ra-checkout-shipping-methods ul.woocommerce-shipping-methods > li {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
}

/* Keep the shipping name / price on the first row */
.ra-checkout-shipping-methods input.shipping_method + label {
    flex: 1 1 calc(100% - 36px) !important;
    width: auto !important;
    margin: 0 !important;
}

/* Omniva terminal container should go below the label row */
.ra-checkout-shipping-methods .omnivalt_terminal_container {
    flex: 0 0 100% !important;
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    margin: 4px 0 0 36px !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    box-sizing: border-box !important;
}

/* Selected terminal text/input */
.ra-checkout-shipping-methods .omnivalt_terminal_container input,
.ra-checkout-shipping-methods .omnivalt_terminal_container select,
.ra-checkout-shipping-methods .omnivalt_terminal_container .select2-container {
    width: 100% !important;
    max-width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Actual Omniva map button */
.ra-checkout-shipping-methods .omnivalt_terminal_container .tmjs-open-modal-btn,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"] {
    width: 100% !important;
    height: 45px !important;
    min-height: 45px !important;
    margin: 0 !important;
    padding: 12px 24px !important;

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

    background: #0CBBC0 !important;
    background-color: #0CBBC0 !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 4px !important;
    box-shadow: none !important;

    color: #141414 !important;
    font-family: Poppins, Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    cursor: pointer !important;
}

/* Hover */
.ra-checkout-shipping-methods .omnivalt_terminal_container .tmjs-open-modal-btn:hover,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]:hover {
    background: #163642 !important;
    background-color: #163642 !important;
    color: #ffffff !important;
}

/* Remove theme pseudo-elements */
.ra-checkout-shipping-methods .omnivalt_terminal_container .tmjs-open-modal-btn::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container .tmjs-open-modal-btn::after,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]::before,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"]::after {
    display: none !important;
    content: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    .ra-checkout-shipping-methods .omnivalt_terminal_container {
        width: calc(100% - 36px) !important;
        max-width: calc(100% - 36px) !important;
        margin-left: 36px !important;
    }
}
/* =========================================================
   Omniva terminal box centered, no large offset
========================================================= */

.ra-checkout-shipping-methods .omnivalt_terminal_container {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 420px !important;
    margin: 12px auto 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    box-sizing: border-box !important;
}

/* Selected terminal input/field */
.ra-checkout-shipping-methods .omnivalt_terminal_container input,
.ra-checkout-shipping-methods .omnivalt_terminal_container select,
.ra-checkout-shipping-methods .omnivalt_terminal_container .select2-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Map button */
.ra-checkout-shipping-methods .omnivalt_terminal_container .tmjs-open-modal-btn,
.ra-checkout-shipping-methods .omnivalt_terminal_container a[href="#tmjsmodal"] {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}
/* =========================================================
   Checkout secure payment note below Apmokėti button
========================================================= */

.ra-secure-payment-note {
    width: 100% !important;
    margin-top: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #141414 !important;
    font-family: Inter, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 18px !important;
    text-align: center !important;
}

.ra-secure-payment-icon {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ra-secure-payment-icon svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
}
/* Desktop visual card container */
.elementor-element-c6b5bfc {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background-image: none !important;
    background: transparent !important;
}

/* The Elementor HTML widget that contains the video */
.elementor-element-c6b5bfc .elementor-element-21f0ef7 {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}

/* Elementor wrapper inside the HTML widget */
.elementor-element-c6b5bfc .elementor-element-21f0ef7 .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
}

/* Actual video */
.elementor-element-c6b5bfc .how-it-works-video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    z-index: 0 !important;
}

/* Your gradient/steps wrapper above video */
.elementor-element-c6b5bfc .elementor-element-4ea18ad {
    position: relative !important;
    z-index: 2 !important;
}

/* Optional: make sure steps/button stay clickable */
.elementor-element-c6b5bfc .elementor-element-4db5718,
.elementor-element-c6b5bfc .elementor-element-7294fa6,
.elementor-element-c6b5bfc .elementor-element-cdcb7a6 {
    position: relative !important;
    z-index: 3 !important;
}

/* Optional dark overlay if your gradient container no longer covers enough */
.elementor-element-c6b5bfc::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.35) 45%,
        rgba(0, 0, 0, 0.05) 100%
    );
}

/* mobile steps with video */

/* =========================================================
   Mobile how-it-works video + sliding step card
========================================================= */

.mobile-steps-section {
    position: relative !important;
    overflow: visible !important;
    width: 100% !important;
    display: block !important;
    margin-bottom: 24px !important;
}

/* Video wrapper */
.mobile-steps-section .elementor-element-43cd02e,
.mobile-steps-section .elementor-element-43cd02e .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Video */
.mobile-how-it-works-video {
    width: 100% !important;
    height: 390px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 24px !important;
}

/* Step card viewport */
.mobile-steps-viewport {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: auto;
    width: auto !important;
    max-width: none !important;
    overflow: hidden !important;
    z-index: 20 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
}

/* Sliding track */
.mobile-steps-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: auto !important;
    max-width: none !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: transform 0.42s ease !important;
    will-change: transform !important;
}

/* Individual slide/card */
.mobile-step-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 14px 16px !important;
    box-sizing: border-box !important;

    background: #DDF9FB !important;
    border: 2px solid #ffffff !important;
    border-radius: 14px !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;

    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Prevent old inactive opacity from breaking the slider */
.mobile-step-slide.mobile-step-active,
.mobile-step-slide.notactiveopacity {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Step number icon */
.mobile-step-slide .step-num {
    flex: 0 0 44px !important;
    width: 44px !important;
    margin: 0 !important;
}

.mobile-step-slide .step-num img {
    width: 44px !important;
    height: 44px !important;
    display: block !important;
}

/* Text wrapper */
.mobile-step-slide .step-num + .e-con {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
}

/* Text */
.mobile-step-slide .elementor-widget-text-editor p {
    margin: 0 !important;
}

.mobile-step-slide .elementor-widget-text-editor:first-of-type p {
    color: #141414 !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

.mobile-step-slide .elementor-widget-text-editor:last-of-type p {
    color: #141414 !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

/* Button below card */
.elementor-element-36d0dfb {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
}

/* Smaller phones */
@media (max-width: 380px) {
    .mobile-how-it-works-video {
        height: 360px !important;
    }

    .mobile-steps-viewport {
        left: 10px !important;
        right: 10px !important;
    }

    .mobile-step-slide {
        padding: 13px 14px !important;
        gap: 10px !important;
    }

    .mobile-step-slide .step-num {
        flex-basis: 40px !important;
        width: 40px !important;
    }

    .mobile-step-slide .step-num img {
        width: 40px !important;
        height: 40px !important;
    }

    .mobile-step-slide .elementor-widget-text-editor:first-of-type p {
        font-size: 15px !important;
    }

    .mobile-step-slide .elementor-widget-text-editor:last-of-type p {
        font-size: 11px !important;
    }
}
/* Make mobile video same width as the step card */
.mobile-steps-section .elementor-element-43cd02e {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
}

.mobile-steps-section .elementor-element-43cd02e .elementor-widget-container {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Video fills the padded wrapper */
.mobile-how-it-works-video {
    width: 100% !important;
    max-width: 100% !important;
}

/* Smaller phones: match step card spacing */
@media (max-width: 380px) {
    .mobile-steps-section .elementor-element-43cd02e {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}
/* =========================================================
   New page desktop how-it-works video background
========================================================= */

.elementor-element-1f0ef3d {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background-image: none !important;
    background: transparent !important;
}

/* HTML widget with video */
.elementor-element-1f0ef3d .elementor-element-86bb0c7 {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}

.elementor-element-1f0ef3d .elementor-element-86bb0c7 .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
}

.elementor-element-1f0ef3d .how-it-works-video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    z-index: 0 !important;
}

/* Content above video */
.elementor-element-1f0ef3d .elementor-element-162ddbd {
    position: relative !important;
    z-index: 2 !important;
}

/* Optional overlay */
.elementor-element-1f0ef3d::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.35) 45%,
        rgba(0, 0, 0, 0.05) 100%
    );
}
/* =========================================================
   Mobile how-it-works video + sliding step card
========================================================= */

.mobile-steps-section {
    position: relative !important;
    overflow: visible !important;
    width: 100% !important;
    display: block !important;
    margin-bottom: 24px !important;
}

/* Video HTML widget wrappers - old + copied section */
.mobile-steps-section .elementor-widget-html:has(.mobile-how-it-works-video),
.mobile-steps-section .elementor-widget-html:has(.mobile-how-it-works-video) .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
}

/* Video same width as steps */
.mobile-how-it-works-video {
    width: 100% !important;
    max-width: 100% !important;
    height: 390px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 24px !important;
}

/* Step card viewport */
.mobile-steps-viewport {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: auto;
    width: auto !important;
    max-width: none !important;
    overflow: hidden !important;
    z-index: 20 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
}

/* Sliding track */
.mobile-steps-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: auto !important;
    max-width: none !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: transform 0.42s ease !important;
    will-change: transform !important;
}

/* Individual slide/card */
.mobile-step-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    box-sizing: border-box !important;
    background: #DDF9FB !important;
    border: 2px solid #ffffff !important;
    border-radius: 14px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

.mobile-step-slide.mobile-step-active,
.mobile-step-slide.notactiveopacity {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Step number icon */
.mobile-step-slide .step-num {
    flex: 0 0 44px !important;
    width: 44px !important;
    margin: 0 !important;
}

.mobile-step-slide .step-num img {
    width: 44px !important;
    height: 44px !important;
    display: block !important;
}

/* Text wrapper */
.mobile-step-slide .step-num + .e-con {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
}

.mobile-step-slide .elementor-widget-text-editor p {
    margin: 0 !important;
}

.mobile-step-slide .elementor-widget-text-editor:first-of-type p {
    color: #141414 !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

.mobile-step-slide .elementor-widget-text-editor:last-of-type p {
    color: #141414 !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

/* Copied section button */
.elementor-element-f6e0c37 {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
}

/* Original section button */
.elementor-element-36d0dfb {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
}

@media (max-width: 380px) {
    .mobile-steps-section .elementor-widget-html:has(.mobile-how-it-works-video),
    .mobile-steps-section .elementor-widget-html:has(.mobile-how-it-works-video) .elementor-widget-container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .mobile-how-it-works-video {
        height: 360px !important;
    }

    .mobile-steps-viewport {
        left: 10px !important;
        right: 10px !important;
    }

    .mobile-step-slide {
        padding: 13px 14px !important;
        gap: 10px !important;
    }

    .mobile-step-slide .step-num {
        flex-basis: 40px !important;
        width: 40px !important;
    }

    .mobile-step-slide .step-num img {
        width: 40px !important;
        height: 40px !important;
    }

    .mobile-step-slide .elementor-widget-text-editor:first-of-type p {
        font-size: 15px !important;
    }

    .mobile-step-slide .elementor-widget-text-editor:last-of-type p {
        font-size: 11px !important;
    }
}
.pswp__caption{
display: none;
}
.pswp__bg{
	opacity: 0.7 !important;
}



/* =========================================================
   Mobile header cart inline count: icon(x)
========================================================= */

@media (max-width: 1024px) {
    .whb-hidden-lg .wd-header-cart a {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0 !important;
    }

    .whb-hidden-lg .wd-header-cart .wd-tools-icon {
        margin-right: 0 !important;
    }

    .whb-hidden-lg .wd-header-cart .ra-mobile-cart-inline-count {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin-left: -2px !important;

        color: #163642 !important;
        font-family: Inter, Arial, sans-serif !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        line-height: 1 !important;
    }

    .whb-hidden-lg .wd-header-cart:not(.ra-mobile-cart-has-items) .ra-mobile-cart-inline-count {
        display: none !important;
    }
}