.eme-page-shell,.eme-product-shell{max-width:1560px;margin:0 auto;padding:34px 28px 88px}.eme-page-head{margin-bottom:24px}.eme-page-head .shop-title{margin:0}.eme-page-card{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}
.eme-product-breadcrumb{margin-bottom:18px}.eme-product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:28px;align-items:start}.eme-product-gallery,.eme-product-summary,.eme-product-tabs,.eme-related-products{background:#fff;border:1px solid var(--eme-border);border-radius:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-product-gallery{padding:20px;position:sticky;top:104px}.eme-product-main-img{position:relative;background:#fbfbfa;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:560px}.eme-product-main-img img{width:100%;height:100%;max-height:620px;object-fit:contain;padding:28px}.eme-product-zoom{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.eme-product-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}.eme-product-thumbs a{border:2px solid var(--eme-border);border-radius:12px;background:#fff;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:.2s}.eme-product-thumbs a:hover,.eme-product-thumbs a.is-active{border-color:var(--eme-ink)}.eme-product-thumbs img{width:100%;height:100%;object-fit:contain;padding:6px}.eme-product-summary{padding:34px}.eme-product-cat{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:var(--eme-muted);margin-bottom:10px}.eme-product-title{font-family:'Archivo',sans-serif;font-size:clamp(32px,3.2vw,58px);line-height:1.02;font-weight:900;letter-spacing:-.035em;margin:0 0 16px}.eme-product-rating{font-size:14px;color:var(--eme-muted);display:flex;align-items:center;gap:6px;margin-bottom:14px;flex-wrap:wrap}.eme-product-price{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(30px,2.5vw,44px);line-height:1;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:12px 0 8px;color:var(--eme-ink)}.eme-product-price del{font-size:18px;color:var(--eme-muted2);opacity:1}.eme-product-price ins{text-decoration:none}.eme-product-installments{font-size:15px;color:var(--eme-muted);margin-bottom:20px}.eme-product-installments strong{color:var(--eme-ink)}.eme-product-short{font-size:16px;line-height:1.65;color:var(--eme-muted);border-top:1px solid var(--eme-border);padding-top:18px;margin-top:18px}.eme-product-short p{margin:0 0 10px}.eme-product-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.eme-product-trust span{background:var(--eme-bg);border:1px solid var(--eme-border);border-radius:14px;padding:12px 12px;font-size:12px;font-weight:800;color:var(--eme-ink);text-align:center}.eme-product-cartbox{margin:18px 0}.eme-product-cartbox form.cart{display:grid;gap:14px;margin:0}.eme-product-cartbox form.cart::before,.eme-product-cartbox form.cart::after{display:none!important}.eme-product-cartbox .quantity{margin:0!important;display:inline-flex}.eme-product-cartbox .quantity input.qty{width:110px!important;min-height:54px!important;text-align:center!important;font-weight:900!important;border-radius:14px!important}.eme-product-cartbox .single_add_to_cart_button{min-height:56px!important;padding:0 24px!important;font-size:14px!important;border-radius:14px!important;width:100%;text-transform:uppercase}.eme-product-cartbox table.variations{width:100%;margin:0 0 12px}.eme-product-cartbox table.variations td,.eme-product-cartbox table.variations th{display:block;width:100%;padding:0 0 8px}.eme-product-cartbox table.variations label{font-weight:900}.eme-product-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--eme-muted);font-size:13px;border-top:1px solid var(--eme-border);padding-top:18px;margin-top:18px}.eme-product-meta span{background:#fff;border:1px solid var(--eme-border);border-radius:999px;padding:8px 12px}.eme-product-tabs{padding:0;margin-top:28px;overflow:hidden}.eme-product-tabs .woocommerce-tabs{margin:0!important}.eme-product-tabs ul.tabs{padding:20px 20px 0!important;margin:0 0 0!important;display:flex;gap:10px;flex-wrap:wrap;border:none!important;background:#fff}.eme-product-tabs ul.tabs::before,.eme-product-tabs ul.tabs::after{display:none!important}.eme-product-tabs ul.tabs li{border:none!important;background:var(--eme-bg)!important;border-radius:999px!important;padding:0!important;margin:0!important}.eme-product-tabs ul.tabs li a{padding:12px 18px!important;font-size:14px;font-weight:900;color:var(--eme-ink)!important}.eme-product-tabs ul.tabs li.active{background:var(--eme-ink)!important}.eme-product-tabs ul.tabs li.active a{color:#fff!important}.eme-product-tabs .woocommerce-Tabs-panel{padding:24px!important;margin:0!important;color:var(--eme-ink);line-height:1.7}.eme-product-tabs .woocommerce-Tabs-panel h2{font-size:24px;margin:0 0 14px}.eme-related-products{padding:24px;margin-top:28px}.eme-related-products>section>h2,.eme-related-products .related>h2{font-size:28px;margin:0 0 18px}.eme-related-products ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0!important}.eme-related-products ul.products::before,.eme-related-products ul.products::after{display:none!important}.eme-related-products ul.products li.product{width:auto!important;margin:0!important;background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px;box-shadow:none}.eme-related-products ul.products li.product img{aspect-ratio:1;object-fit:contain;background:#fbfbfa;border-radius:14px;padding:12px}.eme-related-products ul.products li.product .woocommerce-loop-product__title{font-family:'Inter',sans-serif;font-size:14px;font-weight:800;line-height:1.35}.eme-related-products ul.products li.product .price{font-family:'Archivo',sans-serif;font-size:17px;font-weight:900;color:var(--eme-ink)}
.eme-sw-shell-page .woocommerce-cart-form,.eme-sw-shell-page .woocommerce-checkout,.eme-sw-shell-page .woocommerce-MyAccount-content,.eme-sw-shell-page .woocommerce-MyAccount-navigation,.eme-sw-shell-page .woocommerce form.login,.eme-sw-shell-page .woocommerce form.register{background:#fff;border:1px solid var(--eme-border);border-radius:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .woocommerce-cart-form{padding:18px}.eme-sw-shell-page .shop_table{border:none!important;border-collapse:separate!important;border-spacing:0 14px!important;background:transparent}.eme-sw-shell-page .shop_table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--eme-muted);border:none!important;padding:0 12px 8px!important}.eme-sw-shell-page .shop_table tbody tr{background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.03)}.eme-sw-shell-page .shop_table tbody td{border-top:none!important;padding:18px 12px!important;background:#fff}.eme-sw-shell-page .shop_table tbody tr td:first-child{border-radius:18px 0 0 18px}.eme-sw-shell-page .shop_table tbody tr td:last-child{border-radius:0 18px 18px 0}.eme-sw-shell-page .woocommerce-cart-form__contents .product-name a,.eme-sw-shell-page .shop_table .product-name a{font-weight:800;color:var(--eme-ink)}.eme-sw-shell-page .woocommerce .quantity .qty{min-height:44px;border-radius:12px}.eme-sw-shell-page .actions .coupon{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.eme-sw-shell-page .actions .coupon input{min-width:220px}.eme-sw-shell-page .cart-collaterals{margin-top:22px}.eme-sw-shell-page .cart_totals{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;float:none!important;width:100%!important;max-width:460px;margin-left:auto;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .cart_totals h2{font-size:26px;margin-bottom:16px}.eme-sw-shell-page .cart_totals table th,.eme-sw-shell-page .cart_totals table td{padding:12px 0!important;border-top:1px solid var(--eme-border)!important}.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button{width:100%;text-align:center;min-height:56px;padding:16px 18px!important;font-size:14px!important}.eme-sw-shell-page form.checkout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:24px;align-items:start}.eme-sw-shell-page #customer_details{width:auto!important;float:none!important;margin:0!important;display:grid;gap:20px}.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2{width:auto!important;float:none!important;margin:0!important;background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page #order_review_heading{font-size:26px;margin:0 0 14px}.eme-sw-shell-page #order_review{width:auto!important;float:none!important;background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page #payment{background:var(--eme-soft)!important;border-radius:18px!important;padding:16px!important}.eme-sw-shell-page #payment div.payment_box{background:#fff!important;border-radius:14px!important}.eme-sw-shell-page #payment div.payment_box::before{display:none!important}.eme-sw-shell-page #place_order{width:100%;min-height:56px;padding:16px 18px!important;font-size:14px!important}.eme-sw-shell-page .woocommerce-MyAccount-navigation{padding:18px}.eme-sw-shell-page .woocommerce-MyAccount-navigation ul{list-style:none;display:grid;gap:8px;padding:0;margin:0}.eme-sw-shell-page .woocommerce-MyAccount-navigation li{margin:0!important}.eme-sw-shell-page .woocommerce-MyAccount-navigation a{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-radius:14px;font-weight:800;color:var(--eme-muted);background:transparent}.eme-sw-shell-page .woocommerce-MyAccount-navigation .is-active a,.eme-sw-shell-page .woocommerce-MyAccount-navigation a:hover{background:var(--eme-ink);color:#fff}.eme-sw-shell-page .woocommerce-MyAccount-content{padding:26px}.eme-sw-shell-page .woocommerce-MyAccount-content p{line-height:1.7;color:var(--eme-muted)}.eme-sw-shell-page .woocommerce-MyAccount-content .button{margin-top:10px}.eme-sw-shell-page .woocommerce form.login,.eme-sw-shell-page .woocommerce form.register{padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .woocommerce form.login .button,.eme-sw-shell-page .woocommerce form.register .button{min-height:50px;padding:0 18px!important}.eme-sw-shell-page .woocommerce form .form-row label{font-weight:800;color:var(--eme-ink);margin-bottom:8px}.eme-sw-shell-page .select2-container .select2-selection--single .select2-selection__rendered{line-height:48px!important;padding-left:0!important}.eme-sw-shell-page .select2-container .select2-selection--single .select2-selection__arrow{height:48px!important}.eme-sw-shell-page .woocommerce ul.order_details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;margin:0 0 22px;list-style:none}.eme-sw-shell-page .woocommerce ul.order_details li{background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px 18px;font-size:13px;line-height:1.5;margin:0!important}
@media(max-width:1280px){.eme-page-shell,.eme-product-shell{max-width:1220px}.eme-product-layout{grid-template-columns:1fr 1fr}.eme-product-main-img{min-height:460px}.eme-related-products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1120px){.eme-page-shell,.eme-product-shell{padding:24px 20px 72px}.eme-product-layout,.eme-sw-shell-page form.checkout{grid-template-columns:1fr}.eme-product-gallery{position:static}.eme-product-main-img{min-height:420px}.eme-related-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.eme-page-shell,.eme-product-shell{padding:20px 16px 68px}.eme-page-card{padding:18px}.eme-product-summary{padding:24px}.eme-product-title{font-size:34px}.eme-product-main-img{min-height:360px}.eme-product-trust{grid-template-columns:1fr}.eme-sw-shell-page .shop_table thead{display:none}.eme-sw-shell-page .shop_table tbody tr,.eme-sw-shell-page .shop_table tbody td{display:block;width:100%!important}.eme-sw-shell-page .shop_table tbody tr td{border-radius:0!important}.eme-sw-shell-page .shop_table tbody tr td:first-child{border-radius:18px 18px 0 0!important}.eme-sw-shell-page .shop_table tbody tr td:last-child{border-radius:0 0 18px 18px!important}.eme-sw-shell-page .woocommerce ul.order_details{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.eme-page-shell,.eme-product-shell{padding:18px 12px 64px}.eme-page-card{padding:14px;border-radius:20px}.eme-product-gallery,.eme-product-summary,.eme-product-tabs,.eme-related-products{border-radius:20px}.eme-product-gallery{padding:12px}.eme-product-main-img{min-height:300px;border-radius:16px}.eme-product-main-img img{padding:16px}.eme-product-thumbs{grid-template-columns:repeat(4,1fr);gap:8px}.eme-product-summary{padding:20px}.eme-product-title{font-size:30px}.eme-product-price{font-size:30px}.eme-product-short{font-size:15px}.eme-product-cartbox .single_add_to_cart_button{min-height:52px!important}.eme-related-products{padding:16px}.eme-related-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.eme-sw-shell-page .woocommerce ul.order_details{grid-template-columns:1fr}.eme-sw-shell-page .actions .coupon{display:grid;grid-template-columns:1fr}.eme-sw-shell-page .cart_totals{max-width:none}.eme-sw-shell-page .cart_totals,.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2,.eme-sw-shell-page #order_review{padding:18px;border-radius:20px}}

/* === Wider cart / checkout / product V3 === */
.eme-page-shell,
.eme-product-shell{max-width:none!important;width:min(1720px,calc(100vw - 56px))!important;margin-left:auto!important;margin-right:auto!important;padding:36px 0 92px!important}
.eme-page-card{padding:28px!important;border-radius:28px!important;box-shadow:0 18px 50px rgba(0,0,0,.05)!important}
.eme-product-layout-v3{grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)!important;gap:32px!important;align-items:start!important}.eme-product-gallery{position:sticky;top:104px;padding:22px!important}.eme-product-main-img{min-height:610px!important}.eme-product-summary.eme-product-buybox{padding:32px!important;position:sticky;top:104px}.eme-product-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.eme-product-topline .eme-product-cat{margin:0}.eme-stock-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;background:var(--eme-soft);color:var(--eme-muted);white-space:nowrap}.eme-stock-pill.is-in{background:#ecfdf3;color:#087443}.eme-stock-pill.is-out{background:#f1f1f1;color:#777}.eme-stock-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.eme-social-proof{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--eme-muted);font-size:14px;margin:0 0 16px}.eme-product-value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.eme-product-value-grid div{background:var(--eme-bg);border:1px solid var(--eme-border);border-radius:16px;padding:13px 14px;min-height:68px}.eme-product-value-grid strong{display:block;font-size:13px;font-weight:900;color:var(--eme-ink);margin-bottom:3px}.eme-product-value-grid span{font-size:12px;color:var(--eme-muted);font-weight:700}.eme-product-cartbox{background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px;margin:20px 0!important}.eme-product-cartbox form.cart{display:grid!important;grid-template-columns:132px 1fr!important;gap:12px!important;align-items:center!important}.eme-product-cartbox .quantity{width:100%!important}.eme-product-cartbox .quantity input.qty{width:100%!important;min-height:58px!important}.eme-product-cartbox .single_add_to_cart_button{grid-column:auto!important;min-height:58px!important;font-size:15px!important;background:var(--eme-ink)!important;color:#fff!important;border-radius:15px!important}.eme-product-cartbox .single_add_to_cart_button:hover{background:var(--eme-red)!important}.eme-product-cartbox form.cart:not(:has(.quantity)){grid-template-columns:1fr!important}.eme-product-cartbox form.variations_form.cart{grid-template-columns:1fr!important}.eme-product-cartbox table.variations{grid-column:1/-1!important}.eme-after-cta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 18px}.eme-after-cta span{font-size:12px;font-weight:900;text-align:center;border-radius:999px;background:#fafafa;border:1px solid var(--eme-border);padding:9px 8px;color:var(--eme-ink)}.eme-conversion-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}.eme-conversion-strip div{background:#fff;border:1px solid var(--eme-border);border-radius:20px;padding:18px 20px;box-shadow:0 12px 30px rgba(0,0,0,.035)}.eme-conversion-strip strong{display:block;font-family:'Archivo',sans-serif;font-size:17px;margin-bottom:4px}.eme-conversion-strip span{font-size:13px;color:var(--eme-muted);font-weight:600}.eme-product-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.eme-info-card{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-info-card h2{font-size:24px;margin:0 0 12px}.eme-info-card ul{margin:0;padding-left:18px;color:var(--eme-muted);line-height:1.7}.eme-info-card li{margin:4px 0}.eme-sw-shell-page .woocommerce{width:100%!important}.eme-cart-shell .eme-page-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.eme-cart-shell .woocommerce{display:grid!important;grid-template-columns:minmax(0,1fr) 420px!important;gap:28px!important;align-items:start!important}.eme-cart-shell .woocommerce > .woocommerce-cart-form{grid-column:1!important;margin:0!important}.eme-cart-shell .woocommerce > .cart-collaterals{grid-column:2!important;margin:0!important;position:sticky;top:104px}.eme-sw-shell-page .woocommerce-cart-form{padding:22px!important;border-radius:28px!important}.eme-sw-shell-page .cart_totals{max-width:none!important;margin:0!important;padding:28px!important;border-radius:28px!important}.eme-sw-shell-page .cart_totals h2{font-size:30px!important}.eme-sw-shell-page .woocommerce-cart-form__cart-item .product-thumbnail img{width:74px!important;height:74px!important;object-fit:contain;background:#fbfbfa;border-radius:12px;padding:8px}.eme-sw-shell-page .woocommerce-cart-form__cart-item .product-name a{font-size:16px!important;line-height:1.35!important}.eme-checkout-shell .eme-page-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.eme-sw-shell-page form.checkout{grid-template-columns:minmax(0,1fr) 460px!important;gap:28px!important;align-items:start!important}.eme-sw-shell-page #order_review{position:sticky;top:104px;border-radius:28px!important}.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2{border-radius:28px!important;padding:28px!important}.eme-sw-shell-page #customer_details h3,.eme-sw-shell-page #order_review_heading{font-size:28px!important}.eme-sw-shell-page .woocommerce form .form-row input.input-text,.eme-sw-shell-page .woocommerce form .form-row textarea,.eme-sw-shell-page .woocommerce form .form-row select,.eme-sw-shell-page .select2-container .select2-selection--single{min-height:54px!important;border-radius:16px!important}.eme-sw-shell-page #place_order,.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button{min-height:60px!important;border-radius:16px!important;font-size:15px!important;background:var(--eme-ink)!important}.eme-sw-shell-page #place_order:hover,.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button:hover{background:var(--eme-red)!important}
@media(max-width:1360px){.eme-page-shell,.eme-product-shell{width:min(1560px,calc(100vw - 44px))!important}.eme-product-layout-v3{grid-template-columns:minmax(0,1fr) minmax(390px,.86fr)!important}.eme-product-main-img{min-height:520px!important}.eme-cart-shell .woocommerce{grid-template-columns:minmax(0,1fr) 380px!important}.eme-sw-shell-page form.checkout{grid-template-columns:minmax(0,1fr) 420px!important}}
@media(max-width:1120px){.eme-page-shell,.eme-product-shell{width:calc(100vw - 32px)!important;padding:26px 0 76px!important}.eme-product-layout-v3,.eme-cart-shell .woocommerce,.eme-sw-shell-page form.checkout{grid-template-columns:1fr!important}.eme-product-gallery,.eme-product-summary.eme-product-buybox,.eme-cart-shell .woocommerce > .cart-collaterals,.eme-sw-shell-page #order_review{position:static!important}.eme-cart-shell .woocommerce > .cart-collaterals{grid-column:1!important}.eme-conversion-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.eme-product-info-grid{grid-template-columns:1fr}.eme-product-main-img{min-height:420px!important}}
@media(max-width:720px){.eme-page-shell,.eme-product-shell{width:calc(100vw - 20px)!important;padding:18px 0 68px!important}.eme-product-layout-v3{gap:14px!important}.eme-product-gallery,.eme-product-summary.eme-product-buybox,.eme-product-tabs,.eme-related-products,.eme-info-card{border-radius:20px!important}.eme-product-gallery{padding:12px!important}.eme-product-main-img{min-height:310px!important}.eme-product-summary.eme-product-buybox{padding:18px!important}.eme-product-title{font-size:32px!important}.eme-product-price{font-size:30px!important}.eme-product-topline{align-items:flex-start;flex-direction:column}.eme-product-value-grid{grid-template-columns:1fr 1fr;gap:8px}.eme-product-cartbox form.cart{grid-template-columns:1fr!important}.eme-after-cta{grid-template-columns:1fr}.eme-conversion-strip{grid-template-columns:1fr;gap:10px}.eme-conversion-strip div{padding:16px}.eme-page-card{padding:0!important;background:transparent!important;border:none!important;box-shadow:none!important}.eme-sw-shell-page .woocommerce-cart-form,.eme-sw-shell-page .cart_totals,.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2,.eme-sw-shell-page #order_review{padding:18px!important;border-radius:20px!important}.eme-sw-shell-page .shop_table tbody tr{border-radius:18px!important;overflow:hidden}.eme-sw-shell-page form.checkout{gap:16px!important}.eme-sw-shell-page #customer_details h3,.eme-sw-shell-page #order_review_heading{font-size:24px!important}}

/* === EME V4: compact product, fixed cart/checkout widths === */
body.eme-sw-woo{overflow-x:hidden!important;background:var(--eme-bg)!important;}
body.eme-sw-woo .eme-page-shell,
body.eme-sw-woo .eme-product-shell{
  width:min(1320px,calc(100vw - 56px))!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:28px 0 78px!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-product-breadcrumb{margin-bottom:14px!important;}
body.eme-sw-product-page .eme-product-layout-v3{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(390px,0.9fr)!important;
  gap:24px!important;
  align-items:start!important;
}
body.eme-sw-product-page .eme-product-gallery,
body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
  border-radius:24px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.045)!important;
}
body.eme-sw-product-page .eme-product-gallery{
  padding:18px!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-product-page .eme-product-main-img{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:1.08/1!important;
  max-height:560px!important;
  border-radius:18px!important;
}
body.eme-sw-product-page .eme-product-main-img img{
  width:100%!important;
  height:100%!important;
  max-height:520px!important;
  object-fit:contain!important;
  padding:18px!important;
}
body.eme-sw-product-page .eme-product-thumbs{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:12px!important;
}
body.eme-sw-product-page .eme-product-thumbs a{border-radius:12px!important;}
body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
  padding:24px!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-product-page .eme-product-title{
  font-size:clamp(30px,3vw,44px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
  margin-bottom:12px!important;
}
body.eme-sw-product-page .eme-product-price{
  font-size:clamp(28px,2.5vw,40px)!important;
  margin:10px 0 6px!important;
}
body.eme-sw-product-page .eme-product-installments{margin-bottom:14px!important;font-size:14px!important;}
body.eme-sw-product-page .eme-social-proof{margin-bottom:12px!important;font-size:13px!important;}
body.eme-sw-product-page .eme-product-value-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:14px 0!important;
}
body.eme-sw-product-page .eme-product-value-grid div{
  min-height:58px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
}
body.eme-sw-product-page .eme-product-short{
  font-size:14px!important;
  line-height:1.55!important;
  padding-top:14px!important;
  margin-top:14px!important;
}
body.eme-sw-product-page .eme-product-cartbox{
  padding:14px!important;
  margin:16px 0 12px!important;
  border-radius:16px!important;
}
body.eme-sw-product-page .eme-product-cartbox form.cart{
  grid-template-columns:118px 1fr!important;
  gap:10px!important;
}
body.eme-sw-product-page .eme-product-cartbox .quantity input.qty{min-height:52px!important;}
body.eme-sw-product-page .eme-product-cartbox .single_add_to_cart_button{
  min-height:52px!important;
  font-size:14px!important;
  border-radius:14px!important;
}
body.eme-sw-product-page .eme-after-cta{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:10px 0 14px!important;
}
body.eme-sw-product-page .eme-after-cta span{
  padding:8px 7px!important;
  font-size:11px!important;
}
body.eme-sw-product-page .eme-product-meta{padding-top:14px!important;margin-top:14px!important;font-size:12px!important;}
body.eme-sw-product-page .eme-conversion-strip{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:22px 0!important;
}
body.eme-sw-product-page .eme-conversion-strip div{padding:15px!important;border-radius:18px!important;}
body.eme-sw-product-page .eme-conversion-strip strong{font-size:15px!important;}
body.eme-sw-product-page .eme-conversion-strip span{font-size:12px!important;line-height:1.35!important;}
body.eme-sw-product-page .eme-product-info-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin:22px 0!important;
}
body.eme-sw-product-page .eme-info-card{padding:18px!important;border-radius:20px!important;}
body.eme-sw-product-page .eme-info-card h2{font-size:20px!important;margin-bottom:8px!important;}
body.eme-sw-product-page .eme-info-card ul{font-size:14px!important;line-height:1.55!important;}
body.eme-sw-product-page .eme-product-tabs,
body.eme-sw-product-page .eme-related-products{margin-top:22px!important;border-radius:22px!important;}
body.eme-sw-product-page .eme-product-tabs .woocommerce-Tabs-panel{padding:20px!important;}

/* Cart: prevent narrow/vertical summary and keep Shopify-like layout */
body.eme-sw-cart-page .eme-page-shell,
body.eme-sw-checkout-page .eme-page-shell{
  width:min(1280px,calc(100vw - 56px))!important;
  max-width:1280px!important;
}
body.eme-sw-cart-page .eme-page-head,
body.eme-sw-checkout-page .eme-page-head{margin-bottom:20px!important;}
body.eme-sw-cart-page .eme-page-card,
body.eme-sw-checkout-page .eme-page-card{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
}
body.eme-sw-cart-page .eme-cart-shell .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,400px)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .woocommerce-cart-form{
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
  float:none!important;
  margin:0!important;
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-cart-page .cart-collaterals{
  grid-column:2!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-cart-page .cart_totals{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-cart-page .cart_totals h2,
body.eme-sw-cart-page .cart_totals *{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body.eme-sw-cart-page .cart_totals h2{font-size:26px!important;line-height:1.1!important;white-space:normal!important;}
body.eme-sw-cart-page .shop_table{width:100%!important;table-layout:auto!important;}
body.eme-sw-cart-page .shop_table td,
body.eme-sw-cart-page .shop_table th{white-space:normal!important;}
body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;}

/* Checkout: fixed readable width */
body.eme-sw-checkout-page form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.eme-sw-checkout-page #customer_details,
body.eme-sw-checkout-page #order_review,
body.eme-sw-checkout-page #order_review_heading{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page #customer_details .col-1,
body.eme-sw-checkout-page #customer_details .col-2,
body.eme-sw-checkout-page #order_review{
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-checkout-page #order_review{
  position:sticky!important;
  top:104px!important;
  overflow:hidden!important;
}
body.eme-sw-checkout-page #order_review table{width:100%!important;table-layout:auto!important;}
body.eme-sw-checkout-page #order_review td,
body.eme-sw-checkout-page #order_review th{white-space:normal!important;word-break:normal!important;}
body.eme-sw-checkout-page .woocommerce-checkout-payment{border-radius:20px!important;overflow:hidden!important;}

@media(max-width:1180px){
  body.eme-sw-product-page .eme-product-layout-v3,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce,
  body.eme-sw-checkout-page form.checkout{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-product-gallery,
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox,
  body.eme-sw-cart-page .cart-collaterals,
  body.eme-sw-checkout-page #order_review{position:static!important;}
  body.eme-sw-product-page .eme-product-main-img{max-height:none!important;aspect-ratio:1.15/1!important;}
  body.eme-sw-product-page .eme-product-info-grid{grid-template-columns:1fr!important;}
}
@media(max-width:760px){
  body.eme-sw-woo .eme-page-shell,
  body.eme-sw-woo .eme-product-shell{width:calc(100vw - 22px)!important;padding:18px 0 64px!important;}
  body.eme-sw-product-page .eme-product-title{font-size:30px!important;}
  body.eme-sw-product-page .eme-product-price{font-size:28px!important;}
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{padding:18px!important;}
  body.eme-sw-product-page .eme-product-gallery{padding:12px!important;}
  body.eme-sw-product-page .eme-product-main-img{aspect-ratio:1!important;min-height:280px!important;}
  body.eme-sw-product-page .eme-product-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  body.eme-sw-product-page .eme-product-value-grid{grid-template-columns:1fr 1fr!important;}
  body.eme-sw-product-page .eme-product-cartbox form.cart{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-after-cta{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-conversion-strip{grid-template-columns:1fr!important;}
  body.eme-sw-cart-page .woocommerce-cart-form,
  body.eme-sw-cart-page .cart_totals,
  body.eme-sw-checkout-page #customer_details .col-1,
  body.eme-sw-checkout-page #customer_details .col-2,
  body.eme-sw-checkout-page #order_review{padding:18px!important;border-radius:20px!important;}
}


/* === EME V6 desde V4: caja de compra arriba y producto compacto === */
body.eme-sw-product-page .eme-product-cartbox-priority{margin:14px 0 14px!important;padding:14px!important;background:#fff!important;border:1px solid var(--eme-border)!important;box-shadow:0 10px 28px rgba(0,0,0,.035)!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock{font-size:15px!important;font-weight:800!important;color:var(--eme-ink)!important;margin:0 0 10px!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.in-stock{color:var(--eme-green)!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.out-of-stock{color:var(--eme-red)!important;}
body.eme-sw-product-page .eme-product-value-grid{margin-top:10px!important;}
body.eme-sw-product-page .eme-product-short{margin-top:12px!important;}
@media(min-width:1181px){
  body.eme-sw-product-page .eme-product-layout-v3{grid-template-columns:minmax(0,.98fr) minmax(420px,.82fr)!important;}
  body.eme-sw-product-page .eme-product-title{font-size:clamp(30px,2.6vw,42px)!important;}
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{padding:22px!important;}
}
@media(max-width:760px){
  body.eme-sw-product-page .eme-product-cartbox-priority{padding:12px!important;}
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{width:100%!important;}
}


/* === EME V13: checkout sin tÃ­tulo y centrado real ===
   Se toca Ãºnicamente checkout: quitamos el encabezado grande y centramos
   el bloque como en tienda, sin modificar home, tienda, producto ni carrito. */
body.eme-sw-checkout-page .eme-page-head{
  display:none!important;
}
@media (min-width:1181px){
  body.eme-sw-checkout-page .eme-checkout-shell{
    position:relative!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(1280px, calc(100vw - 72px))!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-shell .eme-page-card,
  body.eme-sw-checkout-page .eme-checkout-shell .woocommerce,
  body.eme-sw-checkout-page .eme-checkout-shell form.checkout{
    width:100%!important;
    max-width:100%!important;
  }
}
@media (min-width:1181px) and (max-width:1500px){
  body.eme-sw-checkout-page .eme-checkout-shell{
    width:calc(100vw - 48px)!important;
  }
}

/* === EME V14: carrito centrado y tÃ­tulo mÃ¡s compacto ===
   Base V13. Se toca Ãºnicamente la pÃ¡gina de carrito. */
@media (min-width:1181px){
  body.eme-sw-cart-page .eme-cart-shell{
    position:relative!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(1360px, calc(100vw - 96px))!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page .eme-cart-shell .eme-page-card,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{
    width:100%!important;
    max-width:100%!important;
  }
  body.eme-sw-cart-page .eme-page-head{
    margin-bottom:18px!important;
  }
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(38px, 3.1vw, 50px)!important;
    line-height:1!important;
    letter-spacing:-.035em!important;
  }
}
@media (min-width:1181px) and (max-width:1500px){
  body.eme-sw-cart-page .eme-cart-shell{
    width:calc(100vw - 72px)!important;
  }
}
@media (max-width:1180px){
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(34px, 8vw, 44px)!important;
  }
}

/* === EME V16: carrito mobile premium ===
   Solo corrige /carrito/ en celular: cards reales, producto visible,
   cantidades legibles y CTA sin WhatsApp encima. */
@media (max-width: 760px){
  body.eme-sw-cart-page{overflow-x:hidden!important;}
  body.eme-sw-cart-page .eme-cart-shell{
    width:100%!important;
    max-width:100%!important;
    padding:18px 14px 120px!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page .eme-page-head{
    margin:0 0 22px!important;
    padding:0!important;
  }
  body.eme-sw-cart-page .eme-page-head .breadcrumb,
  body.eme-sw-cart-page .eme-page-head .eme-breadcrumb{display:none!important;}
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(38px, 12vw, 52px)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
    margin:0!important;
  }
  body.eme-sw-cart-page .eme-page-card,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page .woocommerce-cart-form{
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page table.cart,
  body.eme-sw-cart-page table.cart tbody,
  body.eme-sw-cart-page table.cart tfoot,
  body.eme-sw-cart-page table.cart tr,
  body.eme-sw-cart-page table.cart td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page table.cart thead{display:none!important;}
  body.eme-sw-cart-page table.cart{
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    margin:0!important;
    background:transparent!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    column-gap:16px!important;
    row-gap:0!important;
    background:#fff!important;
    border:1px solid var(--eme-border)!important;
    border-radius:22px!important;
    box-shadow:0 14px 36px rgba(0,0,0,.045)!important;
    padding:18px 16px 14px!important;
    margin:0 0 14px!important;
    overflow:hidden!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item td{
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding:0!important;
    text-align:left!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item td::before{
    float:none!important;
    font-weight:800!important;
    color:var(--eme-muted)!important;
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  body.eme-sw-cart-page table.cart td.product-remove{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    width:34px!important;
    height:34px!important;
    z-index:2!important;
  }
  body.eme-sw-cart-page table.cart td.product-remove a.remove{
    width:34px!important;
    height:34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    background:#f5f5f3!important;
    color:#777!important;
    font-size:20px!important;
    line-height:1!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail{
    grid-column:1!important;
    grid-row:1 / span 4!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    padding-top:4px!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail a,
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    display:block!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:82px!important;
    height:82px!important;
    object-fit:contain!important;
    border-radius:14px!important;
    background:#fafafa!important;
    padding:8px!important;
  }
  body.eme-sw-cart-page table.cart td.product-name{
    grid-column:2!important;
    padding:0 30px 12px 0!important;
    min-height:82px!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  body.eme-sw-cart-page table.cart td.product-name::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.product-name a{
    display:block!important;
    color:var(--eme-ink)!important;
    font-size:16px!important;
    line-height:1.28!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
    text-align:left!important;
  }
  body.eme-sw-cart-page table.cart td.product-price,
  body.eme-sw-cart-page table.cart td.product-quantity,
  body.eme-sw-cart-page table.cart td.product-subtotal{
    grid-column:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:48px!important;
    padding:10px 0!important;
    border-top:1px dashed var(--eme-border)!important;
  }
  body.eme-sw-cart-page table.cart td.product-price::before{content:'Precio'!important;}
  body.eme-sw-cart-page table.cart td.product-quantity::before{content:'Cantidad'!important;}
  body.eme-sw-cart-page table.cart td.product-subtotal::before{content:'Subtotal'!important;}
  body.eme-sw-cart-page table.cart td.product-price .amount,
  body.eme-sw-cart-page table.cart td.product-subtotal .amount{
    font-size:18px!important;
    font-weight:900!important;
    color:var(--eme-ink)!important;
    white-space:nowrap!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:118px!important;
    max-width:130px!important;
    height:42px!important;
    border:1px solid var(--eme-border)!important;
    border-radius:999px!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{
    width:48px!important;
    min-width:48px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    text-align:center!important;
    font-size:16px!important;
    font-weight:900!important;
    background:#fff!important;
    color:var(--eme-ink)!important;
    appearance:textfield!important;
    -moz-appearance:textfield!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty::-webkit-outer-spin-button,
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty::-webkit-inner-spin-button{appearance:none!important;-webkit-appearance:none!important;margin:0!important;}
  body.eme-sw-cart-page table.cart td.actions{
    display:block!important;
    background:#fff!important;
    border:1px solid var(--eme-border)!important;
    border-radius:22px!important;
    box-shadow:0 14px 36px rgba(0,0,0,.04)!important;
    padding:16px!important;
    margin:14px 0!important;
  }
  body.eme-sw-cart-page table.cart td.actions::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.actions .coupon{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:0 0 10px!important;
  }
  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    border-radius:14px!important;
    font-size:16px!important;
  }
  body.eme-sw-cart-page table.cart td.actions .coupon .button,
  body.eme-sw-cart-page table.cart td.actions > .button{
    width:100%!important;
    min-height:52px!important;
    border-radius:14px!important;
    font-size:13px!important;
    font-weight:900!important;
  }
  body.eme-sw-cart-page .cart-collaterals{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    margin:16px 0 0!important;
  }
  body.eme-sw-cart-page .cart_totals{
    width:100%!important;
    max-width:100%!important;
    padding:18px!important;
    border-radius:22px!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page .cart_totals h2{
    font-size:26px!important;
    line-height:1.1!important;
    margin:0 0 14px!important;
  }
  body.eme-sw-cart-page .cart_totals table,
  body.eme-sw-cart-page .cart_totals tbody,
  body.eme-sw-cart-page .cart_totals tr,
  body.eme-sw-cart-page .cart_totals th,
  body.eme-sw-cart-page .cart_totals td{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
  }
  body.eme-sw-cart-page .wc-proceed-to-checkout{
    padding:12px 0 0!important;
  }
  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{
    min-height:58px!important;
    border-radius:18px!important;
    font-size:14px!important;
    letter-spacing:.04em!important;
  }
  body.eme-sw-cart-page .wa-float,
  body.eme-sw-cart-page .whatsapp-float,
  body.eme-sw-cart-page a[href*='wa.me'],
  body.eme-sw-cart-page a[href*='api.whatsapp.com']{
    display:none!important;
  }
}

/* === EME V17: carrito mobile real, compacto y sin CTA gigante === */
@media (max-width: 760px){
  body.eme-sw-cart-page{overflow-x:hidden!important;background:#f7f7f5!important;}
  body.eme-sw-cart-page .eme-cart-shell{width:100%!important;max-width:100%!important;margin:0!important;padding:18px 10px 48px!important;box-sizing:border-box!important;}
  body.eme-sw-cart-page .eme-page-head{padding:0 2px!important;margin:0 0 14px!important;}
  body.eme-sw-cart-page .eme-page-head .shop-title,body.eme-sw-cart-page .eme-cart-shell .shop-title{font-size:clamp(34px,11vw,46px)!important;line-height:.95!important;margin:0!important;}
  body.eme-sw-cart-page .eme-page-card{width:100%!important;margin:0!important;padding:0!important;}
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{display:block!important;width:100%!important;max-width:100%!important;}
  body.eme-sw-cart-page table.cart tr.cart_item{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;grid-template-areas:"name name" "thumb price" "thumb qty" "thumb subtotal"!important;gap:0 14px!important;padding:16px 14px!important;margin:0 0 12px!important;border-radius:20px!important;background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 10px 28px rgba(0,0,0,.045)!important;overflow:hidden!important;min-height:0!important;}
  body.eme-sw-cart-page table.cart tr.cart_item td{min-width:0!important;}
  body.eme-sw-cart-page table.cart td.product-remove{position:absolute!important;right:12px!important;top:12px!important;width:32px!important;height:32px!important;z-index:5!important;}
  body.eme-sw-cart-page table.cart td.product-remove a.remove{width:32px!important;height:32px!important;font-size:18px!important;background:#f3f3f1!important;color:#555!important;}
  body.eme-sw-cart-page table.cart td.product-name{grid-area:name!important;display:block!important;min-height:0!important;padding:0 42px 12px 0!important;margin:0!important;}
  body.eme-sw-cart-page table.cart td.product-name a{font-size:17px!important;line-height:1.18!important;font-weight:900!important;letter-spacing:-.02em!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-align:left!important;color:var(--eme-ink)!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail{grid-area:thumb!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:2px 0 0!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail img{width:72px!important;height:72px!important;object-fit:contain!important;padding:7px!important;border-radius:14px!important;background:#fafafa!important;}
  body.eme-sw-cart-page table.cart td.product-price{grid-area:price!important;}
  body.eme-sw-cart-page table.cart td.product-quantity{grid-area:qty!important;}
  body.eme-sw-cart-page table.cart td.product-subtotal{grid-area:subtotal!important;}
  body.eme-sw-cart-page table.cart td.product-price,body.eme-sw-cart-page table.cart td.product-quantity,body.eme-sw-cart-page table.cart td.product-subtotal{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:38px!important;padding:7px 0!important;border-top:1px dashed rgba(0,0,0,.09)!important;}
  body.eme-sw-cart-page table.cart td.product-price::before,body.eme-sw-cart-page table.cart td.product-quantity::before,body.eme-sw-cart-page table.cart td.product-subtotal::before{font-size:11px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#777!important;}
  body.eme-sw-cart-page table.cart td.product-price .amount,body.eme-sw-cart-page table.cart td.product-subtotal .amount{font-size:17px!important;line-height:1!important;font-weight:900!important;letter-spacing:-.01em!important;white-space:nowrap!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity{min-width:108px!important;width:108px!important;max-width:108px!important;height:38px!important;border-radius:999px!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{width:42px!important;min-width:42px!important;height:36px!important;min-height:36px!important;font-size:15px!important;line-height:36px!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity button,body.eme-sw-cart-page table.cart td.product-quantity .quantity .minus,body.eme-sw-cart-page table.cart td.product-quantity .quantity .plus{width:32px!important;height:36px!important;min-width:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  body.eme-sw-cart-page table.cart td.actions{padding:12px!important;margin:12px 0!important;border-radius:18px!important;box-shadow:0 10px 24px rgba(0,0,0,.035)!important;}
  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text,body.eme-sw-cart-page table.cart td.actions .coupon .button,body.eme-sw-cart-page table.cart td.actions > .button{min-height:48px!important;height:48px!important;border-radius:13px!important;font-size:13px!important;}
  body.eme-sw-cart-page .cart-collaterals{position:static!important;width:100%!important;margin:12px 0 0!important;}
  body.eme-sw-cart-page .cart_totals{padding:16px!important;border-radius:20px!important;box-shadow:0 10px 28px rgba(0,0,0,.04)!important;}
  body.eme-sw-cart-page .cart_totals h2{font-size:23px!important;margin-bottom:12px!important;}
  body.eme-sw-cart-page .wc-proceed-to-checkout{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:auto!important;width:100%!important;padding:10px 0 0!important;margin:0!important;background:transparent!important;box-shadow:none!important;}
  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button,body.eme-sw-cart-page a.checkout-button,body.eme-sw-cart-page .checkout-button.button.alt.wc-forward{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:auto!important;width:100%!important;max-width:100%!important;min-height:52px!important;height:auto!important;padding:15px 18px!important;border-radius:16px!important;font-size:13px!important;line-height:1.15!important;box-shadow:none!important;margin:0!important;letter-spacing:.04em!important;}
  body.eme-sw-cart-page .wa-float,body.eme-sw-cart-page .whatsapp-float,body.eme-sw-cart-page .joinchat,body.eme-sw-cart-page .joinchat__button,body.eme-sw-cart-page .ht-ctc-chat,body.eme-sw-cart-page [class*="whatsapp"],body.eme-sw-cart-page a[href*="wa.me"],body.eme-sw-cart-page a[href*="api.whatsapp.com"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
}
@media (max-width:390px){body.eme-sw-cart-page table.cart tr.cart_item{grid-template-columns:68px minmax(0,1fr)!important;padding:14px 12px!important;gap:0 12px!important;}body.eme-sw-cart-page table.cart td.product-thumbnail img{width:64px!important;height:64px!important;}body.eme-sw-cart-page table.cart td.product-name a{font-size:16px!important;}body.eme-sw-cart-page table.cart td.product-price .amount,body.eme-sw-cart-page table.cart td.product-subtotal .amount{font-size:16px!important;}body.eme-sw-cart-page table.cart td.product-quantity .quantity{width:100px!important;min-width:100px!important;max-width:100px!important;}}


/* === EME V18: carrito mobile mÃ¡s ancho, sin subtotal por producto y tÃ­tulo mÃ¡s chico === */
@media (max-width: 760px){
  body.eme-sw-cart-page .eme-cart-shell{
    padding-left:8px!important;
    padding-right:8px!important;
    padding-bottom:38px!important;
  }

  body.eme-sw-cart-page .eme-page-head{
    margin:0 0 12px!important;
    padding:0 6px!important;
  }

  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(30px, 9.5vw, 40px)!important;
    line-height:.98!important;
    letter-spacing:-.04em!important;
  }

  body.eme-sw-cart-page table.cart tr.cart_item{
    grid-template-columns:88px minmax(0,1fr)!important;
    grid-template-areas:
      "name name"
      "thumb price"
      "thumb qty"!important;
    padding:15px 12px!important;
    gap:0 14px!important;
    margin-bottom:12px!important;
    border-radius:20px!important;
  }

  body.eme-sw-cart-page table.cart td.product-name{
    padding:0 42px 10px 0!important;
  }

  body.eme-sw-cart-page table.cart td.product-name a{
    font-size:16px!important;
    line-height:1.18!important;
    -webkit-line-clamp:2!important;
  }

  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:82px!important;
    height:82px!important;
    padding:7px!important;
  }

  body.eme-sw-cart-page table.cart td.product-price,
  body.eme-sw-cart-page table.cart td.product-quantity{
    min-height:42px!important;
    padding:8px 0!important;
    border-top:1px dashed rgba(0,0,0,.09)!important;
  }

  body.eme-sw-cart-page table.cart td.product-subtotal{
    display:none!important;
  }

  body.eme-sw-cart-page table.cart td.product-price::before,
  body.eme-sw-cart-page table.cart td.product-quantity::before{
    font-size:11px!important;
    letter-spacing:.05em!important;
  }

  body.eme-sw-cart-page table.cart td.product-price .amount{
    font-size:18px!important;
    font-weight:900!important;
  }

  body.eme-sw-cart-page table.cart td.product-quantity .quantity{
    width:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    height:38px!important;
  }

  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{
    width:42px!important;
    min-width:42px!important;
    height:36px!important;
    min-height:36px!important;
    font-size:15px!important;
  }

  body.eme-sw-cart-page table.cart td.product-remove{
    right:10px!important;
    top:10px!important;
  }

  body.eme-sw-cart-page table.cart td.actions{
    margin-top:10px!important;
  }

  body.eme-sw-cart-page .cart_totals{
    border-radius:20px!important;
    padding:16px!important;
  }

  body.eme-sw-cart-page .cart_totals h2{
    font-size:22px!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button,
  body.eme-sw-cart-page a.checkout-button,
  body.eme-sw-cart-page .checkout-button.button.alt.wc-forward{
    min-height:50px!important;
    border-radius:15px!important;
    font-size:13px!important;
    padding:14px 16px!important;
  }
}

@media (max-width:390px){
  body.eme-sw-cart-page .eme-cart-shell{
    padding-left:6px!important;
    padding-right:6px!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item{
    grid-template-columns:76px minmax(0,1fr)!important;
    padding:14px 10px!important;
    gap:0 12px!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:72px!important;
    height:72px!important;
  }
  body.eme-sw-cart-page table.cart td.product-name a{
    font-size:15px!important;
  }
  body.eme-sw-cart-page table.cart td.product-price .amount{
    font-size:17px!important;
  }
}


/* === EME V19: cupÃ³n compacto desplegable y carrito auto-update en mobile === */
@media (max-width: 760px){
  body.eme-sw-cart-page table.cart td.actions{
    padding:12px!important;
    margin:12px 0 14px!important;
    border-radius:18px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon{
    display:block!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle{
    width:100%!important;
    min-height:44px!important;
    border:1px solid var(--eme-border)!important;
    border-radius:14px!important;
    background:#fff!important;
    color:var(--eme-ink)!important;
    font-size:13px!important;
    font-weight:900!important;
    letter-spacing:.02em!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:0 14px!important;
    text-transform:none!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle::after{
    content:'+'!important;
    font-size:20px!important;
    line-height:1!important;
    font-weight:500!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon.is-open .eme-coupon-toggle::after{
    content:'âˆ’'!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-fields{
    display:none!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding-top:10px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon.is-open .eme-coupon-fields{
    display:grid!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    height:46px!important;
    min-height:46px!important;
    border-radius:13px!important;
    font-size:16px!important;
    padding:0 13px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon .button{
    height:46px!important;
    min-height:46px!important;
    border-radius:13px!important;
    font-size:12px!important;
    letter-spacing:.04em!important;
  }

  body.eme-sw-cart-page table.cart td.actions > button[name="update_cart"],
  body.eme-sw-cart-page table.cart td.actions > .button[name="update_cart"],
  body.eme-sw-cart-page table.cart td.actions button[name="update_cart"]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    height:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
}


/* === EME V20: totales del carrito mobile al mismo ancho que las cards === */
@media (max-width: 760px){
  body.eme-sw-cart-page .cart-collaterals{
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .cart-collaterals .cart_totals,
  body.eme-sw-cart-page .woocommerce .cart-collaterals .cart_totals{
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    margin:0!important;
    padding:16px!important;
    box-sizing:border-box!important;
    border-radius:20px!important;
  }

  body.eme-sw-cart-page .cart_totals table,
  body.eme-sw-cart-page .cart_totals .shop_table{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .cart_totals table tr,
  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals table td{
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout{
    width:100%!important;
    max-width:100%!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{
    width:100%!important;
    max-width:100%!important;
  }
}


/* === EME V21: cupÃ³n mobile limpio y totales en una lÃ­nea === */
@media (max-width: 760px){
  body.eme-sw-cart-page table.cart td.actions{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
    margin:10px 0 14px!important;
    border-radius:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon{
    background:#fff!important;
    border:1px solid rgba(0,0,0,.08)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.035)!important;
    border-radius:18px!important;
    padding:10px!important;
    margin:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle{
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    border-radius:12px!important;
    min-height:42px!important;
    padding:0 8px!important;
    font-size:15px!important;
    text-align:left!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-fields{
    padding-top:8px!important;
    gap:8px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    border:1px solid rgba(0,0,0,.1)!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  body.eme-sw-cart-page .cart_totals .shop_table,
  body.eme-sw-cart-page .cart_totals table{
    border-collapse:separate!important;
    border-spacing:0!important;
  }

  body.eme-sw-cart-page .cart_totals table tr,
  body.eme-sw-cart-page .cart_totals .shop_table tr{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    width:100%!important;
    padding:14px 0!important;
    border-bottom:1px solid rgba(0,0,0,.08)!important;
  }

  body.eme-sw-cart-page .cart_totals table tr:last-child,
  body.eme-sw-cart-page .cart_totals .shop_table tr:last-child{
    border-bottom:0!important;
  }

  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals table td,
  body.eme-sw-cart-page .cart_totals .shop_table th,
  body.eme-sw-cart-page .cart_totals .shop_table td{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals .shop_table th{
    flex:0 0 auto!important;
    font-size:20px!important;
    line-height:1.15!important;
    font-weight:900!important;
  }

  body.eme-sw-cart-page .cart_totals table td,
  body.eme-sw-cart-page .cart_totals .shop_table td{
    flex:1 1 auto!important;
    text-align:right!important;
    font-size:20px!important;
    line-height:1.15!important;
  }

  body.eme-sw-cart-page .cart_totals .cart-subtotal td,
  body.eme-sw-cart-page .cart_totals .order-total td{
    white-space:nowrap!important;
  }

  body.eme-sw-cart-page .cart_totals .order-total th,
  body.eme-sw-cart-page .cart_totals .order-total td{
    font-size:22px!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping{
    display:block!important;
    padding:14px 0!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping th,
  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping td{
    display:block!important;
    width:100%!important;
    text-align:left!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping th{
    margin-bottom:10px!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping td{
    font-size:16px!important;
    line-height:1.35!important;
  }
}
.eme-page-shell,.eme-product-shell{max-width:1560px;margin:0 auto;padding:34px 28px 88px}.eme-page-head{margin-bottom:24px}.eme-page-head .shop-title{margin:0}.eme-page-card{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}
.eme-product-breadcrumb{margin-bottom:18px}.eme-product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:28px;align-items:start}.eme-product-gallery,.eme-product-summary,.eme-product-tabs,.eme-related-products{background:#fff;border:1px solid var(--eme-border);border-radius:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-product-gallery{padding:20px;position:sticky;top:104px}.eme-product-main-img{position:relative;background:#fbfbfa;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:560px}.eme-product-main-img img{width:100%;height:100%;max-height:620px;object-fit:contain;padding:28px}.eme-product-zoom{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.eme-product-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}.eme-product-thumbs a{border:2px solid var(--eme-border);border-radius:12px;background:#fff;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:.2s}.eme-product-thumbs a:hover,.eme-product-thumbs a.is-active{border-color:var(--eme-ink)}.eme-product-thumbs img{width:100%;height:100%;object-fit:contain;padding:6px}.eme-product-summary{padding:34px}.eme-product-cat{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:var(--eme-muted);margin-bottom:10px}.eme-product-title{font-family:'Archivo',sans-serif;font-size:clamp(32px,3.2vw,58px);line-height:1.02;font-weight:900;letter-spacing:-.035em;margin:0 0 16px}.eme-product-rating{font-size:14px;color:var(--eme-muted);display:flex;align-items:center;gap:6px;margin-bottom:14px;flex-wrap:wrap}.eme-product-price{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(30px,2.5vw,44px);line-height:1;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:12px 0 8px;color:var(--eme-ink)}.eme-product-price del{font-size:18px;color:var(--eme-muted2);opacity:1}.eme-product-price ins{text-decoration:none}.eme-product-installments{font-size:15px;color:var(--eme-muted);margin-bottom:20px}.eme-product-installments strong{color:var(--eme-ink)}.eme-product-short{font-size:16px;line-height:1.65;color:var(--eme-muted);border-top:1px solid var(--eme-border);padding-top:18px;margin-top:18px}.eme-product-short p{margin:0 0 10px}.eme-product-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.eme-product-trust span{background:var(--eme-bg);border:1px solid var(--eme-border);border-radius:14px;padding:12px 12px;font-size:12px;font-weight:800;color:var(--eme-ink);text-align:center}.eme-product-cartbox{margin:18px 0}.eme-product-cartbox form.cart{display:grid;gap:14px;margin:0}.eme-product-cartbox form.cart::before,.eme-product-cartbox form.cart::after{display:none!important}.eme-product-cartbox .quantity{margin:0!important;display:inline-flex}.eme-product-cartbox .quantity input.qty{width:110px!important;min-height:54px!important;text-align:center!important;font-weight:900!important;border-radius:14px!important}.eme-product-cartbox .single_add_to_cart_button{min-height:56px!important;padding:0 24px!important;font-size:14px!important;border-radius:14px!important;width:100%;text-transform:uppercase}.eme-product-cartbox table.variations{width:100%;margin:0 0 12px}.eme-product-cartbox table.variations td,.eme-product-cartbox table.variations th{display:block;width:100%;padding:0 0 8px}.eme-product-cartbox table.variations label{font-weight:900}.eme-product-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--eme-muted);font-size:13px;border-top:1px solid var(--eme-border);padding-top:18px;margin-top:18px}.eme-product-meta span{background:#fff;border:1px solid var(--eme-border);border-radius:999px;padding:8px 12px}.eme-product-tabs{padding:0;margin-top:28px;overflow:hidden}.eme-product-tabs .woocommerce-tabs{margin:0!important}.eme-product-tabs ul.tabs{padding:20px 20px 0!important;margin:0 0 0!important;display:flex;gap:10px;flex-wrap:wrap;border:none!important;background:#fff}.eme-product-tabs ul.tabs::before,.eme-product-tabs ul.tabs::after{display:none!important}.eme-product-tabs ul.tabs li{border:none!important;background:var(--eme-bg)!important;border-radius:999px!important;padding:0!important;margin:0!important}.eme-product-tabs ul.tabs li a{padding:12px 18px!important;font-size:14px;font-weight:900;color:var(--eme-ink)!important}.eme-product-tabs ul.tabs li.active{background:var(--eme-ink)!important}.eme-product-tabs ul.tabs li.active a{color:#fff!important}.eme-product-tabs .woocommerce-Tabs-panel{padding:24px!important;margin:0!important;color:var(--eme-ink);line-height:1.7}.eme-product-tabs .woocommerce-Tabs-panel h2{font-size:24px;margin:0 0 14px}.eme-related-products{padding:24px;margin-top:28px}.eme-related-products>section>h2,.eme-related-products .related>h2{font-size:28px;margin:0 0 18px}.eme-related-products ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0!important}.eme-related-products ul.products::before,.eme-related-products ul.products::after{display:none!important}.eme-related-products ul.products li.product{width:auto!important;margin:0!important;background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px;box-shadow:none}.eme-related-products ul.products li.product img{aspect-ratio:1;object-fit:contain;background:#fbfbfa;border-radius:14px;padding:12px}.eme-related-products ul.products li.product .woocommerce-loop-product__title{font-family:'Inter',sans-serif;font-size:14px;font-weight:800;line-height:1.35}.eme-related-products ul.products li.product .price{font-family:'Archivo',sans-serif;font-size:17px;font-weight:900;color:var(--eme-ink)}
.eme-sw-shell-page .woocommerce-cart-form,.eme-sw-shell-page .woocommerce-checkout,.eme-sw-shell-page .woocommerce-MyAccount-content,.eme-sw-shell-page .woocommerce-MyAccount-navigation,.eme-sw-shell-page .woocommerce form.login,.eme-sw-shell-page .woocommerce form.register{background:#fff;border:1px solid var(--eme-border);border-radius:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .woocommerce-cart-form{padding:18px}.eme-sw-shell-page .shop_table{border:none!important;border-collapse:separate!important;border-spacing:0 14px!important;background:transparent}.eme-sw-shell-page .shop_table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--eme-muted);border:none!important;padding:0 12px 8px!important}.eme-sw-shell-page .shop_table tbody tr{background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.03)}.eme-sw-shell-page .shop_table tbody td{border-top:none!important;padding:18px 12px!important;background:#fff}.eme-sw-shell-page .shop_table tbody tr td:first-child{border-radius:18px 0 0 18px}.eme-sw-shell-page .shop_table tbody tr td:last-child{border-radius:0 18px 18px 0}.eme-sw-shell-page .woocommerce-cart-form__contents .product-name a,.eme-sw-shell-page .shop_table .product-name a{font-weight:800;color:var(--eme-ink)}.eme-sw-shell-page .woocommerce .quantity .qty{min-height:44px;border-radius:12px}.eme-sw-shell-page .actions .coupon{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.eme-sw-shell-page .actions .coupon input{min-width:220px}.eme-sw-shell-page .cart-collaterals{margin-top:22px}.eme-sw-shell-page .cart_totals{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;float:none!important;width:100%!important;max-width:460px;margin-left:auto;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .cart_totals h2{font-size:26px;margin-bottom:16px}.eme-sw-shell-page .cart_totals table th,.eme-sw-shell-page .cart_totals table td{padding:12px 0!important;border-top:1px solid var(--eme-border)!important}.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button{width:100%;text-align:center;min-height:56px;padding:16px 18px!important;font-size:14px!important}.eme-sw-shell-page form.checkout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:24px;align-items:start}.eme-sw-shell-page #customer_details{width:auto!important;float:none!important;margin:0!important;display:grid;gap:20px}.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2{width:auto!important;float:none!important;margin:0!important;background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page #order_review_heading{font-size:26px;margin:0 0 14px}.eme-sw-shell-page #order_review{width:auto!important;float:none!important;background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page #payment{background:var(--eme-soft)!important;border-radius:18px!important;padding:16px!important}.eme-sw-shell-page #payment div.payment_box{background:#fff!important;border-radius:14px!important}.eme-sw-shell-page #payment div.payment_box::before{display:none!important}.eme-sw-shell-page #place_order{width:100%;min-height:56px;padding:16px 18px!important;font-size:14px!important}.eme-sw-shell-page .woocommerce-MyAccount-navigation{padding:18px}.eme-sw-shell-page .woocommerce-MyAccount-navigation ul{list-style:none;display:grid;gap:8px;padding:0;margin:0}.eme-sw-shell-page .woocommerce-MyAccount-navigation li{margin:0!important}.eme-sw-shell-page .woocommerce-MyAccount-navigation a{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-radius:14px;font-weight:800;color:var(--eme-muted);background:transparent}.eme-sw-shell-page .woocommerce-MyAccount-navigation .is-active a,.eme-sw-shell-page .woocommerce-MyAccount-navigation a:hover{background:var(--eme-ink);color:#fff}.eme-sw-shell-page .woocommerce-MyAccount-content{padding:26px}.eme-sw-shell-page .woocommerce-MyAccount-content p{line-height:1.7;color:var(--eme-muted)}.eme-sw-shell-page .woocommerce-MyAccount-content .button{margin-top:10px}.eme-sw-shell-page .woocommerce form.login,.eme-sw-shell-page .woocommerce form.register{padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-sw-shell-page .woocommerce form.login .button,.eme-sw-shell-page .woocommerce form.register .button{min-height:50px;padding:0 18px!important}.eme-sw-shell-page .woocommerce form .form-row label{font-weight:800;color:var(--eme-ink);margin-bottom:8px}.eme-sw-shell-page .select2-container .select2-selection--single .select2-selection__rendered{line-height:48px!important;padding-left:0!important}.eme-sw-shell-page .select2-container .select2-selection--single .select2-selection__arrow{height:48px!important}.eme-sw-shell-page .woocommerce ul.order_details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;margin:0 0 22px;list-style:none}.eme-sw-shell-page .woocommerce ul.order_details li{background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px 18px;font-size:13px;line-height:1.5;margin:0!important}
@media(max-width:1280px){.eme-page-shell,.eme-product-shell{max-width:1220px}.eme-product-layout{grid-template-columns:1fr 1fr}.eme-product-main-img{min-height:460px}.eme-related-products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1120px){.eme-page-shell,.eme-product-shell{padding:24px 20px 72px}.eme-product-layout,.eme-sw-shell-page form.checkout{grid-template-columns:1fr}.eme-product-gallery{position:static}.eme-product-main-img{min-height:420px}.eme-related-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.eme-page-shell,.eme-product-shell{padding:20px 16px 68px}.eme-page-card{padding:18px}.eme-product-summary{padding:24px}.eme-product-title{font-size:34px}.eme-product-main-img{min-height:360px}.eme-product-trust{grid-template-columns:1fr}.eme-sw-shell-page .shop_table thead{display:none}.eme-sw-shell-page .shop_table tbody tr,.eme-sw-shell-page .shop_table tbody td{display:block;width:100%!important}.eme-sw-shell-page .shop_table tbody tr td{border-radius:0!important}.eme-sw-shell-page .shop_table tbody tr td:first-child{border-radius:18px 18px 0 0!important}.eme-sw-shell-page .shop_table tbody tr td:last-child{border-radius:0 0 18px 18px!important}.eme-sw-shell-page .woocommerce ul.order_details{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.eme-page-shell,.eme-product-shell{padding:18px 12px 64px}.eme-page-card{padding:14px;border-radius:20px}.eme-product-gallery,.eme-product-summary,.eme-product-tabs,.eme-related-products{border-radius:20px}.eme-product-gallery{padding:12px}.eme-product-main-img{min-height:300px;border-radius:16px}.eme-product-main-img img{padding:16px}.eme-product-thumbs{grid-template-columns:repeat(4,1fr);gap:8px}.eme-product-summary{padding:20px}.eme-product-title{font-size:30px}.eme-product-price{font-size:30px}.eme-product-short{font-size:15px}.eme-product-cartbox .single_add_to_cart_button{min-height:52px!important}.eme-related-products{padding:16px}.eme-related-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.eme-sw-shell-page .woocommerce ul.order_details{grid-template-columns:1fr}.eme-sw-shell-page .actions .coupon{display:grid;grid-template-columns:1fr}.eme-sw-shell-page .cart_totals{max-width:none}.eme-sw-shell-page .cart_totals,.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2,.eme-sw-shell-page #order_review{padding:18px;border-radius:20px}}

/* === Wider cart / checkout / product V3 === */
.eme-page-shell,
.eme-product-shell{max-width:none!important;width:min(1720px,calc(100vw - 56px))!important;margin-left:auto!important;margin-right:auto!important;padding:36px 0 92px!important}
.eme-page-card{padding:28px!important;border-radius:28px!important;box-shadow:0 18px 50px rgba(0,0,0,.05)!important}
.eme-product-layout-v3{grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)!important;gap:32px!important;align-items:start!important}.eme-product-gallery{position:sticky;top:104px;padding:22px!important}.eme-product-main-img{min-height:610px!important}.eme-product-summary.eme-product-buybox{padding:32px!important;position:sticky;top:104px}.eme-product-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.eme-product-topline .eme-product-cat{margin:0}.eme-stock-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;background:var(--eme-soft);color:var(--eme-muted);white-space:nowrap}.eme-stock-pill.is-in{background:#ecfdf3;color:#087443}.eme-stock-pill.is-out{background:#f1f1f1;color:#777}.eme-stock-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.eme-social-proof{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--eme-muted);font-size:14px;margin:0 0 16px}.eme-product-value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.eme-product-value-grid div{background:var(--eme-bg);border:1px solid var(--eme-border);border-radius:16px;padding:13px 14px;min-height:68px}.eme-product-value-grid strong{display:block;font-size:13px;font-weight:900;color:var(--eme-ink);margin-bottom:3px}.eme-product-value-grid span{font-size:12px;color:var(--eme-muted);font-weight:700}.eme-product-cartbox{background:#fff;border:1px solid var(--eme-border);border-radius:18px;padding:16px;margin:20px 0!important}.eme-product-cartbox form.cart{display:grid!important;grid-template-columns:132px 1fr!important;gap:12px!important;align-items:center!important}.eme-product-cartbox .quantity{width:100%!important}.eme-product-cartbox .quantity input.qty{width:100%!important;min-height:58px!important}.eme-product-cartbox .single_add_to_cart_button{grid-column:auto!important;min-height:58px!important;font-size:15px!important;background:var(--eme-ink)!important;color:#fff!important;border-radius:15px!important}.eme-product-cartbox .single_add_to_cart_button:hover{background:var(--eme-red)!important}.eme-product-cartbox form.cart:not(:has(.quantity)){grid-template-columns:1fr!important}.eme-product-cartbox form.variations_form.cart{grid-template-columns:1fr!important}.eme-product-cartbox table.variations{grid-column:1/-1!important}.eme-after-cta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 18px}.eme-after-cta span{font-size:12px;font-weight:900;text-align:center;border-radius:999px;background:#fafafa;border:1px solid var(--eme-border);padding:9px 8px;color:var(--eme-ink)}.eme-conversion-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}.eme-conversion-strip div{background:#fff;border:1px solid var(--eme-border);border-radius:20px;padding:18px 20px;box-shadow:0 12px 30px rgba(0,0,0,.035)}.eme-conversion-strip strong{display:block;font-family:'Archivo',sans-serif;font-size:17px;margin-bottom:4px}.eme-conversion-strip span{font-size:13px;color:var(--eme-muted);font-weight:600}.eme-product-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.eme-info-card{background:#fff;border:1px solid var(--eme-border);border-radius:24px;padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.04)}.eme-info-card h2{font-size:24px;margin:0 0 12px}.eme-info-card ul{margin:0;padding-left:18px;color:var(--eme-muted);line-height:1.7}.eme-info-card li{margin:4px 0}.eme-sw-shell-page .woocommerce{width:100%!important}.eme-cart-shell .eme-page-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.eme-cart-shell .woocommerce{display:grid!important;grid-template-columns:minmax(0,1fr) 420px!important;gap:28px!important;align-items:start!important}.eme-cart-shell .woocommerce > .woocommerce-cart-form{grid-column:1!important;margin:0!important}.eme-cart-shell .woocommerce > .cart-collaterals{grid-column:2!important;margin:0!important;position:sticky;top:104px}.eme-sw-shell-page .woocommerce-cart-form{padding:22px!important;border-radius:28px!important}.eme-sw-shell-page .cart_totals{max-width:none!important;margin:0!important;padding:28px!important;border-radius:28px!important}.eme-sw-shell-page .cart_totals h2{font-size:30px!important}.eme-sw-shell-page .woocommerce-cart-form__cart-item .product-thumbnail img{width:74px!important;height:74px!important;object-fit:contain;background:#fbfbfa;border-radius:12px;padding:8px}.eme-sw-shell-page .woocommerce-cart-form__cart-item .product-name a{font-size:16px!important;line-height:1.35!important}.eme-checkout-shell .eme-page-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.eme-sw-shell-page form.checkout{grid-template-columns:minmax(0,1fr) 460px!important;gap:28px!important;align-items:start!important}.eme-sw-shell-page #order_review{position:sticky;top:104px;border-radius:28px!important}.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2{border-radius:28px!important;padding:28px!important}.eme-sw-shell-page #customer_details h3,.eme-sw-shell-page #order_review_heading{font-size:28px!important}.eme-sw-shell-page .woocommerce form .form-row input.input-text,.eme-sw-shell-page .woocommerce form .form-row textarea,.eme-sw-shell-page .woocommerce form .form-row select,.eme-sw-shell-page .select2-container .select2-selection--single{min-height:54px!important;border-radius:16px!important}.eme-sw-shell-page #place_order,.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button{min-height:60px!important;border-radius:16px!important;font-size:15px!important;background:var(--eme-ink)!important}.eme-sw-shell-page #place_order:hover,.eme-sw-shell-page .wc-proceed-to-checkout .checkout-button:hover{background:var(--eme-red)!important}
@media(max-width:1360px){.eme-page-shell,.eme-product-shell{width:min(1560px,calc(100vw - 44px))!important}.eme-product-layout-v3{grid-template-columns:minmax(0,1fr) minmax(390px,.86fr)!important}.eme-product-main-img{min-height:520px!important}.eme-cart-shell .woocommerce{grid-template-columns:minmax(0,1fr) 380px!important}.eme-sw-shell-page form.checkout{grid-template-columns:minmax(0,1fr) 420px!important}}
@media(max-width:1120px){.eme-page-shell,.eme-product-shell{width:calc(100vw - 32px)!important;padding:26px 0 76px!important}.eme-product-layout-v3,.eme-cart-shell .woocommerce,.eme-sw-shell-page form.checkout{grid-template-columns:1fr!important}.eme-product-gallery,.eme-product-summary.eme-product-buybox,.eme-cart-shell .woocommerce > .cart-collaterals,.eme-sw-shell-page #order_review{position:static!important}.eme-cart-shell .woocommerce > .cart-collaterals{grid-column:1!important}.eme-conversion-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.eme-product-info-grid{grid-template-columns:1fr}.eme-product-main-img{min-height:420px!important}}
@media(max-width:720px){.eme-page-shell,.eme-product-shell{width:calc(100vw - 20px)!important;padding:18px 0 68px!important}.eme-product-layout-v3{gap:14px!important}.eme-product-gallery,.eme-product-summary.eme-product-buybox,.eme-product-tabs,.eme-related-products,.eme-info-card{border-radius:20px!important}.eme-product-gallery{padding:12px!important}.eme-product-main-img{min-height:310px!important}.eme-product-summary.eme-product-buybox{padding:18px!important}.eme-product-title{font-size:32px!important}.eme-product-price{font-size:30px!important}.eme-product-topline{align-items:flex-start;flex-direction:column}.eme-product-value-grid{grid-template-columns:1fr 1fr;gap:8px}.eme-product-cartbox form.cart{grid-template-columns:1fr!important}.eme-after-cta{grid-template-columns:1fr}.eme-conversion-strip{grid-template-columns:1fr;gap:10px}.eme-conversion-strip div{padding:16px}.eme-page-card{padding:0!important;background:transparent!important;border:none!important;box-shadow:none!important}.eme-sw-shell-page .woocommerce-cart-form,.eme-sw-shell-page .cart_totals,.eme-sw-shell-page #customer_details .col-1,.eme-sw-shell-page #customer_details .col-2,.eme-sw-shell-page #order_review{padding:18px!important;border-radius:20px!important}.eme-sw-shell-page .shop_table tbody tr{border-radius:18px!important;overflow:hidden}.eme-sw-shell-page form.checkout{gap:16px!important}.eme-sw-shell-page #customer_details h3,.eme-sw-shell-page #order_review_heading{font-size:24px!important}}

/* === EME V4: compact product, fixed cart/checkout widths === */
body.eme-sw-woo{overflow-x:hidden!important;background:var(--eme-bg)!important;}
body.eme-sw-woo .eme-page-shell,
body.eme-sw-woo .eme-product-shell{
  width:min(1320px,calc(100vw - 56px))!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:28px 0 78px!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-product-breadcrumb{margin-bottom:14px!important;}
body.eme-sw-product-page .eme-product-layout-v3{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(390px,0.9fr)!important;
  gap:24px!important;
  align-items:start!important;
}
body.eme-sw-product-page .eme-product-gallery,
body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
  border-radius:24px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.045)!important;
}
body.eme-sw-product-page .eme-product-gallery{
  padding:18px!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-product-page .eme-product-main-img{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:1.08/1!important;
  max-height:560px!important;
  border-radius:18px!important;
}
body.eme-sw-product-page .eme-product-main-img img{
  width:100%!important;
  height:100%!important;
  max-height:520px!important;
  object-fit:contain!important;
  padding:18px!important;
}
body.eme-sw-product-page .eme-product-thumbs{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:12px!important;
}
body.eme-sw-product-page .eme-product-thumbs a{border-radius:12px!important;}
body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
  padding:24px!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-product-page .eme-product-title{
  font-size:clamp(30px,3vw,44px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
  margin-bottom:12px!important;
}
body.eme-sw-product-page .eme-product-price{
  font-size:clamp(28px,2.5vw,40px)!important;
  margin:10px 0 6px!important;
}
body.eme-sw-product-page .eme-product-installments{margin-bottom:14px!important;font-size:14px!important;}
body.eme-sw-product-page .eme-social-proof{margin-bottom:12px!important;font-size:13px!important;}
body.eme-sw-product-page .eme-product-value-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:14px 0!important;
}
body.eme-sw-product-page .eme-product-value-grid div{
  min-height:58px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
}
body.eme-sw-product-page .eme-product-short{
  font-size:14px!important;
  line-height:1.55!important;
  padding-top:14px!important;
  margin-top:14px!important;
}
body.eme-sw-product-page .eme-product-cartbox{
  padding:14px!important;
  margin:16px 0 12px!important;
  border-radius:16px!important;
}
body.eme-sw-product-page .eme-product-cartbox form.cart{
  grid-template-columns:118px 1fr!important;
  gap:10px!important;
}
body.eme-sw-product-page .eme-product-cartbox .quantity input.qty{min-height:52px!important;}
body.eme-sw-product-page .eme-product-cartbox .single_add_to_cart_button{
  min-height:52px!important;
  font-size:14px!important;
  border-radius:14px!important;
}
body.eme-sw-product-page .eme-after-cta{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:10px 0 14px!important;
}
body.eme-sw-product-page .eme-after-cta span{
  padding:8px 7px!important;
  font-size:11px!important;
}
body.eme-sw-product-page .eme-product-meta{padding-top:14px!important;margin-top:14px!important;font-size:12px!important;}
body.eme-sw-product-page .eme-conversion-strip{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:22px 0!important;
}
body.eme-sw-product-page .eme-conversion-strip div{padding:15px!important;border-radius:18px!important;}
body.eme-sw-product-page .eme-conversion-strip strong{font-size:15px!important;}
body.eme-sw-product-page .eme-conversion-strip span{font-size:12px!important;line-height:1.35!important;}
body.eme-sw-product-page .eme-product-info-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin:22px 0!important;
}
body.eme-sw-product-page .eme-info-card{padding:18px!important;border-radius:20px!important;}
body.eme-sw-product-page .eme-info-card h2{font-size:20px!important;margin-bottom:8px!important;}
body.eme-sw-product-page .eme-info-card ul{font-size:14px!important;line-height:1.55!important;}
body.eme-sw-product-page .eme-product-tabs,
body.eme-sw-product-page .eme-related-products{margin-top:22px!important;border-radius:22px!important;}
body.eme-sw-product-page .eme-product-tabs .woocommerce-Tabs-panel{padding:20px!important;}

/* Cart: prevent narrow/vertical summary and keep Shopify-like layout */
body.eme-sw-cart-page .eme-page-shell,
body.eme-sw-checkout-page .eme-page-shell{
  width:min(1280px,calc(100vw - 56px))!important;
  max-width:1280px!important;
}
body.eme-sw-cart-page .eme-page-head,
body.eme-sw-checkout-page .eme-page-head{margin-bottom:20px!important;}
body.eme-sw-cart-page .eme-page-card,
body.eme-sw-checkout-page .eme-page-card{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
}
body.eme-sw-cart-page .eme-cart-shell .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,400px)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .woocommerce-cart-form{
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
  float:none!important;
  margin:0!important;
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-cart-page .cart-collaterals{
  grid-column:2!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  position:sticky!important;
  top:104px!important;
}
body.eme-sw-cart-page .cart_totals{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-cart-page .cart_totals h2,
body.eme-sw-cart-page .cart_totals *{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body.eme-sw-cart-page .cart_totals h2{font-size:26px!important;line-height:1.1!important;white-space:normal!important;}
body.eme-sw-cart-page .shop_table{width:100%!important;table-layout:auto!important;}
body.eme-sw-cart-page .shop_table td,
body.eme-sw-cart-page .shop_table th{white-space:normal!important;}
body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;}

/* Checkout: fixed readable width */
body.eme-sw-checkout-page form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.eme-sw-checkout-page #customer_details,
body.eme-sw-checkout-page #order_review,
body.eme-sw-checkout-page #order_review_heading{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page #customer_details .col-1,
body.eme-sw-checkout-page #customer_details .col-2,
body.eme-sw-checkout-page #order_review{
  background:#fff!important;
  border:1px solid var(--eme-border)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.045)!important;
}
body.eme-sw-checkout-page #order_review{
  position:sticky!important;
  top:104px!important;
  overflow:hidden!important;
}
body.eme-sw-checkout-page #order_review table{width:100%!important;table-layout:auto!important;}
body.eme-sw-checkout-page #order_review td,
body.eme-sw-checkout-page #order_review th{white-space:normal!important;word-break:normal!important;}
body.eme-sw-checkout-page .woocommerce-checkout-payment{border-radius:20px!important;overflow:hidden!important;}

@media(max-width:1180px){
  body.eme-sw-product-page .eme-product-layout-v3,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce,
  body.eme-sw-checkout-page form.checkout{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-product-gallery,
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox,
  body.eme-sw-cart-page .cart-collaterals,
  body.eme-sw-checkout-page #order_review{position:static!important;}
  body.eme-sw-product-page .eme-product-main-img{max-height:none!important;aspect-ratio:1.15/1!important;}
  body.eme-sw-product-page .eme-product-info-grid{grid-template-columns:1fr!important;}
}
@media(max-width:760px){
  body.eme-sw-woo .eme-page-shell,
  body.eme-sw-woo .eme-product-shell{width:calc(100vw - 22px)!important;padding:18px 0 64px!important;}
  body.eme-sw-product-page .eme-product-title{font-size:30px!important;}
  body.eme-sw-product-page .eme-product-price{font-size:28px!important;}
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{padding:18px!important;}
  body.eme-sw-product-page .eme-product-gallery{padding:12px!important;}
  body.eme-sw-product-page .eme-product-main-img{aspect-ratio:1!important;min-height:280px!important;}
  body.eme-sw-product-page .eme-product-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  body.eme-sw-product-page .eme-product-value-grid{grid-template-columns:1fr 1fr!important;}
  body.eme-sw-product-page .eme-product-cartbox form.cart{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-after-cta{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-conversion-strip{grid-template-columns:1fr!important;}
  body.eme-sw-cart-page .woocommerce-cart-form,
  body.eme-sw-cart-page .cart_totals,
  body.eme-sw-checkout-page #customer_details .col-1,
  body.eme-sw-checkout-page #customer_details .col-2,
  body.eme-sw-checkout-page #order_review{padding:18px!important;border-radius:20px!important;}
}


/* === EME V6 desde V4: caja de compra arriba y producto compacto === */
body.eme-sw-product-page .eme-product-cartbox-priority{margin:14px 0 14px!important;padding:14px!important;background:#fff!important;border:1px solid var(--eme-border)!important;box-shadow:0 10px 28px rgba(0,0,0,.035)!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock{font-size:15px!important;font-weight:800!important;color:var(--eme-ink)!important;margin:0 0 10px!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.in-stock{color:var(--eme-green)!important;}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.out-of-stock{color:var(--eme-red)!important;}
body.eme-sw-product-page .eme-product-value-grid{margin-top:10px!important;}
body.eme-sw-product-page .eme-product-short{margin-top:12px!important;}
@media(min-width:1181px){
  body.eme-sw-product-page .eme-product-layout-v3{grid-template-columns:minmax(0,.98fr) minmax(420px,.82fr)!important;}
  body.eme-sw-product-page .eme-product-title{font-size:clamp(30px,2.6vw,42px)!important;}
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{padding:22px!important;}
}
@media(max-width:760px){
  body.eme-sw-product-page .eme-product-cartbox-priority{padding:12px!important;}
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{grid-template-columns:1fr!important;}
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{width:100%!important;}
}


/* === EME V13: checkout sin tÃ­tulo y centrado real ===
   Se toca Ãºnicamente checkout: quitamos el encabezado grande y centramos
   el bloque como en tienda, sin modificar home, tienda, producto ni carrito. */
body.eme-sw-checkout-page .eme-page-head{
  display:none!important;
}
@media (min-width:1181px){
  body.eme-sw-checkout-page .eme-checkout-shell{
    position:relative!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(1280px, calc(100vw - 72px))!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-shell .eme-page-card,
  body.eme-sw-checkout-page .eme-checkout-shell .woocommerce,
  body.eme-sw-checkout-page .eme-checkout-shell form.checkout{
    width:100%!important;
    max-width:100%!important;
  }
}
@media (min-width:1181px) and (max-width:1500px){
  body.eme-sw-checkout-page .eme-checkout-shell{
    width:calc(100vw - 48px)!important;
  }
}

/* === EME V14: carrito centrado y tÃ­tulo mÃ¡s compacto ===
   Base V13. Se toca Ãºnicamente la pÃ¡gina de carrito. */
@media (min-width:1181px){
  body.eme-sw-cart-page .eme-cart-shell{
    position:relative!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(1360px, calc(100vw - 96px))!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page .eme-cart-shell .eme-page-card,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{
    width:100%!important;
    max-width:100%!important;
  }
  body.eme-sw-cart-page .eme-page-head{
    margin-bottom:18px!important;
  }
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(38px, 3.1vw, 50px)!important;
    line-height:1!important;
    letter-spacing:-.035em!important;
  }
}
@media (min-width:1181px) and (max-width:1500px){
  body.eme-sw-cart-page .eme-cart-shell{
    width:calc(100vw - 72px)!important;
  }
}
@media (max-width:1180px){
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(34px, 8vw, 44px)!important;
  }
}

/* === EME V16: carrito mobile premium ===
   Solo corrige /carrito/ en celular: cards reales, producto visible,
   cantidades legibles y CTA sin WhatsApp encima. */
@media (max-width: 760px){
  body.eme-sw-cart-page{overflow-x:hidden!important;}
  body.eme-sw-cart-page .eme-cart-shell{
    width:100%!important;
    max-width:100%!important;
    padding:18px 14px 120px!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page .eme-page-head{
    margin:0 0 22px!important;
    padding:0!important;
  }
  body.eme-sw-cart-page .eme-page-head .breadcrumb,
  body.eme-sw-cart-page .eme-page-head .eme-breadcrumb{display:none!important;}
  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(38px, 12vw, 52px)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
    margin:0!important;
  }
  body.eme-sw-cart-page .eme-page-card,
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page .woocommerce-cart-form{
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page table.cart,
  body.eme-sw-cart-page table.cart tbody,
  body.eme-sw-cart-page table.cart tfoot,
  body.eme-sw-cart-page table.cart tr,
  body.eme-sw-cart-page table.cart td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.eme-sw-cart-page table.cart thead{display:none!important;}
  body.eme-sw-cart-page table.cart{
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    margin:0!important;
    background:transparent!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    column-gap:16px!important;
    row-gap:0!important;
    background:#fff!important;
    border:1px solid var(--eme-border)!important;
    border-radius:22px!important;
    box-shadow:0 14px 36px rgba(0,0,0,.045)!important;
    padding:18px 16px 14px!important;
    margin:0 0 14px!important;
    overflow:hidden!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item td{
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding:0!important;
    text-align:left!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item td::before{
    float:none!important;
    font-weight:800!important;
    color:var(--eme-muted)!important;
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  body.eme-sw-cart-page table.cart td.product-remove{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    width:34px!important;
    height:34px!important;
    z-index:2!important;
  }
  body.eme-sw-cart-page table.cart td.product-remove a.remove{
    width:34px!important;
    height:34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    background:#f5f5f3!important;
    color:#777!important;
    font-size:20px!important;
    line-height:1!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail{
    grid-column:1!important;
    grid-row:1 / span 4!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    padding-top:4px!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail a,
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    display:block!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:82px!important;
    height:82px!important;
    object-fit:contain!important;
    border-radius:14px!important;
    background:#fafafa!important;
    padding:8px!important;
  }
  body.eme-sw-cart-page table.cart td.product-name{
    grid-column:2!important;
    padding:0 30px 12px 0!important;
    min-height:82px!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  body.eme-sw-cart-page table.cart td.product-name::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.product-name a{
    display:block!important;
    color:var(--eme-ink)!important;
    font-size:16px!important;
    line-height:1.28!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
    text-align:left!important;
  }
  body.eme-sw-cart-page table.cart td.product-price,
  body.eme-sw-cart-page table.cart td.product-quantity,
  body.eme-sw-cart-page table.cart td.product-subtotal{
    grid-column:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:48px!important;
    padding:10px 0!important;
    border-top:1px dashed var(--eme-border)!important;
  }
  body.eme-sw-cart-page table.cart td.product-price::before{content:'Precio'!important;}
  body.eme-sw-cart-page table.cart td.product-quantity::before{content:'Cantidad'!important;}
  body.eme-sw-cart-page table.cart td.product-subtotal::before{content:'Subtotal'!important;}
  body.eme-sw-cart-page table.cart td.product-price .amount,
  body.eme-sw-cart-page table.cart td.product-subtotal .amount{
    font-size:18px!important;
    font-weight:900!important;
    color:var(--eme-ink)!important;
    white-space:nowrap!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:118px!important;
    max-width:130px!important;
    height:42px!important;
    border:1px solid var(--eme-border)!important;
    border-radius:999px!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{
    width:48px!important;
    min-width:48px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    text-align:center!important;
    font-size:16px!important;
    font-weight:900!important;
    background:#fff!important;
    color:var(--eme-ink)!important;
    appearance:textfield!important;
    -moz-appearance:textfield!important;
  }
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty::-webkit-outer-spin-button,
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty::-webkit-inner-spin-button{appearance:none!important;-webkit-appearance:none!important;margin:0!important;}
  body.eme-sw-cart-page table.cart td.actions{
    display:block!important;
    background:#fff!important;
    border:1px solid var(--eme-border)!important;
    border-radius:22px!important;
    box-shadow:0 14px 36px rgba(0,0,0,.04)!important;
    padding:16px!important;
    margin:14px 0!important;
  }
  body.eme-sw-cart-page table.cart td.actions::before{display:none!important;content:none!important;}
  body.eme-sw-cart-page table.cart td.actions .coupon{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:0 0 10px!important;
  }
  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    border-radius:14px!important;
    font-size:16px!important;
  }
  body.eme-sw-cart-page table.cart td.actions .coupon .button,
  body.eme-sw-cart-page table.cart td.actions > .button{
    width:100%!important;
    min-height:52px!important;
    border-radius:14px!important;
    font-size:13px!important;
    font-weight:900!important;
  }
  body.eme-sw-cart-page .cart-collaterals{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    margin:16px 0 0!important;
  }
  body.eme-sw-cart-page .cart_totals{
    width:100%!important;
    max-width:100%!important;
    padding:18px!important;
    border-radius:22px!important;
    overflow:visible!important;
  }
  body.eme-sw-cart-page .cart_totals h2{
    font-size:26px!important;
    line-height:1.1!important;
    margin:0 0 14px!important;
  }
  body.eme-sw-cart-page .cart_totals table,
  body.eme-sw-cart-page .cart_totals tbody,
  body.eme-sw-cart-page .cart_totals tr,
  body.eme-sw-cart-page .cart_totals th,
  body.eme-sw-cart-page .cart_totals td{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
  }
  body.eme-sw-cart-page .wc-proceed-to-checkout{
    padding:12px 0 0!important;
  }
  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{
    min-height:58px!important;
    border-radius:18px!important;
    font-size:14px!important;
    letter-spacing:.04em!important;
  }
  body.eme-sw-cart-page .wa-float,
  body.eme-sw-cart-page .whatsapp-float,
  body.eme-sw-cart-page a[href*='wa.me'],
  body.eme-sw-cart-page a[href*='api.whatsapp.com']{
    display:none!important;
  }
}

/* === EME V17: carrito mobile real, compacto y sin CTA gigante === */
@media (max-width: 760px){
  body.eme-sw-cart-page{overflow-x:hidden!important;background:#f7f7f5!important;}
  body.eme-sw-cart-page .eme-cart-shell{width:100%!important;max-width:100%!important;margin:0!important;padding:18px 10px 48px!important;box-sizing:border-box!important;}
  body.eme-sw-cart-page .eme-page-head{padding:0 2px!important;margin:0 0 14px!important;}
  body.eme-sw-cart-page .eme-page-head .shop-title,body.eme-sw-cart-page .eme-cart-shell .shop-title{font-size:clamp(34px,11vw,46px)!important;line-height:.95!important;margin:0!important;}
  body.eme-sw-cart-page .eme-page-card{width:100%!important;margin:0!important;padding:0!important;}
  body.eme-sw-cart-page .eme-cart-shell .woocommerce{display:block!important;width:100%!important;max-width:100%!important;}
  body.eme-sw-cart-page table.cart tr.cart_item{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;grid-template-areas:"name name" "thumb price" "thumb qty" "thumb subtotal"!important;gap:0 14px!important;padding:16px 14px!important;margin:0 0 12px!important;border-radius:20px!important;background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 10px 28px rgba(0,0,0,.045)!important;overflow:hidden!important;min-height:0!important;}
  body.eme-sw-cart-page table.cart tr.cart_item td{min-width:0!important;}
  body.eme-sw-cart-page table.cart td.product-remove{position:absolute!important;right:12px!important;top:12px!important;width:32px!important;height:32px!important;z-index:5!important;}
  body.eme-sw-cart-page table.cart td.product-remove a.remove{width:32px!important;height:32px!important;font-size:18px!important;background:#f3f3f1!important;color:#555!important;}
  body.eme-sw-cart-page table.cart td.product-name{grid-area:name!important;display:block!important;min-height:0!important;padding:0 42px 12px 0!important;margin:0!important;}
  body.eme-sw-cart-page table.cart td.product-name a{font-size:17px!important;line-height:1.18!important;font-weight:900!important;letter-spacing:-.02em!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-align:left!important;color:var(--eme-ink)!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail{grid-area:thumb!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:2px 0 0!important;}
  body.eme-sw-cart-page table.cart td.product-thumbnail img{width:72px!important;height:72px!important;object-fit:contain!important;padding:7px!important;border-radius:14px!important;background:#fafafa!important;}
  body.eme-sw-cart-page table.cart td.product-price{grid-area:price!important;}
  body.eme-sw-cart-page table.cart td.product-quantity{grid-area:qty!important;}
  body.eme-sw-cart-page table.cart td.product-subtotal{grid-area:subtotal!important;}
  body.eme-sw-cart-page table.cart td.product-price,body.eme-sw-cart-page table.cart td.product-quantity,body.eme-sw-cart-page table.cart td.product-subtotal{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:38px!important;padding:7px 0!important;border-top:1px dashed rgba(0,0,0,.09)!important;}
  body.eme-sw-cart-page table.cart td.product-price::before,body.eme-sw-cart-page table.cart td.product-quantity::before,body.eme-sw-cart-page table.cart td.product-subtotal::before{font-size:11px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#777!important;}
  body.eme-sw-cart-page table.cart td.product-price .amount,body.eme-sw-cart-page table.cart td.product-subtotal .amount{font-size:17px!important;line-height:1!important;font-weight:900!important;letter-spacing:-.01em!important;white-space:nowrap!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity{min-width:108px!important;width:108px!important;max-width:108px!important;height:38px!important;border-radius:999px!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{width:42px!important;min-width:42px!important;height:36px!important;min-height:36px!important;font-size:15px!important;line-height:36px!important;}
  body.eme-sw-cart-page table.cart td.product-quantity .quantity button,body.eme-sw-cart-page table.cart td.product-quantity .quantity .minus,body.eme-sw-cart-page table.cart td.product-quantity .quantity .plus{width:32px!important;height:36px!important;min-width:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  body.eme-sw-cart-page table.cart td.actions{padding:12px!important;margin:12px 0!important;border-radius:18px!important;box-shadow:0 10px 24px rgba(0,0,0,.035)!important;}
  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text,body.eme-sw-cart-page table.cart td.actions .coupon .button,body.eme-sw-cart-page table.cart td.actions > .button{min-height:48px!important;height:48px!important;border-radius:13px!important;font-size:13px!important;}
  body.eme-sw-cart-page .cart-collaterals{position:static!important;width:100%!important;margin:12px 0 0!important;}
  body.eme-sw-cart-page .cart_totals{padding:16px!important;border-radius:20px!important;box-shadow:0 10px 28px rgba(0,0,0,.04)!important;}
  body.eme-sw-cart-page .cart_totals h2{font-size:23px!important;margin-bottom:12px!important;}
  body.eme-sw-cart-page .wc-proceed-to-checkout{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:auto!important;width:100%!important;padding:10px 0 0!important;margin:0!important;background:transparent!important;box-shadow:none!important;}
  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button,body.eme-sw-cart-page a.checkout-button,body.eme-sw-cart-page .checkout-button.button.alt.wc-forward{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:auto!important;width:100%!important;max-width:100%!important;min-height:52px!important;height:auto!important;padding:15px 18px!important;border-radius:16px!important;font-size:13px!important;line-height:1.15!important;box-shadow:none!important;margin:0!important;letter-spacing:.04em!important;}
  body.eme-sw-cart-page .wa-float,body.eme-sw-cart-page .whatsapp-float,body.eme-sw-cart-page .joinchat,body.eme-sw-cart-page .joinchat__button,body.eme-sw-cart-page .ht-ctc-chat,body.eme-sw-cart-page [class*="whatsapp"],body.eme-sw-cart-page a[href*="wa.me"],body.eme-sw-cart-page a[href*="api.whatsapp.com"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
}
@media (max-width:390px){body.eme-sw-cart-page table.cart tr.cart_item{grid-template-columns:68px minmax(0,1fr)!important;padding:14px 12px!important;gap:0 12px!important;}body.eme-sw-cart-page table.cart td.product-thumbnail img{width:64px!important;height:64px!important;}body.eme-sw-cart-page table.cart td.product-name a{font-size:16px!important;}body.eme-sw-cart-page table.cart td.product-price .amount,body.eme-sw-cart-page table.cart td.product-subtotal .amount{font-size:16px!important;}body.eme-sw-cart-page table.cart td.product-quantity .quantity{width:100px!important;min-width:100px!important;max-width:100px!important;}}


/* === EME V18: carrito mobile mÃ¡s ancho, sin subtotal por producto y tÃ­tulo mÃ¡s chico === */
@media (max-width: 760px){
  body.eme-sw-cart-page .eme-cart-shell{
    padding-left:8px!important;
    padding-right:8px!important;
    padding-bottom:38px!important;
  }

  body.eme-sw-cart-page .eme-page-head{
    margin:0 0 12px!important;
    padding:0 6px!important;
  }

  body.eme-sw-cart-page .eme-page-head .shop-title,
  body.eme-sw-cart-page .eme-cart-shell .shop-title{
    font-size:clamp(30px, 9.5vw, 40px)!important;
    line-height:.98!important;
    letter-spacing:-.04em!important;
  }

  body.eme-sw-cart-page table.cart tr.cart_item{
    grid-template-columns:88px minmax(0,1fr)!important;
    grid-template-areas:
      "name name"
      "thumb price"
      "thumb qty"!important;
    padding:15px 12px!important;
    gap:0 14px!important;
    margin-bottom:12px!important;
    border-radius:20px!important;
  }

  body.eme-sw-cart-page table.cart td.product-name{
    padding:0 42px 10px 0!important;
  }

  body.eme-sw-cart-page table.cart td.product-name a{
    font-size:16px!important;
    line-height:1.18!important;
    -webkit-line-clamp:2!important;
  }

  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:82px!important;
    height:82px!important;
    padding:7px!important;
  }

  body.eme-sw-cart-page table.cart td.product-price,
  body.eme-sw-cart-page table.cart td.product-quantity{
    min-height:42px!important;
    padding:8px 0!important;
    border-top:1px dashed rgba(0,0,0,.09)!important;
  }

  body.eme-sw-cart-page table.cart td.product-subtotal{
    display:none!important;
  }

  body.eme-sw-cart-page table.cart td.product-price::before,
  body.eme-sw-cart-page table.cart td.product-quantity::before{
    font-size:11px!important;
    letter-spacing:.05em!important;
  }

  body.eme-sw-cart-page table.cart td.product-price .amount{
    font-size:18px!important;
    font-weight:900!important;
  }

  body.eme-sw-cart-page table.cart td.product-quantity .quantity{
    width:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    height:38px!important;
  }

  body.eme-sw-cart-page table.cart td.product-quantity .quantity input.qty{
    width:42px!important;
    min-width:42px!important;
    height:36px!important;
    min-height:36px!important;
    font-size:15px!important;
  }

  body.eme-sw-cart-page table.cart td.product-remove{
    right:10px!important;
    top:10px!important;
  }

  body.eme-sw-cart-page table.cart td.actions{
    margin-top:10px!important;
  }

  body.eme-sw-cart-page .cart_totals{
    border-radius:20px!important;
    padding:16px!important;
  }

  body.eme-sw-cart-page .cart_totals h2{
    font-size:22px!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button,
  body.eme-sw-cart-page a.checkout-button,
  body.eme-sw-cart-page .checkout-button.button.alt.wc-forward{
    min-height:50px!important;
    border-radius:15px!important;
    font-size:13px!important;
    padding:14px 16px!important;
  }
}

@media (max-width:390px){
  body.eme-sw-cart-page .eme-cart-shell{
    padding-left:6px!important;
    padding-right:6px!important;
  }
  body.eme-sw-cart-page table.cart tr.cart_item{
    grid-template-columns:76px minmax(0,1fr)!important;
    padding:14px 10px!important;
    gap:0 12px!important;
  }
  body.eme-sw-cart-page table.cart td.product-thumbnail img{
    width:72px!important;
    height:72px!important;
  }
  body.eme-sw-cart-page table.cart td.product-name a{
    font-size:15px!important;
  }
  body.eme-sw-cart-page table.cart td.product-price .amount{
    font-size:17px!important;
  }
}


/* === EME V19: cupÃ³n compacto desplegable y carrito auto-update en mobile === */
@media (max-width: 760px){
  body.eme-sw-cart-page table.cart td.actions{
    padding:12px!important;
    margin:12px 0 14px!important;
    border-radius:18px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon{
    display:block!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle{
    width:100%!important;
    min-height:44px!important;
    border:1px solid var(--eme-border)!important;
    border-radius:14px!important;
    background:#fff!important;
    color:var(--eme-ink)!important;
    font-size:13px!important;
    font-weight:900!important;
    letter-spacing:.02em!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:0 14px!important;
    text-transform:none!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle::after{
    content:'+'!important;
    font-size:20px!important;
    line-height:1!important;
    font-weight:500!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon.is-open .eme-coupon-toggle::after{
    content:'âˆ’'!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-fields{
    display:none!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding-top:10px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon.is-open .eme-coupon-fields{
    display:grid!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    height:46px!important;
    min-height:46px!important;
    border-radius:13px!important;
    font-size:16px!important;
    padding:0 13px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon .button{
    height:46px!important;
    min-height:46px!important;
    border-radius:13px!important;
    font-size:12px!important;
    letter-spacing:.04em!important;
  }

  body.eme-sw-cart-page table.cart td.actions > button[name="update_cart"],
  body.eme-sw-cart-page table.cart td.actions > .button[name="update_cart"],
  body.eme-sw-cart-page table.cart td.actions button[name="update_cart"]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    height:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
}


/* === EME V20: totales del carrito mobile al mismo ancho que las cards === */
@media (max-width: 760px){
  body.eme-sw-cart-page .cart-collaterals{
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .cart-collaterals .cart_totals,
  body.eme-sw-cart-page .woocommerce .cart-collaterals .cart_totals{
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    margin:0!important;
    padding:16px!important;
    box-sizing:border-box!important;
    border-radius:20px!important;
  }

  body.eme-sw-cart-page .cart_totals table,
  body.eme-sw-cart-page .cart_totals .shop_table{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .cart_totals table tr,
  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals table td{
    box-sizing:border-box!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout{
    width:100%!important;
    max-width:100%!important;
  }

  body.eme-sw-cart-page .wc-proceed-to-checkout .checkout-button{
    width:100%!important;
    max-width:100%!important;
  }
}


/* === EME V21: cupÃ³n mobile limpio y totales en una lÃ­nea === */
@media (max-width: 760px){
  body.eme-sw-cart-page table.cart td.actions{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
    margin:10px 0 14px!important;
    border-radius:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon{
    background:#fff!important;
    border:1px solid rgba(0,0,0,.08)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.035)!important;
    border-radius:18px!important;
    padding:10px!important;
    margin:0!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-toggle{
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    border-radius:12px!important;
    min-height:42px!important;
    padding:0 8px!important;
    font-size:15px!important;
    text-align:left!important;
  }

  body.eme-sw-cart-page table.cart td.actions .eme-coupon-fields{
    padding-top:8px!important;
    gap:8px!important;
  }

  body.eme-sw-cart-page table.cart td.actions .coupon input.input-text{
    border:1px solid rgba(0,0,0,.1)!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  body.eme-sw-cart-page .cart_totals .shop_table,
  body.eme-sw-cart-page .cart_totals table{
    border-collapse:separate!important;
    border-spacing:0!important;
  }

  body.eme-sw-cart-page .cart_totals table tr,
  body.eme-sw-cart-page .cart_totals .shop_table tr{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    width:100%!important;
    padding:14px 0!important;
    border-bottom:1px solid rgba(0,0,0,.08)!important;
  }

  body.eme-sw-cart-page .cart_totals table tr:last-child,
  body.eme-sw-cart-page .cart_totals .shop_table tr:last-child{
    border-bottom:0!important;
  }

  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals table td,
  body.eme-sw-cart-page .cart_totals .shop_table th,
  body.eme-sw-cart-page .cart_totals .shop_table td{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.eme-sw-cart-page .cart_totals table th,
  body.eme-sw-cart-page .cart_totals .shop_table th{
    flex:0 0 auto!important;
    font-size:20px!important;
    line-height:1.15!important;
    font-weight:900!important;
  }

  body.eme-sw-cart-page .cart_totals table td,
  body.eme-sw-cart-page .cart_totals .shop_table td{
    flex:1 1 auto!important;
    text-align:right!important;
    font-size:20px!important;
    line-height:1.15!important;
  }

  body.eme-sw-cart-page .cart_totals .cart-subtotal td,
  body.eme-sw-cart-page .cart_totals .order-total td{
    white-space:nowrap!important;
  }

  body.eme-sw-cart-page .cart_totals .order-total th,
  body.eme-sw-cart-page .cart_totals .order-total td{
    font-size:22px!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping{
    display:block!important;
    padding:14px 0!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping th,
  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping td{
    display:block!important;
    width:100%!important;
    text-align:left!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping th{
    margin-bottom:10px!important;
  }

  body.eme-sw-cart-page .cart_totals .woocommerce-shipping-totals.shipping td{
    font-size:16px!important;
    line-height:1.35!important;
  }
}


/* === EME V24: ficha producto mobile corregida, sin desbordes === */
body.eme-sw-product-page .eme-product-main-img{
  touch-action:pan-y!important;
}

body.eme-sw-product-page .eme-gallery-nav{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:10!important;
  width:40px!important;
  height:40px!important;
  border:0!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--eme-ink)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:400!important;
  cursor:pointer!important;
}
body.eme-sw-product-page .eme-gallery-prev{left:12px!important;}
body.eme-sw-product-page .eme-gallery-next{right:12px!important;}

body.eme-sw-product-page .eme-product-cartbox-priority .stock::before,
body.eme-sw-product-page .eme-product-cartbox-priority .stock::after,
body.eme-sw-product-page .eme-product-cartbox-priority p.stock::before,
body.eme-sw-product-page .eme-product-cartbox-priority p.stock::after{
  display:none!important;
  content:none!important;
}

body.eme-sw-product-page .eme-product-cartbox-priority .stock{
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  min-height:0!important;
  padding:0!important;
}

body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority form.cart > .stock{
  grid-column:1 / -1!important;
}

body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  height:44px!important;
  border:1px solid var(--eme-border)!important;
  border-radius:999px!important;
  overflow:hidden!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
  width:48px!important;
  min-width:48px!important;
  height:42px!important;
  min-height:42px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  text-align:center!important;
  font-size:16px!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
  width:33px!important;
  min-width:33px!important;
  height:42px!important;
  border:0!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:22px!important;
  font-weight:400!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button{
  min-width:0!important;
  min-height:44px!important;
  height:44px!important;
  border-radius:14px!important;
  font-size:13px!important;
  padding:0 14px!important;
}

@media (max-width: 760px){
  html, body.eme-sw-product-page{
    overflow-x:hidden!important;
  }

  body.eme-sw-product-page .eme-product-shell{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding:12px 10px 52px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body.eme-sw-product-page .eme-product-breadcrumb{
    display:none!important;
  }

  body.eme-sw-product-page .eme-product-layout,
  body.eme-sw-product-page .eme-product-layout-v3{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body.eme-sw-product-page .eme-product-gallery,
  body.eme-sw-product-page .eme-product-summary,
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
    position:relative!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 14px!important;
    padding:14px!important;
    box-sizing:border-box!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }

  body.eme-sw-product-page .eme-product-main-img{
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }

  body.eme-sw-product-page .eme-product-main-img img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    padding:16px!important;
    box-sizing:border-box!important;
  }

  body.eme-sw-product-page .eme-product-zoom{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
  }

  body.eme-sw-product-page .eme-product-thumbs{
    display:flex!important;
    grid-template-columns:none!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:0 2px 5px!important;
    margin-top:10px!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;
  }

  body.eme-sw-product-page .eme-product-thumbs a{
    flex:0 0 74px!important;
    width:74px!important;
    height:74px!important;
    aspect-ratio:1!important;
    scroll-snap-align:start!important;
  }

  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(32px, 10.5vw, 44px)!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
    max-width:100%!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }

  body.eme-sw-product-page .eme-product-price{
    font-size:clamp(30px, 9vw, 40px)!important;
    max-width:100%!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority{
    width:100%!important;
    max-width:100%!important;
    padding:12px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:104px minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart > .stock{
    font-size:15px!important;
    font-weight:900!important;
    margin:0 0 2px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
    height:40px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
    width:40px!important;
    min-width:40px!important;
    height:38px!important;
    min-height:38px!important;
    font-size:15px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
    width:31px!important;
    min-width:31px!important;
    height:38px!important;
    font-size:20px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 10px!important;
    font-size:11px!important;
    letter-spacing:.04em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.eme-sw-product-page .eme-product-value-grid{
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:8px!important;
  }

  body.eme-sw-product-page .eme-product-value-grid div{
    min-width:0!important;
    min-height:64px!important;
    padding:11px!important;
    box-sizing:border-box!important;
  }
}

@media (max-width:390px){
  body.eme-sw-product-page .eme-product-shell{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(30px, 10vw, 39px)!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:98px minmax(0,1fr)!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:98px!important;
    min-width:98px!important;
    max-width:98px!important;
  }
}


/* === EME V25: ficha producto mobile mÃ¡s prolija y enfocada en conversiÃ³n === */
@media (max-width: 760px){
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
    padding:18px 16px!important;
    border-radius:22px!important;
  }

  body.eme-sw-product-page .eme-product-topline{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:9px!important;
    margin:0 0 12px!important;
  }

  body.eme-sw-product-page .eme-product-cat{
    order:1!important;
    font-size:12px!important;
    line-height:1!important;
    letter-spacing:.12em!important;
    margin:0!important;
    color:#777!important;
  }

  body.eme-sw-product-page .eme-stock-pill{
    order:2!important;
    padding:9px 12px!important;
    font-size:12px!important;
    line-height:1!important;
    border-radius:999px!important;
    max-width:100%!important;
  }

  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(31px, 8.2vw, 38px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
    margin:14px 0 12px!important;
    max-width:100%!important;
  }

  body.eme-sw-product-page .eme-social-proof{
    display:flex!important;
    align-items:center!important;
    gap:8px 12px!important;
    flex-wrap:wrap!important;
    font-size:14px!important;
    line-height:1.25!important;
    margin:0 0 16px!important;
  }

  body.eme-sw-product-page .eme-social-proof .stars{
    font-size:14px!important;
    letter-spacing:.02em!important;
  }

  body.eme-sw-product-page .eme-product-rating{
    font-size:14px!important;
    line-height:1.25!important;
    gap:5px!important;
    margin:0!important;
  }

  body.eme-sw-product-page .eme-product-price{
    font-size:clamp(34px, 9vw, 42px)!important;
    line-height:1!important;
    letter-spacing:-.035em!important;
    margin:14px 0 8px!important;
    gap:10px!important;
    align-items:flex-end!important;
  }

  body.eme-sw-product-page .eme-product-price del{
    font-size:20px!important;
    line-height:1!important;
    opacity:.9!important;
  }

  body.eme-sw-product-page .eme-product-installments{
    font-size:15px!important;
    line-height:1.35!important;
    margin:0 0 14px!important;
    color:#666!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority{
    margin:14px 0 14px!important;
    padding:14px!important;
    border-radius:20px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart > .stock{
    font-size:17px!important;
    line-height:1.25!important;
    margin:0 0 6px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:106px minmax(0,1fr)!important;
    gap:10px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button{
    font-size:12px!important;
    letter-spacing:.055em!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:15px!important;
  }

  body.eme-sw-product-page .eme-product-value-grid{
    margin:14px 0 0!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  body.eme-sw-product-page .eme-product-value-grid div{
    min-height:72px!important;
    border-radius:16px!important;
    padding:13px 12px!important;
  }

  body.eme-sw-product-page .eme-product-value-grid strong{
    display:block!important;
    font-size:15px!important;
    line-height:1.15!important;
    margin-bottom:8px!important;
  }

  body.eme-sw-product-page .eme-product-value-grid span{
    display:block!important;
    font-size:13px!important;
    line-height:1.3!important;
    color:#666!important;
  }

  body.eme-sw-product-page .eme-after-cta{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:12px 0 0!important;
  }

  body.eme-sw-product-page .eme-after-cta span{
    width:100%!important;
    justify-content:center!important;
    min-height:38px!important;
    font-size:12px!important;
  }

  body.eme-sw-product-page .eme-product-short{
    font-size:14px!important;
    line-height:1.55!important;
    margin-top:14px!important;
    padding-top:14px!important;
  }
}

@media (max-width:390px){
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
    padding:16px 14px!important;
  }

  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(29px, 8vw, 34px)!important;
  }

  body.eme-sw-product-page .eme-product-price{
    font-size:clamp(31px, 8.4vw, 37px)!important;
  }

  body.eme-sw-product-page .eme-product-price del{
    font-size:18px!important;
  }

  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:98px minmax(0,1fr)!important;
  }

  body.eme-sw-product-page .eme-product-value-grid{
    gap:8px!important;
  }
}


/* === EME V26: ficha producto mobile limpia === */
/* Oculta navegaciÃ³n anterior/siguiente que agrega el tema en la ficha */
body.eme-sw-product-page .post-navigation,
body.eme-sw-product-page .navigation.post-navigation,
body.eme-sw-product-page .product-navigation,
body.eme-sw-product-page .woocommerce-product-navigation,
body.eme-sw-product-page .woostify-product-navigation,
body.eme-sw-product-page .woostify-single-product-navigation,
body.eme-sw-product-page .single-product-navigation,
body.eme-sw-product-page .nav-links,
body.eme-sw-product-page .product-nav,
body.eme-sw-product-page [class*="product-navigation"],
body.eme-sw-product-page [class*="single-product-nav"]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Ajuste del tÃ­tulo en mobile para que no se sienta gigante */
@media (max-width: 760px){
  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(27px, 7.2vw, 34px)!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
    margin:12px 0 12px!important;
  }

  body.eme-sw-product-page .eme-product-price{
    font-size:clamp(30px, 8vw, 38px)!important;
    margin-top:12px!important;
  }

  body.eme-sw-product-page .eme-product-price del{
    font-size:18px!important;
  }
}

@media (max-width:390px){
  body.eme-sw-product-page .eme-product-title{
    font-size:clamp(25px, 7vw, 31px)!important;
  }

  body.eme-sw-product-page .eme-product-price{
    font-size:clamp(28px, 7.7vw, 35px)!important;
  }
}


/* === EME V27: ficha producto sin secciÃ³n inferior y badge de envÃ­o gratis === */
body.eme-sw-product-page .eme-product-info-grid{
  display:none!important;
}

body.eme-sw-product-page .eme-free-shipping-note{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  background:#ecfdf3!important;
  color:#087443!important;
  border:1px solid rgba(8,116,67,.12)!important;
  border-radius:16px!important;
  padding:13px 14px!important;
  margin:10px 0 14px!important;
  font-size:14px!important;
  line-height:1.2!important;
}

body.eme-sw-product-page .eme-free-shipping-note strong{
  font-weight:900!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

body.eme-sw-product-page .eme-free-shipping-note span{
  color:#087443!important;
  opacity:.9!important;
  font-weight:700!important;
  text-align:right!important;
}

@media (max-width:760px){
  body.eme-sw-product-page .eme-free-shipping-note{
    margin:10px 0 14px!important;
    padding:12px 13px!important;
    border-radius:15px!important;
  }

  body.eme-sw-product-page .eme-free-shipping-note strong{
    font-size:13px!important;
  }

  body.eme-sw-product-page .eme-free-shipping-note span{
    font-size:12px!important;
  }
}


/* === EME V36: mini carrito controlado Woostify + barra envÃ­o gratis === */

/* Oculta Free Shipping Label para reemplazarlo por barra EME */
body.eme-sw .fsl-wrapper,
body.eme-sw [class*="fsl-"],
body.eme-sw .free-shipping-label,
body.eme-sw .free-shipping-progress{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  max-height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Lista del mini carrito EME */
body.eme-sw .woocommerce-mini-cart.eme-mini-cart-list{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.eme-sw .woocommerce-mini-cart .eme-mini-cart-item{
  position:relative!important;
  display:block!important;
  padding:14px 38px 14px 0!important;
  margin:0!important;
  border-bottom:1px solid rgba(0,0,0,.09)!important;
  min-height:auto!important;
  height:auto!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

body.eme-sw .eme-mini-cart-row{
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}

body.eme-sw .eme-mini-cart-thumb{
  width:82px!important;
  height:82px!important;
  border-radius:14px!important;
  background:#fafafa!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  text-decoration:none!important;
}

body.eme-sw .eme-mini-cart-thumb img{
  display:block!important;
  float:none!important;
  position:static!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:6px!important;
  margin:0!important;
  border:0!important;
  box-sizing:border-box!important;
}

body.eme-sw .eme-mini-cart-info{
  min-width:0!important;
  padding:0!important;
}

body.eme-sw .eme-mini-cart-title{
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  color:#111!important;
  text-decoration:none!important;
  font-size:18px!important;
  line-height:1.18!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
  margin:0 0 10px!important;
}

body.eme-sw .eme-mini-cart-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
}

/* Selector de unidades EME: no usa input, entonces no se corta nunca */
body.eme-sw .eme-mini-qty-control{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:124px!important;
  min-width:124px!important;
  max-width:124px!important;
  height:38px!important;
  min-height:38px!important;
  border:1px solid rgba(0,0,0,.14)!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

body.eme-sw .eme-mini-qty-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:36px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111!important;
  font-size:19px!important;
  line-height:1!important;
  font-weight:400!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

body.eme-sw .eme-mini-qty-number{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  min-width:42px!important;
  height:36px!important;
  color:#111!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
}

body.eme-sw .eme-mini-cart-price{
  color:#111!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-align:right!important;
}

body.eme-sw .eme-mini-cart-price .amount,
body.eme-sw .eme-mini-cart-price .woocommerce-Price-amount{
  font-size:18px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

/* X Ãºnica */
body.eme-sw .eme-mini-cart-item > a.remove,
body.eme-sw .eme-mini-cart-item > a.remove.remove_from_cart_button{
  position:absolute!important;
  top:16px!important;
  right:0!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  border-radius:999px!important;
  background:#f5f5f3!important;
  color:#D90000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:400!important;
  text-decoration:none!important;
  text-indent:0!important;
  overflow:hidden!important;
  z-index:4!important;
}

body.eme-sw .eme-mini-cart-item > a.remove::before,
body.eme-sw .eme-mini-cart-item > a.remove::after{
  display:none!important;
  content:none!important;
}

/* Total y botones del mini cart */
body.eme-sw .eme-mini-cart-total,
body.eme-sw .woocommerce-mini-cart__total.total.eme-mini-cart-total{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:14px 0 0!important;
  padding:14px 0!important;
  border-top:1px solid rgba(0,0,0,.12)!important;
  border-bottom:0!important;
  color:#111!important;
  font-size:18px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}

body.eme-sw .eme-mini-cart-total .amount,
body.eme-sw .eme-mini-cart-total .woocommerce-Price-amount{
  font-size:19px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

body.eme-sw .eme-mini-cart-buttons,
body.eme-sw .woocommerce-mini-cart__buttons.buttons.eme-mini-cart-buttons{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin:12px 0 0!important;
}

body.eme-sw .eme-mini-cart-buttons .button,
body.eme-sw .eme-mini-cart-buttons a.button{
  width:100%!important;
  min-height:48px!important;
  border-radius:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}

/* Barra de envÃ­o EME: mini cart */
body.eme-sw .eme-mini-shipping-progress{
  display:block!important;
  margin:10px 0 14px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(22,163,74,.18)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.035)!important;
  box-sizing:border-box!important;
}

body.eme-sw .eme-mini-ship-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 8px!important;
  color:#087443!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.eme-sw .eme-mini-ship-amount{
  white-space:nowrap!important;
}

body.eme-sw .eme-mini-ship-bar{
  width:100%!important;
  height:7px!important;
  border-radius:999px!important;
  background:#dff5e8!important;
  overflow:hidden!important;
}

body.eme-sw .eme-mini-ship-fill{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:#16a34a!important;
}

/* Barra de envÃ­o EME: pÃ¡gina carrito */
body.eme-sw-cart-page .eme-cart-shipping-progress{
  width:100%!important;
  max-width:100%!important;
  margin:12px 0 16px!important;
  padding:13px 14px!important;
  border-radius:16px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(22,163,74,.18)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.035)!important;
  box-sizing:border-box!important;
}

body.eme-sw-cart-page .eme-cart-ship-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 9px!important;
  color:#087443!important;
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

body.eme-sw-cart-page .eme-cart-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.eme-sw-cart-page .eme-cart-ship-amount{
  white-space:nowrap!important;
}

body.eme-sw-cart-page .eme-cart-ship-bar{
  width:100%!important;
  height:8px!important;
  border-radius:999px!important;
  background:#dff5e8!important;
  overflow:hidden!important;
}

body.eme-sw-cart-page .eme-cart-ship-fill{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:#16a34a!important;
}

@media (max-width:760px){
  body.eme-sw .eme-mini-cart-row{
    grid-template-columns:76px minmax(0,1fr)!important;
    gap:12px!important;
  }

  body.eme-sw .eme-mini-cart-thumb{
    width:76px!important;
    height:76px!important;
  }

  body.eme-sw .eme-mini-cart-title{
    font-size:17px!important;
  }

  body.eme-sw .eme-mini-qty-control{
    width:116px!important;
    min-width:116px!important;
    max-width:116px!important;
  }

  body.eme-sw .eme-mini-qty-btn{
    width:37px!important;
  }

  body.eme-sw .eme-mini-qty-number{
    width:40px!important;
    min-width:40px!important;
  }

  body.eme-sw .eme-mini-cart-price,
  body.eme-sw .eme-mini-cart-price .amount,
  body.eme-sw .eme-mini-cart-price .woocommerce-Price-amount{
    font-size:17px!important;
  }

  body.eme-sw-cart-page .eme-cart-shipping-progress{
    margin:10px 0 14px!important;
    padding:12px 13px!important;
    border-radius:15px!important;
  }

  body.eme-sw-cart-page .eme-cart-ship-top{
    font-size:13px!important;
  }
}

@media (max-width:390px){
  body.eme-sw .eme-mini-cart-row{
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:10px!important;
  }

  body.eme-sw .eme-mini-cart-thumb{
    width:68px!important;
    height:68px!important;
  }

  body.eme-sw .eme-mini-cart-title{
    font-size:16px!important;
  }

  body.eme-sw .eme-mini-qty-control{
    width:108px!important;
    min-width:108px!important;
    max-width:108px!important;
  }

  body.eme-sw .eme-mini-qty-btn{
    width:34px!important;
  }

  body.eme-sw .eme-mini-qty-number{
    width:38px!important;
    min-width:38px!important;
  }

  body.eme-sw .eme-mini-cart-price,
  body.eme-sw .eme-mini-cart-price .amount,
  body.eme-sw .eme-mini-cart-price .woocommerce-Price-amount{
    font-size:16px!important;
  }
}


/* === EME V45: mini carrito lateral estable sobre Woostify === */

/* Drawer real de Woostify: evitar que quede mÃ¡s ancho que la pantalla y se corte a la derecha */
body.eme-sw #shop-cart-sidebar,
body.eme-sw .shop-cart-sidebar,
body.eme-sw .cart-sidebar,
body.eme-sw .site-dialog.cart-sidebar,
body.eme-sw .woostify-cart-sidebar,
body.eme-sw .woostify-sidebar-cart,
body.eme-sw .site-header-cart-side{
  width:min(92vw, 390px)!important;
  max-width:min(92vw, 390px)!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}

body.eme-sw #shop-cart-sidebar .cart-sidebar-content,
body.eme-sw .cart-sidebar .cart-sidebar-content,
body.eme-sw .woostify-cart-sidebar .cart-sidebar-content,
body.eme-sw .woostify-sidebar-cart .cart-sidebar-content,
body.eme-sw .site-header-cart-side .cart-sidebar-content{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
  padding-left:18px!important;
  padding-right:18px!important;
}

/* Quitar cualquier barra vieja de Free Shipping Label o parches anteriores */
body.eme-sw .fsl-wrapper,
body.eme-sw [class*="fsl-"],
body.eme-sw .free-shipping-label,
body.eme-sw .free-shipping-progress,
body.eme-sw .emev37-ship{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

body.eme-sw .woocommerce-mini-cart.eme-mini-cart-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
  max-height:calc(100dvh - 330px)!important;
}

body.eme-sw .woocommerce-mini-cart .eme-mini-cart-item,
body.eme-sw .eme-mini-cart-item{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:14px 32px 14px 0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

body.eme-sw .eme-mini-cart-row{
  display:grid!important;
  grid-template-columns:70px minmax(0, 1fr)!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

body.eme-sw .eme-mini-cart-thumb{
  width:70px!important;
  height:70px!important;
  min-width:70px!important;
  max-width:70px!important;
  border-radius:14px!important;
}

body.eme-sw .eme-mini-cart-info{
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}

body.eme-sw .eme-mini-cart-title{
  font-size:16px!important;
  line-height:1.16!important;
  font-weight:800!important;
  -webkit-line-clamp:3!important;
  margin-bottom:9px!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  max-width:100%!important;
  min-width:0!important;
}

body.eme-sw .eme-mini-cart-meta{
  display:grid!important;
  grid-template-columns:112px minmax(58px, max-content)!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}

body.eme-sw .eme-mini-qty-control{
  width:112px!important;
  min-width:112px!important;
  max-width:112px!important;
  height:38px!important;
  min-height:38px!important;
  border-radius:999px!important;
  overflow:hidden!important;
  flex-shrink:0!important;
}

body.eme-sw .eme-mini-qty-btn{
  width:34px!important;
  min-width:34px!important;
  height:36px!important;
  font-size:18px!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}

body.eme-sw .eme-mini-qty-number{
  width:44px!important;
  min-width:44px!important;
  height:36px!important;
  font-size:16px!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-cart-price{
  justify-self:end!important;
  min-width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-align:right!important;
  font-size:15.5px!important;
  line-height:1!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-cart-price .amount,
body.eme-sw .eme-mini-cart-price .woocommerce-Price-amount{
  font-size:15.5px!important;
  line-height:1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

/* X Ãºnica */
body.eme-sw .eme-mini-cart-item > a.remove,
body.eme-sw .eme-mini-cart-item > a.remove.remove_from_cart_button,
body.eme-sw .eme-mini-remove{
  top:15px!important;
  right:0!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border-radius:999px!important;
  background:#f5f5f3!important;
  color:#D90000!important;
  font-size:0!important;
  line-height:0!important;
}

body.eme-sw .eme-mini-cart-item > a.remove::before,
body.eme-sw .eme-mini-cart-item > a.remove::after,
body.eme-sw .eme-mini-remove::before,
body.eme-sw .eme-mini-remove::after{
  content:none!important;
  display:none!important;
}

body.eme-sw .eme-mini-remove span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  font-size:21px!important;
  line-height:1!important;
  color:#D90000!important;
  pointer-events:none!important;
}

/* Total y barra de envÃ­o: siempre visibles y dentro del ancho */
body.eme-sw .eme-mini-cart-total,
body.eme-sw .woocommerce-mini-cart__total.total.eme-mini-cart-total{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  margin:14px 0 0!important;
  padding:14px 0 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

body.eme-sw .eme-mini-cart-total strong{
  white-space:nowrap!important;
}

body.eme-sw .eme-mini-cart-total .amount,
body.eme-sw .eme-mini-cart-total .woocommerce-Price-amount{
  white-space:nowrap!important;
  font-size:17px!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-shipping-progress{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:10px 0 14px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(22,163,74,.18)!important;
  overflow:hidden!important;
}

body.eme-sw .eme-mini-ship-top{
  font-size:13px!important;
  line-height:1.15!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-width:0!important;
}

body.eme-sw .eme-mini-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.eme-sw .eme-mini-ship-amount{
  white-space:nowrap!important;
}

body.eme-sw .eme-mini-ship-bar{
  height:7px!important;
}

body.eme-sw .eme-mini-cart-buttons,
body.eme-sw .woocommerce-mini-cart__buttons.buttons.eme-mini-cart-buttons{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:12px 0 0!important;
}

body.eme-sw .eme-mini-cart-buttons .button,
body.eme-sw .eme-mini-cart-buttons a.button{
  width:100%!important;
  max-width:100%!important;
  min-height:46px!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
}

/* Mobile angosto */
@media(max-width:480px){
  body.eme-sw #shop-cart-sidebar,
  body.eme-sw .shop-cart-sidebar,
  body.eme-sw .cart-sidebar,
  body.eme-sw .site-dialog.cart-sidebar,
  body.eme-sw .woostify-cart-sidebar,
  body.eme-sw .woostify-sidebar-cart,
  body.eme-sw .site-header-cart-side{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
  }

  body.eme-sw #shop-cart-sidebar .cart-sidebar-content,
  body.eme-sw .cart-sidebar .cart-sidebar-content,
  body.eme-sw .woostify-cart-sidebar .cart-sidebar-content,
  body.eme-sw .woostify-sidebar-cart .cart-sidebar-content,
  body.eme-sw .site-header-cart-side .cart-sidebar-content{
    padding-left:16px!important;
    padding-right:16px!important;
  }

  body.eme-sw .woocommerce-mini-cart.eme-mini-cart-list{
    max-height:calc(100dvh - 320px)!important;
  }
}

@media(max-width:390px){
  body.eme-sw .eme-mini-cart-row{
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:10px!important;
  }

  body.eme-sw .eme-mini-cart-thumb{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    max-width:64px!important;
  }

  body.eme-sw .eme-mini-cart-title{
    font-size:15px!important;
  }

  body.eme-sw .eme-mini-cart-meta{
    grid-template-columns:104px minmax(54px, max-content)!important;
    gap:6px!important;
  }

  body.eme-sw .eme-mini-qty-control{
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
  }

  body.eme-sw .eme-mini-qty-btn{
    width:31px!important;
    min-width:31px!important;
  }

  body.eme-sw .eme-mini-qty-number{
    width:42px!important;
    min-width:42px!important;
  }

  body.eme-sw .eme-mini-cart-price,
  body.eme-sw .eme-mini-cart-price .amount,
  body.eme-sw .eme-mini-cart-price .woocommerce-Price-amount{
    font-size:14px!important;
  }
}


/* === EME V46: ajuste final mini-carrito nativo Woostify === */

/* Mantener el drawer dentro de pantalla sin correrlo */
body.eme-sw #shop-cart-sidebar,
body.eme-sw .cart-sidebar,
body.eme-sw .site-dialog.cart-sidebar,
body.eme-sw .woostify-cart-sidebar,
body.eme-sw .woostify-sidebar-cart,
body.eme-sw .site-header-cart-side{
  width:min(92vw, 390px)!important;
  max-width:min(92vw, 390px)!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}

body.eme-sw #shop-cart-sidebar .cart-sidebar-content,
body.eme-sw .cart-sidebar .cart-sidebar-content,
body.eme-sw .woostify-cart-sidebar .cart-sidebar-content,
body.eme-sw .woostify-sidebar-cart .cart-sidebar-content,
body.eme-sw .site-header-cart-side .cart-sidebar-content{
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}

/* Selector nativo de Woostify: centrar PERFECTO el nÃºmero */
body.eme-sw #shop-cart-sidebar .mini-cart-quantity,
body.eme-sw .cart-sidebar .mini-cart-quantity,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity,
body.eme-sw .site-header-cart-side .mini-cart-quantity{
  display:grid!important;
  grid-template-columns:34px 44px 34px!important;
  align-items:center!important;
  justify-items:center!important;
  width:122px!important;
  min-width:122px!important;
  max-width:122px!important;
  height:38px!important;
  min-height:38px!important;
  border:1px solid rgba(0,0,0,.14)!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.qty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:36px!important;
  min-height:36px!important;
  line-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111!important;
  text-align:center!important;
  text-indent:0!important;
  font-size:16px!important;
  font-weight:900!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:none!important;
  outline:none!important;
  transform:none!important;
  -webkit-transform:none!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  -webkit-appearance:none!important;
  vertical-align:middle!important;
  position:static!important;
  top:auto!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty::-webkit-outer-spin-button,
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty::-webkit-inner-spin-button,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty::-webkit-outer-spin-button,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-product-qty,
body.eme-sw .cart-sidebar .mini-cart-product-qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-qty,
body.eme-sw .site-header-cart-side .mini-cart-product-qty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:#fff!important;
  color:#111!important;
  font-size:19px!important;
  line-height:1!important;
  font-weight:500!important;
  cursor:pointer!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  touch-action:manipulation!important;
  box-sizing:border-box!important;
  text-indent:0!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Evitar que la barra vieja de Free Shipping Label aparezca duplicada */
body.eme-sw .fsl-wrapper,
body.eme-sw [class*="fsl-"],
body.eme-sw .free-shipping-label,
body.eme-sw .free-shipping-progress{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Barra verde EME en mini-carrito */
body.eme-sw #shop-cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .woostify-cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .woostify-sidebar-cart .eme-mini-shipping-progress,
body.eme-sw .site-header-cart-side .eme-mini-shipping-progress{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:10px 0 14px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(22,163,74,.18)!important;
  overflow:hidden!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-top,
body.eme-sw .cart-sidebar .eme-mini-ship-top,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-top,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-top,
body.eme-sw .site-header-cart-side .eme-mini-ship-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-width:0!important;
  margin:0 0 8px!important;
  color:#247a37!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:800!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-msg,
body.eme-sw .cart-sidebar .eme-mini-ship-msg,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-msg,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-msg,
body.eme-sw .site-header-cart-side .eme-mini-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-amount,
body.eme-sw .cart-sidebar .eme-mini-ship-amount,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-amount,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-amount,
body.eme-sw .site-header-cart-side .eme-mini-ship-amount{
  white-space:nowrap!important;
  flex:0 0 auto!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-bar,
body.eme-sw .cart-sidebar .eme-mini-ship-bar,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-bar,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-bar,
body.eme-sw .site-header-cart-side .eme-mini-ship-bar{
  width:100%!important;
  height:7px!important;
  border-radius:999px!important;
  background:rgba(52,168,83,.14)!important;
  overflow:hidden!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-fill,
body.eme-sw .cart-sidebar .eme-mini-ship-fill,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-fill,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-fill,
body.eme-sw .site-header-cart-side .eme-mini-ship-fill{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:#34a853!important;
}

/* En mobile angosto, un poco mÃ¡s compacto */
@media(max-width:390px){
  body.eme-sw #shop-cart-sidebar .mini-cart-quantity,
  body.eme-sw .cart-sidebar .mini-cart-quantity,
  body.eme-sw .woostify-cart-sidebar .mini-cart-quantity,
  body.eme-sw .woostify-sidebar-cart .mini-cart-quantity,
  body.eme-sw .site-header-cart-side .mini-cart-quantity{
    grid-template-columns:32px 42px 32px!important;
    width:106px!important;
    min-width:106px!important;
    max-width:106px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-product-qty,
  body.eme-sw .cart-sidebar .mini-cart-product-qty,
  body.eme-sw .woostify-cart-sidebar .mini-cart-product-qty,
  body.eme-sw .woostify-sidebar-cart .mini-cart-product-qty,
  body.eme-sw .site-header-cart-side .mini-cart-product-qty{
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
  body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
  body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.qty,
  body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.qty,
  body.eme-sw .site-header-cart-side .mini-cart-quantity input.qty{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
  }
}


/* === EME V47: mini carrito final â€” selector centrado arriba + barra verde completa === */

/* Subir apenas el nÃºmero del selector nativo Woostify */
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.input-text.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.input-text.qty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 0 2px 0!important;
  line-height:34px!important;
  transform:translateY(-1px)!important;
  -webkit-transform:translateY(-1px)!important;
}

/* Barra verde EME: soporta todas las clases generadas en versiones anteriores */
body.eme-sw #shop-cart-sidebar .eme-mini-shipping-progress,
body.eme-sw #shop-cart-sidebar .eme-sw-shipping-progress,
body.eme-sw #shop-cart-sidebar [data-eme-shipping-progress],
body.eme-sw .cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .cart-sidebar .eme-sw-shipping-progress,
body.eme-sw .cart-sidebar [data-eme-shipping-progress],
body.eme-sw .woostify-cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .woostify-cart-sidebar .eme-sw-shipping-progress,
body.eme-sw .woostify-cart-sidebar [data-eme-shipping-progress],
body.eme-sw .woostify-sidebar-cart .eme-mini-shipping-progress,
body.eme-sw .woostify-sidebar-cart .eme-sw-shipping-progress,
body.eme-sw .woostify-sidebar-cart [data-eme-shipping-progress],
body.eme-sw .site-header-cart-side .eme-mini-shipping-progress,
body.eme-sw .site-header-cart-side .eme-sw-shipping-progress,
body.eme-sw .site-header-cart-side [data-eme-shipping-progress],
body.eme-sw .widget_shopping_cart_content .eme-mini-shipping-progress,
body.eme-sw .widget_shopping_cart_content .eme-sw-shipping-progress,
body.eme-sw .widget_shopping_cart_content [data-eme-shipping-progress]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:12px 0 16px!important;
  padding:11px 13px 12px!important;
  border-radius:14px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(34,197,94,.22)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.05)!important;
  overflow:hidden!important;
  color:#247a37!important;
  clear:both!important;
}

/* Layout superior: texto izquierda + plata derecha */
body.eme-sw #shop-cart-sidebar .eme-mini-ship-top,
body.eme-sw #shop-cart-sidebar .eme-ship-top,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-top,
body.eme-sw .cart-sidebar .eme-mini-ship-top,
body.eme-sw .cart-sidebar .eme-ship-top,
body.eme-sw .cart-sidebar .eme-sw-ship-top,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-top,
body.eme-sw .woostify-cart-sidebar .eme-ship-top,
body.eme-sw .woostify-cart-sidebar .eme-sw-ship-top,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-top,
body.eme-sw .woostify-sidebar-cart .eme-ship-top,
body.eme-sw .woostify-sidebar-cart .eme-sw-ship-top,
body.eme-sw .site-header-cart-side .eme-mini-ship-top,
body.eme-sw .site-header-cart-side .eme-ship-top,
body.eme-sw .site-header-cart-side .eme-sw-ship-top,
body.eme-sw .widget_shopping_cart_content .eme-mini-ship-top,
body.eme-sw .widget_shopping_cart_content .eme-ship-top,
body.eme-sw .widget_shopping_cart_content .eme-sw-ship-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 8px!important;
  padding:0!important;
  color:#247a37!important;
  font-size:13.5px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:-.01em!important;
}

/* Texto de la barra */
body.eme-sw #shop-cart-sidebar .eme-mini-ship-msg,
body.eme-sw #shop-cart-sidebar .eme-ship-msg,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-msg,
body.eme-sw .cart-sidebar .eme-mini-ship-msg,
body.eme-sw .cart-sidebar .eme-ship-msg,
body.eme-sw .cart-sidebar .eme-sw-ship-msg,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-msg,
body.eme-sw .woostify-cart-sidebar .eme-ship-msg,
body.eme-sw .woostify-cart-sidebar .eme-sw-ship-msg,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-msg,
body.eme-sw .woostify-sidebar-cart .eme-ship-msg,
body.eme-sw .woostify-sidebar-cart .eme-sw-ship-msg,
body.eme-sw .site-header-cart-side .eme-mini-ship-msg,
body.eme-sw .site-header-cart-side .eme-ship-msg,
body.eme-sw .site-header-cart-side .eme-sw-ship-msg,
body.eme-sw .widget_shopping_cart_content .eme-mini-ship-msg,
body.eme-sw .widget_shopping_cart_content .eme-ship-msg,
body.eme-sw .widget_shopping_cart_content .eme-sw-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-weight:900!important;
}

/* Monto a la derecha */
body.eme-sw #shop-cart-sidebar .eme-mini-ship-amount,
body.eme-sw #shop-cart-sidebar .eme-ship-amount,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-amount,
body.eme-sw .cart-sidebar .eme-mini-ship-amount,
body.eme-sw .cart-sidebar .eme-ship-amount,
body.eme-sw .cart-sidebar .eme-sw-ship-amount,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-amount,
body.eme-sw .woostify-cart-sidebar .eme-ship-amount,
body.eme-sw .woostify-cart-sidebar .eme-sw-ship-amount,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-amount,
body.eme-sw .woostify-sidebar-cart .eme-ship-amount,
body.eme-sw .woostify-sidebar-cart .eme-sw-ship-amount,
body.eme-sw .site-header-cart-side .eme-mini-ship-amount,
body.eme-sw .site-header-cart-side .eme-ship-amount,
body.eme-sw .site-header-cart-side .eme-sw-ship-amount,
body.eme-sw .widget_shopping_cart_content .eme-mini-ship-amount,
body.eme-sw .widget_shopping_cart_content .eme-ship-amount,
body.eme-sw .widget_shopping_cart_content .eme-sw-ship-amount{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-weight:900!important;
}

/* Barra fina */
body.eme-sw #shop-cart-sidebar .eme-mini-ship-bar,
body.eme-sw #shop-cart-sidebar .eme-ship-bar,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-bar,
body.eme-sw .cart-sidebar .eme-mini-ship-bar,
body.eme-sw .cart-sidebar .eme-ship-bar,
body.eme-sw .cart-sidebar .eme-sw-ship-bar,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-bar,
body.eme-sw .woostify-cart-sidebar .eme-ship-bar,
body.eme-sw .woostify-cart-sidebar .eme-sw-ship-bar,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-bar,
body.eme-sw .woostify-sidebar-cart .eme-ship-bar,
body.eme-sw .woostify-sidebar-cart .eme-sw-ship-bar,
body.eme-sw .site-header-cart-side .eme-mini-ship-bar,
body.eme-sw .site-header-cart-side .eme-ship-bar,
body.eme-sw .site-header-cart-side .eme-sw-ship-bar,
body.eme-sw .widget_shopping_cart_content .eme-mini-ship-bar,
body.eme-sw .widget_shopping_cart_content .eme-ship-bar,
body.eme-sw .widget_shopping_cart_content .eme-sw-ship-bar{
  display:block!important;
  width:100%!important;
  height:7px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(34,197,94,.14)!important;
  overflow:hidden!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-fill,
body.eme-sw #shop-cart-sidebar .eme-ship-fill,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-fill,
body.eme-sw .cart-sidebar .eme-mini-ship-fill,
body.eme-sw .cart-sidebar .eme-ship-fill,
body.eme-sw .cart-sidebar .eme-sw-ship-fill,
body.eme-sw .woostify-cart-sidebar .eme-mini-ship-fill,
body.eme-sw .woostify-cart-sidebar .eme-ship-fill,
body.eme-sw .woostify-cart-sidebar .eme-sw-ship-fill,
body.eme-sw .woostify-sidebar-cart .eme-mini-ship-fill,
body.eme-sw .woostify-sidebar-cart .eme-ship-fill,
body.eme-sw .woostify-sidebar-cart .eme-sw-ship-fill,
body.eme-sw .site-header-cart-side .eme-mini-ship-fill,
body.eme-sw .site-header-cart-side .eme-ship-fill,
body.eme-sw .site-header-cart-side .eme-sw-ship-fill,
body.eme-sw .widget_shopping_cart_content .eme-mini-ship-fill,
body.eme-sw .widget_shopping_cart_content .eme-ship-fill,
body.eme-sw .widget_shopping_cart_content .eme-sw-ship-fill{
  display:block!important;
  height:100%!important;
  min-height:100%!important;
  border-radius:999px!important;
  background:#43a047!important;
}

/* No mostrar la versiÃ³n simple/textual si algÃºn hook viejo la imprime */
body.eme-sw #shop-cart-sidebar .eme-mini-shipping-progress:not(:has(.eme-mini-ship-bar)):not(:has(.eme-ship-bar)):not(:has(.eme-sw-ship-bar)),
body.eme-sw .cart-sidebar .eme-mini-shipping-progress:not(:has(.eme-mini-ship-bar)):not(:has(.eme-ship-bar)):not(:has(.eme-sw-ship-bar)){
  padding:11px 13px!important;
}


/* === EME V49: correcciÃ³n qty centrado + barra envÃ­o fiable === */

/* NÃºmero del selector nativo: sin bordes internos, centrado perfecto */
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.input-text.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.input-text.qty{
  position:static!important;
  top:auto!important;
  transform:none!important;
  -webkit-transform:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-left:0!important;
  border-right:0!important;
  text-align:center!important;
  vertical-align:middle!important;
  outline:none!important;
  box-shadow:none!important;
}

/* Barra verde con caja + barra de progreso visible, aunque el tema intente pisarla */
body.eme-sw [data-eme-shipping-progress],
body.eme-sw .eme-mini-shipping-progress,
body.eme-sw .eme-cart-shipping-progress,
body.eme-sw .eme-sw-shipping-progress{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:12px 0 16px!important;
  padding:11px 13px 12px!important;
  border-radius:14px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(34,197,94,.22)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.05)!important;
  overflow:hidden!important;
  color:#247a37!important;
  clear:both!important;
}

body.eme-sw .eme-mini-ship-top,
body.eme-sw .eme-cart-ship-top,
body.eme-sw .eme-sw-ship-top,
body.eme-sw .eme-ship-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 8px!important;
  padding:0!important;
  color:#247a37!important;
  font-size:13.5px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-ship-msg,
body.eme-sw .eme-cart-ship-msg,
body.eme-sw .eme-sw-ship-msg,
body.eme-sw .eme-ship-msg{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-ship-amount,
body.eme-sw .eme-cart-ship-amount,
body.eme-sw .eme-sw-ship-amount,
body.eme-sw .eme-ship-amount{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-weight:900!important;
}

body.eme-sw .eme-mini-ship-bar,
body.eme-sw .eme-cart-ship-bar,
body.eme-sw .eme-sw-ship-bar,
body.eme-sw .eme-ship-bar{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:7px!important;
  min-height:7px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(34,197,94,.14)!important;
  overflow:hidden!important;
  clear:both!important;
}

body.eme-sw .eme-mini-ship-fill,
body.eme-sw .eme-cart-ship-fill,
body.eme-sw .eme-sw-ship-fill,
body.eme-sw .eme-ship-fill{
  display:block!important;
  height:100%!important;
  min-height:100%!important;
  border-radius:999px!important;
  background:#43a047!important;
}




/* === EME V50: Ficha producto — diseno referencia final === */

/* Nota de envio gratis en ficha */
body.eme-sw-product-page .eme-free-shipping-note{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:10px 0 4px!important;
  padding:12px 16px!important;
  border-radius:14px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(34,197,94,.22)!important;
  font-size:14px!important;
  color:#247a37!important;
  line-height:1.35!important;
}
body.eme-sw-product-page .eme-free-shipping-note strong{
  color:#087443!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-free-shipping-note span{
  font-weight:600!important;
}

/* Caja de compra con selector de cantidad tipo pill (referencia) */
body.eme-sw-product-page .eme-product-cartbox-priority{
  margin:14px 0 10px!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:10px!important;
  align-items:center!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1.5px solid #ddd!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden!important;
  height:56px!important;
  min-width:130px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
  width:50px!important;
  min-width:50px!important;
  height:54px!important;
  min-height:54px!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  text-align:center!important;
  font-size:18px!important;
  font-weight:900!important;
  color:var(--eme-ink)!important;
  padding:0!important;
  margin:0!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  -webkit-appearance:none!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty::-webkit-outer-spin-button,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:54px!important;
  min-width:40px!important;
  border:0!important;
  background:transparent!important;
  color:var(--eme-ink)!important;
  font-size:22px!important;
  font-weight:700!important;
  cursor:pointer!important;
  padding:0!important;
  line-height:1!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus:hover,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus:hover{
  background:#f5f5f3!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button{
  min-height:56px!important;
  width:100%!important;
  padding:0 24px!important;
  font-size:14.5px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--eme-ink, #111)!important;
  color:#fff!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  box-shadow:0 4px 14px rgba(0,0,0,.12)!important;
  transition:background .15s ease, transform .15s ease!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button:hover{
  background:var(--eme-red, #D90000)!important;
  transform:translateY(-1px)!important;
}

/* Boton COMPRAR AHORA */
body.eme-sw-product-page .eme-buy-now-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  min-height:56px!important;
  padding:15px 24px!important;
  margin:10px 0 0!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--eme-red, #D90000)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  cursor:pointer!important;
  box-shadow:0 4px 16px rgba(230,52,0,.25)!important;
  transition:transform .15s ease, box-shadow .15s ease, background .2s ease!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-buy-now-btn:hover{
  background:var(--eme-red2, #B80000)!important;
  transform:translateY(-1px)!important;
  box-shadow:0 6px 22px rgba(230,52,0,.35)!important;
  color:#fff!important;
  text-decoration:none!important;
}
body.eme-sw-product-page .eme-buy-now-btn:active{
  transform:translateY(0)!important;
  box-shadow:0 2px 8px rgba(230,52,0,.18)!important;
}

/* Grilla 4 columnas con emojis centrados */
body.eme-sw-product-page .eme-trust-grid{
  display:grid!important;
  grid-template-columns:repeat(4, 1fr)!important;
  gap:0!important;
  margin:22px 0 8px!important;
  padding:20px 10px!important;
  border:0!important;
  background:transparent!important;
}
body.eme-sw-product-page .eme-trust-col{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
  gap:6px!important;
  padding:0 4px!important;
}
body.eme-sw-product-page .eme-trust-emoji{
  font-size:28px!important;
  line-height:1!important;
  display:block!important;
  margin-bottom:2px!important;
}
body.eme-sw-product-page .eme-trust-col strong{
  font-size:13.5px!important;
  font-weight:800!important;
  color:#111!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
}
body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
  font-size:12px!important;
  font-weight:500!important;
  color:#888!important;
  line-height:1.2!important;
}

/* Tarjeta de seguimiento del pedido */
body.eme-sw-product-page .eme-tracking-card{
  margin:16px 0 8px!important;
  padding:20px 22px 22px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-tracking-title{
  font-size:15px!important;
  font-weight:800!important;
  color:#111!important;
  margin:0 0 18px!important;
  line-height:1.2!important;
}
body.eme-sw-product-page .eme-tracking-steps{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  width:100%!important;
}
body.eme-sw-product-page .eme-step{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
  gap:6px!important;
  flex:0 0 auto!important;
  min-width:80px!important;
}
body.eme-sw-product-page .eme-step-circle{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  border-radius:50%!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  color:#fff!important;
  background:#111!important;
  border:2px solid #111!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-step-circle.is-pending{
  background:#f0f0ee!important;
  color:#999!important;
  border-color:#ddd!important;
}
body.eme-sw-product-page .eme-step.is-done .eme-step-circle{
  background:#111!important;
  color:#fff!important;
  border-color:#111!important;
}
body.eme-sw-product-page .eme-step.is-active .eme-step-circle{
  background:#111!important;
  color:#fff!important;
  border-color:#111!important;
}
body.eme-sw-product-page .eme-step strong{
  font-size:13px!important;
  font-weight:800!important;
  color:#111!important;
  line-height:1.2!important;
}
body.eme-sw-product-page .eme-step > span{
  font-size:12px!important;
  font-weight:500!important;
  color:#999!important;
  line-height:1.2!important;
  font-style:italic!important;
}
body.eme-sw-product-page .eme-step-line{
  flex:1 1 auto!important;
  height:2px!important;
  min-width:20px!important;
  background:#ddd!important;
  margin-top:17px!important;
  border-radius:2px!important;
}

/* Boton WhatsApp — verde solido */
body.eme-sw-product-page .eme-whatsapp-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  min-height:54px!important;
  padding:14px 20px!important;
  margin:14px 0 6px!important;
  border:0!important;
  border-radius:14px!important;
  background:#5fce68!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  cursor:pointer!important;
  box-shadow:0 4px 16px rgba(95,206,104,.25)!important;
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease!important;
  box-sizing:border-box!important;
}
body.eme-sw-product-page .eme-whatsapp-btn:hover{
  background:#4eba57!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:translateY(-1px)!important;
  box-shadow:0 6px 22px rgba(95,206,104,.35)!important;
}
body.eme-sw-product-page .eme-whatsapp-btn:active{
  transform:translateY(0)!important;
}
body.eme-sw-product-page .eme-whatsapp-btn svg{
  display:none!important;
}

/* Ocultar elementos viejos */
body.eme-sw-product-page .eme-product-value-grid,
body.eme-sw-product-page .eme-after-cta,
body.eme-sw-product-page .eme-product-trust-list{
  display:none!important;
}

/* Stock text */
body.eme-sw-product-page .eme-product-cartbox-priority .stock{
  font-size:15px!important;
  font-weight:800!important;
  color:var(--eme-ink)!important;
  margin:0 0 10px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.in-stock{
  color:var(--eme-green, #087443)!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .stock.out-of-stock{
  color:var(--eme-red, #D90000)!important;
}

/* Responsive */
@media (max-width:760px){
  body.eme-sw-product-page .eme-free-shipping-note{
    padding:10px 14px!important;
    font-size:13px!important;
    border-radius:12px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:1fr!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
    width:100%!important;
    flex:1!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .single_add_to_cart_button{
    min-height:52px!important;
    font-size:13.5px!important;
  }
  body.eme-sw-product-page .eme-buy-now-btn{
    min-height:50px!important;
    font-size:14.5px!important;
    padding:13px 20px!important;
    border-radius:12px!important;
  }
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(4, 1fr)!important;
    padding:16px 6px!important;
    margin:16px 0 6px!important;
  }
  body.eme-sw-product-page .eme-trust-emoji{
    font-size:24px!important;
  }
  body.eme-sw-product-page .eme-trust-col strong{
    font-size:12px!important;
  }
  body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
    font-size:11px!important;
  }
  body.eme-sw-product-page .eme-tracking-card{
    padding:16px 16px 18px!important;
    border-radius:15px!important;
    margin:12px 0 6px!important;
  }
  body.eme-sw-product-page .eme-tracking-title{
    font-size:14px!important;
    margin-bottom:14px!important;
  }
  body.eme-sw-product-page .eme-step{
    min-width:65px!important;
  }
  body.eme-sw-product-page .eme-step-circle{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    font-size:13px!important;
  }
  body.eme-sw-product-page .eme-step strong{
    font-size:12px!important;
  }
  body.eme-sw-product-page .eme-step > span{
    font-size:11px!important;
  }
  body.eme-sw-product-page .eme-step-line{
    margin-top:15px!important;
    min-width:14px!important;
  }
  body.eme-sw-product-page .eme-whatsapp-btn{
    min-height:50px!important;
    font-size:14px!important;
    padding:12px 18px!important;
    border-radius:12px!important;
  }
}

@media (max-width:390px){
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(2, 1fr)!important;
    gap:14px 0!important;
    padding:16px 10px!important;
  }
  body.eme-sw-product-page .eme-buy-now-btn{
    min-height:46px!important;
    font-size:13.5px!important;
  }
  body.eme-sw-product-page .eme-step{
    min-width:55px!important;
  }
  body.eme-sw-product-page .eme-step-circle{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    font-size:12px!important;
  }
  body.eme-sw-product-page .eme-step-line{
    margin-top:13px!important;
    min-width:10px!important;
  }
  body.eme-sw-product-page .eme-whatsapp-btn{
    min-height:46px!important;
    font-size:13px!important;
  }
}


/* === EME V51: ficha producto — sacar beneficios superiores + rojo correcto === */

/* Saca la sección marcada: Envío gratis / Compra rápida / Hasta 6 cuotas / Atención EME */
body.eme-sw-product-page .eme-conversion-strip,
body.eme-sw-product-page section.eme-conversion-strip,
body.eme-sw-product-page section[aria-label="Beneficios de compra"]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Comprar ahora con el mismo rojo usado por el hover de Agregar al carrito */
body.eme-sw-product-page .eme-buy-now-btn,
body.eme-sw-product-page a.eme-buy-now-btn,
body.eme-sw-product-page .summary .eme-buy-now-btn{
  background:var(--eme-red, #B80000)!important;
  border-color:var(--eme-red, #B80000)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(198,42,30,.22)!important;
}

body.eme-sw-product-page .eme-buy-now-btn:hover,
body.eme-sw-product-page a.eme-buy-now-btn:hover,
body.eme-sw-product-page .summary .eme-buy-now-btn:hover{
  background:var(--eme-red, #B80000)!important;
  border-color:var(--eme-red, #B80000)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 10px 26px rgba(198,42,30,.28)!important;
}

/* Evita que alguna regla vieja vuelva a mostrar la tira en mobile */
@media(max-width:1120px){
  body.eme-sw-product-page .eme-conversion-strip,
  body.eme-sw-product-page section.eme-conversion-strip,
  body.eme-sw-product-page section[aria-label="Beneficios de compra"]{
    display:none!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
  }
}


/* === EME V52: WhatsApp debajo de seguimiento de pedido === */
body.eme-sw-product-page .eme-tracking-card + .eme-whatsapp-btn,
body.eme-sw-product-page .eme-whatsapp-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:58px!important;
  margin:18px 0 8px!important;
  padding:16px 22px!important;
  border:0!important;
  border-radius:18px!important;
  background:#74cf6c!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  box-shadow:0 12px 28px rgba(116,207,108,.24)!important;
  box-sizing:border-box!important;
}

body.eme-sw-product-page .eme-whatsapp-btn:hover{
  background:#63bf5c!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:translateY(-1px)!important;
  box-shadow:0 16px 34px rgba(116,207,108,.32)!important;
}

body.eme-sw-product-page .eme-whatsapp-btn:active{
  transform:translateY(0)!important;
}

@media(max-width:720px){
  body.eme-sw-product-page .eme-whatsapp-btn{
    min-height:52px!important;
    margin:14px 0 6px!important;
    padding:14px 18px!important;
    border-radius:15px!important;
    font-size:13px!important;
    letter-spacing:.055em!important;
  }
}


/* === EME V53: mostrar botón de ayuda por WhatsApp en ficha === */
/* Base.css esconde enlaces wa.me globalmente. Este override lo habilita SOLO en ficha de producto. */
body.eme-sw-product-page a.eme-product-wa-btn,
body.eme-sw-product-page a.eme-product-wa-btn[href*="wa.me"],
body.eme-sw-product-page .eme-tracking-card + a.eme-product-wa-btn{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:58px!important;
  margin:18px 0 24px!important;
  padding:16px 22px!important;
  border:0!important;
  border-radius:18px!important;
  background:#74cf6c!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  box-shadow:0 12px 28px rgba(116,207,108,.24)!important;
  box-sizing:border-box!important;
  position:relative!important;
  z-index:3!important;
  clear:both!important;
}

body.eme-sw-product-page a.eme-product-wa-btn:hover,
body.eme-sw-product-page a.eme-product-wa-btn[href*="wa.me"]:hover{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  background:#63bf5c!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:translateY(-1px)!important;
  box-shadow:0 16px 34px rgba(116,207,108,.32)!important;
}

body.eme-sw-product-page a.eme-product-wa-btn:active{
  transform:translateY(0)!important;
}

@media(max-width:720px){
  body.eme-sw-product-page a.eme-product-wa-btn,
  body.eme-sw-product-page a.eme-product-wa-btn[href*="wa.me"]{
    min-height:52px!important;
    margin:14px 0 20px!important;
    padding:14px 18px!important;
    border-radius:15px!important;
    font-size:13px!important;
    letter-spacing:.055em!important;
  }
}


/* === EME V54: permitir botón/widget externo de WhatsApp en PC y mobile === */
/* Antes el plugin ocultaba globalmente widgets externos de WhatsApp. Esto lo revierte. */
body.eme-sw .joinchat,
body.eme-sw .joinchat__button,
body.eme-sw .qlwapp,
body.eme-sw .qlwapp-container,
body.eme-sw .chaty-widget,
body.eme-sw .chaty,
body.eme-sw .wa-float,
body.eme-sw .wa__btn_popup,
body.eme-sw .wa__widget_container,
body.eme-sw .ht-ctc-chat,
body.eme-sw .ctc-analytics,
body.eme-sw [class*="floating-whatsapp"],
body.eme-sw [class*="whatsapp-float"],
body.eme-sw [id*="whatsapp"]{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Solo para contenedores típicos del botón flotante. No toca el mini-cart ni botones internos. */
body.eme-sw .joinchat,
body.eme-sw .qlwapp,
body.eme-sw .qlwapp-container,
body.eme-sw .chaty-widget,
body.eme-sw .chaty,
body.eme-sw .wa-float,
body.eme-sw .wa__btn_popup,
body.eme-sw .wa__widget_container,
body.eme-sw .ht-ctc-chat,
body.eme-sw .ctc-analytics{
  display:block!important;
}

/* Links flotantes directos a WhatsApp: visibles otra vez. */
body.eme-sw a[href*="api.whatsapp.com"]:not(.eme-product-wa-btn),
body.eme-sw a[href*="wa.me"]:not(.eme-product-wa-btn){
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Mantener el botón de producto intacto. */
body.eme-sw-product-page a.eme-product-wa-btn{
  display:flex!important;
}


/* === EME V55: ficha producto — selector más compacto + carrusel premium relacionados === */
body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
  grid-template-columns:minmax(112px, 122px) minmax(0, 1fr)!important;
  gap:14px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
  height:52px!important;
  min-width:118px!important;
  border-radius:18px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
  width:42px!important;
  min-width:42px!important;
  height:50px!important;
  min-height:50px!important;
  font-size:17px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
  width:38px!important;
  min-width:38px!important;
  height:50px!important;
  font-size:20px!important;
}

body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
  padding:28px!important;
  margin-top:30px!important;
  overflow:hidden!important;
}
body.eme-sw-product-page .eme-related-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 20px!important;
}
body.eme-sw-product-page .eme-related-head h2{
  margin:0!important;
  font-family:'Archivo',sans-serif!important;
  font-size:clamp(26px,3vw,42px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  font-weight:900!important;
  color:var(--eme-ink)!important;
}
body.eme-sw-product-page .eme-related-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex:0 0 auto!important;
}
body.eme-sw-product-page .eme-related-arrow{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  border-radius:999px!important;
  border:1px solid var(--eme-border)!important;
  background:#fff!important;
  color:var(--eme-ink)!important;
  font-size:28px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  box-shadow:0 10px 22px rgba(0,0,0,.05)!important;
  transition:transform .18s ease, background .18s ease, border-color .18s ease!important;
}
body.eme-sw-product-page .eme-related-arrow:hover{
  transform:translateY(-1px)!important;
  background:#f7f7f5!important;
  border-color:#d7d7d3!important;
}
body.eme-sw-product-page .eme-related-viewport{
  overflow:hidden!important;
}
body.eme-sw-product-page .eme-related-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc(25% - 14px)!important;
  gap:18px!important;
  overflow-x:auto!important;
  padding:2px 2px 4px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  overscroll-behavior-x:contain!important;
}
body.eme-sw-product-page .eme-related-track::-webkit-scrollbar{
  display:none!important;
}
body.eme-sw-product-page .eme-related-card{
  scroll-snap-align:start!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  border:1px solid #ddddda!important;
  border-radius:30px!important;
  background:#fff!important;
  padding:12px!important;
  box-shadow:none!important;
  position:relative!important;
}
body.eme-sw-product-page .eme-related-media{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#fff!important;
  min-height:260px!important;
  aspect-ratio:1 / 1!important;
  text-decoration:none!important;
}
body.eme-sw-product-page .eme-related-image{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:8px!important;
}
body.eme-sw-product-page .eme-related-badge{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  z-index:2!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:2px solid #efcaca!important;
  color:#D90000!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
  text-align:center!important;
  box-shadow:0 8px 18px rgba(0,0,0,.04)!important;
}
body.eme-sw-product-page .eme-related-badge.is-dark{
  background:#111!important;
  border-color:#111!important;
  color:#fff!important;
}
body.eme-sw-product-page .eme-related-badge.is-sale{
  background:#ff2f2f!important;
  border-color:#ff2f2f!important;
  color:#fff!important;
}
body.eme-sw-product-page .eme-related-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:12px 6px 0!important;
}
body.eme-sw-product-page .eme-related-title{
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  margin:0 0 14px!important;
  color:var(--eme-ink)!important;
  text-decoration:none!important;
  font-family:'Archivo',sans-serif!important;
  font-size:22px!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-related-title:hover{
  color:var(--eme-ink)!important;
  text-decoration:none!important;
}
body.eme-sw-product-page .eme-related-price,
body.eme-sw-product-page .eme-related-price .amount{
  display:block!important;
  margin:0 0 16px!important;
  color:#000!important;
  font-family:'Archivo',sans-serif!important;
  font-size:30px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-related-price del,
body.eme-sw-product-page .eme-related-price ins{
  text-decoration:none!important;
}
body.eme-sw-product-page .eme-related-shipping{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 16px!important;
  color:#575757!important;
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:500!important;
}
body.eme-sw-product-page .eme-related-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:auto!important;
}
body.eme-sw-product-page .eme-related-tag{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 18px!important;
  border-radius:999px!important;
  background:#f4f4f3!important;
  border:1px solid #e4e4e1!important;
  color:#111!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.1!important;
}
body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:66px!important;
  margin-top:18px!important;
  border:0!important;
  border-radius:24px!important;
  background:#111!important;
  color:#fff!important;
  font-size:20px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:transform .18s ease, background .18s ease!important;
}
body.eme-sw-product-page .eme-related-add:hover,
body.eme-sw-product-page .eme-related-card a.eme-related-add:hover,
body.eme-sw-product-page .eme-related-card .button.eme-related-add:hover{
  background:#1c1c1b!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:translateY(-1px)!important;
}
body.eme-sw-product-page .eme-related-add.is-view{
  background:#1d1d1b!important;
}

@media (max-width:1180px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(33.3333% - 12px)!important;
  }
}
@media (max-width:920px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:22px!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 10px)!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:19px!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:24px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:15px!important;
  }
}
@media (max-width:760px){
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:1fr!important;
    justify-items:start!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:116px!important;
    min-width:116px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
    width:38px!important;
    min-width:38px!important;
    flex:0 0 38px!important;
  }
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:18px 14px!important;
    border-radius:22px!important;
  }
  body.eme-sw-product-page .eme-related-head{
    margin-bottom:16px!important;
  }
  body.eme-sw-product-page .eme-related-head h2{
    font-size:clamp(22px,7vw,34px)!important;
  }
  body.eme-sw-product-page .eme-related-nav{
    display:none!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 8px)!important;
    gap:12px!important;
    padding-bottom:2px!important;
  }
  body.eme-sw-product-page .eme-related-card{
    border-radius:24px!important;
    padding:10px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:190px!important;
    border-radius:20px!important;
  }
  body.eme-sw-product-page .eme-related-badge{
    min-height:36px!important;
    padding:8px 14px!important;
    font-size:11px!important;
    top:8px!important;
    left:8px!important;
  }
  body.eme-sw-product-page .eme-related-body{
    padding:10px 4px 0!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:16px!important;
    margin-bottom:10px!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:20px!important;
    margin-bottom:12px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:13px!important;
    margin-bottom:12px!important;
  }
  body.eme-sw-product-page .eme-related-tags{
    gap:8px!important;
  }
  body.eme-sw-product-page .eme-related-tag{
    min-height:34px!important;
    padding:7px 12px!important;
    font-size:11px!important;
  }
  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add{
    min-height:50px!important;
    margin-top:14px!important;
    border-radius:18px!important;
    font-size:14px!important;
  }
}
@media (max-width:420px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 6px)!important;
    gap:10px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:15px!important;
  }
  body.eme-sw-product-page .eme-related-tag{
    font-size:10px!important;
  }
}


/* === EME V56: relacionados sin chips + mejor ajuste responsive === */
body.eme-sw-product-page .eme-related-badge.is-sale{
  background:#fff!important;
  border-color:#efcaca!important;
  color:#D90000!important;
}
body.eme-sw-product-page .eme-related-badge.is-sale::before,
body.eme-sw-product-page .eme-related-badge.is-alert::before{
  content:none!important;
}
body.eme-sw-product-page .eme-related-tags,
body.eme-sw-product-page .eme-related-tag{
  display:none!important;
}
body.eme-sw-product-page .eme-related-track{
  align-items:stretch!important;
}
body.eme-sw-product-page .eme-related-card{
  min-width:0!important;
}
body.eme-sw-product-page .eme-related-media{
  min-height:228px!important;
}
body.eme-sw-product-page .eme-related-body{
  padding:10px 8px 0!important;
}
body.eme-sw-product-page .eme-related-title{
  font-size:20px!important;
  min-height:3.2em!important;
  margin-bottom:12px!important;
}
body.eme-sw-product-page .eme-related-price,
body.eme-sw-product-page .eme-related-price .amount{
  font-size:28px!important;
  margin-bottom:14px!important;
}
body.eme-sw-product-page .eme-related-shipping{
  margin-bottom:0!important;
}
body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add{
  margin-top:16px!important;
}

@media (max-width:920px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 9px)!important;
    gap:14px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:180px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:17px!important;
    min-height:3.45em!important;
  }
}
@media (max-width:760px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:18px 12px!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 7px)!important;
    gap:10px!important;
    padding:2px 0!important;
  }
  body.eme-sw-product-page .eme-related-card{
    border-radius:22px!important;
    padding:8px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:150px!important;
    border-radius:18px!important;
  }
  body.eme-sw-product-page .eme-related-image{
    padding:6px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:15px!important;
    min-height:3.65em!important;
    margin-bottom:10px!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:18px!important;
    margin-bottom:10px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:12px!important;
  }
  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add{
    min-height:46px!important;
    margin-top:12px!important;
    border-radius:16px!important;
    font-size:12px!important;
    padding:8px 10px!important;
  }
}
@media (max-width:420px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 6px)!important;
    gap:10px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:14px!important;
  }
}


/* === EME V57: títulos completos en relacionados + selector qty más chico === */
body.eme-sw-product-page .eme-related-body{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
}
body.eme-sw-product-page .eme-related-title{
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  min-height:auto!important;
}
body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add{
  margin-top:auto!important;
}

body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
  grid-template-columns:minmax(96px, 108px) minmax(0,1fr)!important;
  gap:12px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
  height:48px!important;
  min-width:108px!important;
  width:108px!important;
  border-radius:16px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
  width:36px!important;
  min-width:36px!important;
  height:46px!important;
  min-height:46px!important;
  font-size:16px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
  width:34px!important;
  min-width:34px!important;
  height:46px!important;
  font-size:18px!important;
}

@media (max-width:920px){
  body.eme-sw-product-page .eme-related-title{
    font-size:16px!important;
    line-height:1.12!important;
  }
}
@media (max-width:760px){
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:96px!important;
    min-width:96px!important;
    height:46px!important;
    border-radius:15px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
    width:32px!important;
    min-width:32px!important;
    height:44px!important;
    min-height:44px!important;
    font-size:15px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
    width:32px!important;
    min-width:32px!important;
    height:44px!important;
    font-size:17px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:14px!important;
    line-height:1.13!important;
    margin-bottom:8px!important;
  }
}


/* === EME V58: relacionados sin títulos cortados + selector más compacto === */
body.eme-sw-product-page .eme-related-viewport{
  overflow-x:hidden!important;
  overflow-y:visible!important;
}
body.eme-sw-product-page .eme-related-track{
  align-items:stretch!important;
}
body.eme-sw-product-page .eme-related-card{
  height:auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
}
body.eme-sw-product-page .eme-related-media{
  min-height:210px!important;
  aspect-ratio:1 / .88!important;
}
body.eme-sw-product-page .eme-related-body{
  flex:0 0 auto!important;
  padding:10px 8px 0!important;
}
body.eme-sw-product-page .eme-related-title{
  display:block!important;
  max-height:none!important;
  min-height:0!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:auto!important;
  font-size:18px!important;
  line-height:1.08!important;
  margin-bottom:10px!important;
}
body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add{
  margin-top:14px!important;
  flex:0 0 auto!important;
}

body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
  grid-template-columns:minmax(88px, 100px) minmax(0,1fr)!important;
  gap:12px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
  width:100px!important;
  min-width:100px!important;
  height:44px!important;
  border-radius:14px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
  width:32px!important;
  min-width:32px!important;
  height:42px!important;
  min-height:42px!important;
  font-size:15px!important;
}
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
  width:32px!important;
  min-width:32px!important;
  height:42px!important;
  font-size:17px!important;
}

@media (max-width:920px){
  body.eme-sw-product-page .eme-related-media{
    min-height:150px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:14px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
}
@media (max-width:760px){
  body.eme-sw-product-page .eme-product-cartbox-priority form.cart{
    grid-template-columns:1fr!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity{
    width:90px!important;
    min-width:90px!important;
    height:42px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity input.qty{
    width:30px!important;
    min-width:30px!important;
    height:40px!important;
    min-height:40px!important;
    font-size:14px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .minus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity .plus,
  body.eme-sw-product-page .eme-product-cartbox-priority .quantity button{
    width:30px!important;
    min-width:30px!important;
    height:40px!important;
    font-size:16px!important;
  }
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:18px 10px!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc(50% - 6px)!important;
    gap:10px!important;
  }
  body.eme-sw-product-page .eme-related-card{
    padding:8px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:134px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:13px!important;
    line-height:1.08!important;
    margin-bottom:8px!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:18px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:12px!important;
  }
}


/* === EME V59: carrusel de relacionados igualado a la referencia + CTA siempre visible === */
body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
  padding:28px 30px 32px!important;
  border-radius:32px!important;
  overflow:visible!important;
}
body.eme-sw-product-page .eme-related-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:20px!important;
}
body.eme-sw-product-page .eme-related-head h2{
  margin:0!important;
  font-family:'Archivo',sans-serif!important;
  font-size:clamp(34px,3.2vw,64px)!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-related-nav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
body.eme-sw-product-page .eme-related-arrow{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:999px!important;
  border:1px solid #e4e4e1!important;
  background:#fff!important;
  color:#111!important;
  font-size:30px!important;
  font-weight:700!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:none!important;
}
body.eme-sw-product-page .eme-related-viewport{
  overflow:hidden!important;
}
body.eme-sw-product-page .eme-related-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 72px) / 5)!important;
  gap:18px!important;
  align-items:stretch!important;
  padding:0!important;
}
body.eme-sw-product-page .eme-related-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-height:100%!important;
  padding:14px!important;
  border:1px solid #ddddda!important;
  border-radius:30px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
body.eme-sw-product-page .eme-related-media{
  min-height:220px!important;
  aspect-ratio:1 / 1!important;
  border-radius:24px!important;
  background:#fff!important;
}
body.eme-sw-product-page .eme-related-image{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:8px!important;
}
body.eme-sw-product-page .eme-related-badge{
  top:12px!important;
  left:12px!important;
  min-height:40px!important;
  padding:8px 16px!important;
  border-radius:999px!important;
  font-size:14px!important;
}
body.eme-sw-product-page .eme-related-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
  padding:14px 8px 0!important;
}
body.eme-sw-product-page .eme-related-title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  overflow:hidden!important;
  min-height:4.45em!important;
  margin:0 0 14px!important;
  color:#111!important;
  text-decoration:none!important;
  font-family:'Archivo',sans-serif!important;
  font-size:18px!important;
  line-height:1.11!important;
  letter-spacing:-.035em!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-related-price,
body.eme-sw-product-page .eme-related-price .amount{
  display:block!important;
  margin:0 0 14px!important;
  color:#000!important;
  font-family:'Archivo',sans-serif!important;
  font-size:28px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
  font-weight:900!important;
}
body.eme-sw-product-page .eme-related-shipping{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  color:#666!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:500!important;
}
body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add,
body.eme-sw-product-page .eme-related-card a.add_to_cart_button.eme-related-add,
body.eme-sw-product-page .eme-related-card a.ajax_add_to_cart.eme-related-add{
  position:static!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:stretch!important;
  width:100%!important;
  min-height:54px!important;
  margin-top:18px!important;
  padding:0 18px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  border:1px solid #111!important;
  border-radius:18px!important;
  background:#111!important;
  color:#fff!important;
  font-family:'Archivo',sans-serif!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  box-shadow:none!important;
  overflow:visible!important;
  z-index:2!important;
}
body.eme-sw-product-page .eme-related-add:hover,
body.eme-sw-product-page .eme-related-card a.eme-related-add:hover,
body.eme-sw-product-page .eme-related-card .button.eme-related-add:hover{
  background:#1c1c1b!important;
  border-color:#1c1c1b!important;
  color:#fff!important;
  transform:none!important;
}
body.eme-sw-product-page .eme-related-add.is-view{
  background:#fff!important;
  color:#111!important;
  border-color:#111!important;
}
body.eme-sw-product-page .eme-related-card .added_to_cart,
body.eme-sw-product-page .eme-related-card a.added_to_cart{
  display:none!important;
}

@media (max-width:1500px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 54px) / 4)!important;
  }
}
@media (max-width:1180px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 36px) / 3)!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:200px!important;
  }
}
@media (max-width:920px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:22px 18px 24px!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 14px) / 2)!important;
    gap:14px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:168px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:15px!important;
    min-height:4.5em!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:22px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:13px!important;
  }
  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add{
    min-height:48px!important;
    border-radius:16px!important;
    font-size:13px!important;
    margin-top:14px!important;
  }
}
@media (max-width:760px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:18px 12px 22px!important;
  }
  body.eme-sw-product-page .eme-related-head{
    margin-bottom:14px!important;
  }
  body.eme-sw-product-page .eme-related-head h2{
    font-size:32px!important;
  }
  body.eme-sw-product-page .eme-related-nav{
    display:none!important;
  }
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 10px) / 2)!important;
    gap:10px!important;
  }
  body.eme-sw-product-page .eme-related-card{
    padding:10px!important;
    border-radius:24px!important;
  }
  body.eme-sw-product-page .eme-related-media{
    min-height:128px!important;
    border-radius:18px!important;
  }
  body.eme-sw-product-page .eme-related-title{
    font-size:13px!important;
    line-height:1.1!important;
    min-height:4.45em!important;
    margin-bottom:10px!important;
  }
  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:18px!important;
    margin-bottom:10px!important;
  }
  body.eme-sw-product-page .eme-related-shipping{
    font-size:12px!important;
  }
  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add{
    min-height:46px!important;
    margin-top:12px!important;
    border-radius:16px!important;
    font-size:12px!important;
    padding:0 10px!important;
  }
}


/* === EME V60: animación global de botón agregado al carrito === */
body.eme-sw .eme-atc-animating,
body.eme-sw a.eme-atc-animating,
body.eme-sw button.eme-atc-animating,
body.eme-sw .button.eme-atc-animating,
body.eme-sw .woocommerce a.button.eme-atc-animating,
body.eme-sw .woocommerce button.button.eme-atc-animating,
body.eme-sw .single_add_to_cart_button.eme-atc-animating,
body.eme-sw .add_to_cart_button.eme-atc-animating{
  transform:scale(.985)!important;
  transition:background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease!important;
}

body.eme-sw .eme-atc-added,
body.eme-sw a.eme-atc-added,
body.eme-sw button.eme-atc-added,
body.eme-sw .button.eme-atc-added,
body.eme-sw .woocommerce a.button.eme-atc-added,
body.eme-sw .woocommerce button.button.eme-atc-added,
body.eme-sw .single_add_to_cart_button.eme-atc-added,
body.eme-sw .add_to_cart_button.eme-atc-added,
body.eme-sw-product-page .eme-related-card a.eme-related-add.eme-atc-added,
body.eme-sw-product-page .eme-related-card .button.eme-related-add.eme-atc-added{
  background:#57a052!important;
  border-color:#57a052!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  text-decoration:none!important;
  box-shadow:0 12px 26px rgba(87,160,82,.22)!important;
  transform:scale(1)!important;
  animation:emeAtcAddedPop .42s cubic-bezier(.2,.9,.2,1) both!important;
}

body.eme-sw .eme-atc-added:hover,
body.eme-sw a.eme-atc-added:hover,
body.eme-sw button.eme-atc-added:hover,
body.eme-sw .button.eme-atc-added:hover,
body.eme-sw .woocommerce a.button.eme-atc-added:hover,
body.eme-sw .woocommerce button.button.eme-atc-added:hover,
body.eme-sw .single_add_to_cart_button.eme-atc-added:hover,
body.eme-sw .add_to_cart_button.eme-atc-added:hover{
  background:#57a052!important;
  border-color:#57a052!important;
  color:#fff!important;
  transform:scale(1)!important;
}

body.eme-sw .eme-atc-added::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.22) 45%, transparent 70%)!important;
  transform:translateX(-130%)!important;
  animation:emeAtcShine .85s ease-out .05s both!important;
}

body.eme-sw .eme-atc-check{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-right:8px!important;
  font-weight:900!important;
  line-height:1!important;
}

body.eme-sw .eme-atc-added,
body.eme-sw .eme-atc-animating{
  position:relative!important;
  overflow:hidden!important;
}

@keyframes emeAtcAddedPop{
  0%{ transform:scale(.96); }
  55%{ transform:scale(1.025); }
  100%{ transform:scale(1); }
}
@keyframes emeAtcShine{
  0%{ transform:translateX(-130%); }
  100%{ transform:translateX(130%); }
}


/* === EME V62: 5 beneficios en ficha de producto === */
body.eme-sw-product-page .eme-trust-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start!important;
}
body.eme-sw-product-page .eme-trust-col{
  min-width:0!important;
}
body.eme-sw-product-page .eme-trust-col strong,
body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
@media(max-width:720px){
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    padding:16px 2px!important;
  }
  body.eme-sw-product-page .eme-trust-emoji{
    font-size:22px!important;
  }
  body.eme-sw-product-page .eme-trust-col strong{
    font-size:11px!important;
    line-height:1.15!important;
  }
  body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
    font-size:10px!important;
    line-height:1.15!important;
  }
}
@media(max-width:390px){
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:4px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.eme-sw-product-page .eme-trust-emoji{
    font-size:20px!important;
  }
  body.eme-sw-product-page .eme-trust-col strong{
    font-size:10px!important;
  }
  body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
    font-size:9px!important;
  }
}


/* === EME V63: corrige layout de variables en desktop sin tocar el resto === */
@media (min-width: 781px){
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart{
    display:block!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart::after{
    content:"";
    display:block;
    clear:both;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart table.variations{
    width:100%!important;
    margin:0 0 12px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .single_variation_wrap,
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .woocommerce-variation-add-to-cart,
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .variations_button{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    clear:both!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .woocommerce-variation-add-to-cart,
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .variations_button{
    display:grid!important;
    grid-template-columns:132px minmax(0,1fr)!important;
    align-items:center!important;
    gap:12px!important;
    margin-top:12px!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .quantity{
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    margin:0!important;
    flex:none!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .single_add_to_cart_button{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    flex:none!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .woocommerce-variation{
    margin:0!important;
  }
  body.eme-sw-product-page .eme-product-cartbox-priority form.variations_form.cart .reset_variations{
    display:inline-flex!important;
    align-items:center!important;
    margin-top:8px!important;
  }
}


/* === EME V68: ficha de producto más amplia solo en monitores grandes / 1440p+ ===
   Mantiene intactas las reglas de laptop, tablet y celular. */
@media (min-width: 1700px){
  body.eme-sw-product-page .eme-product-shell,
  body.eme-sw-shell-page .eme-page-shell{
    width:min(1760px, calc(100vw - 104px))!important;
    max-width:none!important;
  }
  body.eme-sw-product-page .eme-product-layout-v3,
  body.eme-sw-product-page .eme-product-layout{
    grid-template-columns:minmax(0,1.18fr) minmax(520px,.82fr)!important;
    gap:38px!important;
  }
  body.eme-sw-product-page .eme-product-gallery{
    padding:22px!important;
  }
  body.eme-sw-product-page .eme-product-main-img{
    max-height:660px!important;
  }
  body.eme-sw-product-page .eme-product-main-img img{
    max-height:620px!important;
    padding:22px!important;
  }
  body.eme-sw-product-page .eme-product-summary.eme-product-buybox{
    padding:30px!important;
  }
}


/* === EME V76: ficha de producto con 4 beneficios, sin Garantía === */
body.eme-sw-product-page .eme-trust-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start!important;
}

@media(max-width:720px){
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    padding:16px 4px!important;
  }
  body.eme-sw-product-page .eme-trust-emoji{
    font-size:22px!important;
  }
  body.eme-sw-product-page .eme-trust-col strong{
    font-size:11.5px!important;
    line-height:1.15!important;
  }
  body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
    font-size:10px!important;
    line-height:1.15!important;
  }
}

@media(max-width:390px){
  body.eme-sw-product-page .eme-trust-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:4px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.eme-sw-product-page .eme-trust-emoji{
    font-size:20px!important;
  }
  body.eme-sw-product-page .eme-trust-col strong{
    font-size:10px!important;
  }
  body.eme-sw-product-page .eme-trust-col > span:not(.eme-trust-emoji){
    font-size:9px!important;
  }
}

/* === EME V106: carrito tipo Shopify premium === */
body.eme-sw-cart-page .eme-cart-shell-v106{
  width:min(1560px, calc(100vw - 56px))!important;
  max-width:1560px!important;
  padding-top:30px!important;
}
body.eme-sw-cart-page .eme-shopify-cart-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
body.eme-sw-cart-page .eme-shopify-cart{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(360px, 440px)!important;
  gap:26px!important;
  align-items:start!important;
  width:100%!important;
}
body.eme-sw-cart-page .eme-shopify-cart .eme-cart-form{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  width:100%!important;
}
body.eme-sw-cart-page .eme-cart-panel,
body.eme-sw-cart-page .eme-cart-summary-sticky,
body.eme-sw-cart-page .eme-cart-empty{
  background:#fff!important;
  border:1px solid rgba(10,10,10,.08)!important;
  border-radius:30px!important;
  box-shadow:0 22px 60px rgba(0,0,0,.055)!important;
}
body.eme-sw-cart-page .eme-cart-panel{padding:24px!important;}
body.eme-sw-cart-page .eme-cart-panel-head,
body.eme-sw-cart-page .eme-cart-summary-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 18px!important;
}
body.eme-sw-cart-page .eme-cart-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin:0 0 7px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#f4f4f2!important;
  color:#656565!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  line-height:1!important;
  text-transform:uppercase!important;
}
body.eme-sw-cart-page .eme-cart-panel-head h2,
body.eme-sw-cart-page .eme-cart-summary-head h2{
  margin:0!important;
  color:var(--eme-ink)!important;
  font-family:'Archivo',sans-serif!important;
  font-size:clamp(26px, 2.3vw, 38px)!important;
  line-height:.95!important;
  letter-spacing:-.045em!important;
  font-weight:900!important;
}
body.eme-sw-cart-page .eme-cart-continue{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid var(--eme-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--eme-ink)!important;
  font-size:13px!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.eme-sw-cart-page .eme-cart-continue:hover{border-color:var(--eme-ink)!important;transform:translateY(-1px)!important;}
body.eme-sw-cart-page .eme-cart-items{
  display:grid!important;
  gap:14px!important;
}
body.eme-sw-cart-page .eme-cart-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:116px minmax(0,1fr)!important;
  gap:18px!important;
  padding:16px!important;
  border:1px solid rgba(10,10,10,.08)!important;
  border-radius:24px!important;
  background:#fbfbfa!important;
  overflow:hidden!important;
}
body.eme-sw-cart-page .eme-cart-item-media,
body.eme-sw-cart-page .eme-cart-item-media a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-cart-item-media img{
  width:112px!important;
  height:112px!important;
  object-fit:contain!important;
  padding:10px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid rgba(10,10,10,.06)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.035)!important;
}
body.eme-sw-cart-page .eme-cart-item-main{
  display:grid!important;
  gap:16px!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-cart-item-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-cart-item-titlewrap{min-width:0!important;}
body.eme-sw-cart-page .eme-cart-item-title{
  display:block!important;
  color:var(--eme-ink)!important;
  font-size:18px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
  text-decoration:none!important;
}
body.eme-sw-cart-page .eme-cart-item-title:hover{color:var(--eme-red)!important;}
body.eme-sw-cart-page .eme-cart-item-meta,
body.eme-sw-cart-page .eme-cart-item-meta dl,
body.eme-sw-cart-page .eme-cart-item-meta p{
  margin:7px 0 0!important;
  color:#6a6a67!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
body.eme-sw-cart-page .eme-cart-item-meta dt,
body.eme-sw-cart-page .eme-cart-item-meta dd{display:inline!important;margin:0!important;}
body.eme-sw-cart-page .eme-cart-stock-pill{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  width:max-content!important;
  margin-top:10px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#f4f4f2!important;
  color:#636363!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
}
body.eme-sw-cart-page .eme-cart-stock-pill::before{
  content:""!important;
  width:7px!important;
  height:7px!important;
  border-radius:999px!important;
  background:currentColor!important;
}
body.eme-sw-cart-page .eme-cart-stock-pill.is-in{background:#ecfdf3!important;color:#087443!important;}
body.eme-sw-cart-page .eme-cart-stock-pill.is-out{background:#f6f6f4!important;color:#9a3412!important;}
body.eme-sw-cart-page .eme-cart-remove{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:70px!important;
  height:36px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid rgba(10,10,10,.08)!important;
  color:#5f5f5d!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
}
body.eme-sw-cart-page .eme-cart-remove:hover{
  background:#fff2f2!important;
  border-color:rgba(217,0,0,.18)!important;
  color:var(--eme-red)!important;
}
body.eme-sw-cart-page .eme-cart-item-bottom{
  display:grid!important;
  grid-template-columns:1fr minmax(160px, .8fr) 1fr!important;
  gap:12px!important;
  align-items:stretch!important;
}
body.eme-sw-cart-page .eme-cart-price-block,
body.eme-sw-cart-page .eme-cart-qty-block,
body.eme-sw-cart-page .eme-cart-line-total{
  min-width:0!important;
  padding:12px 13px!important;
  border:1px solid rgba(10,10,10,.07)!important;
  border-radius:18px!important;
  background:#fff!important;
}
body.eme-sw-cart-page .eme-cart-price-block span,
body.eme-sw-cart-page .eme-cart-qty-block > span,
body.eme-sw-cart-page .eme-cart-line-total span{
  display:block!important;
  margin:0 0 7px!important;
  color:#767672!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  line-height:1!important;
  text-transform:uppercase!important;
}
body.eme-sw-cart-page .eme-cart-price-block strong,
body.eme-sw-cart-page .eme-cart-line-total strong{
  display:block!important;
  color:var(--eme-ink)!important;
  font-size:18px!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
}
body.eme-sw-cart-page .eme-cart-line-total strong{color:var(--eme-red)!important;}
body.eme-sw-cart-page .eme-cart-qty,
body.eme-sw-cart-page .eme-cart-sold-one{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:42px!important;
  border:1px solid var(--eme-border)!important;
  border-radius:999px!important;
  background:#fafafa!important;
  overflow:hidden!important;
}
body.eme-sw-cart-page .eme-cart-qty .quantity{
  display:block!important;
  width:56px!important;
  min-width:56px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-cart-qty input.qty,
body.eme-sw-cart-page .eme-cart-qty .quantity input.qty{
  width:56px!important;
  min-width:56px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--eme-ink)!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:40px!important;
  text-align:center!important;
  box-shadow:none!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
}
body.eme-sw-cart-page .eme-cart-qty input.qty::-webkit-outer-spin-button,
body.eme-sw-cart-page .eme-cart-qty input.qty::-webkit-inner-spin-button{appearance:none!important;-webkit-appearance:none!important;margin:0!important;}
body.eme-sw-cart-page .eme-cart-qty-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--eme-ink)!important;
  font-size:20px!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
body.eme-sw-cart-page .eme-cart-qty-btn:hover{background:#fff!important;color:var(--eme-red)!important;transform:none!important;}
body.eme-sw-cart-page .eme-cart-actions-row{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:12px!important;
  align-items:start!important;
  margin:16px 0 0!important;
  padding-top:16px!important;
  border-top:1px solid rgba(10,10,10,.08)!important;
}
body.eme-sw-cart-page .eme-cart-coupon{
  display:block!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-cart-coupon-toggle{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:52px!important;
  padding:0 16px!important;
  border:1px solid var(--eme-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:var(--eme-ink)!important;
  font-size:14px!important;
  font-weight:900!important;
  text-align:left!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-cart-coupon-toggle::after{content:"+"!important;font-size:18px!important;font-weight:900!important;}
body.eme-sw-cart-page .eme-cart-coupon.is-open .eme-cart-coupon-toggle::after{content:"−"!important;}
body.eme-sw-cart-page .eme-cart-coupon-fields{
  display:none!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  margin-top:10px!important;
}
body.eme-sw-cart-page .eme-cart-coupon.is-open .eme-cart-coupon-fields{display:grid!important;}
body.eme-sw-cart-page .eme-cart-coupon-fields input.input-text{
  width:100%!important;
  min-height:52px!important;
  border-radius:16px!important;
  font-weight:800!important;
}
body.eme-sw-cart-page .eme-cart-coupon-fields .button,
body.eme-sw-cart-page .eme-cart-update{
  min-height:52px!important;
  padding:0 18px!important;
  border-radius:16px!important;
  background:var(--eme-ink)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.eme-sw-cart-page .eme-cart-update:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  transform:none!important;
}
body.eme-sw-cart-page .eme-cart-coupon-fields .button:hover,
body.eme-sw-cart-page .eme-cart-update:not(:disabled):hover{background:var(--eme-red)!important;color:#fff!important;}
body.eme-sw-cart-page .eme-cart-summary-panel{min-width:0!important;}
body.eme-sw-cart-page .eme-cart-summary-sticky{
  position:sticky!important;
  top:104px!important;
  padding:24px!important;
}
body.eme-sw-cart-page .eme-cart-summary-head{margin-bottom:14px!important;}
body.eme-sw-cart-page .eme-cart-trust-grid{
  display:grid!important;
  gap:10px!important;
  margin:0 0 16px!important;
}
body.eme-sw-cart-page .eme-cart-trust-grid div{
  padding:14px 15px!important;
  border:1px solid rgba(10,10,10,.07)!important;
  border-radius:18px!important;
  background:#fbfbfa!important;
}
body.eme-sw-cart-page .eme-cart-trust-grid strong{
  display:block!important;
  color:var(--eme-ink)!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:900!important;
}
body.eme-sw-cart-page .eme-cart-trust-grid span{
  display:block!important;
  margin-top:4px!important;
  color:#72726f!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:700!important;
}
body.eme-sw-cart-page .eme-cart-collaterals,
body.eme-sw-cart-page .eme-cart-collaterals .cart_totals{
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .cart_totals h2{
  display:none!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .shop_table,
body.eme-sw-cart-page .eme-cart-collaterals table{
  width:100%!important;
  margin:0 0 14px!important;
  border:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .shop_table tr,
body.eme-sw-cart-page .eme-cart-collaterals table tr{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:13px 0!important;
  border-bottom:1px solid rgba(10,10,10,.08)!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .shop_table tr:last-child,
body.eme-sw-cart-page .eme-cart-collaterals table tr:last-child{border-bottom:0!important;}
body.eme-sw-cart-page .eme-cart-collaterals .shop_table th,
body.eme-sw-cart-page .eme-cart-collaterals .shop_table td,
body.eme-sw-cart-page .eme-cart-collaterals table th,
body.eme-sw-cart-page .eme-cart-collaterals table td{
  display:block!important;
  width:auto!important;
  border:0!important;
  padding:0!important;
  background:transparent!important;
  text-align:right!important;
  color:var(--eme-ink)!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .shop_table th,
body.eme-sw-cart-page .eme-cart-collaterals table th{
  color:#6f6f6c!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  text-align:left!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .order-total th,
body.eme-sw-cart-page .eme-cart-collaterals .order-total td,
body.eme-sw-cart-page .eme-cart-collaterals .order-total .amount{
  color:var(--eme-ink)!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .woocommerce-shipping-methods,
body.eme-sw-cart-page .eme-cart-collaterals .woocommerce-shipping-destination,
body.eme-sw-cart-page .eme-cart-collaterals .woocommerce-shipping-calculator{
  text-align:left!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .wc-proceed-to-checkout{
  position:static!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .checkout-button,
body.eme-sw-cart-page .eme-cart-collaterals .checkout-button.button.alt.wc-forward{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:62px!important;
  margin:0!important;
  padding:0 22px!important;
  border-radius:18px!important;
  background:var(--eme-red)!important;
  color:#fff!important;
  font-size:15px!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  box-shadow:0 18px 34px rgba(217,0,0,.22)!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .checkout-button:hover{
  background:var(--eme-ink)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
}
body.eme-sw-cart-page .eme-cart-collaterals .eme-cart-shipping-progress,
body.eme-sw-cart-page .eme-cart-collaterals .eme-sw-shipping-progress{
  margin:0 0 14px!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-cart-empty{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:360px!important;
  padding:42px 20px!important;
  text-align:center!important;
}
body.eme-sw-cart-page .eme-cart-empty-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:74px!important;
  height:74px!important;
  margin-bottom:16px!important;
  border-radius:24px!important;
  background:#f4f4f2!important;
  font-size:34px!important;
}
body.eme-sw-cart-page .eme-cart-empty h2{
  margin:0 0 8px!important;
  font-size:34px!important;
  line-height:1!important;
}
body.eme-sw-cart-page .eme-cart-empty p{
  max-width:430px!important;
  margin:0 0 22px!important;
  color:#666!important;
  font-size:15px!important;
  font-weight:700!important;
}
body.eme-sw-cart-page .eme-cart-empty-button{
  min-height:54px!important;
  padding:0 22px!important;
  border-radius:16px!important;
  background:var(--eme-ink)!important;
  color:#fff!important;
  font-weight:900!important;
}
@media(max-width:1120px){
  body.eme-sw-cart-page .eme-cart-shell-v106{width:calc(100vw - 32px)!important;padding-top:24px!important;}
  body.eme-sw-cart-page .eme-shopify-cart{grid-template-columns:1fr!important;gap:18px!important;}
  body.eme-sw-cart-page .eme-cart-summary-sticky{position:static!important;top:auto!important;}
}
@media(max-width:760px){
  body.eme-sw-cart-page .eme-cart-shell-v106{width:calc(100vw - 18px)!important;padding:18px 0 62px!important;}
  body.eme-sw-cart-page .eme-page-head{margin-bottom:14px!important;}
  body.eme-sw-cart-page .eme-page-head .shop-title{font-size:clamp(32px, 11vw, 44px)!important;line-height:.95!important;}
  body.eme-sw-cart-page .eme-cart-panel,
  body.eme-sw-cart-page .eme-cart-summary-sticky{padding:14px!important;border-radius:22px!important;}
  body.eme-sw-cart-page .eme-cart-panel-head,
  body.eme-sw-cart-page .eme-cart-summary-head{align-items:flex-start!important;gap:10px!important;margin-bottom:14px!important;}
  body.eme-sw-cart-page .eme-cart-panel-head h2,
  body.eme-sw-cart-page .eme-cart-summary-head h2{font-size:27px!important;}
  body.eme-sw-cart-page .eme-cart-continue{display:none!important;}
  body.eme-sw-cart-page .eme-cart-item{grid-template-columns:86px minmax(0,1fr)!important;gap:12px!important;padding:12px!important;border-radius:20px!important;}
  body.eme-sw-cart-page .eme-cart-item-media img{width:84px!important;height:84px!important;padding:8px!important;border-radius:16px!important;}
  body.eme-sw-cart-page .eme-cart-item-top{gap:8px!important;}
  body.eme-sw-cart-page .eme-cart-item-title{font-size:15.5px!important;line-height:1.16!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  body.eme-sw-cart-page .eme-cart-stock-pill{font-size:11px!important;padding:6px 9px!important;margin-top:8px!important;}
  body.eme-sw-cart-page .eme-cart-remove{position:absolute!important;right:10px!important;top:10px!important;min-width:0!important;width:34px!important;height:34px!important;padding:0!important;font-size:0!important;}
  body.eme-sw-cart-page .eme-cart-remove::before{content:"×"!important;font-size:21px!important;line-height:1!important;}
  body.eme-sw-cart-page .eme-cart-item-bottom{grid-template-columns:1fr!important;gap:8px!important;}
  body.eme-sw-cart-page .eme-cart-price-block,
  body.eme-sw-cart-page .eme-cart-qty-block,
  body.eme-sw-cart-page .eme-cart-line-total{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:46px!important;
    padding:9px 10px!important;
    border-radius:16px!important;
  }
  body.eme-sw-cart-page .eme-cart-price-block span,
  body.eme-sw-cart-page .eme-cart-qty-block > span,
  body.eme-sw-cart-page .eme-cart-line-total span{margin:0!important;}
  body.eme-sw-cart-page .eme-cart-price-block strong,
  body.eme-sw-cart-page .eme-cart-line-total strong{font-size:16px!important;}
  body.eme-sw-cart-page .eme-cart-qty{width:124px!important;min-height:38px!important;}
  body.eme-sw-cart-page .eme-cart-qty-btn{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;}
  body.eme-sw-cart-page .eme-cart-qty .quantity,
  body.eme-sw-cart-page .eme-cart-qty input.qty,
  body.eme-sw-cart-page .eme-cart-qty .quantity input.qty{width:48px!important;min-width:48px!important;height:36px!important;min-height:36px!important;line-height:36px!important;}
  body.eme-sw-cart-page .eme-cart-actions-row{grid-template-columns:1fr!important;gap:10px!important;}
  body.eme-sw-cart-page .eme-cart-coupon-fields{grid-template-columns:1fr!important;}
  body.eme-sw-cart-page .eme-cart-update{width:100%!important;}
  body.eme-sw-cart-page .eme-cart-trust-grid{grid-template-columns:1fr!important;}
  body.eme-sw-cart-page .eme-cart-collaterals .checkout-button{min-height:58px!important;border-radius:16px!important;font-size:14px!important;}
}
@media(max-width:390px){
  body.eme-sw-cart-page .eme-cart-item{grid-template-columns:76px minmax(0,1fr)!important;}
  body.eme-sw-cart-page .eme-cart-item-media img{width:74px!important;height:74px!important;}
  body.eme-sw-cart-page .eme-cart-item-title{font-size:14.5px!important;}
}

/* === EME V107: carrito Shopify simple y estable === */
body.eme-sw-cart-page{
  background:#f6f6f4!important;
  overflow-x:hidden!important;
}
body.eme-sw-cart-page .eme-easy-cart-shell{
  width:min(1180px, calc(100vw - 48px))!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:28px 0 74px!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-cart-shell .eme-page-head{
  margin:0 0 18px!important;
  padding:0!important;
}
body.eme-sw-cart-page .eme-easy-cart-shell .breadcrumb{
  margin-bottom:8px!important;
  font-size:12px!important;
  line-height:1.2!important;
}
body.eme-sw-cart-page .eme-easy-cart-shell .shop-title{
  margin:0!important;
  max-width:none!important;
  font-family:'Archivo',sans-serif!important;
  font-size:clamp(34px, 4vw, 48px)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  font-weight:900!important;
  color:#111!important;
}
body.eme-sw-cart-page .eme-easy-cart-shell .shop-subtitle{
  margin:8px 0 0!important;
  color:#686865!important;
  font-size:15px!important;
  font-weight:650!important;
  line-height:1.4!important;
}
body.eme-sw-cart-page .eme-easy-cart,
body.eme-sw-cart-page .eme-easy-cart.woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 372px!important;
  gap:22px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .eme-easy-cart-form,
body.eme-sw-cart-page .woocommerce-cart-form.eme-easy-cart-form{
  grid-column:auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .eme-easy-cart-card,
body.eme-sw-cart-page .eme-easy-cart-empty{
  background:#fff!important;
  border:1px solid rgba(17,17,17,.08)!important;
  border-radius:22px!important;
  box-shadow:0 12px 34px rgba(0,0,0,.045)!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-cart-products{
  padding:20px!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-easy-cart-card-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 16px!important;
}
body.eme-sw-cart-page .eme-easy-cart-card-head h2,
body.eme-sw-cart-page .eme-easy-cart-summary h2,
body.eme-sw-cart-page .eme-easy-cart-empty h2{
  margin:0!important;
  font-family:'Archivo',sans-serif!important;
  color:#111!important;
  font-size:24px!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
  font-weight:900!important;
  white-space:normal!important;
  word-break:normal!important;
}
body.eme-sw-cart-page .eme-easy-cart-card-head p,
body.eme-sw-cart-page .eme-easy-cart-summary p,
body.eme-sw-cart-page .eme-easy-cart-empty p{
  margin:6px 0 0!important;
  color:#747471!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:650!important;
}
body.eme-sw-cart-page .eme-easy-continue,
body.eme-sw-cart-page .eme-easy-secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid rgba(17,17,17,.12)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#111!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-continue:hover,
body.eme-sw-cart-page .eme-easy-secondary:hover{
  border-color:#111!important;
  color:#111!important;
}
body.eme-sw-cart-page .eme-easy-cart-header{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 108px 142px 112px!important;
  gap:14px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid rgba(17,17,17,.08)!important;
  color:#777!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.eme-sw-cart-page .eme-easy-cart-header span:nth-child(n+2){text-align:center!important;}
body.eme-sw-cart-page .eme-easy-cart-header span:last-child{text-align:right!important;}
body.eme-sw-cart-page .eme-easy-cart-items{
  display:block!important;
  width:100%!important;
}
body.eme-sw-cart-page .eme-easy-cart-item{
  display:grid!important;
  grid-template-columns:88px minmax(0,1fr) 108px 142px 112px!important;
  gap:14px!important;
  align-items:center!important;
  min-width:0!important;
  padding:16px 0!important;
  border-bottom:1px solid rgba(17,17,17,.08)!important;
  background:#fff!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .eme-easy-cart-item:last-child{border-bottom:0!important;}
body.eme-sw-cart-page .eme-easy-item-media,
body.eme-sw-cart-page .eme-easy-item-media a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-easy-item-media img{
  display:block!important;
  width:82px!important;
  height:82px!important;
  max-width:82px!important;
  object-fit:contain!important;
  padding:8px!important;
  border:1px solid rgba(17,17,17,.06)!important;
  border-radius:16px!important;
  background:#fafafa!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-item-info{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:6px!important;
}
body.eme-sw-cart-page .eme-easy-item-title{
  display:block!important;
  max-width:100%!important;
  color:#111!important;
  font-size:15.5px!important;
  line-height:1.25!important;
  letter-spacing:-.01em!important;
  font-weight:850!important;
  text-decoration:none!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
body.eme-sw-cart-page .eme-easy-item-title:hover{color:var(--eme-red)!important;}
body.eme-sw-cart-page .eme-easy-item-meta,
body.eme-sw-cart-page .eme-easy-item-meta *{
  color:#777!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:650!important;
  margin:0!important;
}
body.eme-sw-cart-page .eme-easy-remove,
body.eme-sw-cart-page .eme-easy-remove.remove{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:2px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#8a8a87!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
body.eme-sw-cart-page .eme-easy-remove:hover,
body.eme-sw-cart-page .eme-easy-remove.remove:hover{
  color:var(--eme-red)!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-easy-item-price,
body.eme-sw-cart-page .eme-easy-item-total{
  min-width:0!important;
  color:#111!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-align:center!important;
  white-space:nowrap!important;
}
body.eme-sw-cart-page .eme-easy-item-total{
  text-align:right!important;
  font-weight:900!important;
}
body.eme-sw-cart-page .eme-easy-cart .amount,
body.eme-sw-cart-page .eme-easy-cart .amount bdi,
body.eme-sw-cart-page .eme-easy-cart .woocommerce-Price-amount,
body.eme-sw-cart-page .eme-easy-cart .woocommerce-Price-amount bdi,
body.eme-sw-cart-page .eme-easy-cart .woocommerce-Price-currencySymbol{
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
body.eme-sw-cart-page .eme-easy-item-qty{
  display:flex!important;
  justify-content:center!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-easy-qty,
body.eme-sw-cart-page .eme-easy-sold-one{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:124px!important;
  min-width:124px!important;
  height:42px!important;
  min-height:42px!important;
  border:1px solid rgba(17,17,17,.12)!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-qty .quantity{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  min-width:44px!important;
  height:40px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-easy-qty input.qty,
body.eme-sw-cart-page .eme-easy-qty .quantity input.qty,
body.eme-sw-cart-page .eme-easy-qty input.eme-cart-qty-input{
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  color:#111!important;
  box-shadow:none!important;
  text-align:center!important;
  font-size:14px!important;
  line-height:40px!important;
  font-weight:900!important;
  -moz-appearance:textfield!important;
}
body.eme-sw-cart-page .eme-easy-qty input.qty::-webkit-outer-spin-button,
body.eme-sw-cart-page .eme-easy-qty input.qty::-webkit-inner-spin-button{margin:0!important;-webkit-appearance:none!important;}
body.eme-sw-cart-page .eme-easy-qty-btn,
body.eme-sw-cart-page .eme-easy-qty .eme-easy-qty-btn,
body.eme-sw-cart-page .eme-easy-qty button.eme-easy-qty-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#111!important;
  box-shadow:none!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:800!important;
  cursor:pointer!important;
}
body.eme-sw-cart-page .eme-easy-qty-btn:hover{background:#f1f1ef!important;color:#111!important;}
body.eme-sw-cart-page .eme-easy-sold-one{justify-content:center!important;font-weight:900!important;}
body.eme-sw-cart-page .eme-easy-cart-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:16px 0 0!important;
  margin:0!important;
  border-top:1px solid rgba(17,17,17,.08)!important;
}
body.eme-sw-cart-page .eme-easy-coupon{min-width:0!important;}
body.eme-sw-cart-page .eme-easy-coupon-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 14px!important;
  border:1px solid rgba(17,17,17,.12)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#111!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:850!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-coupon-toggle::after{
  content:"+";
  margin-left:8px;
  font-size:16px;
  line-height:1;
}
body.eme-sw-cart-page .eme-easy-coupon.is-open .eme-easy-coupon-toggle::after{content:"–";}
body.eme-sw-cart-page .eme-easy-coupon-fields{
  display:none!important;
  grid-template-columns:minmax(180px, 1fr) auto!important;
  gap:8px!important;
  margin-top:10px!important;
  width:min(430px, 100%)!important;
}
body.eme-sw-cart-page .eme-easy-coupon.is-open .eme-easy-coupon-fields{display:grid!important;}
body.eme-sw-cart-page .eme-easy-coupon-fields input.input-text{
  width:100%!important;
  min-height:44px!important;
  height:44px!important;
  padding:0 13px!important;
  border:1px solid rgba(17,17,17,.12)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#111!important;
  font-size:14px!important;
  font-weight:650!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-coupon-fields .button,
body.eme-sw-cart-page .eme-easy-update,
body.eme-sw-cart-page .eme-easy-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:12px!important;
  background:#111!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.eme-sw-cart-page .eme-easy-coupon-fields .button:hover,
body.eme-sw-cart-page .eme-easy-update:hover,
body.eme-sw-cart-page .eme-easy-primary:hover{background:var(--eme-red)!important;color:#fff!important;}
body.eme-sw-cart-page .eme-easy-update{
  display:none!important;
  margin-left:auto!important;
  background:#efefed!important;
  color:#555!important;
}
body.eme-sw-cart-page .eme-easy-update.is-ready{
  display:inline-flex!important;
  background:#111!important;
  color:#fff!important;
}
body.eme-sw-cart-page .eme-easy-cart-summary{
  grid-column:auto!important;
  width:100%!important;
  min-width:0!important;
  padding:20px!important;
  position:relative!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .eme-easy-summary-sticky{
  position:sticky!important;
  top:104px!important;
  width:100%!important;
  min-width:0!important;
}
body.eme-sw-cart-page .eme-easy-cart-summary p{
  margin-bottom:16px!important;
}
body.eme-sw-cart-page .eme-easy-cart .cart-collaterals,
body.eme-sw-cart-page .eme-easy-cart-collaterals{
  position:static!important;
  grid-column:auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .cart_totals,
body.eme-sw-cart-page .eme-easy-cart-collaterals .cart_totals.calculated_shipping{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .cart_totals h2{display:none!important;}
body.eme-sw-cart-page .eme-easy-cart-collaterals table,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table{
  width:100%!important;
  margin:0 0 16px!important;
  padding:0!important;
  border:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  table-layout:auto!important;
  background:transparent!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals table tbody,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table tbody{display:block!important;width:100%!important;}
body.eme-sw-cart-page .eme-easy-cart-collaterals table tr,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table tr{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:start!important;
  width:100%!important;
  padding:12px 0!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid rgba(17,17,17,.08)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals table tr:last-child,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table tr:last-child{border-bottom:0!important;}
body.eme-sw-cart-page .eme-easy-cart-collaterals table th,
body.eme-sw-cart-page .eme-easy-cart-collaterals table td,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table th,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table td{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  color:#111!important;
  box-shadow:none!important;
  text-align:right!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  font-size:14px!important;
  line-height:1.35!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals table th,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table th{
  text-align:left!important;
  color:#70706d!important;
  font-weight:850!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals table td,
body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table td{
  font-weight:850!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total th,
body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total td,
body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total .amount{
  color:#111!important;
  font-size:20px!important;
  line-height:1.15!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .woocommerce-shipping-methods,
body.eme-sw-cart-page .eme-easy-cart-collaterals .woocommerce-shipping-destination,
body.eme-sw-cart-page .eme-easy-cart-collaterals .woocommerce-shipping-calculator{
  text-align:right!important;
  font-size:12px!important;
  line-height:1.35!important;
  color:#555!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .wc-proceed-to-checkout{
  display:block!important;
  position:static!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .checkout-button,
body.eme-sw-cart-page .eme-easy-cart-collaterals .checkout-button.button.alt.wc-forward,
body.eme-sw-cart-page .eme-easy-cart-collaterals a.checkout-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:56px!important;
  height:auto!important;
  margin:0!important;
  padding:16px 18px!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--eme-red)!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .checkout-button:hover{
  background:#111!important;
  color:#fff!important;
}
body.eme-sw-cart-page .eme-easy-cart-collaterals .eme-cart-shipping-progress,
body.eme-sw-cart-page .eme-easy-cart-collaterals .eme-sw-shipping-progress{
  margin:0 0 14px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-secondary{
  width:100%!important;
  margin-top:12px!important;
  min-height:46px!important;
  border-radius:14px!important;
}
body.eme-sw-cart-page .eme-easy-cart-empty{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:350px!important;
  padding:42px 18px!important;
  text-align:center!important;
}
body.eme-sw-cart-page .eme-easy-cart-empty-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:68px!important;
  height:68px!important;
  margin:0 0 16px!important;
  border-radius:20px!important;
  background:#f1f1ef!important;
  font-size:32px!important;
}
@media(max-width:1080px){
  body.eme-sw-cart-page .eme-easy-cart-shell{
    width:calc(100vw - 32px)!important;
    padding-top:24px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart,
  body.eme-sw-cart-page .eme-easy-cart.woocommerce{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  body.eme-sw-cart-page .eme-easy-summary-sticky{position:static!important;top:auto!important;}
}
@media(max-width:760px){
  body.eme-sw-cart-page .eme-easy-cart-shell{
    width:100%!important;
    max-width:100%!important;
    padding:18px 10px 54px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-shell .eme-page-head{
    margin:0 0 14px!important;
    padding:0 2px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-shell .breadcrumb{display:none!important;}
  body.eme-sw-cart-page .eme-easy-cart-shell .shop-title{
    font-size:36px!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-shell .shop-subtitle{
    font-size:14px!important;
    margin-top:6px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-products,
  body.eme-sw-cart-page .eme-easy-cart-summary{
    padding:16px!important;
    border-radius:20px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-card-head{
    margin-bottom:12px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-card-head h2,
  body.eme-sw-cart-page .eme-easy-cart-summary h2{
    font-size:22px!important;
  }
  body.eme-sw-cart-page .eme-easy-continue{display:none!important;}
  body.eme-sw-cart-page .eme-easy-cart-header{display:none!important;}
  body.eme-sw-cart-page .eme-easy-cart-item{
    grid-template-columns:76px minmax(0,1fr)!important;
    grid-template-areas:
      "media info"
      "media price"
      "media qty"
      "media total"!important;
    gap:0 12px!important;
    padding:14px 0!important;
    align-items:start!important;
  }
  body.eme-sw-cart-page .eme-easy-item-media{grid-area:media!important;align-self:start!important;}
  body.eme-sw-cart-page .eme-easy-item-media img{
    width:72px!important;
    height:72px!important;
    max-width:72px!important;
    padding:7px!important;
    border-radius:14px!important;
  }
  body.eme-sw-cart-page .eme-easy-item-info{grid-area:info!important;padding-right:4px!important;}
  body.eme-sw-cart-page .eme-easy-item-title{
    font-size:15px!important;
    line-height:1.2!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body.eme-sw-cart-page .eme-easy-remove,
  body.eme-sw-cart-page .eme-easy-remove.remove{font-size:12px!important;}
  body.eme-sw-cart-page .eme-easy-item-price,
  body.eme-sw-cart-page .eme-easy-item-total,
  body.eme-sw-cart-page .eme-easy-item-qty{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:40px!important;
    padding:8px 0!important;
    border-top:1px dashed rgba(17,17,17,.09)!important;
    text-align:right!important;
  }
  body.eme-sw-cart-page .eme-easy-item-price{grid-area:price!important;margin-top:10px!important;}
  body.eme-sw-cart-page .eme-easy-item-qty{grid-area:qty!important;}
  body.eme-sw-cart-page .eme-easy-item-total{grid-area:total!important;font-size:15px!important;}
  body.eme-sw-cart-page .eme-easy-item-price::before,
  body.eme-sw-cart-page .eme-easy-item-qty::before,
  body.eme-sw-cart-page .eme-easy-item-total::before{
    content:attr(data-label)!important;
    color:#777!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
    text-align:left!important;
  }
  body.eme-sw-cart-page .eme-easy-qty,
  body.eme-sw-cart-page .eme-easy-sold-one{
    width:116px!important;
    min-width:116px!important;
    height:40px!important;
    min-height:40px!important;
  }
  body.eme-sw-cart-page .eme-easy-qty .quantity,
  body.eme-sw-cart-page .eme-easy-qty input.qty,
  body.eme-sw-cart-page .eme-easy-qty .quantity input.qty{
    width:40px!important;
    min-width:40px!important;
    height:38px!important;
    min-height:38px!important;
    line-height:38px!important;
  }
  body.eme-sw-cart-page .eme-easy-qty-btn,
  body.eme-sw-cart-page .eme-easy-qty .eme-easy-qty-btn{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding-top:14px!important;
  }
  body.eme-sw-cart-page .eme-easy-coupon-toggle,
  body.eme-sw-cart-page .eme-easy-update{
    width:100%!important;
    min-height:46px!important;
  }
  body.eme-sw-cart-page .eme-easy-coupon-fields{
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  body.eme-sw-cart-page .eme-easy-coupon-fields .button{width:100%!important;min-height:46px!important;}
  body.eme-sw-cart-page .eme-easy-cart-collaterals table tr,
  body.eme-sw-cart-page .eme-easy-cart-collaterals .shop_table tr{
    gap:10px!important;
    padding:11px 0!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total th,
  body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total td,
  body.eme-sw-cart-page .eme-easy-cart-collaterals .order-total .amount{
    font-size:19px!important;
  }
  body.eme-sw-cart-page .eme-easy-cart-collaterals .checkout-button,
  body.eme-sw-cart-page .eme-easy-cart-collaterals .checkout-button.button.alt.wc-forward,
  body.eme-sw-cart-page .eme-easy-cart-collaterals a.checkout-button{
    min-height:54px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
}
@media(max-width:390px){
  body.eme-sw-cart-page .eme-easy-cart-shell{padding-left:8px!important;padding-right:8px!important;}
  body.eme-sw-cart-page .eme-easy-cart-item{grid-template-columns:68px minmax(0,1fr)!important;gap:0 10px!important;}
  body.eme-sw-cart-page .eme-easy-item-media img{width:64px!important;height:64px!important;}
  body.eme-sw-cart-page .eme-easy-item-title{font-size:14.5px!important;}
}

/* === EME V108: selector de unidades del carrito corregido === */
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty]{
  display:inline-grid!important;
  grid-template-columns:38px 42px 38px!important;
  align-items:center!important;
  justify-content:center!important;
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  height:42px!important;
  min-height:42px!important;
  padding:2px!important;
  margin:0 auto!important;
  border:1px solid rgba(17,17,17,.12)!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  position:relative!important;
  box-sizing:border-box!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-cart-qty-input{
  display:block!important;
  grid-column:2!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#111!important;
  font-family:'Inter',sans-serif!important;
  font-size:15px!important;
  line-height:38px!important;
  font-weight:850!important;
  text-align:center!important;
  letter-spacing:0!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  box-sizing:border-box!important;
  transform:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-cart-qty-input:focus{
  outline:0!important;
  box-shadow:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-cart-qty-input::-webkit-outer-spin-button,
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-cart-qty-input::-webkit-inner-spin-button{
  margin:0!important;
  -webkit-appearance:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn,
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] button.eme-easy-qty-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  background-image:none!important;
  color:#111!important;
  box-shadow:none!important;
  font-family:'Inter',sans-serif!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:800!important;
  text-align:center!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  z-index:1!important;
  transform:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn span{
  display:block!important;
  width:auto!important;
  height:auto!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
  pointer-events:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn::before,
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn::after{
  display:none!important;
  content:none!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn:hover{
  background:#f2f2f0!important;
  color:#111!important;
}
body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn:focus{
  outline:0!important;
  box-shadow:inset 0 0 0 1px rgba(17,17,17,.14)!important;
}
@media(max-width:760px){
  body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty]{
    grid-template-columns:36px 38px 36px!important;
    width:114px!important;
    min-width:114px!important;
    max-width:114px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
  }
  body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-cart-qty-input{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:36px!important;
    min-height:36px!important;
    line-height:36px!important;
    font-size:14px!important;
  }
  body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] .eme-easy-qty-btn,
  body.eme-sw-cart-page .eme-easy-qty[data-eme-cart-qty] button.eme-easy-qty-btn{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    font-size:19px!important;
  }
}

/* === EME V109: carrito auto-actualizable sin botón manual === */
body.eme-sw-cart-page .eme-cart-update-hidden,
body.eme-sw-cart-page .eme-easy-update,
body.eme-sw-cart-page .eme-cart-update{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
  position:absolute!important;
  left:-9999px!important;
}
body.eme-sw-cart-page .eme-easy-cart.is-auto-updating .eme-easy-cart-products,
body.eme-sw-cart-page .eme-easy-cart.is-auto-updating .eme-easy-cart-summary{
  opacity:.72!important;
  transition:opacity .18s ease!important;
}
body.eme-sw-cart-page .eme-cart-qty-input.is-auto-updating,
body.eme-sw-cart-page .eme-cart-qty-btn.is-auto-updating{
  pointer-events:none!important;
}
body.eme-sw-cart-page .eme-easy-cart-actions{
  justify-content:flex-start!important;
}


/* === EME V110: carrito lateral tipo Shopify corregido ===
   Enfoque: mini carrito nativo/Woostify. No toca la página /carrito/. */
body.eme-sw #shop-cart-sidebar,
body.eme-sw .shop-cart-sidebar,
body.eme-sw .cart-sidebar,
body.eme-sw .site-dialog.cart-sidebar,
body.eme-sw .woostify-cart-sidebar,
body.eme-sw .woostify-sidebar-cart,
body.eme-sw .site-header-cart-side{
  width:min(430px, 92vw)!important;
  max-width:min(430px, 92vw)!important;
  min-width:0!important;
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:#fff!important;
  color:#111!important;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
}

body.eme-sw #shop-cart-sidebar *,
body.eme-sw .cart-sidebar *,
body.eme-sw .woostify-cart-sidebar *,
body.eme-sw .woostify-sidebar-cart *,
body.eme-sw .site-header-cart-side *{
  box-sizing:border-box!important;
}

body.eme-sw #shop-cart-sidebar .cart-sidebar-content,
body.eme-sw #shop-cart-sidebar .shop-cart-sidebar-wrapper,
body.eme-sw #shop-cart-sidebar .sidebar-cart-content,
body.eme-sw .shop-cart-sidebar .cart-sidebar-content,
body.eme-sw .cart-sidebar .cart-sidebar-content,
body.eme-sw .cart-sidebar .shop-cart-sidebar-wrapper,
body.eme-sw .cart-sidebar .sidebar-cart-content,
body.eme-sw .woostify-cart-sidebar .cart-sidebar-content,
body.eme-sw .woostify-cart-sidebar .shop-cart-sidebar-wrapper,
body.eme-sw .woostify-sidebar-cart .cart-sidebar-content,
body.eme-sw .woostify-sidebar-cart .shop-cart-sidebar-wrapper,
body.eme-sw .site-header-cart-side .cart-sidebar-content,
body.eme-sw .site-header-cart-side .shop-cart-sidebar-wrapper{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:#fff!important;
}

/* Header del drawer */
body.eme-sw #shop-cart-sidebar .shop-cart-sidebar-head,
body.eme-sw #shop-cart-sidebar .cart-sidebar-head,
body.eme-sw #shop-cart-sidebar .sidebar-cart-header,
body.eme-sw .cart-sidebar .shop-cart-sidebar-head,
body.eme-sw .cart-sidebar .cart-sidebar-head,
body.eme-sw .cart-sidebar .sidebar-cart-header,
body.eme-sw .woostify-cart-sidebar .shop-cart-sidebar-head,
body.eme-sw .woostify-sidebar-cart .shop-cart-sidebar-head,
body.eme-sw .site-header-cart-side .shop-cart-sidebar-head{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:68px!important;
  padding:20px 24px 16px!important;
  margin:0!important;
  border-bottom:1px solid rgba(0,0,0,.10)!important;
  background:#fff!important;
  position:relative!important;
}

body.eme-sw #shop-cart-sidebar .shop-cart-sidebar-title,
body.eme-sw #shop-cart-sidebar .cart-sidebar-title,
body.eme-sw #shop-cart-sidebar .sidebar-cart-title,
body.eme-sw #shop-cart-sidebar .widget-title,
body.eme-sw #shop-cart-sidebar h2,
body.eme-sw #shop-cart-sidebar h3,
body.eme-sw .cart-sidebar .shop-cart-sidebar-title,
body.eme-sw .cart-sidebar .cart-sidebar-title,
body.eme-sw .cart-sidebar .sidebar-cart-title,
body.eme-sw .cart-sidebar .widget-title,
body.eme-sw .cart-sidebar h2,
body.eme-sw .cart-sidebar h3,
body.eme-sw .woostify-cart-sidebar .shop-cart-sidebar-title,
body.eme-sw .woostify-sidebar-cart .shop-cart-sidebar-title,
body.eme-sw .site-header-cart-side .shop-cart-sidebar-title{
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:17px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.eme-sw #shop-cart-sidebar .cart-sidebar-count,
body.eme-sw #shop-cart-sidebar .shop-cart-count,
body.eme-sw #shop-cart-sidebar .shopping-cart-items-count,
body.eme-sw .cart-sidebar .cart-sidebar-count,
body.eme-sw .cart-sidebar .shop-cart-count,
body.eme-sw .cart-sidebar .shopping-cart-items-count,
body.eme-sw .woostify-cart-sidebar .cart-sidebar-count,
body.eme-sw .woostify-sidebar-cart .cart-sidebar-count,
body.eme-sw .site-header-cart-side .cart-sidebar-count{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  border-radius:999px!important;
  background:#000!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  margin:0 36px 0 4px!important;
  padding:0!important;
}

body.eme-sw #shop-cart-sidebar .close-cart-sidebar,
body.eme-sw #shop-cart-sidebar .close-sidebar,
body.eme-sw #shop-cart-sidebar .cart-sidebar-close,
body.eme-sw #shop-cart-sidebar button[class*="close"],
body.eme-sw .cart-sidebar .close-cart-sidebar,
body.eme-sw .cart-sidebar .close-sidebar,
body.eme-sw .cart-sidebar .cart-sidebar-close,
body.eme-sw .cart-sidebar button[class*="close"],
body.eme-sw .woostify-cart-sidebar .close-cart-sidebar,
body.eme-sw .woostify-sidebar-cart .close-cart-sidebar,
body.eme-sw .site-header-cart-side .close-cart-sidebar{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:999px!important;
  background:#f6f6f4!important;
  border:1px solid rgba(0,0,0,.08)!important;
  color:#111!important;
  font-size:18px!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  opacity:1!important;
  z-index:5!important;
}

/* Contenido del mini carrito */
body.eme-sw #shop-cart-sidebar .widget_shopping_cart_content,
body.eme-sw .cart-sidebar .widget_shopping_cart_content,
body.eme-sw .woostify-cart-sidebar .widget_shopping_cart_content,
body.eme-sw .woostify-sidebar-cart .widget_shopping_cart_content,
body.eme-sw .site-header-cart-side .widget_shopping_cart_content{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  padding:0 24px 18px!important;
  margin:0!important;
  background:#fff!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart,
body.eme-sw #shop-cart-sidebar ul.cart_list,
body.eme-sw #shop-cart-sidebar ul.product_list_widget,
body.eme-sw .cart-sidebar .woocommerce-mini-cart,
body.eme-sw .cart-sidebar ul.cart_list,
body.eme-sw .cart-sidebar ul.product_list_widget,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart,
body.eme-sw .site-header-cart-side .woocommerce-mini-cart{
  flex:1 1 auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  list-style:none!important;
  padding:8px 0 8px!important;
  margin:0!important;
  overscroll-behavior:contain!important;
}

body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item,
body.eme-sw #shop-cart-sidebar li.mini_cart_item,
body.eme-sw #shop-cart-sidebar .mini-cart-item,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item,
body.eme-sw .cart-sidebar li.mini_cart_item,
body.eme-sw .cart-sidebar .mini-cart-item,
body.eme-sw .woostify-cart-sidebar li.woocommerce-mini-cart-item,
body.eme-sw .woostify-sidebar-cart li.woocommerce-mini-cart-item,
body.eme-sw .site-header-cart-side li.woocommerce-mini-cart-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:92px minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  column-gap:14px!important;
  row-gap:0!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:18px 32px 18px 0!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid rgba(0,0,0,.09)!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
body.eme-sw #shop-cart-sidebar .mini-cart-product-thumbnail,
body.eme-sw #shop-cart-sidebar .product-thumbnail,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
body.eme-sw .cart-sidebar .mini-cart-product-thumbnail,
body.eme-sw .cart-sidebar .product-thumbnail,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-thumbnail,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-thumbnail,
body.eme-sw .site-header-cart-side .mini-cart-product-thumbnail{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:92px!important;
  height:92px!important;
  min-width:92px!important;
  max-width:92px!important;
  margin:0!important;
  padding:0!important;
  border-radius:16px!important;
  background:#fafafa!important;
  border:1px solid rgba(0,0,0,.06)!important;
  overflow:hidden!important;
  text-decoration:none!important;
}

body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove) img,
body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove) img,
body.eme-sw #shop-cart-sidebar .mini-cart-product-thumbnail img,
body.eme-sw #shop-cart-sidebar .product-thumbnail img,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove) img,
body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove) img,
body.eme-sw .cart-sidebar .mini-cart-product-thumbnail img,
body.eme-sw .cart-sidebar .product-thumbnail img,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-thumbnail img,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-thumbnail img,
body.eme-sw .site-header-cart-side .mini-cart-product-thumbnail img{
  display:block!important;
  float:none!important;
  position:static!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  padding:8px!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-product-infor,
body.eme-sw #shop-cart-sidebar .mini-cart-product-info,
body.eme-sw #shop-cart-sidebar .mini-cart-product-content,
body.eme-sw #shop-cart-sidebar .product-details,
body.eme-sw .cart-sidebar .mini-cart-product-infor,
body.eme-sw .cart-sidebar .mini-cart-product-info,
body.eme-sw .cart-sidebar .mini-cart-product-content,
body.eme-sw .cart-sidebar .product-details,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-infor,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-info,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-infor,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-info,
body.eme-sw .site-header-cart-side .mini-cart-product-infor,
body.eme-sw .site-header-cart-side .mini-cart-product-info{
  grid-column:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"name name" "qty price"!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-product-name,
body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
body.eme-sw .cart-sidebar .mini-cart-product-name,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
body.eme-sw .woostify-cart-sidebar .mini-cart-product-name,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-name,
body.eme-sw .site-header-cart-side .mini-cart-product-name{
  grid-area:name!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#222!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:-.01em!important;
  font-size:16px!important;
  line-height:1.24!important;
  font-weight:700!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-quantity,
body.eme-sw #shop-cart-sidebar .quantity,
body.eme-sw .cart-sidebar .mini-cart-quantity,
body.eme-sw .cart-sidebar .quantity,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity,
body.eme-sw .woostify-cart-sidebar .quantity,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity,
body.eme-sw .woostify-sidebar-cart .quantity,
body.eme-sw .site-header-cart-side .mini-cart-quantity,
body.eme-sw .site-header-cart-side .quantity{
  grid-area:qty!important;
  display:grid!important;
  grid-template-columns:34px 42px 34px!important;
  align-items:center!important;
  justify-items:center!important;
  justify-self:start!important;
  width:110px!important;
  min-width:110px!important;
  max-width:110px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(0,0,0,.16)!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  line-height:1!important;
  box-shadow:none!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw #shop-cart-sidebar .quantity input.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .cart-sidebar .mini-cart-quantity input.input-text.qty,
body.eme-sw .cart-sidebar .quantity input.qty,
body.eme-sw .woostify-cart-sidebar .mini-cart-quantity input.qty,
body.eme-sw .woostify-cart-sidebar .quantity input.qty,
body.eme-sw .woostify-sidebar-cart .mini-cart-quantity input.qty,
body.eme-sw .woostify-sidebar-cart .quantity input.qty,
body.eme-sw .site-header-cart-side .mini-cart-quantity input.qty,
body.eme-sw .site-header-cart-side .quantity input.qty{
  display:block!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111!important;
  text-align:center!important;
  text-indent:0!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:34px!important;
  vertical-align:middle!important;
  box-shadow:none!important;
  outline:none!important;
  transform:none!important;
  -webkit-transform:none!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  -webkit-appearance:none!important;
  opacity:1!important;
  visibility:visible!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-product-qty,
body.eme-sw #shop-cart-sidebar .quantity .minus,
body.eme-sw #shop-cart-sidebar .quantity .plus,
body.eme-sw .cart-sidebar .mini-cart-product-qty,
body.eme-sw .cart-sidebar .quantity .minus,
body.eme-sw .cart-sidebar .quantity .plus,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-qty,
body.eme-sw .woostify-cart-sidebar .quantity .minus,
body.eme-sw .woostify-cart-sidebar .quantity .plus,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-qty,
body.eme-sw .woostify-sidebar-cart .quantity .minus,
body.eme-sw .woostify-sidebar-cart .quantity .plus,
body.eme-sw .site-header-cart-side .mini-cart-product-qty,
body.eme-sw .site-header-cart-side .quantity .minus,
body.eme-sw .site-header-cart-side .quantity .plus{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:700!important;
  cursor:pointer!important;
  box-shadow:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  touch-action:manipulation!important;
}

body.eme-sw #shop-cart-sidebar .mini-cart-product-price,
body.eme-sw #shop-cart-sidebar .woocommerce-Price-amount,
body.eme-sw .cart-sidebar .mini-cart-product-price,
body.eme-sw .cart-sidebar .woocommerce-Price-amount,
body.eme-sw .woostify-cart-sidebar .mini-cart-product-price,
body.eme-sw .woostify-sidebar-cart .mini-cart-product-price,
body.eme-sw .site-header-cart-side .mini-cart-product-price{
  grid-area:price!important;
  justify-self:end!important;
  align-self:center!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:15.5px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-align:right!important;
}

body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a.remove,
body.eme-sw #shop-cart-sidebar li.mini_cart_item > a.remove,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a.remove,
body.eme-sw .cart-sidebar li.mini_cart_item > a.remove,
body.eme-sw .cart-sidebar .remove_from_cart_button,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button,
body.eme-sw .site-header-cart-side .remove_from_cart_button{
  position:absolute!important;
  top:18px!important;
  right:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border-radius:999px!important;
  background:transparent!important;
  border:0!important;
  color:#d90000!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:300!important;
  text-decoration:none!important;
  text-indent:0!important;
  opacity:1!important;
  z-index:4!important;
}

body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a.remove::before,
body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a.remove::after,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button::before,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button::after,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a.remove::before,
body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a.remove::after,
body.eme-sw .cart-sidebar .remove_from_cart_button::before,
body.eme-sw .cart-sidebar .remove_from_cart_button::after{
  display:none!important;
  content:none!important;
}

/* Footer del drawer: subtotal + barra + botones sin cortes */
body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total,
body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total.total,
body.eme-sw #shop-cart-sidebar p.total,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__total,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__total.total,
body.eme-sw .cart-sidebar p.total,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__total,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__total,
body.eme-sw .site-header-cart-side .woocommerce-mini-cart__total{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:16px 0 12px!important;
  margin:0!important;
  border-top:1px solid rgba(0,0,0,.12)!important;
  border-bottom:0!important;
  color:#111!important;
  background:#fff!important;
  overflow:visible!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:900!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total strong,
body.eme-sw #shop-cart-sidebar p.total strong,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__total strong,
body.eme-sw .cart-sidebar p.total strong{
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
  color:#111!important;
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:900!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total .amount,
body.eme-sw #shop-cart-sidebar p.total .amount,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__total .amount,
body.eme-sw .cart-sidebar p.total .amount,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__total .amount,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__total .amount{
  flex:0 0 auto!important;
  max-width:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  color:#111!important;
  font-size:16.5px!important;
  line-height:1.1!important;
  font-weight:900!important;
  text-align:right!important;
  letter-spacing:.01em!important;
}

body.eme-sw #shop-cart-sidebar [data-eme-shipping-progress],
body.eme-sw #shop-cart-sidebar .eme-mini-shipping-progress,
body.eme-sw #shop-cart-sidebar .eme-sw-shipping-progress,
body.eme-sw .cart-sidebar [data-eme-shipping-progress],
body.eme-sw .cart-sidebar .eme-mini-shipping-progress,
body.eme-sw .cart-sidebar .eme-sw-shipping-progress,
body.eme-sw .woostify-cart-sidebar [data-eme-shipping-progress],
body.eme-sw .woostify-sidebar-cart [data-eme-shipping-progress],
body.eme-sw .site-header-cart-side [data-eme-shipping-progress]{
  flex:0 0 auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:8px 0 14px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
  background:#f0fdf4!important;
  border:1px solid rgba(34,197,94,.22)!important;
  box-shadow:none!important;
  overflow:hidden!important;
  color:#247a37!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-top,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-top,
body.eme-sw #shop-cart-sidebar .eme-ship-top,
body.eme-sw .cart-sidebar .eme-mini-ship-top,
body.eme-sw .cart-sidebar .eme-sw-ship-top,
body.eme-sw .cart-sidebar .eme-ship-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:8px!important;
  row-gap:0!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 8px!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:900!important;
  color:#247a37!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-msg,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-msg,
body.eme-sw #shop-cart-sidebar .eme-ship-msg,
body.eme-sw .cart-sidebar .eme-mini-ship-msg,
body.eme-sw .cart-sidebar .eme-sw-ship-msg,
body.eme-sw .cart-sidebar .eme-ship-msg{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-weight:900!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-ship-amount,
body.eme-sw #shop-cart-sidebar .eme-sw-ship-amount,
body.eme-sw #shop-cart-sidebar .eme-ship-amount,
body.eme-sw .cart-sidebar .eme-mini-ship-amount,
body.eme-sw .cart-sidebar .eme-sw-ship-amount,
body.eme-sw .cart-sidebar .eme-ship-amount{
  min-width:max-content!important;
  white-space:nowrap!important;
  color:#247a37!important;
  font-size:13px!important;
  font-weight:900!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons,
body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons.buttons,
body.eme-sw #shop-cart-sidebar .buttons,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons.buttons,
body.eme-sw .cart-sidebar .buttons,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__buttons,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__buttons,
body.eme-sw .site-header-cart-side .woocommerce-mini-cart__buttons{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0 0 calc(12px + env(safe-area-inset-bottom, 0px))!important;
  background:#fff!important;
  overflow:visible!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons a,
body.eme-sw #shop-cart-sidebar .buttons a,
body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons .button,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons a,
body.eme-sw .cart-sidebar .buttons a,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons .button,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__buttons a,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__buttons a,
body.eme-sw .site-header-cart-side .woocommerce-mini-cart__buttons a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-height:52px!important;
  height:auto!important;
  margin:0!important;
  padding:15px 18px!important;
  border-radius:999px!important;
  border:1px solid #000!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons a.checkout,
body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons a.checkout-button,
body.eme-sw #shop-cart-sidebar .buttons a.checkout,
body.eme-sw #shop-cart-sidebar .buttons a.checkout-button,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons a.checkout,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons a.checkout-button,
body.eme-sw .cart-sidebar .buttons a.checkout,
body.eme-sw .cart-sidebar .buttons a.checkout-button{
  order:2!important;
  background:#000!important;
  border-color:#000!important;
  color:#fff!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons a:not(.checkout):not(.checkout-button),
body.eme-sw #shop-cart-sidebar .buttons a:not(.checkout):not(.checkout-button),
body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons a:not(.checkout):not(.checkout-button),
body.eme-sw .cart-sidebar .buttons a:not(.checkout):not(.checkout-button){
  order:1!important;
  background:#fff!important;
  border-color:transparent!important;
  color:#111!important;
  min-height:42px!important;
  padding:9px 12px!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__empty-message,
body.eme-sw .cart-sidebar .woocommerce-mini-cart__empty-message,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__empty-message{
  flex:1 1 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:260px!important;
  margin:0!important;
  padding:30px 20px!important;
  color:#555!important;
  font-size:15px!important;
  text-align:center!important;
}

@media(max-width:480px){
  body.eme-sw #shop-cart-sidebar,
  body.eme-sw .shop-cart-sidebar,
  body.eme-sw .cart-sidebar,
  body.eme-sw .site-dialog.cart-sidebar,
  body.eme-sw .woostify-cart-sidebar,
  body.eme-sw .woostify-sidebar-cart,
  body.eme-sw .site-header-cart-side{
    width:min(390px, 92vw)!important;
    max-width:min(390px, 92vw)!important;
  }

  body.eme-sw #shop-cart-sidebar .widget_shopping_cart_content,
  body.eme-sw .cart-sidebar .widget_shopping_cart_content,
  body.eme-sw .woostify-cart-sidebar .widget_shopping_cart_content,
  body.eme-sw .woostify-sidebar-cart .widget_shopping_cart_content,
  body.eme-sw .site-header-cart-side .widget_shopping_cart_content{
    padding-left:18px!important;
    padding-right:18px!important;
    padding-bottom:14px!important;
  }

  body.eme-sw #shop-cart-sidebar .shop-cart-sidebar-head,
  body.eme-sw #shop-cart-sidebar .cart-sidebar-head,
  body.eme-sw .cart-sidebar .shop-cart-sidebar-head,
  body.eme-sw .cart-sidebar .cart-sidebar-head{
    min-height:64px!important;
    padding:18px 18px 14px!important;
  }

  body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item,
  body.eme-sw #shop-cart-sidebar li.mini_cart_item,
  body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item,
  body.eme-sw .cart-sidebar li.mini_cart_item,
  body.eme-sw .woostify-cart-sidebar li.woocommerce-mini-cart-item,
  body.eme-sw .woostify-sidebar-cart li.woocommerce-mini-cart-item{
    grid-template-columns:86px minmax(0,1fr)!important;
    column-gap:12px!important;
    padding:16px 28px 16px 0!important;
  }

  body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
  body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
  body.eme-sw #shop-cart-sidebar .mini-cart-product-thumbnail,
  body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
  body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
  body.eme-sw .cart-sidebar .mini-cart-product-thumbnail{
    width:86px!important;
    height:86px!important;
    min-width:86px!important;
    max-width:86px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-product-name,
  body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
  body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
  body.eme-sw .cart-sidebar .mini-cart-product-name,
  body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail):not(:has(img)),
  body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove):not(.mini-cart-product-thumbnail):not(.product-thumbnail){
    font-size:15.5px!important;
    line-height:1.25!important;
    -webkit-line-clamp:3!important;
  }
}

@media(max-width:374px){
  body.eme-sw #shop-cart-sidebar .widget_shopping_cart_content,
  body.eme-sw .cart-sidebar .widget_shopping_cart_content{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item,
  body.eme-sw #shop-cart-sidebar li.mini_cart_item,
  body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item,
  body.eme-sw .cart-sidebar li.mini_cart_item{
    grid-template-columns:76px minmax(0,1fr)!important;
    column-gap:10px!important;
  }

  body.eme-sw #shop-cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
  body.eme-sw #shop-cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
  body.eme-sw #shop-cart-sidebar .mini-cart-product-thumbnail,
  body.eme-sw .cart-sidebar li.woocommerce-mini-cart-item > a:not(.remove):has(img),
  body.eme-sw .cart-sidebar li.mini_cart_item > a:not(.remove):has(img),
  body.eme-sw .cart-sidebar .mini-cart-product-thumbnail{
    width:76px!important;
    height:76px!important;
    min-width:76px!important;
    max-width:76px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-quantity,
  body.eme-sw #shop-cart-sidebar .quantity,
  body.eme-sw .cart-sidebar .mini-cart-quantity,
  body.eme-sw .cart-sidebar .quantity{
    grid-template-columns:31px 38px 31px!important;
    width:100px!important;
    min-width:100px!important;
    max-width:100px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-product-qty,
  body.eme-sw #shop-cart-sidebar .quantity .minus,
  body.eme-sw #shop-cart-sidebar .quantity .plus,
  body.eme-sw .cart-sidebar .mini-cart-product-qty,
  body.eme-sw .cart-sidebar .quantity .minus,
  body.eme-sw .cart-sidebar .quantity .plus{
    width:31px!important;
    min-width:31px!important;
    max-width:31px!important;
  }

  body.eme-sw #shop-cart-sidebar .mini-cart-quantity input.qty,
  body.eme-sw #shop-cart-sidebar .quantity input.qty,
  body.eme-sw .cart-sidebar .mini-cart-quantity input.qty,
  body.eme-sw .cart-sidebar .quantity input.qty{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
  }

  body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total .amount,
  body.eme-sw .cart-sidebar .woocommerce-mini-cart__total .amount{
    font-size:15px!important;
  }
}


/* === EME V111: checkout más Shopify, simple y limpio === */
body.eme-sw-checkout-page{
  background:#f7f7f5!important;
  overflow-x:hidden!important;
}
body.eme-sw-checkout-page .eme-page-head{
  display:none!important;
}
body.eme-sw-checkout-page .eme-checkout-shell-v111{
  width:min(1280px, calc(100vw - 56px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:34px 0 86px!important;
  box-sizing:border-box!important;
  position:relative!important;
  left:auto!important;
  transform:none!important;
}
body.eme-sw-checkout-page .eme-checkout-top-v111{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:18px!important;
  margin:0 0 26px!important;
}
body.eme-sw-checkout-page .eme-checkout-back-v111,
body.eme-sw-checkout-page .eme-checkout-secure-v111{
  display:inline-flex!important;
  align-items:center!important;
  min-height:42px!important;
  width:max-content!important;
  padding:0 15px!important;
  border:1px solid #e7e7e2!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#111!important;
  text-decoration:none!important;
  font:800 13px/1 Inter,system-ui,sans-serif!important;
  box-shadow:0 12px 28px rgba(0,0,0,.035)!important;
}
body.eme-sw-checkout-page .eme-checkout-back-v111:hover{
  border-color:#111!important;
  transform:translateY(-1px)!important;
}
body.eme-sw-checkout-page .eme-checkout-secure-v111{
  justify-self:end!important;
  color:#2f713d!important;
  background:#f0fdf4!important;
  border-color:rgba(34,197,94,.22)!important;
}
body.eme-sw-checkout-page .eme-checkout-secure-v111:before{
  content:'🔒';
  margin-right:7px;
  font-size:14px;
}
body.eme-sw-checkout-page .eme-checkout-brand-v111{
  font-family:Archivo,Inter,sans-serif!important;
  font-size:48px!important;
  line-height:.85!important;
  font-weight:900!important;
  letter-spacing:-.06em!important;
  color:#050505!important;
}
body.eme-sw-checkout-page .eme-checkout-hero-v111{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:28px!important;
  margin:0 0 24px!important;
}
body.eme-sw-checkout-page .eme-checkout-eyebrow-v111{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  padding:8px 12px!important;
  margin:0 0 12px!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  text-transform:uppercase!important;
  letter-spacing:.11em!important;
  font:900 11px/1 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .eme-checkout-hero-v111 h1{
  margin:0!important;
  font:900 clamp(42px, 5vw, 74px)/.88 Archivo,Inter,sans-serif!important;
  letter-spacing:-.06em!important;
  color:#080808!important;
}
body.eme-sw-checkout-page .eme-checkout-hero-v111 p{
  margin:12px 0 0!important;
  max-width:540px!important;
  color:#5e5e5a!important;
  font:800 16px/1.45 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .eme-checkout-trust-v111{
  display:grid!important;
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  gap:10px!important;
  min-width:min(560px, 52vw)!important;
}
body.eme-sw-checkout-page .eme-checkout-trust-v111 span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:#fff!important;
  border:1px solid #e7e7e2!important;
  color:#111!important;
  font:900 12px/1.2 Inter,system-ui,sans-serif!important;
  text-align:center!important;
  box-shadow:0 12px 28px rgba(0,0,0,.03)!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce{
  width:100%!important;
  max-width:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-notices-wrapper,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-NoticeGroup{
  margin:0 0 16px!important;
}
body.eme-sw-checkout-page .woocommerce-form-coupon-toggle,
body.eme-sw-checkout-page .woocommerce-form-login-toggle{
  margin:0 0 14px!important;
}
body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info,
body.eme-sw-checkout-page .woocommerce-form-login-toggle .woocommerce-info{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0!important;
  padding:15px 18px!important;
  border:1px solid #e7e7e2!important;
  border-left:4px solid #111!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(0,0,0,.04)!important;
  color:#555!important;
  font:800 14px/1.4 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .showcoupon,
body.eme-sw-checkout-page .woocommerce-form-login-toggle .showlogin{
  color:#111!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}
body.eme-sw-checkout-page form.checkout_coupon,
body.eme-sw-checkout-page form.login{
  border:1px solid #e7e7e2!important;
  border-radius:20px!important;
  background:#fff!important;
  padding:18px!important;
  margin:0 0 18px!important;
  box-shadow:0 16px 34px rgba(0,0,0,.04)!important;
}
body.eme-sw-checkout-page form.checkout_coupon{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:end!important;
}
body.eme-sw-checkout-page form.checkout_coupon p{
  margin:0!important;
  width:auto!important;
  float:none!important;
}
body.eme-sw-checkout-page form.checkout_coupon .form-row-first{
  grid-column:1!important;
}
body.eme-sw-checkout-page form.checkout_coupon .form-row-last{
  grid-column:2!important;
}
body.eme-sw-checkout-page form.checkout_coupon button.button{
  min-height:54px!important;
  padding:0 22px!important;
  border-radius:15px!important;
  background:#111!important;
  color:#fff!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(390px, 438px)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  display:grid!important;
  gap:18px!important;
  width:100%!important;
  margin:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2{
  width:100%!important;
  float:none!important;
  margin:0!important;
  padding:24px!important;
  border:1px solid #e7e7e2!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(0,0,0,.045)!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 18px!important;
  color:#080808!important;
  font:900 28px/.95 Archivo,Inter,sans-serif!important;
  letter-spacing:-.04em!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1 h3:before,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  font:900 13px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1 h3:before{content:'1';}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before{content:'2';}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before{content:'3';}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-billing-fields__field-wrapper,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-shipping-fields__field-wrapper,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-additional-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:12px!important;
  row-gap:13px!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  float:none!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row-first,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row-last{
  width:100%!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row-wide,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_company_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_country_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_address_1_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_address_2_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_city_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_state_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_postcode_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_comments_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_company_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_country_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_address_1_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_address_2_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_city_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_state_field,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_postcode_field{
  grid-column:1 / -1!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row label{
  display:block!important;
  margin:0 0 7px!important;
  color:#171717!important;
  font:900 12px/1.2 Inter,system-ui,sans-serif!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row .required{
  color:#c4231d!important;
  text-decoration:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row input.input-text,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row textarea,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row select,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .select2-container .select2-selection--single{
  width:100%!important;
  min-height:54px!important;
  height:auto!important;
  padding:0 15px!important;
  border:1px solid #deded8!important;
  border-radius:14px!important;
  background:#fbfbfa!important;
  color:#111!important;
  font:800 15px/1.35 Inter,system-ui,sans-serif!important;
  box-shadow:none!important;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row textarea{
  min-height:112px!important;
  padding-top:14px!important;
  resize:vertical!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row input.input-text:focus,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row textarea:focus,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row select:focus,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .select2-container--open .select2-selection--single{
  background:#fff!important;
  border-color:#111!important;
  box-shadow:0 0 0 3px rgba(17,17,17,.08)!important;
  outline:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:54px!important;
  padding-left:0!important;
  padding-right:28px!important;
  color:#111!important;
  font-weight:800!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .select2-container .select2-selection--single .select2-selection__arrow{
  height:54px!important;
  right:10px!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-invalid input.input-text,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-invalid select,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-invalid .select2-selection{
  border-color:#c4231d!important;
  background:#fffafa!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-shipping-fields,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-additional-fields{
  margin:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #ship-to-different-address{
  margin:0 0 14px!important;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:15px!important;
  letter-spacing:0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #ship-to-different-address label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  cursor:pointer!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
  padding:24px 24px 0!important;
  border:1px solid #e7e7e2!important;
  border-bottom:0!important;
  border-radius:24px 24px 0 0!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(0,0,0,.045)!important;
  position:relative!important;
  z-index:2!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
  grid-column:2!important;
  grid-row:2!important;
  width:100%!important;
  float:none!important;
  margin:0!important;
  padding:12px 24px 24px!important;
  border:1px solid #e7e7e2!important;
  border-top:0!important;
  border-radius:0 0 24px 24px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(0,0,0,.045)!important;
  position:sticky!important;
  top:104px!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table{
  width:100%!important;
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  background:transparent!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table thead{
  display:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tbody,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tfoot{
  display:block!important;
  width:100%!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  padding:12px 0!important;
  border:0!important;
  border-bottom:1px solid #ededeb!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table td,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table th{
  display:block!important;
  width:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#111!important;
  text-align:left!important;
  line-height:1.35!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table td:last-child,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table th:last-child{
  text-align:right!important;
  justify-self:end!important;
  white-space:nowrap!important;
}
body.eme-sw-checkout-page .eme-checkout-review-product{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  min-width:0!important;
}
body.eme-sw-checkout-page .eme-checkout-review-thumb{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:58px!important;
  height:58px!important;
  border-radius:14px!important;
  border:1px solid #ededeb!important;
  background:#fbfbfa!important;
  overflow:hidden!important;
}
body.eme-sw-checkout-page .eme-checkout-review-thumb img,
body.eme-sw-checkout-page .eme-checkout-review-thumb-img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:7px!important;
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page .eme-checkout-review-title{
  display:block!important;
  min-width:0!important;
  color:#111!important;
  font:900 14px/1.25 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-quantity{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:26px!important;
  height:24px!important;
  padding:0 8px!important;
  margin:6px 0 0 70px!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  font:900 12px/1 Inter,system-ui,sans-serif!important;
  vertical-align:top!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart-subtotal td,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .order-total td{
  font-weight:900!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr{
  padding:13px 0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr th{
  color:#6b6b66!important;
  font:900 13px/1.2 Inter,system-ui,sans-serif!important;
  text-transform:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total{
  border-bottom:0!important;
  padding-top:18px!important;
  margin-top:4px!important;
  border-top:2px solid #111!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total th,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total td,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total .amount{
  color:#080808!important;
  font:900 22px/1 Archivo,Inter,sans-serif!important;
  letter-spacing:-.02em!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping ul,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .woocommerce-shipping-methods{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:8px!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  justify-content:flex-end!important;
  font:800 13px/1.35 Inter,system-ui,sans-serif!important;
  color:#111!important;
}
body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap{
  margin:0!important;
}
body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress{
  margin:14px 0!important;
  box-shadow:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment{
  margin:16px 0 0!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods{
  display:grid!important;
  gap:10px!important;
  padding:0 0 14px!important;
  margin:0!important;
  border-bottom:1px solid #ededeb!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods li{
  margin:0!important;
  padding:14px!important;
  border:1px solid #e7e7e2!important;
  border-radius:16px!important;
  background:#fbfbfa!important;
  color:#111!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods li label{
  font:900 14px/1.25 Inter,system-ui,sans-serif!important;
  color:#111!important;
  cursor:pointer!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment div.payment_box{
  margin:12px 0 0!important;
  padding:12px 13px!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#555!important;
  font:700 13px/1.45 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment div.payment_box:before{
  display:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order{
  margin:0!important;
  padding:14px 0 0!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .woocommerce-terms-and-conditions-wrapper{
  margin:0 0 12px!important;
  color:#656560!important;
  font:700 12px/1.45 Inter,system-ui,sans-serif!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order{
  width:100%!important;
  min-height:60px!important;
  padding:0 18px!important;
  border-radius:16px!important;
  background:#c6251f!important;
  color:#fff!important;
  font:900 15px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  box-shadow:0 16px 28px rgba(198,37,31,.22)!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order:hover{
  background:#111!important;
  transform:translateY(-1px)!important;
}
body.eme-sw-checkout-page .blockUI.blockOverlay{
  border-radius:24px!important;
}
body.eme-sw-checkout-page .eme-checkout-thankyou-card-v111{
  padding:28px!important;
  border-radius:24px!important;
  border:1px solid #e7e7e2!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(0,0,0,.045)!important;
}
@media(max-width:1120px){
  body.eme-sw-checkout-page .eme-checkout-shell-v111{
    width:min(100%, calc(100vw - 28px))!important;
    padding:22px 0 74px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-top-v111{
    grid-template-columns:1fr auto!important;
  }
  body.eme-sw-checkout-page .eme-checkout-brand-v111{
    grid-column:1 / -1!important;
    grid-row:1!important;
    text-align:center!important;
  }
  body.eme-sw-checkout-page .eme-checkout-back-v111{
    grid-column:1!important;
    grid-row:2!important;
  }
  body.eme-sw-checkout-page .eme-checkout-secure-v111{
    grid-column:2!important;
    grid-row:2!important;
  }
  body.eme-sw-checkout-page .eme-checkout-hero-v111{
    display:grid!important;
    gap:16px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-trust-v111{
    min-width:0!important;
    width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    order:-2!important;
    padding:22px 22px 0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    order:-1!important;
    position:static!important;
    top:auto!important;
    padding:12px 22px 22px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
    order:1!important;
  }
}
@media(max-width:680px){
  body.eme-sw-checkout-page .eme-checkout-shell-v111{
    width:100%!important;
    padding:16px 14px 88px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-top-v111{
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-bottom:18px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-brand-v111{
    text-align:left!important;
    font-size:42px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-back-v111,
  body.eme-sw-checkout-page .eme-checkout-secure-v111{
    justify-self:stretch!important;
    width:100%!important;
    justify-content:center!important;
  }
  body.eme-sw-checkout-page .eme-checkout-secure-v111{
    grid-column:1!important;
    grid-row:3!important;
  }
  body.eme-sw-checkout-page .eme-checkout-hero-v111{
    margin-bottom:16px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-hero-v111 h1{
    font-size:42px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-hero-v111 p{
    font-size:14px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-trust-v111{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-trust-v111 span{
    justify-content:flex-start!important;
    min-height:42px!important;
  }
  body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info,
  body.eme-sw-checkout-page .woocommerce-form-login-toggle .woocommerce-info{
    align-items:flex-start!important;
    flex-direction:column!important;
    padding:14px 15px!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon{
    grid-template-columns:1fr!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon .form-row-first,
  body.eme-sw-checkout-page form.checkout_coupon .form-row-last{
    grid-column:1!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon button.button{
    width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    padding-left:16px!important;
    padding-right:16px!important;
    border-radius:20px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    border-radius:20px 20px 0 0!important;
    padding-top:18px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    border-radius:0 0 20px 20px!important;
    padding-bottom:18px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    font-size:23px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-billing-fields__field-wrapper,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-shipping-fields__field-wrapper,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-additional-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row-wide,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_company_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_country_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_address_1_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_address_2_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_city_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_state_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #billing_postcode_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_comments_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_company_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_country_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_address_1_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_address_2_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_city_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_state_field,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #shipping_postcode_field{
    grid-column:auto!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-product{
    grid-template-columns:52px minmax(0,1fr)!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-thumb{
    width:52px!important;
    height:52px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-title{
    font-size:13px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-quantity{
    margin-left:64px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr{
    gap:10px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total th,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total td,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total .amount{
    font-size:20px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order{
    min-height:58px!important;
  }
}


/* === EME V112: checkout mobile limpio, resumen compacto y botón normal ===
   Enfoque único: quitar cabecera grande en celular, achicar producto del resumen
   y evitar que el botón Finalizar compra quede fijo/pegado abajo. */
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name img,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name img,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-thumbnail img,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review img.attachment-woocommerce_thumbnail,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review img.woocommerce-placeholder,
body.eme-sw-checkout-page .eme-checkout-review-thumb img,
body.eme-sw-checkout-page .eme-checkout-review-thumb-img{
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  max-width:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  object-fit:contain!important;
  display:block!important;
  float:none!important;
  margin:0!important;
  padding:7px!important;
  border-radius:14px!important;
  background:#fbfbfa!important;
  box-sizing:border-box!important;
}

body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name a,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name a,
body.eme-sw-checkout-page .eme-checkout-review-title{
  font-size:14px!important;
  line-height:1.28!important;
  font-weight:900!important;
  color:#111!important;
  letter-spacing:-.01em!important;
  text-align:left!important;
}

body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-checkout-payment .place-order,
body.eme-sw-checkout-page .woocommerce-checkout #payment .place-order{
  position:static!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  inset:auto!important;
  width:100%!important;
  max-width:100%!important;
  transform:none!important;
  z-index:auto!important;
  margin:0!important;
  padding:18px 0 0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}

body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order,
body.eme-sw-checkout-page .woocommerce-checkout #place_order,
body.eme-sw-checkout-page button#place_order{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  inset:auto!important;
  transform:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-height:60px!important;
  margin:0!important;
  padding:0 18px!important;
  border-radius:16px!important;
  background:#c6251f!important;
  color:#fff!important;
  font:900 15px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  box-shadow:0 14px 26px rgba(198,37,31,.20)!important;
}

@media(max-width:680px){
  body.eme-sw-checkout-page .eme-checkout-shell-v111{
    padding:14px 12px 34px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-top-v111,
  body.eme-sw-checkout-page .eme-checkout-hero-v111{
    display:none!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111{
    margin-top:0!important;
  }

  body.eme-sw-checkout-page .woocommerce-form-coupon-toggle,
  body.eme-sw-checkout-page .woocommerce-form-login-toggle{
    margin-bottom:10px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    order:-2!important;
    padding:18px 16px 4px!important;
    margin:0!important;
    border-radius:20px 20px 0 0!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    order:-1!important;
    padding:8px 16px 18px!important;
    border-radius:0 0 20px 20px!important;
    overflow:visible!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tbody tr{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
    padding:10px 0!important;
    border-bottom:1px solid #ededeb!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.eme-sw-checkout-page .eme-checkout-review-product,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name > span.eme-checkout-review-product{
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
  }

  body.eme-sw-checkout-page .eme-checkout-review-thumb,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-thumbnail{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    border-radius:13px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name img,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name img,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review img.attachment-woocommerce_thumbnail,
  body.eme-sw-checkout-page .eme-checkout-review-thumb img,
  body.eme-sw-checkout-page .eme-checkout-review-thumb-img{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    padding:6px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name a,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td.product-name a,
  body.eme-sw-checkout-page .eme-checkout-review-title{
    font-size:13px!important;
    line-height:1.25!important;
    color:#333!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-quantity{
    margin:5px 0 0 64px!important;
    min-width:24px!important;
    height:22px!important;
    padding:0 7px!important;
    font-size:11px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total .amount,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td:last-child{
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:900!important;
    white-space:nowrap!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment{
    margin-top:18px!important;
    padding-bottom:0!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-checkout-payment .place-order,
  body.eme-sw-checkout-page .woocommerce-checkout #payment .place-order{
    position:static!important;
    padding:18px 0 0!important;
    margin:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order,
  body.eme-sw-checkout-page .woocommerce-checkout #place_order,
  body.eme-sw-checkout-page button#place_order{
    position:relative!important;
    bottom:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    min-height:58px!important;
    border-radius:17px!important;
    background:#c6251f!important;
    color:#fff!important;
    box-shadow:0 14px 24px rgba(198,37,31,.22)!important;
  }

  body.eme-sw-checkout-page .wa-float,
  body.eme-sw-checkout-page .whatsapp-float,
  body.eme-sw-checkout-page a[href*='wa.me'],
  body.eme-sw-checkout-page a[href*='api.whatsapp.com']{
    bottom:18px!important;
  }
}

/* === EME V113: reparación checkout mobile ===
   Corrige desbordes del resumen, devuelve el flujo correcto en celular
   y mantiene el botón Finalizar compra visible sin quedar pegado abajo. */
body.eme-sw-checkout-page,
body.eme-sw-checkout-page *{
  box-sizing:border-box!important;
}
body.eme-sw-checkout-page{
  overflow-x:hidden!important;
}
body.eme-sw-checkout-page .eme-checkout-shell-v111,
body.eme-sw-checkout-page .eme-checkout-wrap-v111,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
  max-width:100%!important;
  overflow-x:hidden!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
  min-width:0!important;
  max-width:100%!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tbody,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tfoot{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table td,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table th{
  min-width:0!important;
  max-width:100%!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total .amount,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review td:last-child .amount,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot td .amount{
  white-space:nowrap!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order,
body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-checkout-payment .place-order,
body.eme-sw-checkout-page .woocommerce-checkout #payment .place-order{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  margin:16px 0 0!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order,
body.eme-sw-checkout-page .woocommerce-checkout #place_order,
body.eme-sw-checkout-page button#place_order{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  z-index:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-height:60px!important;
  margin:0!important;
  border-radius:18px!important;
  background:#c6251f!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(198,37,31,.20)!important;
}

@media(max-width:680px){
  body.eme-sw-checkout-page .eme-checkout-shell-v111,
  body.eme-sw-checkout-page .eme-checkout-shell-v112,
  body.eme-sw-checkout-page .eme-checkout-shell-v113{
    width:100%!important;
    max-width:100vw!important;
    padding:14px 12px 34px!important;
    margin:0 auto!important;
    overflow-x:hidden!important;
  }

  body.eme-sw-checkout-page .eme-checkout-top-v111,
  body.eme-sw-checkout-page .eme-checkout-hero-v111{
    display:none!important;
  }

  body.eme-sw-checkout-page .woocommerce-form-coupon-toggle,
  body.eme-sw-checkout-page .woocommerce-form-login-toggle,
  body.eme-sw-checkout-page form.checkout_coupon,
  body.eme-sw-checkout-page form.login{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:14px!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon .form-row,
  body.eme-sw-checkout-page form.checkout_coupon .form-row-first,
  body.eme-sw-checkout-page form.checkout_coupon .form-row-last{
    width:100%!important;
    grid-column:1!important;
    float:none!important;
  }
  body.eme-sw-checkout-page form.checkout_coupon input.input-text,
  body.eme-sw-checkout-page form.checkout_coupon button.button{
    width:100%!important;
    max-width:100%!important;
    min-height:52px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
  }

  /* En celular el flujo vuelve a ser claro: datos primero, pedido después, botón al final. */
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
    order:1!important;
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
    width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    order:2!important;
    width:100%!important;
    margin:0!important;
    padding:18px 16px 4px!important;
    border-radius:20px 20px 0 0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    order:3!important;
    width:100%!important;
    max-width:100%!important;
    padding:8px 16px 18px!important;
    border-radius:0 0 20px 20px!important;
    overflow:hidden!important;
    position:static!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    box-shadow:0 12px 28px rgba(0,0,0,.04)!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    font-size:24px!important;
    line-height:1.05!important;
    letter-spacing:-.035em!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1 h3:before{content:'1'!important;}
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before{content:'2'!important;}
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before{content:'3'!important;}

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
    border-spacing:0!important;
    margin:0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tbody,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tfoot{
    display:block!important;
    width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-shadow:none!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(78px,max-content)!important;
    gap:10px!important;
    align-items:center!important;
    padding:11px 0!important;
    border-bottom:1px solid #ededeb!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-product{
    display:grid!important;
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-thumb,
  body.eme-sw-checkout-page .eme-checkout-review-thumb img,
  body.eme-sw-checkout-page .eme-checkout-review-thumb-img{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-thumb{
    border-radius:13px!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page .eme-checkout-review-title,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item .product-name a{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    color:#333!important;
    font:900 13px/1.25 Inter,system-ui,sans-serif!important;
    letter-spacing:-.01em!important;
    overflow-wrap:break-word!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-quantity{
    display:inline-flex!important;
    margin:6px 0 0 62px!important;
    min-width:24px!important;
    height:22px!important;
    padding:0 7px!important;
    font-size:11px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .cart_item td:last-child,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total .amount{
    justify-self:end!important;
    text-align:right!important;
    max-width:92px!important;
    font-size:14px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.cart-subtotal,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.fee,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.tax-rate,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.recurring-totals,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total.recurring-total{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    padding:13px 0!important;
    border-bottom:1px solid #ededeb!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.cart-subtotal th,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total th,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.cart-subtotal td,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total td{
    display:block!important;
    width:auto!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.cart-subtotal td,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total td{
    justify-self:end!important;
    text-align:right!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total th,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total td,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot .order-total .amount{
    font-size:21px!important;
    line-height:1.05!important;
  }

  /* Envío en una columna para que las opciones largas no se corten. */
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping{
    display:block!important;
    width:100%!important;
    padding:13px 0!important;
    border-bottom:1px solid #ededeb!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping th,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    padding:0!important;
    text-align:left!important;
    justify-self:stretch!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping th{
    margin:0 0 9px!important;
    color:#111!important;
    font:900 15px/1.2 Inter,system-ui,sans-serif!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping ul,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .woocommerce-shipping-methods{
    display:grid!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:9px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:0!important;
    color:#111!important;
    font:800 14px/1.35 Inter,system-ui,sans-serif!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li label{
    min-width:0!important;
    max-width:calc(100% - 30px)!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping input[type='radio']{
    flex:0 0 auto!important;
    margin-top:2px!important;
  }

  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap,
  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress{
    margin:14px 0!important;
  }
  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress__top,
  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress strong,
  body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress span{
    min-width:0!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment{
    margin:16px 0 0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods{
    gap:9px!important;
    padding-bottom:14px!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods li{
    padding:14px!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods li label{
    display:inline!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order,
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-checkout-payment .place-order,
  body.eme-sw-checkout-page .woocommerce-checkout #payment .place-order{
    position:static!important;
    inset:auto!important;
    margin:18px 0 0!important;
    padding:0!important;
    width:100%!important;
    background:transparent!important;
  }
  body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order,
  body.eme-sw-checkout-page .woocommerce-checkout #place_order,
  body.eme-sw-checkout-page button#place_order{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:60px!important;
    margin:0!important;
    border-radius:18px!important;
    background:#c6251f!important;
    color:#fff!important;
    font:900 14px/1 Inter,system-ui,sans-serif!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
    box-shadow:0 14px 24px rgba(198,37,31,.22)!important;
  }

  body.eme-sw-checkout-page .wa-float,
  body.eme-sw-checkout-page .whatsapp-float,
  body.eme-sw-checkout-page a[href*='wa.me'],
  body.eme-sw-checkout-page a[href*='api.whatsapp.com']{
    bottom:18px!important;
  }
}

/* V114 - Evita zoom automático de iPhone/Safari al tocar campos de formulario.
   iOS acerca la pantalla cuando el input tiene menos de 16px. */
@media (max-width: 768px){
  html body.eme-sw input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
  html body.eme-sw select,
  html body.eme-sw textarea,
  html body.eme-sw .woocommerce form .form-row input.input-text,
  html body.eme-sw .woocommerce form .form-row textarea,
  html body.eme-sw .woocommerce form .form-row select,
  html body.eme-sw .quantity input.qty,
  html body.eme-sw .eme-cart-qty-input,
  html body.eme-sw .eme-mini-cart-qty input,
  html body.eme-sw .select2-container .select2-selection--single,
  html body.eme-sw .select2-container--default .select2-selection--single .select2-selection__rendered,
  html body.eme-sw .select2-search--dropdown .select2-search__field{
    font-size:16px!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
    transform:none!important;
    zoom:1!important;
  }
}

/* === EME V115: checkout mobile más corto y cupón realmente desplegable === */
@media (max-width: 680px){
  html body.eme-sw-checkout-page,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 *{
    max-width:100%!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-shell-v111,
  html body.eme-sw-checkout-page .eme-checkout-shell-v112,
  html body.eme-sw-checkout-page .eme-checkout-shell-v113,
  html body.eme-sw-checkout-page .eme-checkout-shell-v115{
    padding:10px 10px 28px!important;
  }

  /* El cupón queda como tarjeta/botón y el formulario se abre solo al tocar. */
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle{
    margin:0 0 10px!important;
  }
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{
    min-height:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    flex-direction:row!important;
    width:100%!important;
    margin:0!important;
    padding:13px 14px!important;
    border-left:4px solid #111!important;
    border-radius:18px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.045)!important;
    font:800 14px/1.25 Inter,system-ui,sans-serif!important;
  }
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .showcoupon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:max-content!important;
    color:#111!important;
    font:900 14px/1 Inter,system-ui,sans-serif!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon{
    display:none!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:0 0 12px!important;
    padding:12px!important;
    border-radius:18px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.04)!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon.eme-checkout-coupon-open{
    display:grid!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon .form-row{
    margin:0!important;
    padding:0!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon input.input-text,
  html body.eme-sw-checkout-page form.checkout_coupon button.button{
    min-height:48px!important;
    height:48px!important;
    border-radius:15px!important;
    font-size:16px!important;
  }

  /* Tarjetas y separación general más compactas sin eliminar información. */
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    gap:12px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
    gap:12px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    padding:14px!important;
    border-radius:18px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    padding:16px 14px 8px!important;
    margin:0!important;
    border-radius:18px 18px 0 0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    padding-top:6px!important;
    border-radius:0 0 18px 18px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
    margin:0 0 14px!important;
    font-size:24px!important;
    line-height:1.05!important;
    letter-spacing:-.045em!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3:before,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    margin-right:10px!important;
    font-size:15px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-billing-fields__field-wrapper,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-shipping-fields__field-wrapper,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-additional-fields__field-wrapper{
    gap:10px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row{
    margin:0 0 10px!important;
    padding:0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .form-row label,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row label{
    margin:0 0 6px!important;
    font-size:13px!important;
    line-height:1.1!important;
    letter-spacing:.04em!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row input.input-text,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row textarea,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row select,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .select2-container .select2-selection--single{
    min-height:48px!important;
    height:48px!important;
    border-radius:15px!important;
    padding:0 14px!important;
    font-size:16px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce form .form-row textarea{
    height:auto!important;
    min-height:82px!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
  html body.eme-sw-checkout-page .select2-container .select2-selection--single .select2-selection__rendered{
    line-height:48px!important;
  }
  html body.eme-sw-checkout-page .select2-container .select2-selection--single .select2-selection__arrow{
    height:48px!important;
  }

  /* Resumen y pago más bajos de alto. */
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item{
    padding:8px 0!important;
    gap:8px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-review-product{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:9px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-review-thumb,
  html body.eme-sw-checkout-page .eme-checkout-review-thumb img,
  html body.eme-sw-checkout-page .eme-checkout-review-thumb-img{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-quantity{
    margin:4px 0 0 55px!important;
    height:20px!important;
    padding:0 7px!important;
    font-size:10px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.cart-subtotal,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.order-total,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.fee,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.tax-rate{
    padding:10px 0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping{
    padding:10px 0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping ul,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .woocommerce-shipping-methods{
    gap:6px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li{
    font-size:13px!important;
    line-height:1.28!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-shipping-progress-wrap .eme-sw-shipping-progress{
    margin:10px 0!important;
    padding:11px 12px!important;
    border-radius:16px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment{
    margin-top:12px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods{
    gap:8px!important;
    padding-bottom:10px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment ul.payment_methods li{
    padding:12px!important;
    border-radius:15px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment div.payment_box{
    margin-top:8px!important;
    padding:10px 11px!important;
    font-size:12px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #payment .place-order,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce-checkout-payment .place-order,
  html body.eme-sw-checkout-page .woocommerce-checkout #payment .place-order{
    margin:14px 0 0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #place_order,
  html body.eme-sw-checkout-page .woocommerce-checkout #place_order,
  html body.eme-sw-checkout-page button#place_order{
    min-height:56px!important;
    border-radius:17px!important;
  }
}


/* === EME V116: checkout mobile más claro, cupón fino y pasos coherentes === */
body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{
  overflow:hidden!important;
}
body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info .showcoupon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.eme-sw-checkout-page form.checkout_coupon:not(.eme-checkout-coupon-open),
body.eme-sw-checkout-page form.checkout_coupon[style*="display: none"]{
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  visibility:hidden!important;
}
body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before{
  display:none!important;
  content:none!important;
}

@media(max-width:680px){
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle{
    margin:0 0 8px!important;
  }
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:42px!important;
    padding:10px 12px!important;
    margin:0!important;
    border:1px solid #e4e4df!important;
    border-left:3px solid #111!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 7px 18px rgba(0,0,0,.035)!important;
    color:#111!important;
    text-align:center!important;
    font:900 13px/1.15 Inter,system-ui,sans-serif!important;
    letter-spacing:-.01em!important;
  }
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info:before,
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info:after{
    display:none!important;
    content:none!important;
  }
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .showcoupon{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    color:#111!important;
    font:900 13px/1.15 Inter,system-ui,sans-serif!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon:not(.eme-checkout-coupon-open),
  html body.eme-sw-checkout-page form.checkout_coupon[style*="display: none"]{
    display:none!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    visibility:hidden!important;
  }
  html body.eme-sw-checkout-page form.checkout_coupon.eme-checkout-coupon-open{
    display:grid!important;
    margin:6px 0 10px!important;
    padding:10px!important;
  }

  /* Checkout mobile en 2 pasos reales: 1 datos, 2 pedido/pago. */
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before{
    content:'2'!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before{
    display:none!important;
    content:none!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3{
    margin:8px 0 10px!important;
    font:900 18px/1.1 Inter,system-ui,sans-serif!important;
    letter-spacing:-.02em!important;
  }

  /* Quita el espacio fantasma que quedaba entre cupón y el primer paso. */
  html body.eme-sw-checkout-page .woocommerce-form-login-toggle:empty,
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle + form.checkout_coupon:not(.eme-checkout-coupon-open){
    display:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    height:0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce{
    margin-top:0!important;
    padding-top:0!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    gap:10px!important;
  }
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
    gap:10px!important;
  }
}


/* === EME V117: corrección carrito lateral mobile === */
body.eme-sw #shop-cart-sidebar .widget_shopping_cart_content,
body.eme-sw .cart-sidebar .widget_shopping_cart_content,
body.eme-sw .woostify-cart-sidebar .widget_shopping_cart_content,
body.eme-sw .woostify-sidebar-cart .widget_shopping_cart_content,
body.eme-sw .site-header-cart-side .widget_shopping_cart_content{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}

body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
body.eme-sw .cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart.eme-mini-cart-list,
body.eme-sw .site-header-cart-side .woocommerce-mini-cart.eme-mini-cart-list{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-item,
body.eme-sw .cart-sidebar .eme-mini-cart-item,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-item,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-item,
body.eme-sw .site-header-cart-side .eme-mini-cart-item{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:14px 34px 14px 0!important;
  margin:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  border-bottom:1px solid rgba(0,0,0,.08)!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-row,
body.eme-sw .cart-sidebar .eme-mini-cart-row,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-row,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-row,
body.eme-sw .site-header-cart-side .eme-mini-cart-row{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  align-items:start!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-info,
body.eme-sw .cart-sidebar .eme-mini-cart-info,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-info,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-info,
body.eme-sw .site-header-cart-side .eme-mini-cart-info{
  display:block!important;
  min-width:0!important;
  width:100%!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-title,
body.eme-sw .cart-sidebar .eme-mini-cart-title,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-title,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-title,
body.eme-sw .site-header-cart-side .eme-mini-cart-title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:normal!important;
  word-break:break-word!important;
  font-size:15px!important;
  line-height:1.22!important;
  margin:0 0 10px!important;
  max-width:100%!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-meta,
body.eme-sw .cart-sidebar .eme-mini-cart-meta,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-meta,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-meta,
body.eme-sw .site-header-cart-side .eme-mini-cart-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  flex-wrap:wrap!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-cart-price,
body.eme-sw .cart-sidebar .eme-mini-cart-price,
body.eme-sw .woostify-cart-sidebar .eme-mini-cart-price,
body.eme-sw .woostify-sidebar-cart .eme-mini-cart-price,
body.eme-sw .site-header-cart-side .eme-mini-cart-price{
  margin-left:auto!important;
  white-space:nowrap!important;
  text-align:right!important;
  font-size:17px!important;
  font-weight:900!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-remove,
body.eme-sw .cart-sidebar .eme-mini-remove,
body.eme-sw .woostify-cart-sidebar .eme-mini-remove,
body.eme-sw .woostify-sidebar-cart .eme-mini-remove,
body.eme-sw .site-header-cart-side .eme-mini-remove{
  position:absolute!important;
  top:16px!important;
  right:0!important;
  z-index:3!important;
}

@media (max-width:430px){
  body.eme-sw #shop-cart-sidebar .eme-mini-cart-row,
  body.eme-sw .cart-sidebar .eme-mini-cart-row,
  body.eme-sw .woostify-cart-sidebar .eme-mini-cart-row,
  body.eme-sw .woostify-sidebar-cart .eme-mini-cart-row,
  body.eme-sw .site-header-cart-side .eme-mini-cart-row{
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:10px!important;
  }

  body.eme-sw #shop-cart-sidebar .eme-mini-cart-thumb,
  body.eme-sw .cart-sidebar .eme-mini-cart-thumb,
  body.eme-sw .woostify-cart-sidebar .eme-mini-cart-thumb,
  body.eme-sw .woostify-sidebar-cart .eme-mini-cart-thumb,
  body.eme-sw .site-header-cart-side .eme-mini-cart-thumb{
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    max-width:68px!important;
  }

  body.eme-sw #shop-cart-sidebar .eme-mini-cart-title,
  body.eme-sw .cart-sidebar .eme-mini-cart-title,
  body.eme-sw .woostify-cart-sidebar .eme-mini-cart-title,
  body.eme-sw .woostify-sidebar-cart .eme-mini-cart-title,
  body.eme-sw .site-header-cart-side .eme-mini-cart-title{
    font-size:14px!important;
    line-height:1.2!important;
    -webkit-line-clamp:2!important;
  }

  body.eme-sw #shop-cart-sidebar .eme-mini-cart-meta,
  body.eme-sw .cart-sidebar .eme-mini-cart-meta,
  body.eme-sw .woostify-cart-sidebar .eme-mini-cart-meta,
  body.eme-sw .woostify-sidebar-cart .eme-mini-cart-meta,
  body.eme-sw .site-header-cart-side .eme-mini-cart-meta{
    gap:8px!important;
  }

  body.eme-sw #shop-cart-sidebar .eme-mini-qty-control,
  body.eme-sw .cart-sidebar .eme-mini-qty-control,
  body.eme-sw .woostify-cart-sidebar .eme-mini-qty-control,
  body.eme-sw .woostify-sidebar-cart .eme-mini-qty-control,
  body.eme-sw .site-header-cart-side .eme-mini-qty-control{
    width:108px!important;
    min-width:108px!important;
    max-width:108px!important;
  }
}

/* === EME V118: ajustes pedidos carrito lateral + relacionados === */
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button::before,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button::after,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button::before,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button::after,
body.eme-sw .site-header-cart-side .remove_from_cart_button::before,
body.eme-sw .site-header-cart-side .remove_from_cart_button::after,
body.eme-sw #shop-cart-sidebar .eme-mini-remove::before,
body.eme-sw #shop-cart-sidebar .eme-mini-remove::after,
body.eme-sw .cart-sidebar .eme-mini-remove::before,
body.eme-sw .cart-sidebar .eme-mini-remove::after{
  display:none!important;
  content:none!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-remove,
body.eme-sw .cart-sidebar .eme-mini-remove,
body.eme-sw .woostify-cart-sidebar .eme-mini-remove,
body.eme-sw .woostify-sidebar-cart .eme-mini-remove,
body.eme-sw .site-header-cart-side .eme-mini-remove{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  color:transparent!important;
  font-size:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-remove span,
body.eme-sw .cart-sidebar .eme-mini-remove span,
body.eme-sw .woostify-cart-sidebar .eme-mini-remove span,
body.eme-sw .woostify-sidebar-cart .eme-mini-remove span,
body.eme-sw .site-header-cart-side .eme-mini-remove span{
  display:block!important;
  font-size:0!important;
  line-height:0!important;
}

body.eme-sw #shop-cart-sidebar .eme-mini-remove .eme-mini-remove-icon,
body.eme-sw .cart-sidebar .eme-mini-remove .eme-mini-remove-icon,
body.eme-sw .woostify-cart-sidebar .eme-mini-remove .eme-mini-remove-icon,
body.eme-sw .woostify-sidebar-cart .eme-mini-remove .eme-mini-remove-icon,
body.eme-sw .site-header-cart-side .eme-mini-remove .eme-mini-remove-icon{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  text-indent:0!important;
  background:
    linear-gradient(45deg, transparent 45%, #d3312a 46%, #d3312a 54%, transparent 55%),
    linear-gradient(-45deg, transparent 45%, #d3312a 46%, #d3312a 54%, transparent 55%)!important;
  background-size:18px 18px!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
  padding:26px 28px 30px!important;
  border-radius:24px!important;
}

body.eme-sw-product-page .eme-related-head{
  margin-bottom:18px!important;
}

body.eme-sw-product-page .eme-related-head h2{
  font-size:clamp(28px,2.3vw,40px)!important;
  line-height:1.05!important;
}

body.eme-sw-product-page .eme-related-viewport{
  overflow:hidden!important;
}

body.eme-sw-product-page .eme-related-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 54px) / 4)!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding-bottom:2px!important;
}

body.eme-sw-product-page .eme-related-track::-webkit-scrollbar{
  display:none!important;
}

body.eme-sw-product-page .eme-related-card{
  scroll-snap-align:start!important;
  border-radius:20px!important;
  padding:14px!important;
  min-width:0!important;
}

body.eme-sw-product-page .eme-related-media{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  border-radius:16px!important;
  background:#fbfbfa!important;
}

body.eme-sw-product-page .eme-related-image{
  padding:10px!important;
}

body.eme-sw-product-page .eme-related-badge{
  min-height:34px!important;
  padding:7px 13px!important;
  font-size:12px!important;
}

body.eme-sw-product-page .eme-related-body{
  padding:12px 6px 0!important;
}

body.eme-sw-product-page .eme-related-title{
  min-height:3.9em!important;
  -webkit-line-clamp:3!important;
  margin-bottom:12px!important;
  font-size:17px!important;
  line-height:1.18!important;
}

body.eme-sw-product-page .eme-related-price,
body.eme-sw-product-page .eme-related-price .amount{
  margin-bottom:12px!important;
  font-size:25px!important;
}

body.eme-sw-product-page .eme-related-shipping{
  font-size:14px!important;
}

body.eme-sw-product-page .eme-related-add,
body.eme-sw-product-page .eme-related-card a.eme-related-add,
body.eme-sw-product-page .eme-related-card .button.eme-related-add,
body.eme-sw-product-page .eme-related-card a.add_to_cart_button.eme-related-add,
body.eme-sw-product-page .eme-related-card a.ajax_add_to_cart.eme-related-add{
  min-height:44px!important;
  margin-top:14px!important;
  padding:0 14px!important;
  border-radius:14px!important;
  font-size:13px!important;
}

@media (max-width:1180px){
  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 36px) / 3)!important;
  }
}

@media (max-width:760px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:20px 16px 22px!important;
    border-radius:22px!important;
  }

  body.eme-sw-product-page .eme-related-nav{
    display:none!important;
  }

  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:minmax(230px,82%)!important;
    gap:14px!important;
  }

  body.eme-sw-product-page .eme-related-title{
    font-size:16px!important;
    min-height:3.75em!important;
  }
}

@media (max-width:480px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:18px 12px 20px!important;
  }

  body.eme-sw-product-page .eme-related-head h2{
    font-size:28px!important;
  }

  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:minmax(220px,88%)!important;
  }

  body.eme-sw-product-page .eme-related-media{
    aspect-ratio:1.06 / 1!important;
  }

  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add{
    min-height:42px!important;
    border-radius:13px!important;
    font-size:12px!important;
  }
}

/* === EME V120: fix definitivo X carrito y carrusel mobile relacionados === */
body.eme-sw #shop-cart-sidebar a.remove,
body.eme-sw #shop-cart-sidebar .remove,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button,
body.eme-sw .cart-sidebar a.remove,
body.eme-sw .cart-sidebar .remove,
body.eme-sw .cart-sidebar .remove_from_cart_button,
body.eme-sw .cart-sidebar-content a.remove,
body.eme-sw .cart-sidebar-content .remove,
body.eme-sw .cart-sidebar-content .remove_from_cart_button,
body.eme-sw .woostify-cart-sidebar a.remove,
body.eme-sw .woostify-cart-sidebar .remove,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button,
body.eme-sw .woostify-sidebar-cart a.remove,
body.eme-sw .woostify-sidebar-cart .remove,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button,
body.eme-sw .site-header-cart-side a.remove,
body.eme-sw .site-header-cart-side .remove,
body.eme-sw .site-header-cart-side .remove_from_cart_button,
body.eme-sw .widget_shopping_cart_content a.remove,
body.eme-sw .widget_shopping_cart_content .remove,
body.eme-sw .widget_shopping_cart_content .remove_from_cart_button{
  position:absolute!important;
  top:18px!important;
  right:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  text-shadow:none!important;
  overflow:hidden!important;
  z-index:10!important;
}

body.eme-sw #shop-cart-sidebar a.remove *,
body.eme-sw #shop-cart-sidebar .remove *,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button *,
body.eme-sw .cart-sidebar a.remove *,
body.eme-sw .cart-sidebar .remove *,
body.eme-sw .cart-sidebar .remove_from_cart_button *,
body.eme-sw .cart-sidebar-content a.remove *,
body.eme-sw .cart-sidebar-content .remove *,
body.eme-sw .cart-sidebar-content .remove_from_cart_button *,
body.eme-sw .woostify-cart-sidebar a.remove *,
body.eme-sw .woostify-cart-sidebar .remove *,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button *,
body.eme-sw .woostify-sidebar-cart a.remove *,
body.eme-sw .woostify-sidebar-cart .remove *,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button *,
body.eme-sw .site-header-cart-side a.remove *,
body.eme-sw .site-header-cart-side .remove *,
body.eme-sw .site-header-cart-side .remove_from_cart_button *,
body.eme-sw .widget_shopping_cart_content a.remove *,
body.eme-sw .widget_shopping_cart_content .remove *,
body.eme-sw .widget_shopping_cart_content .remove_from_cart_button *{
  display:none!important;
}

body.eme-sw #shop-cart-sidebar a.remove::before,
body.eme-sw #shop-cart-sidebar .remove::before,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button::before,
body.eme-sw .cart-sidebar a.remove::before,
body.eme-sw .cart-sidebar .remove::before,
body.eme-sw .cart-sidebar .remove_from_cart_button::before,
body.eme-sw .cart-sidebar-content a.remove::before,
body.eme-sw .cart-sidebar-content .remove::before,
body.eme-sw .cart-sidebar-content .remove_from_cart_button::before,
body.eme-sw .woostify-cart-sidebar a.remove::before,
body.eme-sw .woostify-cart-sidebar .remove::before,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button::before,
body.eme-sw .woostify-sidebar-cart a.remove::before,
body.eme-sw .woostify-sidebar-cart .remove::before,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button::before,
body.eme-sw .site-header-cart-side a.remove::before,
body.eme-sw .site-header-cart-side .remove::before,
body.eme-sw .site-header-cart-side .remove_from_cart_button::before,
body.eme-sw .widget_shopping_cart_content a.remove::before,
body.eme-sw .widget_shopping_cart_content .remove::before,
body.eme-sw .widget_shopping_cart_content .remove_from_cart_button::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:30px!important;
  height:30px!important;
  background:
    linear-gradient(45deg, transparent 45%, #d3312a 46%, #d3312a 54%, transparent 55%),
    linear-gradient(-45deg, transparent 45%, #d3312a 46%, #d3312a 54%, transparent 55%)!important;
  background-size:18px 18px!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
}

body.eme-sw #shop-cart-sidebar a.remove::after,
body.eme-sw #shop-cart-sidebar .remove::after,
body.eme-sw #shop-cart-sidebar .remove_from_cart_button::after,
body.eme-sw .cart-sidebar a.remove::after,
body.eme-sw .cart-sidebar .remove::after,
body.eme-sw .cart-sidebar .remove_from_cart_button::after,
body.eme-sw .cart-sidebar-content a.remove::after,
body.eme-sw .cart-sidebar-content .remove::after,
body.eme-sw .cart-sidebar-content .remove_from_cart_button::after,
body.eme-sw .woostify-cart-sidebar a.remove::after,
body.eme-sw .woostify-cart-sidebar .remove::after,
body.eme-sw .woostify-cart-sidebar .remove_from_cart_button::after,
body.eme-sw .woostify-sidebar-cart a.remove::after,
body.eme-sw .woostify-sidebar-cart .remove::after,
body.eme-sw .woostify-sidebar-cart .remove_from_cart_button::after,
body.eme-sw .site-header-cart-side a.remove::after,
body.eme-sw .site-header-cart-side .remove::after,
body.eme-sw .site-header-cart-side .remove_from_cart_button::after,
body.eme-sw .widget_shopping_cart_content a.remove::after,
body.eme-sw .widget_shopping_cart_content .remove::after,
body.eme-sw .widget_shopping_cart_content .remove_from_cart_button::after{
  display:none!important;
  content:none!important;
}

@media (max-width:760px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding:20px 16px 22px!important;
  }

  body.eme-sw-product-page .eme-related-head{
    align-items:center!important;
    margin-bottom:14px!important;
  }

  body.eme-sw-product-page .eme-related-head h2{
    font-size:30px!important;
  }

  body.eme-sw-product-page .eme-related-nav{
    display:flex!important;
    gap:8px!important;
  }

  body.eme-sw-product-page .eme-related-arrow{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    font-size:24px!important;
  }

  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 12px) / 2)!important;
    gap:12px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
  }

  body.eme-sw-product-page .eme-related-card{
    padding:12px!important;
    border-radius:18px!important;
  }

  body.eme-sw-product-page .eme-related-media{
    aspect-ratio:1 / 1!important;
    border-radius:14px!important;
  }

  body.eme-sw-product-page .eme-related-image{
    padding:8px!important;
  }

  body.eme-sw-product-page .eme-related-badge{
    top:10px!important;
    left:10px!important;
    min-height:30px!important;
    padding:6px 11px!important;
    font-size:11px!important;
  }

  body.eme-sw-product-page .eme-related-body{
    padding:10px 2px 0!important;
  }

  body.eme-sw-product-page .eme-related-title{
    font-size:14px!important;
    line-height:1.16!important;
    -webkit-line-clamp:4!important;
    min-height:4.65em!important;
    margin-bottom:10px!important;
    letter-spacing:-.02em!important;
  }

  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:22px!important;
    margin-bottom:10px!important;
  }

  body.eme-sw-product-page .eme-related-shipping{
    font-size:12px!important;
    gap:5px!important;
  }

  body.eme-sw-product-page .eme-related-add,
  body.eme-sw-product-page .eme-related-card a.eme-related-add,
  body.eme-sw-product-page .eme-related-card .button.eme-related-add,
  body.eme-sw-product-page .eme-related-card a.add_to_cart_button.eme-related-add,
  body.eme-sw-product-page .eme-related-card a.ajax_add_to_cart.eme-related-add{
    min-height:40px!important;
    margin-top:12px!important;
    padding:0 8px!important;
    border-radius:13px!important;
    font-size:11px!important;
    letter-spacing:0!important;
  }
}

@media (max-width:380px){
  body.eme-sw-product-page .eme-related-products.eme-related-carousel-shell{
    padding-left:12px!important;
    padding-right:12px!important;
  }

  body.eme-sw-product-page .eme-related-track{
    grid-auto-columns:calc((100% - 10px) / 2)!important;
    gap:10px!important;
  }

  body.eme-sw-product-page .eme-related-title{
    font-size:13px!important;
  }

  body.eme-sw-product-page .eme-related-price,
  body.eme-sw-product-page .eme-related-price .amount{
    font-size:20px!important;
  }
}

/* === EME V126 FINAL: checkout centrado, dos columnas originales y cupón solicitado === */
html body.eme-sw-checkout-page .eme-checkout-shell-v111,
html body.eme-sw-checkout-page .eme-checkout-shell-v112,
html body.eme-sw-checkout-page .eme-checkout-shell-v113,
html body.eme-sw-checkout-page .eme-checkout-shell-v115,
html body.eme-sw-checkout-page .eme-checkout-shell-v116{
  width:min(1456px, calc(100vw - 80px))!important;
  max-width:1456px!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  position:relative!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
}

html body.eme-sw-checkout-page .eme-checkout-top-v111{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  width:100%!important;
  max-width:1456px!important;
  margin:0 auto 18px!important;
}

html body.eme-sw-checkout-page .eme-checkout-brand-v111{
  display:none!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce{
  width:100%!important;
  max-width:1456px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:visible!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
  display:grid!important;
  grid-template-columns:1fr 544px!important;
  gap:80px!important;
  justify-content:center!important;
  align-items:start!important;
  width:100%!important;
  max-width:1456px!important;
  margin:0 auto!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details{
  grid-column:1!important;
  width:100%!important;
  max-width:832px!important;
  min-width:0!important;
  margin:0!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2{
  width:100%!important;
  max-width:832px!important;
  padding:28px 34px!important;
  box-sizing:border-box!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
  grid-column:2!important;
  width:544px!important;
  max-width:544px!important;
  min-width:0!important;
  justify-self:start!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading{
  padding:28px 28px 0!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
  padding:14px 28px 28px!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item{
  grid-template-columns:minmax(0,1fr) 112px!important;
  gap:14px!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item td.product-total,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review table.shop_table tr.cart_item td.product-total .amount,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .product-total .amount{
  width:112px!important;
  min-width:112px!important;
  max-width:112px!important;
  text-align:right!important;
  white-space:nowrap!important;
  overflow:visible!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr{
  grid-template-columns:minmax(0,1fr) 128px!important;
  gap:14px!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr td,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr td .amount{
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  text-align:right!important;
  white-space:nowrap!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review tfoot tr.shipping{
  grid-template-columns:82px minmax(0,1fr)!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review .shipping li label{
  white-space:normal!important;
  overflow-wrap:break-word!important;
}

html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle{
  width:100%!important;
  max-width:832px!important;
  margin:0 auto 16px!important;
  padding:0!important;
  transform:none!important;
}

html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  min-height:34px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#6d6d68!important;
  font:800 13px/1.25 Inter,system-ui,sans-serif!important;
  overflow:visible!important;
}

html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info:before{
  content:""!important;
  display:inline-flex!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  border-radius:999px!important;
  background:#f2f2ee!important;
  border:1px solid #e2e2dc!important;
}

html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info:after{
  content:"¿tenes un cupon de descuento?"!important;
  order:1!important;
  color:#6d6d68!important;
  font:800 13px/1.25 Inter,system-ui,sans-serif!important;
}

html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .showcoupon{
  order:2!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:0!important;
  width:auto!important;
  margin:0 0 0 2px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#111!important;
  font:900 13px/1.25 Inter,system-ui,sans-serif!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}

html body.eme-sw-checkout-page form.checkout_coupon{
  width:100%!important;
  max-width:520px!important;
  margin:-6px auto 18px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

@media (max-width:1500px){
  html body.eme-sw-checkout-page .eme-checkout-shell-v111,
  html body.eme-sw-checkout-page .eme-checkout-shell-v112,
  html body.eme-sw-checkout-page .eme-checkout-shell-v113,
  html body.eme-sw-checkout-page .eme-checkout-shell-v115,
  html body.eme-sw-checkout-page .eme-checkout-shell-v116{
    width:min(1380px, calc(100vw - 56px))!important;
    max-width:1380px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 .woocommerce,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    max-width:1356px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    grid-template-columns:1fr 520px!important;
    gap:56px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2,
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle{
    max-width:780px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review{
    width:520px!important;
    max-width:520px!important;
  }
}

@media (max-width:1180px){
  html body.eme-sw-checkout-page .eme-checkout-shell-v111,
  html body.eme-sw-checkout-page .eme-checkout-shell-v112,
  html body.eme-sw-checkout-page .eme-checkout-shell-v113,
  html body.eme-sw-checkout-page .eme-checkout-shell-v115,
  html body.eme-sw-checkout-page .eme-checkout-shell-v116{
    width:calc(100vw - 28px)!important;
    max-width:none!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 form.checkout{
    display:flex!important;
    flex-direction:column!important;
    max-width:100%!important;
    gap:18px!important;
  }

  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading,
  html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review,
  html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle{
    width:100%!important;
    max-width:100%!important;
  }
}

/* === EME V128: carrito lateral mobile con acciones visibles === */
@media (max-width: 767px){
  html body.eme-sw #shop-cart-sidebar,
  html body.eme-sw .shop-cart-sidebar,
  html body.eme-sw .cart-sidebar,
  html body.eme-sw .site-dialog.cart-sidebar,
  html body.eme-sw .woostify-cart-sidebar,
  html body.eme-sw .woostify-sidebar-cart,
  html body.eme-sw .site-header-cart-side{
    height:100dvh!important;
    max-height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body.eme-sw #shop-cart-sidebar .cart-sidebar-content,
  html body.eme-sw .cart-sidebar .cart-sidebar-content,
  html body.eme-sw .woostify-cart-sidebar .cart-sidebar-content,
  html body.eme-sw .woostify-sidebar-cart .cart-sidebar-content,
  html body.eme-sw .site-header-cart-side .cart-sidebar-content{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body.eme-sw #shop-cart-sidebar .widget_shopping_cart_content,
  html body.eme-sw .cart-sidebar .widget_shopping_cart_content,
  html body.eme-sw .woostify-cart-sidebar .widget_shopping_cart_content,
  html body.eme-sw .woostify-sidebar-cart .widget_shopping_cart_content,
  html body.eme-sw .site-header-cart-side .widget_shopping_cart_content{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:hidden!important;
    padding-bottom:max(12px, env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
  }

  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart,
  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart.eme-mini-cart-list,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart.eme-mini-cart-list,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart.eme-mini-cart-list{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    margin:0!important;
    padding:0 0 10px!important;
  }

  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__total,
  html body.eme-sw #shop-cart-sidebar .eme-mini-cart-total,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart__total,
  html body.eme-sw .cart-sidebar .eme-mini-cart-total,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__total,
  html body.eme-sw .woostify-cart-sidebar .eme-mini-cart-total,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__total,
  html body.eme-sw .woostify-sidebar-cart .eme-mini-cart-total,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart__total,
  html body.eme-sw .site-header-cart-side .eme-mini-cart-total,
  html body.eme-sw #shop-cart-sidebar .eme-sw-shipping-progress,
  html body.eme-sw .cart-sidebar .eme-sw-shipping-progress,
  html body.eme-sw .woostify-cart-sidebar .eme-sw-shipping-progress,
  html body.eme-sw .woostify-sidebar-cart .eme-sw-shipping-progress,
  html body.eme-sw .site-header-cart-side .eme-sw-shipping-progress,
  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw #shop-cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw .cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw .woostify-cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__buttons,
  html body.eme-sw .woostify-sidebar-cart .eme-mini-cart-buttons,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart__buttons,
  html body.eme-sw .site-header-cart-side .eme-mini-cart-buttons{
    flex:0 0 auto!important;
    position:relative!important;
    bottom:auto!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    z-index:5!important;
  }

  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw #shop-cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw .cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__buttons,
  html body.eme-sw .woostify-cart-sidebar .eme-mini-cart-buttons,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__buttons,
  html body.eme-sw .woostify-sidebar-cart .eme-mini-cart-buttons,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart__buttons,
  html body.eme-sw .site-header-cart-side .eme-mini-cart-buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:8px 0 0!important;
    padding:0!important;
  }

  html body.eme-sw #shop-cart-sidebar .woocommerce-mini-cart__buttons a,
  html body.eme-sw #shop-cart-sidebar .eme-mini-cart-buttons a,
  html body.eme-sw .cart-sidebar .woocommerce-mini-cart__buttons a,
  html body.eme-sw .cart-sidebar .eme-mini-cart-buttons a,
  html body.eme-sw .woostify-cart-sidebar .woocommerce-mini-cart__buttons a,
  html body.eme-sw .woostify-cart-sidebar .eme-mini-cart-buttons a,
  html body.eme-sw .woostify-sidebar-cart .woocommerce-mini-cart__buttons a,
  html body.eme-sw .woostify-sidebar-cart .eme-mini-cart-buttons a,
  html body.eme-sw .site-header-cart-side .woocommerce-mini-cart__buttons a,
  html body.eme-sw .site-header-cart-side .eme-mini-cart-buttons a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
  }
}

/* === FIXES: Centrado de cupon, fondos blancos, y ocultamiento de numeros === */
html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle {
    max-width: 100%!important;
    margin: 0 auto 16px!important;
}
html body.eme-sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info {
    justify-content: center!important;
}

/* Forzar fondo transparente en todo el formulario izquierdo/padre para quitar el "recuadro blanco del fondo" */
html body.eme-sw-checkout-page form.checkout,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111,
html body.eme-sw-checkout-page #customer_details,
html body.eme-sw-checkout-page #customer_details .col-1,
html body.eme-sw-checkout-page #customer_details .col-2 {
    background: transparent!important;
    box-shadow: none!important;
    border: none!important;
}

html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading {
    background: #fff!important;
    border-radius: 28px 28px 0 0!important;
    margin-bottom: 0!important;
    padding-bottom: 10px!important;
}
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review {
    background: #fff!important;
    border-radius: 0 0 28px 28px!important;
    margin-top: 0!important;
}
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details h3:before,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-1 h3:before,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #customer_details .col-2 h3:before,
html body.eme-sw-checkout-page .eme-checkout-wrap-v111 #order_review_heading:before {
    display: none!important;
    content: none!important;
}

/* ═══════════════════════════════════════════════
   V116: MINI-CART / CART — miniatura y fila estables
   Fuerza el layout correcto en CUALQUIER contenedor del cajón.
   La miniatura muestra solo la imagen; el nombre va en su columna
   (no se mete al costado de la imagen letra por letra).
   ═══════════════════════════════════════════════ */
html body.eme-sw .eme-mini-cart-item{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  float:none!important;
}
html body.eme-sw .eme-mini-cart-row{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
  float:none!important;
}
html body.eme-sw .eme-mini-cart-thumb{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  max-width:72px!important;
  padding:0!important;
  margin:0!important;
  background:#fafafa!important;
  border-radius:14px!important;
  overflow:hidden!important;
  float:none!important;
  text-decoration:none!important;
}
html body.eme-sw .eme-mini-cart-thumb img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  padding:6px!important;
  margin:0!important;
  border:0!important;
  float:none!important;
  position:static!important;
  box-sizing:border-box!important;
}
html body.eme-sw .eme-mini-cart-info{
  grid-column:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  float:none!important;
}
html body.eme-sw .eme-mini-cart-title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 8px!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-decoration:none!important;
}
html body.eme-sw .eme-mini-cart-meta{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  flex-wrap:wrap!important;
}
