/*
Theme Name: Blocksy Child - HARTEFAKTO
Template: blocksy
 Version: 4.19.28
*/

:root{--hf-black:#000;--hf-white:#fff;--hf-grey:#d0d0d0;--hf-max:1440px}
*,:before,:after{box-sizing:border-box}
html,body{margin:0;padding:0;background:#fff;color:#000;max-width:100%;overflow-x:hidden!important}
body{font-family:Arial,sans-serif;min-width:0}
html{overflow-x:hidden!important}
a{color:#000;text-decoration:none}
button,input,select,textarea{font:inherit;border-radius:0}

/* ONE visible header. Blocksy's native header is hidden; child header is authoritative. */
#header.ct-header,#main-container>#header,.ct-drawer-canvas{display:none!important}
.hf-chrome{display:block!important;background:#000;color:#fff;position:relative;z-index:3000}
.hf-header{min-height:72px!important;height:72px!important;width:100%!important;background:#000!important;color:#fff!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;padding:0 24px!important;margin:0!important;border:0!important;position:relative!important;z-index:3001!important;visibility:visible!important;opacity:1!important}
.hf-nav,.hf-actions{display:flex!important;align-items:center!important;gap:28px!important;min-width:0!important;visibility:visible!important;opacity:1!important}
.hf-nav a,.hf-actions a{display:inline-flex!important;align-items:center!important;color:#fff!important;background:transparent!important;font:900 12px/1 Arial Black,Arial,sans-serif!important;letter-spacing:.04em!important;text-transform:uppercase!important;visibility:visible!important;opacity:1!important}
.hf-nav a:hover,.hf-actions a:hover{color:#d0d0d0!important}
.hf-actions{justify-content:flex-end!important;gap:18px!important}
.hf-icon-button{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;cursor:pointer!important}
.hf-icon-button svg{width:21px;height:21px;display:block;color:#fff!important}
.hf-icon-button b:not([data-hf-cart-count]){display:none!important}
.hf-logo{display:flex;align-items:center;justify-content:center;color:#fff!important}
.hf-logo img{display:block;width:auto;height:42px;max-width:180px;object-fit:contain;filter:invert(1) grayscale(1)}
.hf-logo-text{font:900 22px/1 Arial Black,Arial,sans-serif;letter-spacing:-.04em;color:#fff}
.hf-menu{display:none;background:none;border:0;padding:0;color:#fff}
.hf-menu svg{width:24px;height:24px;display:block}
.hf-mobile{display:none}
.hf-search-panel{display:none;position:absolute;left:0;right:0;top:100%;z-index:3005;background:#fff;color:#000;border-bottom:1px solid #000;padding:14px 32px}
.hf-search-panel.is-open{display:block}
.hf-search-panel form{display:flex;gap:10px;max-width:var(--hf-max);margin:0 auto}
.hf-search-panel input[type=search]{flex:1;min-width:0;height:46px;border:0;border-bottom:1px solid #000;background:#fff;color:#000;padding:0;font:14px Courier New,monospace;outline:0}
.hf-search-panel button{height:46px;border:0;background:#000;color:#fff;padding:0 18px;font:900 10px Arial Black,Arial,sans-serif;cursor:pointer}

/* Never show Blocksy/Woo breadcrumbs, page-title chrome or duplicate Woo headings. */
.ct-breadcrumbs,.woocommerce-breadcrumb,.hero-section,.woocommerce-products-header{display:none!important}
body.woocommerce .entry-header,body.woocommerce-page .entry-header{display:none!important}
body.woocommerce .ct-container-full,body.woocommerce-page .ct-container-full{padding-top:0!important;margin-top:0!important}

/* HOME â€” BRUTALIST FULL-BLEED HERO */
.hf-home{margin:0!important;padding:0!important;background:#000!important;min-height:0!important;width:100%!important;max-width:none!important}
.hf-home-hero{display:block;width:100%!important;max-width:100%!important;box-sizing:border-box!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;line-height:0;background:#000!important;overflow:hidden}
.hf-home-hero img{display:block!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;object-fit:initial!important;object-position:center top!important;background:#000!important}

/* SHOP */
body.post-type-archive-product .site-main,body.tax-product_cat .site-main{margin:0!important;padding:0!important}
.hf-shop-shell{max-width:var(--hf-max);margin:0 auto;padding:10px 32px 80px}
.hf-shop-toolbar{display:flex;justify-content:flex-end;position:relative;margin:0 0 12px}
.hf-filter-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;height:42px!important;min-width:92px!important;padding:0 16px!important;background:rgba(255,255,255,.4)!important;border:1px solid rgba(0,0,0,.55)!important;color:#000!important;font:400 11px/1 Arial,sans-serif!important;letter-spacing:.02em!important;cursor:pointer!important;text-transform:none!important;border-radius:0!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hf-filter-toggle span{display:inline-flex;width:auto;height:auto;align-items:center;justify-content:center;border:0!important;font:900 13px/1 Arial,sans-serif!important}
.hf-filter-toggle[aria-expanded="true"] span{font-size:0!important}
.hf-filter-toggle[aria-expanded="true"] span:after{content:'âˆ’';font-size:13px}
.hf-filter{position:absolute;right:0;top:44px;z-index:1000;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:min(720px,90vw);padding:10px;background:#fff;border:1px solid #000}
.hf-filter[hidden]{display:none}
.hf-filter-link{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:0!important;background:#fff;color:#000;font:900 10px/1 Arial Black,Arial,sans-serif;letter-spacing:.03em;text-transform:uppercase}
.hf-filter-link:hover,.hf-filter-link.is-active{background:#000;color:#fff}.hf-filter-divider{width:1px;height:20px;background:#000;display:inline-block;margin:0 4px}
.hf-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.hf-shop-card{display:block;min-width:0}
.hf-shop-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain;background:#d0d0d0}
.hf-shop-card-info{padding:10px 0 0}
.hf-shop-card-title{font:900 14px/1.1 Arial Black,Arial,sans-serif;text-transform:uppercase}
.hf-shop-card-price{font:12px/1.2 Courier New,monospace;margin-top:5px}

/* PRODUCT */
.hf-product{max-width:var(--hf-max);margin:0 auto;padding:26px 32px 80px}
.hf-product-kicker{display:none!important}
.hf-product-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}.hf-product-gallery{grid-column:1;width:100%!important;max-width:100%!important}.hf-product-info{grid-column:1;width:min(40%,560px);margin-left:auto;padding-left:0}
.hf-carousel{position:relative;width:100%;overflow:hidden;background:#d0d0d0;touch-action:pan-y}
.hf-carousel-track{display:flex;width:100%;transition:transform .25s ease;will-change:transform}
.hf-carousel-slide{flex:0 0 100%;width:100%;margin:0;aspect-ratio:4/5;background:#d0d0d0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hf-carousel-image{display:block;width:100%!important;height:100%!important;object-fit:contain!important;background:#d0d0d0!important}
@media(max-width:820px){.hf-product-gallery,.hf-carousel,.hf-carousel-track,.hf-carousel-slide{width:100%!important;max-width:100%!important}.hf-carousel-image{width:100%!important;height:100%!important;object-fit:contain!important;background:#d0d0d0!important}.hf-product{width:100%!important;max-width:none!important}.hf-product-grid{width:100%!important}.hf-product-info{width:100%!important}}
.hf-product-info .variations select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.hf-variation-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.hf-variation-button{min-width:48px;height:42px;padding:0 14px;background:#fff;border:1px solid #000;color:#000;font:900 11px/1 Arial Black,Arial,sans-serif;cursor:pointer;text-transform:uppercase}
.hf-variation-button.is-selected,.hf-variation-button:hover{background:#000;color:#fff}
.hf-variation-button.is-disabled{opacity:.35;cursor:not-allowed;background:#fff;color:#000}

.hf-carousel-arrow,.hf-carousel-prev,.hf-carousel-next,.flex-direction-nav{display:none!important}
.hf-carousel-count{position:absolute;right:14px;bottom:12px;background:#fff;padding:5px 7px;font:11px Courier New,monospace}
.hf-product-info{position:sticky;top:90px;padding:5px 0}
.hf-product-index{font:11px/1 Courier New,monospace;display:block;margin-bottom:18px}
.hf-product-info .product_title{font:900 clamp(28px,3vw,48px)/.92 Arial Black,Arial,sans-serif;text-transform:uppercase;margin:0 0 16px}
.hf-product-info .price{font:13px Courier New,monospace;margin:0 0 24px}
.hf-product-info form.cart{margin:0}
.hf-product-info .variations{width:100%;border:0;margin:0 0 12px}
.hf-product-info .variations td{padding:7px 0;border:0}
.hf-product-info .variations label{font:900 11px Arial Black,Arial,sans-serif;text-transform:uppercase}
.hf-product-info select{width:100%;height:44px;border:1px solid #000;background:#fff;padding:0 10px}
.hf-product-info .single_add_to_cart_button{width:100%;height:48px;background:#000!important;color:#fff!important;border:1px solid #000!important;text-transform:uppercase;font:900 12px Arial Black,Arial,sans-serif;cursor:pointer}
.hf-product-accordions{margin-top:30px;border-top:1px solid #000}
.hf-product-accordions details{border-bottom:1px solid #000}
.hf-product-accordions summary{list-style:none;cursor:pointer;padding:14px 0;font:900 11px Arial Black,Arial,sans-serif;text-transform:uppercase;display:flex;justify-content:space-between}
.hf-product-accordions summary::-webkit-details-marker{display:none}
.hf-product-accordions details>div{padding:0 0 16px;font:12px/1.45 Arial,sans-serif}
.hf-size-table{overflow:auto}.hf-size-table table{width:100%;border-collapse:collapse;font:10px Courier New,monospace}.hf-size-table th,.hf-size-table td{padding:7px 4px;border-bottom:1px solid #000;text-align:left}

/* CART â€” editorial minimal: generous space, no boxed WooCommerce chrome. */
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .woocommerce *{box-shadow:none!important}
body.woocommerce-cart .woocommerce{max-width:var(--hf-max);margin:0 auto!important;padding:28px 32px 72px!important;background:#fff!important;border:0!important;outline:0!important}
body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals,body.woocommerce-cart .cart_totals{width:100%!important;float:none!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;background:#fff!important}
body.woocommerce-cart .wc-empty-cart-message .woocommerce-info{border:0!important;background:transparent!important;box-shadow:none!important;padding:34px 0!important;font:12px/1.4 Courier New,monospace;text-transform:uppercase}
body.woocommerce-cart .cart_totals{margin-top:42px!important}
body.woocommerce-cart .cart_totals h2{display:none!important}
body.woocommerce-cart .shop_table,body.woocommerce-cart .shop_table *{border:0!important;outline:0!important}
body.woocommerce-cart .shop_table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;margin:0!important}
body.woocommerce-cart .shop_table thead{border:0!important}
body.woocommerce-cart .shop_table th{padding:0 0 12px!important;text-align:left!important;font:900 9px/1 Arial Black,Arial,sans-serif!important;letter-spacing:.08em;text-transform:uppercase}
body.woocommerce-cart .shop_table td{padding:18px 12px 18px 0!important;vertical-align:middle}
body.woocommerce-cart .shop_table tbody tr{border-top:1px solid #e5e5e5!important}
body.woocommerce-cart .shop_table .product-thumbnail{width:104px!important}
body.woocommerce-cart .shop_table .product-thumbnail img{display:block;width:88px!important;height:110px!important;object-fit:contain!important;object-position:center!important;background:#d0d0d0!important}
body.woocommerce-cart .product-name a{font:900 13px/1.1 Arial Black,Arial,sans-serif!important;text-transform:uppercase;letter-spacing:-.01em}
body.woocommerce-cart .product-name dl{font:8px/1.3 Courier New,monospace!important;font-weight:400!important;color:#777!important;margin:6px 0 0!important}
body.woocommerce-cart .product-price,body.woocommerce-cart .product-subtotal{font:11px Courier New,monospace!important;white-space:nowrap}
body.woocommerce-cart .quantity{display:inline-flex!important;align-items:center;width:max-content!important;border:0!important;background:#f4f4f4!important}
body.woocommerce-cart .quantity input.qty{width:34px!important;height:30px!important;border:0!important;background:transparent!important;text-align:center;padding:0!important;font:11px Courier New,monospace!important}
body.woocommerce-cart .hf-qty-minus,body.woocommerce-cart .hf-qty-plus{width:28px!important;height:30px!important;border:0!important;background:transparent!important;cursor:pointer;font:12px Arial,sans-serif}
body.woocommerce-cart .product-remove a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font:16px/1 Arial,sans-serif}
body.woocommerce-cart .coupon,body.woocommerce-cart .actions{display:none!important}
body.woocommerce-cart .cart-subtotal th,body.woocommerce-cart .cart-subtotal td{padding:7px 0!important;border:0!important;font:11px Courier New,monospace!important}
body.woocommerce-cart .cart-subtotal td{text-align:right}
body.woocommerce-cart .wc-proceed-to-checkout{margin:14px 0 0!important;padding:0!important}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;width:100%!important;min-height:52px!important;background:#000!important;color:#fff!important;border:0!important;padding:0 18px!important;text-align:center;text-transform:uppercase;font:900 11px Arial Black,Arial,sans-serif!important;letter-spacing:.05em}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:#222!important}
@media(max-width:820px){
 body.woocommerce-cart .woocommerce{padding:18px 14px 54px!important}
 body.woocommerce-cart .shop_table thead{display:none!important}
 body.woocommerce-cart .shop_table td{padding:14px 6px 14px 0!important}
 body.woocommerce-cart .shop_table .product-thumbnail{width:76px!important}
 body.woocommerce-cart .shop_table .product-thumbnail img{width:64px!important;height:80px!important}
 body.woocommerce-cart .product-name a{font-size:11px!important}
 body.woocommerce-cart .product-price,body.woocommerce-cart .product-subtotal{font-size:10px!important}
 body.woocommerce-cart .quantity input.qty{width:28px!important}
 body.woocommerce-cart .hf-qty-minus,body.woocommerce-cart .hf-qty-plus{width:24px!important}
 body.woocommerce-cart .cart_totals{margin-top:30px!important}
}

/* MOBILE */
@media(max-width:820px){
 .hf-header{min-height:64px!important;height:64px!important;grid-template-columns:44px minmax(0,1fr) 44px!important;padding:0 10px!important;margin:0!important}
 .hf-nav{display:none!important}.hf-actions{display:flex!important;justify-content:flex-end!important;gap:2px!important}
 .hf-menu{display:flex!important;visibility:visible!important;opacity:1!important;width:44px!important;height:44px!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;background:transparent!important;border:0!important;padding:0!important;color:#fff!important;z-index:3002!important}
 .hf-menu i{display:none!important}.hf-menu svg{width:24px!important;height:24px!important}
 .hf-logo img{height:34px;max-width:190px}.hf-logo-text{font-size:24px}
 .hf-icon-button{width:44px!important;height:44px!important}.hf-icon-button svg{width:21px!important;height:21px!important}.hf-icon-button b{right:1px;top:2px;min-width:12px;height:12px;font-size:8px}
 .hf-search-panel{position:fixed;top:74px;left:0;right:0;padding:12px 14px;z-index:100000}.hf-search-panel form{gap:8px}.hf-search-panel input[type=search],.hf-search-panel button{height:44px}
 .hf-mobile{display:block!important;position:fixed!important;inset:0!important;background:#000!important;color:#fff!important;z-index:99999!important;transform:translateX(-100%)!important;transition:transform .18s cubic-bezier(.22,.61,.36,1)!important;padding:74px 18px 30px;overflow:auto}
 .hf-mobile.is-open{transform:translateX(0)!important}
 .hf-mobile-links a{display:flex!important;color:#fff!important;visibility:visible!important;opacity:1!important}
 .hf-mobile-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:42px}
 .hf-mobile-logo{height:50px;width:auto;object-fit:contain;filter:invert(1) grayscale(1)}
 .hf-mobile-close{background:none;color:#fff;border:0;padding:12px 0;font:300 10px Arial,sans-serif;letter-spacing:.08em;cursor:pointer}
 .hf-mobile-links{display:flex;flex-direction:column}.hf-mobile-links a{color:#fff;font:900 clamp(28px,8vw,38px)/.95 Arial Black,Arial,sans-serif;padding:15px 0;border-bottom:1px solid #333}.hf-mobile-links small{display:none!important}
 .hf-shop-shell{padding:18px 14px 90px;max-width:100%;overflow:clip}.hf-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hf-shop-card-info{padding:7px 0}.hf-shop-card-title{font-size:11px;line-height:1.08;overflow-wrap:anywhere}.hf-shop-card-price{font-size:10px}
 .hf-product{padding:0 14px 80px;max-width:100%;overflow:clip}.hf-product-grid{display:block;width:100%;max-width:100%}.hf-product-gallery{width:calc(100% + 28px)!important;max-width:none!important;margin-left:-14px!important;padding:0!important}.hf-carousel{width:100%!important;max-width:none!important}.hf-carousel-track{width:100%!important;max-width:none!important}.hf-carousel-slide{aspect-ratio:4/5;width:100%!important;max-width:none!important}.hf-product-info{position:static;padding:18px 0}.hf-product-info .product_title{font-size:28px}.hf-product-info .price{margin-bottom:14px}.hf-product-info .variations{margin-bottom:6px}.hf-product-info .variations td{padding:3px 0}.hf-variation-buttons{gap:5px;margin:0 0 6px}.hf-variation-button{height:46px;min-width:46px;padding:0 12px}.hf-product-info .single_add_to_cart_button{min-height:48px}
 body.woocommerce-cart .woocommerce{padding:14px!important;margin:0!important;max-width:100%!important}.woocommerce-cart .shop_table thead{display:none!important}
 body.woocommerce-cart .shop_table,body.woocommerce-cart .shop_table tbody,body.woocommerce-cart .shop_table tr{display:block!important;width:100%!important}
 body.woocommerce-cart .shop_table tr.cart_item{display:grid!important;grid-template-columns:84px minmax(0,1fr) 60px;gap:10px;align-items:center;padding:14px 0}
 body.woocommerce-cart .shop_table td{border:0!important;padding:0!important}.woocommerce-cart .shop_table .product-thumbnail{grid-column:1;grid-row:1 / span 3}.woocommerce-cart .shop_table .product-thumbnail img{display:block;width:84px!important;height:105px!important;object-fit:contain!important;object-position:center!important;background:#d0d0d0!important}.woocommerce-cart .shop_table .product-name{grid-column:2;grid-row:1;min-width:0}.woocommerce-cart .shop_table .product-name a{overflow-wrap:anywhere}.woocommerce-cart .shop_table .product-price{grid-column:3;grid-row:1;text-align:right}.woocommerce-cart .shop_table .product-quantity{grid-column:2;grid-row:2}.woocommerce-cart .shop_table .product-subtotal{display:none!important}.woocommerce-cart .shop_table .product-remove{grid-column:3;grid-row:2;text-align:right}
 body.woocommerce-cart .cart_totals{margin-top:18px!important;padding-bottom:78px!important}.woocommerce-cart .wc-proceed-to-checkout{position:static;left:auto;right:auto;bottom:auto;z-index:auto;background:transparent;padding:0;margin:18px 0 0}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{padding:0 18px}
 .hf-filter-toggle{bottom:14px!important;height:42px!important;min-width:92px!important;border:1px solid rgba(0,0,0,.55)!important;background:rgba(255,255,255,.4)!important;border-radius:0!important;padding:0 16px!important;font:400 11px Arial,sans-serif!important;letter-spacing:.02em!important;text-transform:none!important;gap:8px!important;box-shadow:none!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
 .hf-filter-toggle:before{display:none!important}
 .hf-filter-toggle svg{width:16px!important;height:16px!important;flex:0 0 16px}
 .hf-filter-toggle span{font-size:11px!important;font-weight:400!important}.hf-filter{position:fixed!important;left:14px!important;right:14px!important;bottom:68px!important;top:auto!important;max-width:none!important;justify-content:flex-start!important;padding:12px!important;border:1px solid rgba(0,0,0,.25)!important;box-shadow:0 8px 24px rgba(0,0,0,.08)!important;background:rgba(255,255,255,.98)!important}
 .hf-search-panel.is-open{display:block!important}
 .hf-cart-drawer{width:100%!important}
}

/* Final alignment + bottom floating filter/sort + slide-over bag. */
.hf-shop-shell,.hf-product{width:100%;max-width:var(--hf-max);margin-left:auto;margin-right:auto}
.hf-shop-shell{padding-left:32px;padding-right:32px}
.hf-product{padding-left:32px;padding-right:32px;width:100%;max-width:none;overflow-x:hidden} .hf-product-grid{width:100%!important} .hf-product-gallery{width:100%!important;max-width:100%!important}
.hf-product-gallery{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
.hf-product-kicker,.hf-product-index{display:none!important}
.hf-filter-toggle{position:fixed!important;left:50%!important;bottom:18px!important;top:auto!important;transform:translateX(-50%)!important;z-index:100001!important;margin:0!important;border-radius:0!important;background:rgba(255,255,255,.94)!important;border:1px solid #000!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);min-width:132px!important}.hf-filter-toggle span:after{content:'FILTROS Â· ORDENAR'!important}.hf-filter-toggle[aria-expanded="true"] span:after{content:'FILTROS Â· ORDENAR âˆ’'!important;font-size:11px!important}
.hf-shop-toolbar{justify-content:center!important;margin:0 0 18px!important;min-height:34px}
.hf-product-info .variations td{padding-top:4px;padding-bottom:4px}
.hf-product-accordions{margin-top:20px}
.hf-product-accordions details>div{padding-bottom:14px}
.hf-product-description p:first-child{margin-top:0}
.hf-product-description p:last-child{margin-bottom:0}
.hf-product-info .single_add_to_cart_button.hf-loading{opacity:1;cursor:wait}
.hf-product-info .single_add_to_cart_button.hf-added{background:#000!important;color:#fff!important}

.hf-cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(360px,90vw);background:#fff;color:#000;z-index:100010;display:flex!important;flex-direction:column;transform:translateX(105%);transition:transform .25s cubic-bezier(.22,.61,.36,1);box-shadow:none;border-left:0!important}
.hf-cart-drawer.is-open{transform:translateX(0)}
.hf-cart-drawer-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:0;font:900 11px Arial Black,Arial,sans-serif}
.hf-cart-close{border:0;background:#fff;color:#000;padding:8px 0;cursor:pointer;font:900 9px Arial Black,Arial,sans-serif}
.hf-cart-drawer-body{flex:1;overflow:auto;padding:12px 16px}
.hf-cart-drawer .woocommerce-mini-cart{list-style:none;margin:0;padding:0}
.hf-cart-drawer .woocommerce-mini-cart-item{position:relative;min-height:76px;padding:0 24px 12px 62px;margin:0 0 12px;border:0!important}
.hf-cart-drawer .woocommerce-mini-cart-item img{position:absolute;left:0;top:0;width:50px;height:62.5px;object-fit:contain;object-position:center;background:#d0d0d0}
.hf-cart-drawer .woocommerce-mini-cart-item a:not(.remove){font:900 10px/1.15 Arial Black,Arial,sans-serif;text-transform:uppercase;color:#000}
.hf-cart-drawer .woocommerce-mini-cart-item .quantity{display:block;margin-top:5px;font:10px Courier New,monospace}
.hf-cart-drawer .remove{position:absolute;right:0;top:0;color:#000!important;font:10px Arial,sans-serif;text-decoration:none}
.hf-cart-drawer .woocommerce-mini-cart__total{margin:6px 0 12px;padding-top:10px;border-top:1px solid #000;font:11px Courier New,monospace}
.hf-cart-drawer .woocommerce-mini-cart__buttons{display:none!important}
.hf-cart-drawer-checkout{display:block;margin:0;padding:13px 14px;background:#000;color:#fff!important;text-align:center;font:900 10px Arial Black,Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em} .hf-cart-drawer-head{height:50px;padding:0 14px} .hf-cart-drawer-body{padding:10px 14px}

@media(max-width:820px){
 .hf-shop-shell{padding-left:14px;padding-right:14px}
 .hf-product{padding-left:0;padding-right:0}
 .hf-product-info{padding-left:14px;padding-right:14px}
 .hf-shop-toolbar{margin-bottom:12px!important}
 .hf-cart-drawer{width:100%}
 .hf-cart-drawer-head{height:58px;padding:0 14px}
 .hf-cart-drawer-body{padding:16px 14px}
 .hf-cart-drawer-checkout{padding:16px 14px}
 .hf-filter-toggle svg{width:16px;height:16px;display:block}
}

/* GLOBAL MOBILE SAFETY + CHECKOUT */
html,body{max-width:100%;overflow-x:hidden!important}
.hf-header{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;position:relative!important;inset-inline:auto!important;transform:none!important}
.single-product .hf-product{width:100%!important;max-width:none!important;padding-left:32px!important;padding-right:32px!important}
.single-product .hf-product-gallery{position:relative!important;left:auto!important;transform:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
.single-product .hf-carousel{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
.single-product .hf-carousel-track,.single-product .hf-carousel-slide{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.single-product .hf-carousel-image{width:100%!important;max-width:none!important}
.hf-shop-card,.hf-shop-card:visited,.hf-shop-card:hover,.hf-shop-card:focus,.hf-shop-card:active,
.hf-shop-card-title,.hf-shop-card-title:visited,.hf-shop-card-title:hover,.hf-shop-card-title:focus,
.hf-shop-card-price,.hf-shop-card-price:visited,.hf-shop-card-price:hover,.hf-shop-card-price:focus{color:#000!important;text-decoration:none!important}
.hf-shop-card *{color:#000!important}.hf-shop-card:hover *,.hf-shop-card:focus *,.hf-shop-card:active *,.hf-shop-card:visited *{color:#000!important}.hf-filter-link:hover,.hf-filter-link:focus,.hf-filter-link:active,.hf-filter-link:visited{color:#000}.hf-filter-link.is-active:hover{color:#fff!important}
/* FINAL FILTER OVERLAY: button sits on product grid; panel opens above it. */
body.post-type-archive-product .hf-shop-shell{position:relative!important;padding-top:0!important}
body.post-type-archive-product .hf-shop-toolbar{position:absolute!important;left:0!important;right:0!important;top:0!important;height:0!important;margin:0!important;padding:0!important;z-index:100002!important;pointer-events:none!important}
body.post-type-archive-product .hf-filter-toggle{position:absolute!important;left:50%!important;top:8px!important;bottom:auto!important;transform:translateX(-50%)!important;z-index:100003!important;pointer-events:auto!important}
body.post-type-archive-product .hf-filter{position:absolute!important;left:50%!important;right:auto!important;top:8px!important;transform:translate(-50%,calc(-100% - 10px))!important;z-index:100004!important;max-width:min(720px,calc(100vw - 28px))!important;pointer-events:auto!important}
@media(max-width:820px){body.post-type-archive-product .hf-shop-shell{padding-top:0!important}body.post-type-archive-product .hf-shop-toolbar{top:0!important}body.post-type-archive-product .hf-filter-toggle{top:8px!important;bottom:auto!important}body.post-type-archive-product .hf-filter{left:14px!important;right:14px!important;top:8px!important;transform:translateY(calc(-100% - 10px))!important;max-width:none!important;width:auto!important}}

.hf-cart-close{font:300 28px/1 Arial,sans-serif!important;width:28px;height:28px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.hf-cart-drawer{border-left:0!important;box-shadow:none!important}
.hf-cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.16);z-index:99998;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease-out,visibility 0s linear .25s}
.hf-cart-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .25s ease-out}
.hf-cart-drawer{z-index:100010!important}
.hf-infinite-sentinel{height:1px;width:100%;display:block}
.hf-infinite-loading{padding:24px 0;text-align:center;font:10px Courier New,monospace;text-transform:uppercase}
@media(max-width:820px){
  .hf-header{width:100%!important;max-width:100%!important;left:auto!important;transform:none!important;margin:0!important}
 .single-product .hf-product{padding-left:0!important;padding-right:0!important}
  .single-product .hf-product-gallery{width:100%!important;max-width:100%!important;margin-left:0!important}
 .single-product .hf-product-info{padding-left:14px!important;padding-right:14px!important}
 .hf-cart-drawer{width:100%!important}
}.hf-header{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;left:auto!important;transform:none!important;margin-left:0!important;margin-right:0!important}.hf-product-gallery{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding:0!important}.hf-product-gallery,.hf-carousel,.hf-carousel-track,.hf-carousel-slide{box-sizing:border-box!important}.hf-shop-card-title,.hf-shop-card-price,.hf-shop-card-title a,.hf-shop-card-price a{color:#000!important}.hf-shop-card:hover .hf-shop-card-title,.hf-shop-card:hover .hf-shop-card-price,.hf-shop-card:focus .hf-shop-card-title,.hf-shop-card:focus .hf-shop-card-price{color:#000!important}.hf-shop-card:visited,.hf-shop-card:active{color:#000!important}.hf-cart-drawer a,.hf-cart-drawer a:hover,.hf-cart-drawer a:focus,.hf-cart-drawer a:active,.hf-cart-drawer a:visited{color:#000}.hf-cart-close{font-size:24px!important;font-weight:300!important;line-height:1!important;width:28px;height:28px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;display:flex!important;align-items:center;justify-content:center}.hf-infinite-sentinel{height:1px;width:100%}.hf-infinite-status{display:none}.hf-cart-drawer .variation{font:7px/1.05 Courier New,monospace!important;margin:3px 0 0!important;letter-spacing:-.03em}.hf-cart-drawer .variation dt,.hf-cart-drawer .variation dd{display:inline;margin:0;font-size:7px!important;line-height:1.05!important}.hf-cart-drawer .variation dd+dt:before{content:' · '}.hf-cart-drawer .woocommerce-mini-cart-item .quantity{font:10px Courier New,monospace}.hf-cart-drawer .woocommerce-mini-cart-item img{width:50px;height:66.67px}.hf-cart-drawer .woocommerce-mini-cart__total{border-top:1px solid #000}.hf-cart-drawer-checkout{position:static}
img,video,iframe,svg{max-width:100%;height:auto}
.hf-product img,.hf-shop-card img{max-width:100%}
.hf-page,.hf-page-shell,.hf-page-content{width:100%;max-width:100%;min-width:0;margin:0;padding:0}
body.woocommerce-checkout .site-main{margin:0!important;padding:0!important;max-width:100%!important;overflow-x:hidden!important}
body.woocommerce-checkout .woocommerce{width:100%;max-width:var(--hf-max);margin:0 auto;padding:32px;background:#fff;color:#000}
body.woocommerce-checkout form.checkout{width:100%;max-width:none;margin:0}
body.woocommerce-checkout .col2-set{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:48px;margin:0}
body.woocommerce-checkout .col-1,body.woocommerce-checkout .col-2{width:100%;float:none}
body.woocommerce-checkout .form-row{margin:0 0 14px;padding:0;width:100%}
body.woocommerce-checkout label{font:400 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#000}
body.woocommerce-checkout input.input-text,body.woocommerce-checkout select,body.woocommerce-checkout textarea{width:100%;min-height:46px;border:0;border-bottom:1px solid #000;border-radius:0;background:#fff;padding:10px 0;color:#000;font:12px Arial,sans-serif;outline:0}
body.woocommerce-checkout .woocommerce-checkout-review-order{margin-top:0}
body.woocommerce-checkout #payment{background:#fff;border:0;border-radius:0}
body.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0;margin:0 0 18px}
body.woocommerce-checkout #payment div.payment_box{background:#f5f5f5;border-radius:0}
body.woocommerce-checkout #payment .place-order{padding:0!important;margin:0!important}
body.woocommerce-checkout #place_order{width:100%;min-height:50px;border:0;border-radius:0;background:#000;color:#fff;text-transform:uppercase;font:900 11px Arial Black,Arial,sans-serif;cursor:pointer}
body.woocommerce-checkout .woocommerce-NoticeGroup,body.woocommerce-checkout .woocommerce-error{width:100%;border:0;background:#fff;padding:0;margin:0 0 20px;font:11px/1.4 Courier New,monospace;color:#000}
@media(max-width:820px){
 body.woocommerce-checkout .woocommerce{padding:18px 14px 90px}
 body.woocommerce-checkout .col2-set{display:block}
 body.woocommerce-checkout .col-1,body.woocommerce-checkout .col-2{width:100%;margin:0 0 28px}
 body.woocommerce-checkout #order_review{width:100%;overflow:hidden}
}

/* HARTEFAKTO EDITORIAL â€” ACCOUNT / ABOUT / NEWS */
.hf-editorial-shell{width:100%;max-width:1440px;margin:0 auto;padding:0 32px 96px;color:#000;background:#fff}
.hf-editorial-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:24px;padding:42px 0 18px;border-bottom:2px solid #000;text-transform:uppercase}
.hf-editorial-head h1{margin:0;font:900 clamp(34px,5vw,76px)/.86 Arial Black,Arial,sans-serif;letter-spacing:-.055em}
.hf-index,.hf-meta,.hf-label{font:10px/1 Courier New,monospace;letter-spacing:.04em;text-transform:uppercase}.hf-meta{text-align:right}.hf-label{display:block;margin-bottom:22px}
.hf-account-content{padding-top:30px}.hf-account-content .woocommerce{max-width:none;margin:0}
.hf-account-content .woocommerce-MyAccount-navigation{width:220px;float:left;margin:0 40px 0 0}.hf-account-content .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:2px solid #000}.hf-account-content .woocommerce-MyAccount-navigation li{margin:0;padding:0;border-bottom:1px solid #000}
.hf-account-content .woocommerce-MyAccount-navigation a{display:block;padding:13px 10px;color:#000!important;font:900 11px/1 Arial Black,Arial,sans-serif;text-transform:uppercase;letter-spacing:.03em}.hf-account-content .woocommerce-MyAccount-navigation .is-active a,.hf-account-content .woocommerce-MyAccount-navigation a:hover,.hf-account-content .woocommerce-MyAccount-navigation a:focus{background:#000;color:#fff!important}
.hf-account-content .woocommerce-MyAccount-content{width:calc(100% - 260px);float:right;margin:0;font:12px/1.5 Arial,sans-serif}.hf-account-content .woocommerce-MyAccount-content h2,.hf-account-content .woocommerce-MyAccount-content h3{margin:0 0 22px;font:900 25px/.95 Arial Black,Arial,sans-serif;text-transform:uppercase;letter-spacing:-.03em}
.hf-account-content .woocommerce form{border:2px solid #000;padding:24px;background:#fff}.hf-account-content .woocommerce form .form-row{padding:0;margin:0 0 18px}.hf-account-content .woocommerce label{display:block;margin-bottom:7px;font:10px/1 Courier New,monospace;text-transform:uppercase}
.hf-account-content .woocommerce input.input-text,.hf-account-content .woocommerce select,.hf-account-content .woocommerce textarea{width:100%;min-height:44px;border:1px solid #000;border-radius:0;background:#fff;color:#000;padding:10px;font:12px Arial,sans-serif;box-shadow:none}.hf-account-content .woocommerce button.button,.hf-account-content .woocommerce a.button{border:0;border-radius:0;background:#000;color:#fff!important;padding:14px 18px;font:900 10px/1 Arial Black,Arial,sans-serif;text-transform:uppercase}
.hf-account-content .woocommerce table.shop_table{width:100%;border:2px solid #000;border-collapse:collapse;border-radius:0;font:11px/1.3 Courier New,monospace}.hf-account-content .woocommerce table.shop_table th{background:#000;color:#fff;border:0;padding:11px;text-transform:uppercase;font:900 10px/1 Arial Black,Arial,sans-serif}.hf-account-content .woocommerce table.shop_table td{border:0;border-bottom:1px solid #000;padding:13px 11px;color:#000}
.hf-account-content .woocommerce .woocommerce-info,.hf-account-content .woocommerce .woocommerce-message,.hf-account-content .woocommerce .woocommerce-error{border:2px solid #000;border-radius:0;background:#fff;color:#000;padding:16px}.hf-account-content .woocommerce .woocommerce-info:before,.hf-account-content .woocommerce .woocommerce-message:before,.hf-account-content .woocommerce .woocommerce-error:before{display:none}
.hf-about-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;border-bottom:2px solid #000}.hf-about-statement{min-height:58vh;padding:48px 48px 72px 0;border-right:2px solid #000}.hf-about-copy{max-width:900px;font:500 clamp(22px,3.1vw,48px)/.98 Arial,sans-serif;letter-spacing:-.035em}.hf-about-copy p{margin:0 0 1em}.hf-about-copy h2,.hf-about-copy h3{margin:1.5em 0 .5em;font:900 20px/.95 Arial Black,Arial,sans-serif;text-transform:uppercase}.hf-about-side{display:flex;flex-direction:column;justify-content:flex-end;padding:20px 0 30px 20px;font:900 16px/1 Arial Black,Arial,sans-serif}.hf-about-side div{padding:13px 0;border-bottom:1px solid #000}.hf-about-side div:first-child{border-top:1px solid #000}
.hf-news-feed{border-bottom:2px solid #000}.hf-news-item{border-bottom:1px solid #000}.hf-news-item:last-child{border-bottom:0}.hf-news-link{display:grid;grid-template-columns:120px minmax(0,1fr) 40px;gap:20px;align-items:center;min-height:110px;color:#000!important;text-decoration:none!important}.hf-news-date{font:10px/1 Courier New,monospace;text-transform:uppercase}.hf-news-link h2{margin:0;font:900 clamp(24px,4vw,58px)/.9 Arial Black,Arial,sans-serif;letter-spacing:-.045em;text-transform:uppercase;color:#000!important}.hf-news-arrow{text-align:right;font:20px/1 Arial,sans-serif}.hf-news-link:hover h2{text-decoration:underline;text-decoration-thickness:2px}

/* CART PAGE + DRAWER */
.hf-cart-page .hf-editorial-shell{padding-bottom:70px}.hf-cart-content .woocommerce{max-width:none;margin:0}.hf-cart-content table.shop_table{width:100%;border:0!important;border-collapse:collapse;border-radius:0!important;font:11px/1.3 Courier New,monospace}.hf-cart-content table.shop_table thead{background:#000;color:#fff}.hf-cart-content table.shop_table th{padding:12px 10px;border:0!important;color:#fff;font:900 9px/1 Arial Black,Arial,sans-serif;text-transform:uppercase}.hf-cart-content table.shop_table td{padding:18px 10px;border:0!important;border-bottom:1px solid #000!important;color:#000}.hf-cart-content .product-thumbnail img{width:76px!important;height:101px!important;object-fit:contain!important;background:#d0d0d0}.hf-cart-content .product-name a,.hf-cart-content .product-price,.hf-cart-content .product-subtotal{color:#000!important;font-weight:700}.hf-cart-content .product-remove a{color:#000!important;font:300 24px/1 Arial,sans-serif}.hf-cart-content .cart_totals{width:360px;max-width:100%;margin:34px 0 0 auto}.hf-cart-content .cart_totals h2{margin:0 0 14px;font:900 24px/.9 Arial Black,Arial,sans-serif;text-transform:uppercase}.hf-cart-content .cart_totals table.shop_table{border-top:2px solid #000!important}.hf-cart-content .cart_totals table.shop_table th,.hf-cart-content .cart_totals table.shop_table td{background:#fff!important;color:#000!important;border-bottom:1px solid #000!important;padding:12px 0!important}.hf-cart-content .wc-proceed-to-checkout a.checkout-button{display:block;width:100%;border:0;border-radius:0!important;background:#000!important;color:#fff!important;padding:17px;font:900 11px/1 Arial Black,Arial,sans-serif;text-transform:uppercase;text-align:center}.hf-cart-content .coupon,.hf-cart-content .actions{display:none!important}
.hf-cart-drawer{border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#000!important}.hf-cart-drawer-head{border-bottom:1px solid #000}.hf-cart-drawer-head strong{font:900 12px/1 Arial Black,Arial,sans-serif}.hf-cart-drawer .woocommerce-mini-cart-item{border-bottom:1px solid #d0d0d0!important;padding-bottom:16px!important;margin-bottom:16px!important;font:10px/1.3 Courier New,monospace}.hf-cart-drawer .woocommerce-mini-cart-item a:not(.remove){color:#000!important;font:900 11px/1.05 Arial Black,Arial,sans-serif;text-transform:uppercase}.hf-cart-drawer .woocommerce-mini-cart-item img{width:50px!important;height:66.67px!important;object-fit:contain!important;background:#d0d0d0!important}.hf-cart-drawer .woocommerce-mini-cart__total{border-top:1px solid #000!important;font:900 11px/1 Courier New,monospace}.hf-cart-drawer .woocommerce-mini-cart__buttons{display:none!important}.hf-cart-drawer-checkout{width:100%;flex:0 0 auto;border:0!important;border-radius:0!important;background:#000!important;color:#fff!important;text-transform:uppercase;text-decoration:none!important;font:900 11px/1 Arial Black,Arial,sans-serif!important;text-align:center}
.hf-cart-content .variation{margin:2px 0 0!important;font:7px/1.15 Courier New,monospace!important;letter-spacing:-.02em}
.hf-cart-content .variation dt,.hf-cart-content .variation dd{font-size:6px!important;line-height:1.05!important;margin:0!important}
/* HOME â€” mobile remains edge-to-edge; no crop, no grey gutters */
.hf-home{min-height:0!important;width:100%!important;background:#000!important}
.hf-home-hero{height:auto!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important;padding:0!important;background:#000!important}
.hf-home-hero img{display:block!important;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:initial!important;background:#000!important}

/* MOBILE EDITORIAL + EDGE ALIGNMENT + SAFE AREA */
@media(max-width:820px){
 .hf-editorial-shell{padding:0 14px calc(80px + env(safe-area-inset-bottom))}.hf-editorial-head{grid-template-columns:1fr auto;gap:8px;padding:28px 0 14px}.hf-editorial-head h1{grid-column:1/-1;grid-row:2;font-size:clamp(42px,13vw,68px)}.hf-meta{text-align:right}
 .hf-account-content{padding-top:18px}.hf-account-content .woocommerce-MyAccount-navigation,.hf-account-content .woocommerce-MyAccount-content{float:none;width:100%;margin:0 0 22px}.hf-account-content .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #000}.hf-account-content .woocommerce-MyAccount-navigation li{border-right:1px solid #000}.hf-account-content .woocommerce-MyAccount-navigation li:nth-child(even){border-right:0}.hf-account-content .woocommerce form{padding:16px}.hf-account-content .woocommerce table.shop_table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .hf-about-grid{display:block}.hf-about-statement{min-height:0;padding:30px 0 44px;border-right:0}.hf-about-copy{font-size:clamp(25px,7.4vw,40px)}.hf-about-side{padding:0;display:grid;grid-template-columns:1fr 1fr}.hf-about-side div{padding:14px 0}.hf-about-side div:nth-child(even){padding-left:12px;border-left:1px solid #000}
 .hf-news-link{grid-template-columns:72px minmax(0,1fr) 22px;gap:10px;min-height:88px}.hf-news-link h2{font-size:clamp(21px,6.3vw,34px)}.hf-news-date{font-size:9px}
 .hf-cart-content table.shop_table thead{display:none}.hf-cart-content table.shop_table tbody,.hf-cart-content table.shop_table tr,.hf-cart-content table.shop_table td{display:block;width:100%}.hf-cart-content table.shop_table tr.cart_item{position:relative;padding:16px 0;border-bottom:2px solid #000!important}.hf-cart-content table.shop_table td{border:0!important;padding:5px 0!important;text-align:left!important}.hf-cart-content .product-thumbnail{width:86px!important;float:left;margin-right:12px}.hf-cart-content .product-thumbnail img{width:86px!important;height:114px!important}.hf-cart-content .product-remove{position:absolute;right:0;top:12px;width:auto!important}.hf-cart-content .product-name,.hf-cart-content .product-price,.hf-cart-content .product-quantity{margin-left:98px}.hf-cart-content .cart_totals{width:100%;margin-top:26px}
  .hf-shop-shell{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding:6px 12px 90px!important}.hf-shop-grid{box-sizing:border-box!important;width:100%!important;max-width:100%!important;column-gap:12px!important;row-gap:16px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.hf-shop-card img{width:100%!important;aspect-ratio:4/5!important}.hf-shop-card-info{padding:8px 2px 16px!important}.hf-shop-card-title{font-size:11px!important;line-height:1.05!important}.hf-shop-card-price{margin-top:5px!important;color:#111!important;font:700 11px/1.15 Courier New,monospace!important}
  .single-product .hf-product-gallery,.single-product .hf-carousel,.single-product .hf-carousel-track,.single-product .hf-carousel-slide{width:100%!important;max-width:100%!important}.single-product .hf-product-info{padding-left:14px!important;padding-right:14px!important}
 .hf-cart-drawer{width:100%!important;max-width:100%!important}
}
/* HF V4.5 FINAL EDITORIAL */
.hf-about-editorial{width:100%;max-width:1440px;margin:0 auto;padding:0 32px 80px;background:#fff;color:#000}.hf-about-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;padding:38px 0 18px;border-bottom:2px solid #000}.hf-about-top span{font:10px/1 Courier New,monospace;text-transform:uppercase}.hf-about-top span:last-child{text-align:right}.hf-about-top h1{margin:0;font:900 clamp(42px,7vw,96px)/.82 Arial Black,Arial,sans-serif;letter-spacing:-.07em}.hf-about-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;border-bottom:2px solid #000}.hf-about-hero-copy{padding:42px 40px 50px 0}.hf-about-kicker{font:10px/1 Courier New,monospace}.hf-about-lead{max-width:980px;margin:35px 0 0;font:900 clamp(30px,4.6vw,68px)/.9 Arial Black,Arial,sans-serif;letter-spacing:-.055em;text-transform:uppercase}.hf-about-code{border-left:2px solid #000;padding:42px 0 30px 20px;display:flex;flex-direction:column;justify-content:space-between}.hf-about-code strong{font:900 44px/.8 Arial Black,Arial,sans-serif}.hf-about-code span{font:10px/1.35 Courier New,monospace}.hf-about-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto}.hf-about-image{margin:0;overflow:hidden;background:#d0d0d0}.hf-about-image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(100%)}.hf-about-image-main{min-height:520px}.hf-about-image-detail{min-height:360px}.hf-about-black{background:#000;color:#fff;padding:35px 28px;min-height:260px}.hf-about-grey{background:#d0d0d0;color:#000;padding:35px 28px;min-height:260px}.hf-about-black span,.hf-about-grey span{font:10px/1 Courier New,monospace}.hf-about-black p,.hf-about-grey p{margin:70px 0 0;font:900 clamp(20px,2.5vw,34px)/.92 Arial Black,Arial,sans-serif;letter-spacing:-.035em;text-transform:uppercase}.hf-about-footer{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:2px solid #000;padding:16px 0;font:9px/1 Courier New,monospace;text-transform:uppercase}.hf-about-footer span:nth-child(2){text-align:center}.hf-about-footer span:last-child{text-align:right}.hf-account-page .hf-editorial-head,.hf-cart-page .hf-editorial-head{background:#000;color:#fff;border-bottom:0;padding:38px 18px 20px}.hf-account-page .hf-account-content{border:2px solid #000;padding:28px;margin-top:28px}.hf-account-page .woocommerce-MyAccount-navigation{border-right:2px solid #000;padding-right:20px}.hf-cart-page .hf-cart-content{padding-top:28px}
@media(max-width:820px){.hf-about-editorial{padding:0 0 calc(70px + env(safe-area-inset-bottom))}.hf-about-top{grid-template-columns:1fr auto;padding:25px 14px 14px}.hf-about-top h1{grid-column:1/-1;grid-row:2;font-size:clamp(48px,15vw,76px)}.hf-about-hero{grid-template-columns:1fr}.hf-about-hero-copy{padding:28px 14px 38px}.hf-about-lead{margin-top:28px;font-size:clamp(30px,9.5vw,48px)}.hf-about-code{border-left:0;border-top:2px solid #000;padding:16px 14px;min-height:110px;display:grid;grid-template-columns:1fr 1fr}.hf-about-code span{text-align:right}.hf-about-grid{grid-template-columns:1fr}.hf-about-image-main,.hf-about-image-detail{min-height:100vw}.hf-about-black,.hf-about-grey{min-height:260px;padding:26px 14px}.hf-about-black p,.hf-about-grey p{margin-top:60px;font-size:clamp(22px,7vw,34px)}.hf-about-footer{grid-template-columns:1fr;padding:14px}.hf-about-footer span{text-align:left!important;padding:4px 0}.hf-account-page .hf-editorial-shell,.hf-cart-page .hf-editorial-shell{padding-left:14px;padding-right:14px}.hf-account-page .hf-editorial-head,.hf-cart-page .hf-editorial-head{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}.hf-account-page .hf-account-content{padding:14px;margin-top:14px}.hf-account-page .woocommerce-MyAccount-navigation{border-right:0;border-bottom:2px solid #000;padding:0 0 14px}.hf-cart-page .hf-cart-content{padding-top:14px}}


/* ============================================================================
   HARTEFAKTO â€” Correcciones v4.3
   AÃ‘ADIR AL FINAL de wp-content/themes/blocksy-child/style.css
   (o pegar al final del archivo, despuÃ©s de la Ãºltima regla)

   Contenido:
     1. Contador de la bolsa VISIBLE (hoy estÃ¡ oculto por la lÃ­nea 25: `.hf-icon-button b,[data-hf-cart-count]{display:none!important}`)
     2. Estados del botÃ³n de compra (evita el "aÃ±adir sin talla")
     3. LÃ­nea de confianza bajo el botÃ³n
     4. H1 oculto pero accesible
     5. Bolsa vacÃ­a con botÃ³n claro
   ============================================================================ */

/* 1. CONTADOR DE LA BOLSA -------------------------------------------------- */
/* Recomendado: borra o comenta la lÃ­nea 25 original de style.css:
   .hf-icon-button b,[data-hf-cart-count]{display:none!important}
   (esta regla ya la sobreescribe, pero mejor no dejar cÃ³digo muerto) */
.hf-icon-button b,[data-hf-cart-count]{display:inline-flex!important;position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;align-items:center;justify-content:center;background:#fff;color:#000;font:900 9px/1 Arial Black,Arial,sans-serif;letter-spacing:0;z-index:2}
.hf-icon-button b:empty,[data-hf-cart-count]:empty{display:none!important}

/* 2. BOTÃ“N DE COMPRA: estados --------------------------------------------- */
.hf-product-info .single_add_to_cart_button[disabled],
.hf-product-info .single_add_to_cart_button.is-needs-size{background:#000!important;color:#fff!important;border-color:#000!important;cursor:pointer!important;opacity:1!important}
.hf-product-info .hf-atc-hint{margin:0 0 8px;font:10px/1.3 Courier New,monospace;text-transform:uppercase;color:#000}
.hf-product-info .hf-atc-hint.is-alert{background:#000;color:#fff;padding:7px 9px}

/* 3. LÃNEA DE CONFIANZA ---------------------------------------------------- */
.hf-trust{margin:14px 0 0;padding:12px 0 0;border-top:1px solid #000;display:flex;flex-direction:column;gap:5px;font:10px/1.35 Courier New,monospace;text-transform:uppercase;color:#000}

/* 4. H1 OCULTO PERO ACCESIBLE --------------------------------------------- */
.hf-sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* 5. BOLSA VACÃA ----------------------------------------------------------- */
body.woocommerce-cart .wc-empty-cart-message .woocommerce-info{padding:34px 0!important}
body.woocommerce-cart .return-to-shop{text-align:left!important;margin-top:16px!important}
body.woocommerce-cart .return-to-shop a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:0 22px!important;background:#000!important;color:#fff!important;border:0!important;font:900 11px Arial Black,Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.04em}

/* OPCIONAL â€” botÃ³n de compra fijo en mÃ³vil (producto).
   Descomenta este bloque si quieres el "ANEXAR HARTEFAKTO" siempre visible
   mientras el usuario lee la ficha. RevÃ­salo en un mÃ³vil antes de dejarlo.
*/

/* 6. BOTON DE COMPRA FIJO EN MOVIL (ACTIVADO) -----------------------------
   Pedido del cliente: "ANEXAR HARTEFAKTO" siempre visible en la ficha desde
   el celular. La barra se pega al borde inferior de la pantalla y lleva la
   cantidad + el boton. Para desactivarlo: borra TODO este bloque 6.
   Producto simple  -> la barra es form.cart (contiene cantidad + boton).
   Producto variable-> la barra es .woocommerce-variation-add-to-cart.
   (Los productos agrupados quedan fuera a proposito.) */
 /* The action button is fixed by itself; its form remains in document flow. */

/* 7. ENTRADAS DE NEWS (plantilla single.php) ------------------------------ */
.hf-post-shell{padding-bottom:84px}
.hf-post-shell .hf-editorial-head{grid-template-columns:1fr auto;gap:10px}
.hf-post-shell .hf-editorial-head h1{grid-column:1/-1;grid-row:2;margin:16px 0 0;font-size:clamp(30px,4.6vw,66px);line-height:.9;letter-spacing:-.05em;max-width:26ch}
.hf-post-shell .hf-editorial-head .hf-meta{text-align:right}
.hf-post-body{max-width:960px;padding:36px 0 0}
.hf-post-body p,.hf-post-body li{margin:0 0 1.15em;font:15px/1.7 Arial,Helvetica,sans-serif;color:#000}
.hf-post-body h2{margin:2em 0 .6em;font:900 clamp(22px,2.6vw,40px)/.94 Arial Black,Arial,sans-serif;letter-spacing:-.045em;text-transform:uppercase}
.hf-post-body h3{margin:1.7em 0 .5em;font:900 14px/1.2 Arial Black,Arial,sans-serif;letter-spacing:.01em;text-transform:uppercase}
.hf-post-body h2:first-child,.hf-post-body h3:first-child,.hf-post-body p:first-child{margin-top:0}
.hf-post-body a{color:#000;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}
.hf-post-body a:hover{background:#000;color:#fff;text-decoration:none}
.hf-post-body blockquote{margin:1.7em 0;padding:4px 0 4px 20px;border-left:6px solid #000;font:900 clamp(17px,2vw,27px)/1.14 Arial Black,Arial,sans-serif;letter-spacing:-.025em;text-transform:uppercase}
.hf-post-body blockquote p{margin:0;font:inherit}
.hf-post-body ul,.hf-post-body ol{margin:0 0 1.2em;padding-left:22px}
.hf-post-body li{margin:0 0 .5em}
.hf-post-body img{display:block;width:100%;height:auto;filter:grayscale(100%)}
.hf-post-body figure{margin:1.7em 0}
.hf-post-body figcaption,.hf-post-body .wp-element-caption{margin-top:8px;font:10px/1.4 Courier New,monospace;text-transform:uppercase}
.hf-post-body hr{border:0;border-top:2px solid #000;margin:2.2em 0}
.hf-post-body strong{font-weight:700}
.hf-post-body code{font:12px/1.5 Courier New,monospace;background:#d0d0d0;padding:1px 4px}
.hf-post-body .hf-post-lead{font:900 clamp(19px,2.3vw,31px)/1.12 Arial Black,Arial,sans-serif;letter-spacing:-.03em;text-transform:uppercase;margin:0 0 1.2em}
.hf-post-body .hf-guide{border:2px solid #000;padding:24px 22px;margin:2.2em 0}
.hf-post-body .hf-guide h3{margin-top:0}
.hf-post-body .hf-sources,.hf-post-body .hf-sources li{font:11px/1.75 Courier New,monospace;overflow-wrap:anywhere}
.hf-post-body .hf-cta{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;margin:0 0 8px;background:#000;color:#fff!important;font:900 11px/1 Arial Black,Arial,sans-serif;letter-spacing:.05em;text-transform:uppercase;text-decoration:none!important}
.hf-post-body .hf-cta:hover{background:#fff;color:#000!important;box-shadow:inset 0 0 0 2px #000}
.hf-post-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:40px;padding-top:16px;border-top:2px solid #000;font:10px/1 Courier New,monospace;text-transform:uppercase;color:#000}
.hf-post-foot a{color:#000!important;text-decoration:none!important;border-bottom:2px solid #000}
.hf-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;font:10px/1.35 Courier New,monospace;text-transform:uppercase}
.hf-post-nav div:last-child{text-align:right}
.hf-post-nav a{color:#000!important;text-decoration:none!important}
.hf-post-nav a:hover{text-decoration:underline;text-decoration-thickness:2px}
@media(max-width:820px){
  .hf-post-body{padding-top:24px}
  .hf-post-body p,.hf-post-body li{font:14px/1.65 Arial,Helvetica,sans-serif}
  .hf-post-foot{flex-direction:column;align-items:flex-start}
  .hf-post-nav{grid-template-columns:1fr}
  .hf-post-nav div:last-child{text-align:left}
}
/* 8. FIN ------------------------------------------------------------------ */

/* ============================================================================
   HARTEFAKTO â€” PIEL Â«STUSSYÂ» (v4.4)
   ----------------------------------------------------------------------------
   EmulaciÃ³n del lenguaje visual de stussy.com sobre este tema hijo.
   Valores tomados del CSS real del tema de Stussy (theme.css, Shopify id 549),
   no inventados:

     Â· TipografÃ­a  HelveticaNeue (LT Pro Roman / Italic / Medium / Bold).
                   AquÃ­ se usa el stack del sistema equivalente: en macOS e iOS
                   se ve exactamente igual, en Windows cae a Arial.
     Â· Escala      12px en mÃ³vil / 10px desde 1025px, peso 500, line-height 1.4,
                   TODO en mayÃºsculas, letter-spacing -.015em.
     Â· Botones     fondo #000, texto #fff, borde 1px #000, radio 0,
                   alto 50px mÃ³vil / 45px escritorio,
                   hover y focus -> fondo y borde #757575,
                   transiciÃ³n .25s cubic-bezier(.215,.61,.355,1).
     Â· Secundario  fondo #fff, texto #000, borde 1px #000; hover -> gris.
     Â· Desactivado fondo #e5e5e5, borde y texto #757575.
     Â· Formularios borde inferior 1px #757575 -> #000 al enfocar, texto 16px.
     Â· Display     clamp(2.6875rem,11.7vw,5.375rem) mÃ³vil ->
                   clamp(2.5625rem,4.04vw,3.6875rem) escritorio, peso 500.
     Â· Paleta      #000 Â· #fff Â· #f5f5f5 Â· #e5e5e5 Â· #c6c6c6 Â· #757575
                   (mÃ¡s el gris #d0d0d0 que ya usaban los marcos de foto).
     Â· Cabecera    54px escritorio / 60px mÃ³vil, fondo BLANCO con texto negro.
                   El logo de Hartefakto es negro sobre transparente, asÃ­ que se
                   quita el filtro de inversiÃ³n que usaba la cabecera negra.

   DESVIACIONES CONSCIENTES (acordadas)
     Â· El texto corrido (notas de News, descripciÃ³n larga) NO va a 10px ni en
       mayÃºsculas: se queda en 13px/1.65 para que sea legible.
     Â· Las etiquetas cortas sÃ­ van a escala Stussy: navegaciÃ³n, precios, tÃ­tulos
       de producto, acordeones, meta, formularios, botones.
     Â· La estructura se respeta: rejilla 4:5, cabecera en una fila, hero a
       sangre. La barra vertical lateral que Stussy usa en escritorio es un
       cambio de maquetaciÃ³n (header.php), no de piel: queda fuera de aquÃ­.

   INTERRUPTORES RÃPIDOS -> al final, bloques [A] y [B].
   ============================================================================ */

/* ---------------------------------------------------------------------------
   1. TOKENS
   --------------------------------------------------------------------------- */
:root{
  --hf-font:"Helvetica Neue",Helvetica,Arial,"Liberation Sans","Segoe UI",sans-serif;

  --hf-black:#000;
  --hf-white:#fff;
  --hf-grey-100:#f5f5f5;
  --hf-grey-200:#e5e5e5;
  --hf-grey-300:#c6c6c6;
  --hf-grey-400:#d0d0d0;   /* marco de foto que ya usaba la web */
  --hf-grey-500:#757575;   /* gris de hover de Stussy */

  --hf-header-bg:#fff;     /* cabecera negra: #000 + --hf-header-fg:#fff */
  --hf-header-fg:#000;
  --hf-logo-filter:none;   /* cabecera negra: invert(1) grayscale(1) */

  --hf-line:1px solid var(--hf-black);
  --hf-line-soft:1px solid var(--hf-grey-200);
  --hf-ease:cubic-bezier(.215,.61,.355,1);
  --hf-dur:.25s;

  --hf-fs:12px;            /* escala tipogrÃ¡fica Stussy */
  --hf-fs-title:18px;      /* tÃ­tulo de producto (sube un poco: legibilidad) */
  --hf-max:1440px;
}
@media(min-width:1025px){:root{--hf-fs:10px;--hf-fs-title:16px}}

/* ---------------------------------------------------------------------------
   2. BASE â€” Helvetica Neue en todo, peso 500, mayÃºsculas

   NOTA DE PRECEDENCIA
   El CSS anterior tiene 82 reglas con `font:900 ... Arial Black ...!important`
   y otras tantas con Courier New. Un barrido normal (body *) perderÃ­a: esas
   reglas llevan clase, y un selector de tipo no las alcanza.
   Los :not(#hf-sweep-a):not(#hf-sweep-b) de abajo NO apuntan a nada real:
   sÃ³lo suman dos niveles de id a la especificidad para que este barrido gane
   a cualquier regla !important de arriba. Si borras esas dos partes, vuelven
   Arial Black y Courier New.
   --------------------------------------------------------------------------- */
body,
body :not(#hf-sweep-a):not(#hf-sweep-b),
body :not(#hf-sweep-a):not(#hf-sweep-b) *{
  font-family:var(--hf-font)!important;
  font-weight:500!important;
}
/* negritas reales (necesitan la misma precedencia que el barrido) */
body :not(#hf-sweep-a):not(#hf-sweep-b) strong,
body :not(#hf-sweep-a):not(#hf-sweep-b) b,
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-logo-text,
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-post-body h3,
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-about-copy h2,
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-about-copy h3,
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-account-content .woocommerce-MyAccount-navigation .is-active a{
  font-weight:700!important;
}

html,body{background:var(--hf-white);color:var(--hf-black)}
body{
  font-size:var(--hf-fs)!important;
  line-height:1.4!important;
  letter-spacing:-.015em!important;
  text-transform:uppercase!important;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
a{transition:color var(--hf-dur) var(--hf-ease)}
button,input,select,textarea{border-radius:0}
input,textarea{text-transform:none!important;font-weight:400!important}

/* Texto corrido: caja baja y tamaÃ±o legible (desviaciÃ³n acordada) */
.hf-post-body p,.hf-post-body li,.hf-post-body td,.hf-post-body th,
.woocommerce-product-details__short-description p,
.woocommerce-Tabs-panel p,.hf-product-description p,
body.woocommerce-checkout .woocommerce-additional-fields p,
.woocommerce-order p,.woocommerce-MyAccount-content p{
  text-transform:none!important;letter-spacing:0!important;
}
.hf-post-body p,.hf-post-body li{font-size:13px!important;line-height:1.65!important}

/* ---------------------------------------------------------------------------
   3. CABECERA â€” blanca, texto negro, 54px (Stussy)
   --------------------------------------------------------------------------- */
.hf-chrome{background:var(--hf-header-bg)!important;color:var(--hf-header-fg)!important}
.hf-header{
  min-height:54px!important;height:54px!important;
  background:var(--hf-header-bg)!important;color:var(--hf-header-fg)!important;
  padding:0 22px!important;border:0!important;
}
.hf-nav,.hf-actions{gap:24px!important}
.hf-nav a,.hf-actions a{
  color:var(--hf-header-fg)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;
  transition:color var(--hf-dur) var(--hf-ease)!important;
}
.hf-nav a:hover,.hf-actions a:hover,
.hf-nav a:focus-visible,.hf-actions a:focus-visible{color:var(--hf-grey-500)!important;text-decoration:none!important}

.hf-logo img{height:26px!important;max-width:150px!important;filter:var(--hf-logo-filter)!important}
.hf-logo-text{font-size:15px!important;color:var(--hf-header-fg)!important}

.hf-icon-button,
.hf-menu{color:var(--hf-header-fg)!important;width:38px!important;height:38px!important}
.hf-icon-button svg,
.hf-menu svg{width:18px!important;height:18px!important;color:var(--hf-header-fg)!important}
/* iconos de trazo fino, como los de Stussy (18px, 1px) */
.hf-icon-button svg *,
.hf-menu svg *{stroke-width:1!important}
.hf-icon-button:hover svg,.hf-icon-button:focus-visible svg,
.hf-menu:hover svg,.hf-menu:focus-visible svg{color:var(--hf-grey-500)!important}

/* contador de la bolsa: nÃºmero suelto, sin caja */
.hf-icon-button b,[data-hf-cart-count]{
  background:transparent!important;color:var(--hf-header-fg)!important;
  font-size:9px!important;font-weight:500!important;letter-spacing:0!important;
  top:3px!important;right:1px!important;min-width:0!important;height:auto!important;padding:0!important;
}

/* Buscador */
.hf-search-panel{
  background:var(--hf-white)!important;color:var(--hf-black)!important;
  border-bottom:var(--hf-line-soft)!important;padding:14px 22px!important;
}
.hf-search-panel form{gap:14px!important}
.hf-search-panel input[type=search]{
  height:50px!important;padding:0!important;background:transparent!important;
  border:0!important;border-bottom:1px solid var(--hf-grey-500)!important;
  font-size:16px!important;font-weight:400!important;letter-spacing:-.015em!important;
  transition:border-color var(--hf-dur) var(--hf-ease)!important;
}
.hf-search-panel input[type=search]:focus{border-bottom-color:var(--hf-black)!important;outline:0!important}
.hf-search-panel input[type=search]::placeholder{
  color:var(--hf-grey-500)!important;font-size:var(--hf-fs)!important;
  font-weight:500!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-search-panel button{
  width:auto!important;min-width:130px!important;height:50px!important;padding:0 18px!important;
  background:var(--hf-black)!important;color:var(--hf-white)!important;
  border:1px solid var(--hf-black)!important;border-radius:0!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:0!important;
  text-transform:uppercase!important;
  transition:background-color var(--hf-dur) var(--hf-ease),border-color var(--hf-dur) var(--hf-ease)!important;
}
.hf-search-panel button:hover,
.hf-search-panel button:focus-visible{background:var(--hf-grey-500)!important;border-color:var(--hf-grey-500)!important}

/* MenÃº mÃ³vil â€” panel blanco, enlaces medianos y bien separados */
@media(max-width:820px){
  .hf-mobile{background:var(--hf-white)!important;color:var(--hf-black)!important;padding:62px 22px 40px!important}
  .hf-mobile-top{margin-bottom:22px!important}
  .hf-mobile-logo{height:30px!important;filter:var(--hf-logo-filter)!important}
  .hf-mobile-close{
    color:var(--hf-black)!important;background:transparent!important;border:0!important;
    font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
    text-transform:uppercase!important;padding:12px 0!important;
  }
  .hf-mobile-links a{
    color:var(--hf-black)!important;
    font-size:20px!important;font-weight:500!important;line-height:1.1!important;
    letter-spacing:-.015em!important;text-transform:uppercase!important;
    padding:16px 0!important;border-bottom:var(--hf-line-soft)!important;
  }
  .hf-mobile-links a:active{color:var(--hf-grey-500)!important}
}

/* ---------------------------------------------------------------------------
   4. BOTONES (equivalente a .btn / .btn--secondary de Stussy)
   --------------------------------------------------------------------------- */
.hf-product-info .single_add_to_cart_button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.hf-cart-content .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-checkout #place_order,
.hf-account-content .woocommerce button.button,
.hf-account-content .woocommerce a.button,
body.woocommerce-cart .return-to-shop a,
.hf-post-body .hf-cta{
  background-color:var(--hf-black)!important;color:var(--hf-white)!important;
  border:1px solid var(--hf-black)!important;border-radius:0!important;box-shadow:none!important;
  min-height:50px!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:0!important;text-transform:uppercase!important;
  text-decoration:none!important;text-shadow:none!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  transition:background-color var(--hf-dur) var(--hf-ease),
             border-color var(--hf-dur) var(--hf-ease),
             color var(--hf-dur) var(--hf-ease)!important;
}
.hf-product-info .single_add_to_cart_button:hover,
.hf-product-info .single_add_to_cart_button:focus-visible,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.hf-cart-content .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-checkout #place_order:hover,
.hf-account-content .woocommerce button.button:hover,
.hf-account-content .woocommerce a.button:hover,
body.woocommerce-cart .return-to-shop a:hover,
.hf-post-body .hf-cta:hover{
  background-color:var(--hf-grey-500)!important;
  border-color:var(--hf-grey-500)!important;
  color:var(--hf-white)!important;
}
/* desactivado = fondo #e5e5e5, borde y texto #757575 */
.hf-product-info .single_add_to_cart_button:disabled,
.hf-product-info .single_add_to_cart_button[disabled],
.hf-product-info .single_add_to_cart_button.is-needs-size{
  background-color:#000!important;
  border-color:#000!important;
  color:#fff!important;
  cursor:pointer!important;opacity:1!important;pointer-events:auto!important;
}
.hf-product-info .single_add_to_cart_button.hf-loading{
  background-color:#000!important;border-color:#000!important;
  color:#fff!important;opacity:1!important;cursor:wait!important;
}
.hf-product-info .single_add_to_cart_button.hf-added{
  background-color:var(--hf-black)!important;border-color:var(--hf-black)!important;color:var(--hf-white)!important;
}
.hf-product-info .single_add_to_cart_button{transition:opacity .18s ease,background-color .18s ease,color .18s ease}
.hf-product-info .single_add_to_cart_button.hf-fade-out{opacity:0}
@media(min-width:1025px){
  .hf-product-info .single_add_to_cart_button,
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  .hf-cart-content .wc-proceed-to-checkout a.checkout-button,
  body.woocommerce-checkout #place_order,
  .hf-account-content .woocommerce button.button,
  .hf-account-content .woocommerce a.button,
  body.woocommerce-cart .return-to-shop a,
  .hf-post-body .hf-cta,
  .hf-cart-drawer-checkout{min-height:45px!important}
}

/* BotÃ³n secundario = tallas / variaciones sin elegir */
.hf-variation-button{
  background:var(--hf-white)!important;color:var(--hf-black)!important;
  border:1px solid var(--hf-black)!important;border-radius:0!important;
  min-width:44px!important;height:50px!important;padding:0 12px!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:0!important;
  text-transform:uppercase!important;
  transition:background-color var(--hf-dur) var(--hf-ease),
             border-color var(--hf-dur) var(--hf-ease),
             color var(--hf-dur) var(--hf-ease)!important;
}
.hf-variation-button:hover,
.hf-variation-button:focus-visible,
.hf-variation-button.is-selected{
  background:var(--hf-grey-500)!important;border-color:var(--hf-grey-500)!important;color:var(--hf-white)!important;
}
.hf-variation-button.is-disabled{
  background:var(--hf-grey-100)!important;border-color:var(--hf-grey-500)!important;
  color:var(--hf-grey-500)!important;opacity:1!important;cursor:not-allowed!important;
}
@media(min-width:1025px){.hf-variation-button{height:45px!important}}

/* Enlaces de texto: subrayado fino (como .link de Stussy) */
.hf-post-body a{
  text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:2px!important;
}
.hf-post-body a:hover{background:transparent!important;color:var(--hf-grey-500)!important;text-decoration:underline!important}

/* ---------------------------------------------------------------------------
   5. TIENDA
   --------------------------------------------------------------------------- */
.hf-shop-shell{padding:22px 22px 90px!important}
.hf-shop-toolbar{margin:0 0 14px!important;min-height:45px!important}

.hf-filter-toggle{
  background:var(--hf-white)!important;border:1px solid var(--hf-black)!important;
  color:var(--hf-black)!important;border-radius:0!important;
  height:45px!important;min-width:0!important;padding:0 18px!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
  transition:background-color var(--hf-dur) var(--hf-ease),
             border-color var(--hf-dur) var(--hf-ease),
             color var(--hf-dur) var(--hf-ease)!important;
}
.hf-filter-toggle:hover,
.hf-filter-toggle:focus-visible,
.hf-filter-toggle[aria-expanded="true"]{
  background:var(--hf-grey-500)!important;border-color:var(--hf-grey-500)!important;color:var(--hf-white)!important;
}
.hf-filter-toggle svg{width:14px!important;height:14px!important;flex:0 0 14px}
.hf-filter-toggle span{font-size:var(--hf-fs)!important;font-weight:500!important}
.hf-filter-toggle span:after{content:'FILTRAR'!important}
.hf-filter-toggle[aria-expanded="true"] span:after{content:'FILTRAR -'!important;font-size:var(--hf-fs)!important}

.hf-filter{
  background:var(--hf-white)!important;border:1px solid var(--hf-black)!important;
  gap:0!important;padding:0!important;box-shadow:none!important;backdrop-filter:none!important;
}
.hf-filter-link{
  min-height:45px!important;padding:0 18px!important;border:0!important;
  background:var(--hf-white)!important;color:var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
  transition:background-color var(--hf-dur) var(--hf-ease),color var(--hf-dur) var(--hf-ease)!important;
}
.hf-filter-link:hover,.hf-filter-link.is-active{background:var(--hf-grey-500)!important;color:var(--hf-white)!important}
.hf-filter-divider{background:var(--hf-grey-200)!important;width:1px!important;height:45px!important;margin:0!important}

.hf-shop-grid{gap:22px!important}
.hf-shop-card img{background:var(--hf-grey-400)!important}
.hf-shop-card-info{padding:12px 0 0!important}
.hf-shop-card-title{
  font-size:var(--hf-fs)!important;font-weight:500!important;line-height:1.4!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-shop-card-price{
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  color:var(--hf-black)!important;margin-top:4px!important;
}
.hf-shop-card:hover .hf-shop-card-title,
.hf-shop-card:focus-visible .hf-shop-card-title{text-decoration:underline!important;text-underline-offset:2px!important}
.hf-infinite-loading,.hf-infinite-status{font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;color:var(--hf-grey-500)!important}

/* ---------------------------------------------------------------------------
   6. FICHA DE PRODUCTO
   --------------------------------------------------------------------------- */
.hf-product{padding:32px 22px 90px!important}
.hf-product-info{top:72px!important;padding:6px 0!important}
.hf-product-info .product_title{
  font-size:var(--hf-fs-title)!important;line-height:1.1!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;margin:0 0 10px!important;
}
.hf-product-info .price,.hf-product-info .price *{
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  color:var(--hf-black)!important;margin:0 0 22px!important;
}
.hf-carousel-count{
  background:var(--hf-white)!important;font-size:11px!important;
  font-weight:500!important;letter-spacing:-.015em!important;padding:4px 7px!important;
}

.hf-product-info .variations label{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
  color:var(--hf-grey-500)!important;
}
.hf-product-info select{
  border:0!important;border-bottom:1px solid var(--hf-grey-500)!important;border-radius:0!important;
  background:transparent!important;font-size:16px!important;font-weight:400!important;
  min-height:50px!important;padding:0 20px 0 0!important;
}
.hf-product-info .reset_variations{
  font-size:var(--hf-fs)!important;color:var(--hf-grey-500)!important;
  text-transform:uppercase!important;letter-spacing:-.015em!important;
}

.hf-product-info .quantity{
  display:inline-flex!important;align-items:center!important;height:50px!important;
  border:1px solid var(--hf-black)!important;background:var(--hf-white)!important;
}
.hf-product-info .quantity input.qty{
  width:56px!important;height:48px!important;border:0!important;
  background:transparent!important;text-align:center!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
}
@media(min-width:1025px){
  .hf-product-info .quantity{height:45px!important}
  .hf-product-info .quantity input.qty{height:43px!important}
}

.hf-atc-hint{
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-grey-500)!important;margin:0 0 10px!important;
}
.hf-atc-hint.is-alert{background:var(--hf-black)!important;color:var(--hf-white)!important;padding:8px 10px!important}

.hf-trust{
  border-top:var(--hf-line-soft)!important;margin-top:18px!important;padding-top:14px!important;gap:4px!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}

.hf-product-accordions{border-top:0!important;margin-top:28px!important}
.hf-product-accordions details{border-bottom:var(--hf-line-soft)!important}
.hf-product-accordions summary{
  padding:17px 0!important;font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-product-accordions summary:hover{color:var(--hf-grey-500)!important}
.hf-product-accordions details>div{
  padding:0 0 18px!important;font-size:var(--hf-fs)!important;
  line-height:1.6!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-black)!important;
}
.hf-size-table table{font-size:var(--hf-fs)!important;letter-spacing:-.015em!important}
.hf-size-table th,.hf-size-table td{border-bottom:var(--hf-line-soft)!important;padding:8px 4px!important}

/* ---------------------------------------------------------------------------
   7. BOLSA (cajÃ³n lateral + pÃ¡gina)
   --------------------------------------------------------------------------- */
.hf-cart-drawer{background:var(--hf-white)!important;color:var(--hf-black)!important}
.hf-cart-drawer-head{height:54px!important;padding:0 22px!important;border-bottom:var(--hf-line-soft)!important}
.hf-cart-drawer-head strong{font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;text-transform:uppercase!important}
.hf-cart-close{font-size:15px!important;font-weight:400!important;color:var(--hf-black)!important}
.hf-cart-drawer-body{padding:0 22px!important}

.hf-cart-drawer .woocommerce-mini-cart-item{
  padding:18px 26px 18px 68px!important;margin:0!important;
  border-bottom:var(--hf-line-soft)!important;min-height:0!important;
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;
}
.hf-cart-drawer .woocommerce-mini-cart-item a:not(.remove){
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-black)!important;
}
.hf-cart-drawer .woocommerce-mini-cart-item img{
  width:52px!important;height:65px!important;background:var(--hf-grey-400)!important;
}
.hf-cart-drawer .woocommerce-mini-cart-item .quantity,
.hf-cart-drawer .variation,
.hf-cart-drawer .variation dt,
.hf-cart-drawer .variation dd{
  font-size:11px!important;font-weight:500!important;letter-spacing:-.015em!important;color:var(--hf-grey-500)!important;
}
.hf-cart-drawer .remove{font-size:15px!important;font-weight:400!important;color:var(--hf-black)!important}
.hf-cart-drawer .woocommerce-mini-cart__total{
  border-top:1px solid var(--hf-black)!important;margin:0!important;padding:16px 0!important;
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-cart-drawer-checkout{
  min-height:50px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  background:var(--hf-black)!important;color:var(--hf-white)!important;border:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:0!important;
  text-transform:uppercase!important;text-decoration:none!important;
  transition:background-color var(--hf-dur) var(--hf-ease),border-color var(--hf-dur) var(--hf-ease)!important;
}
.hf-cart-drawer-checkout:hover{background:var(--hf-grey-500)!important;border-color:var(--hf-grey-500)!important;color:var(--hf-white)!important}

/* PÃ¡gina de bolsa / carrito */
body.woocommerce-cart .woocommerce{padding:32px 22px 80px!important}
body.woocommerce-cart .shop_table th,
.hf-cart-content table.shop_table th{
  background:transparent!important;color:var(--hf-black)!important;
  border-bottom:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;padding:0 10px 12px 0!important;
}
body.woocommerce-cart .shop_table tbody tr,
.hf-cart-content table.shop_table tr{border-top:var(--hf-line-soft)!important}
body.woocommerce-cart .product-name a,
.hf-cart-content .product-name a{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-black)!important;
}
body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal,
.hf-cart-content .product-price,
.hf-cart-content .product-subtotal,
body.woocommerce-cart .cart-subtotal th,
body.woocommerce-cart .cart-subtotal td{
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;color:var(--hf-black)!important;
}
body.woocommerce-cart .product-name dl,
.hf-cart-content .variation,
.hf-cart-content .variation dt,
.hf-cart-content .variation dd{
  font-size:11px!important;font-weight:500!important;letter-spacing:-.015em!important;color:var(--hf-grey-500)!important;
}
body.woocommerce-cart .quantity,
.hf-cart-content .quantity{
  border:1px solid var(--hf-black)!important;background:var(--hf-white)!important;height:45px!important;
}
body.woocommerce-cart .quantity input.qty{height:43px!important;font-size:var(--hf-fs)!important}
body.woocommerce-cart .shop_table .product-thumbnail img,
.hf-cart-content .product-thumbnail img{background:var(--hf-grey-400)!important}
body.woocommerce-cart .wc-empty-cart-message .woocommerce-info{
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-cart-content .cart_totals h2{font-size:var(--hf-fs-title)!important;letter-spacing:-.015em!important}
.hf-cart-content .cart_totals table.shop_table{border-top:1px solid var(--hf-black)!important}
.hf-cart-content .cart_totals table.shop_table th,
.hf-cart-content .cart_totals table.shop_table td{
  border-bottom:var(--hf-line-soft)!important;font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;
}

/* ---------------------------------------------------------------------------
   8. CHECKOUT
   --------------------------------------------------------------------------- */
body.woocommerce-checkout .woocommerce{padding:32px 22px 90px!important}
body.woocommerce-checkout .col2-set{gap:56px!important}
body.woocommerce-checkout label{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
body.woocommerce-checkout .form-row{margin:0 0 18px!important}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
.hf-account-content .woocommerce input.input-text,
.hf-account-content .woocommerce select,
.hf-account-content .woocommerce textarea{
  border:0!important;border-bottom:1px solid var(--hf-grey-500)!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
  min-height:50px!important;padding:6px 0 0!important;
  font-size:16px!important;font-weight:400!important;letter-spacing:-.015em!important;
  color:var(--hf-black)!important;
  transition:border-color var(--hf-dur) var(--hf-ease)!important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
.hf-account-content .woocommerce input.input-text:focus,
.hf-account-content .woocommerce select:focus,
.hf-account-content .woocommerce textarea:focus{border-bottom-color:var(--hf-black)!important;outline:0!important}
body.woocommerce-checkout h3,
body.woocommerce-checkout .woocommerce-checkout-review-order h3,
.hf-account-content .woocommerce h2,
.hf-account-content .woocommerce h3{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;margin:0 0 14px!important;
}
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table *{
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;
}
.woocommerce-checkout-review-order-table{border-top:1px solid var(--hf-black)!important}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  border-bottom:var(--hf-line-soft)!important;padding:12px 0!important;color:var(--hf-black)!important;
}
body.woocommerce-checkout #payment{background:transparent!important;border:0!important}
body.woocommerce-checkout #payment div.payment_box{background:var(--hf-grey-100)!important;border-radius:0!important}
body.woocommerce-checkout .woocommerce-NoticeGroup,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info{
  background:transparent!important;border:0!important;border-top:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-black)!important;padding:14px 0!important;
}
body.woocommerce-checkout .woocommerce-error:before,
body.woocommerce-checkout .woocommerce-message:before,
body.woocommerce-checkout .woocommerce-info:before{display:none!important}

/* ---------------------------------------------------------------------------
   9. CUENTA
   --------------------------------------------------------------------------- */
.hf-account-content .woocommerce-MyAccount-navigation ul{border-top:var(--hf-line-soft)!important}
.hf-account-content .woocommerce-MyAccount-navigation li{border-bottom:var(--hf-line-soft)!important}
.hf-account-content .woocommerce-MyAccount-navigation a{
  padding:14px 0!important;color:var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
  transition:color var(--hf-dur) var(--hf-ease)!important;
}
.hf-account-content .woocommerce-MyAccount-navigation a:hover{color:var(--hf-grey-500)!important}
.hf-account-content .woocommerce-MyAccount-navigation .is-active a{
  background:transparent!important;color:var(--hf-black)!important;
  text-decoration:underline!important;text-underline-offset:3px!important;
}
.hf-account-content .woocommerce form{border:0!important;padding:0!important;background:transparent!important}
.hf-account-content .woocommerce label{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-account-content .woocommerce table.shop_table{
  border:0!important;border-top:1px solid var(--hf-black)!important;border-radius:0!important;
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;
}
.hf-account-content .woocommerce table.shop_table th{
  background:transparent!important;color:var(--hf-black)!important;
  border-bottom:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;text-transform:uppercase!important;
}
.hf-account-content .woocommerce table.shop_table td{
  border-bottom:var(--hf-line-soft)!important;color:var(--hf-black)!important;padding:14px 0!important;
}
.hf-account-content .woocommerce .woocommerce-info,
.hf-account-content .woocommerce .woocommerce-message,
.hf-account-content .woocommerce .woocommerce-error{
  border:0!important;border-top:1px solid var(--hf-black)!important;background:transparent!important;
  border-radius:0!important;padding:14px 0!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
  text-transform:uppercase!important;color:var(--hf-black)!important;
}

/* Formularios genÃ©ricos de WooCommerce (newsletter, contacto, login) */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-Input{text-transform:none!important}
.woocommerce form .form-row label,
.woocommerce .woocommerce-form__label-for-checkbox span{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
}

/* ---------------------------------------------------------------------------
   10. EDITORIAL â€” HOME, NOSOTROS, NEWS
   --------------------------------------------------------------------------- */
.hf-editorial-shell{padding:0 22px 96px!important}
.hf-editorial-head{
  border-bottom:1px solid var(--hf-black)!important;
  padding:34px 0 16px!important;align-items:end!important;gap:22px!important;
}
.hf-editorial-head h1{
  font-size:clamp(2.6875rem,11.7vw,5.375rem)!important;font-weight:500!important;
  line-height:1.05!important;letter-spacing:-.03em!important;text-transform:uppercase!important;
}
.hf-index,.hf-meta,.hf-label{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-post-shell .hf-editorial-head h1{font-size:clamp(2rem,7.6vw,4rem)!important;max-width:26ch!important}

/* Nosotros */
.hf-about-editorial{padding:0 22px 90px!important}
.hf-about-top{border-bottom:1px solid var(--hf-black)!important;padding:34px 0 16px!important}
.hf-about-top span{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-about-top h1{
  font-size:clamp(2.6875rem,11.7vw,5.375rem)!important;font-weight:500!important;
  line-height:1.05!important;letter-spacing:-.03em!important;text-transform:uppercase!important;
}
.hf-about-hero{border-bottom:1px solid var(--hf-black)!important}
.hf-about-kicker{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-about-lead{
  font-size:clamp(1.75rem,5.6vw,2.6875rem)!important;font-weight:500!important;
  line-height:1.1!important;letter-spacing:-.02em!important;text-transform:uppercase!important;
}
.hf-about-code{border-left:1px solid var(--hf-black)!important}
.hf-about-code strong{font-size:44px!important;font-weight:500!important;line-height:1!important;letter-spacing:-.02em!important}
.hf-about-code span{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-about-image{background:var(--hf-grey-400)!important}
.hf-about-copy,.hf-about-copy p{
  font-size:clamp(1.25rem,3.4vw,2.25rem)!important;font-weight:500!important;
  line-height:1.15!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-about-copy h2,.hf-about-copy h3{
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-about-side{font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important}
.hf-about-side div{border-bottom:var(--hf-line-soft)!important;padding:14px 0!important}
.hf-about-side div:first-child{border-top:var(--hf-line-soft)!important}
.hf-about-black p,.hf-about-grey p{
  font-size:clamp(1.25rem,2.5vw,2.125rem)!important;font-weight:500!important;
  line-height:1.1!important;letter-spacing:-.02em!important;text-transform:uppercase!important;
}
.hf-about-black span,.hf-about-grey span{
  font-size:var(--hf-fs)!important;font-weight:500!important;letter-spacing:-.015em!important;
}
.hf-about-footer{
  border-bottom:0!important;border-top:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}

/* News (archivo) */
.hf-news-feed{border-bottom:1px solid var(--hf-black)!important}
.hf-news-item{border-bottom:var(--hf-line-soft)!important}
.hf-news-link{grid-template-columns:140px minmax(0,1fr) 32px!important;gap:22px!important;min-height:100px!important}
.hf-news-date{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-news-link h2{
  font-size:clamp(2rem,6vw,2.6875rem)!important;font-weight:500!important;
  line-height:1.1!important;letter-spacing:-.02em!important;text-transform:uppercase!important;
}
.hf-news-link:hover h2,
.hf-news-link:focus-visible h2{text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important}
.hf-news-arrow{font-size:16px!important;font-weight:400!important}

/* News (entrada suelta) */
.hf-post-body{padding-top:32px!important}
.hf-post-body h2{
  font-size:clamp(1.5rem,3.4vw,2.5rem)!important;font-weight:500!important;
  line-height:1.1!important;letter-spacing:-.02em!important;text-transform:uppercase!important;
}
.hf-post-body h3{
  font-size:var(--hf-fs)!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-post-body blockquote{
  border-left:1px solid var(--hf-black)!important;padding:2px 0 2px 18px!important;
  font-size:clamp(1.125rem,2.3vw,1.75rem)!important;font-weight:500!important;
  line-height:1.2!important;letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-post-body blockquote p{font-size:inherit!important;line-height:inherit!important}
.hf-post-body figcaption,.hf-post-body .wp-element-caption,
.hf-post-body .hf-sources,.hf-post-body .hf-sources li{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-post-body hr{border-top:1px solid var(--hf-black)!important}
.hf-post-body code{font-size:12px!important;background:var(--hf-grey-200)!important;padding:1px 4px!important}
.hf-post-body .hf-post-lead{
  font-size:clamp(1.25rem,3vw,2.125rem)!important;font-weight:500!important;
  line-height:1.15!important;letter-spacing:-.02em!important;text-transform:uppercase!important;
}
.hf-post-body .hf-guide{border:1px solid var(--hf-black)!important;padding:22px 20px!important}
.hf-post-foot{
  border-top:1px solid var(--hf-black)!important;
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;color:var(--hf-grey-500)!important;
}
.hf-post-foot a{border-bottom:0!important;color:var(--hf-black)!important;text-decoration:underline!important;text-underline-offset:3px!important}
.hf-post-nav{
  font-size:var(--hf-fs)!important;font-weight:500!important;
  letter-spacing:-.015em!important;text-transform:uppercase!important;
}
.hf-post-nav a:hover{text-decoration:underline!important;text-decoration-thickness:1px!important}

/* ---------------------------------------------------------------------------
   11. MÃ“VIL
   --------------------------------------------------------------------------- */
@media(max-width:820px){
  .hf-header{min-height:60px!important;height:60px!important;padding:0 14px!important}
  .hf-logo img{height:24px!important;max-width:170px!important}
  .hf-icon-button,.hf-menu{width:42px!important;height:42px!important}
  .hf-icon-button svg,.hf-menu svg{width:20px!important;height:20px!important}
  .hf-search-panel{padding:12px 14px!important}
  .hf-search-panel form{gap:10px!important}
  .hf-search-panel button{min-width:104px!important}

  .hf-shop-shell{padding:14px 0 100px!important}
  .hf-shop-toolbar{margin-bottom:12px!important;min-height:45px!important}
  .hf-shop-grid{column-gap:12px!important;row-gap:24px!important}
  .hf-shop-card-info{padding:10px 10px 18px!important}
  .hf-shop-card-title{font-size:12px!important;line-height:1.35!important}
  .hf-shop-card-price{font-size:12px!important}

  .hf-product{padding:0 14px 120px!important}
  .hf-product-info{padding:18px 14px 0!important}
  .hf-product-info .product_title{font-size:18px!important}

  .hf-editorial-shell{padding:0 14px calc(80px + env(safe-area-inset-bottom))!important}
  .hf-about-editorial{padding:0 14px calc(70px + env(safe-area-inset-bottom))!important}
  .hf-news-link{grid-template-columns:74px minmax(0,1fr) 20px!important;gap:12px!important;min-height:88px!important}
  .hf-news-link h2{font-size:clamp(1.375rem,5.6vw,2rem)!important}
  .hf-about-code{border-left:0!important;border-top:1px solid var(--hf-black)!important}
  .hf-post-body p,.hf-post-body li{font-size:14px!important;line-height:1.6!important}

  /* barra de compra fija: blanca, lÃ­nea fina, botÃ³n negro */
  .single-product .hf-product-info .quantity input.qty{height:48px!important;border:1px solid var(--hf-black)!important}

  /* barra fija del checkout en la bolsa */

  .hf-filter-toggle{min-width:110px!important}
}

/* Escritorio: saltos de escala y rejillas */
@media(min-width:1025px){
  .hf-editorial-head h1{font-size:clamp(2.5625rem,4.04vw,3.6875rem)!important;line-height:1.1!important}
  .hf-about-top h1{font-size:clamp(2.5625rem,4.04vw,3.6875rem)!important;line-height:1.1!important}
  .hf-about-lead{font-size:clamp(2rem,3.4vw,3.25rem)!important}
  .hf-about-copy,.hf-about-copy p{font-size:clamp(1.5rem,2.4vw,2.25rem)!important}
  .hf-news-link h2{font-size:clamp(1.75rem,2.6vw,2.5rem)!important}
  .hf-post-body p,.hf-post-body li{font-size:13px!important}
}

/* ---------------------------------------------------------------------------
   12. INTERRUPTORES
   --------------------------------------------------------------------------- */

/* [A] CABECERA NEGRA (marca Hartefakto original) - ACTIVADA.
       Mantiene la cabecera negra de la marca, con nav y logo en blanco.
       Comenta el @media de abajo para volver al blanco de Stussy. */

@media(min-width:0px){
:root{--hf-header-bg:#000;--hf-header-fg:#fff;--hf-logo-filter:invert(1) grayscale(1)}
}

/* [B] TODO A 10px LITERAL (fidelidad mÃ¡xima, mayÃºsculas tambiÃ©n en el texto
       corrido). Descomenta para la rÃ©plica exacta de Stussy.

@media(min-width:0px){
:root{--hf-fs:10px}
.hf-post-body p,.hf-post-body li{font-size:12px!important}
.hf-product-accordions details>div,.hf-product-accordions details>div p{text-transform:uppercase!important}
}
*/
/* FIN â€” HARTEFAKTO Â· PIEL STUSSY v4.4 */

/* ============================================================================
   v4.5 â€” AJUSTE CONTRA STUSSY.COM (medido en vivo el 18/10/2026)

   La v4.4 cambiÃ³ la tipografÃ­a y los botones, pero dejÃ³ intacto el esqueleto
   de la marca anterior: cabecera con borde, logo diminuto y centrado, fotos
   sobre gris, filetes de 2px y titulares de 76px. Eso es lo que hacÃ­a que
   Â«no se parecieraÂ». AquÃ­ se corrige el esqueleto con los valores medidos en
   el sitio real:

     cabecera      81px, logo a la izquierda, utilidades a la derecha, 12px
     rejilla       4 columnas y 20px (escritorio) / 2 columnas y 5px (mÃ³vil)
     tarjetas      foto 4:5 sobre blanco, tÃ­tulo y precio 12px, sin adornos
     filetes       1px, nunca 2px; sin fondos grises ni barras negras
     titulares     12px en etiquetas; 18-24px sÃ³lo en titulares editoriales
   ============================================================================ */

/* ---------------------------------------------------------------------------
   1. CABECERA â€” una fila, logo a la izquierda, sin borde
   --------------------------------------------------------------------------- */
.hf-header{
  display:flex!important;align-items:center!important;
  grid-template-columns:none!important;
  min-height:81px!important;height:81px!important;
  padding:0 10px!important;gap:0!important;
  border-bottom:0!important;box-shadow:none!important;
  width:100%!important;max-width:none!important;left:auto!important;transform:none!important;
}
.hf-header .hf-logo{order:0!important;display:flex!important;align-items:center!important;flex:0 0 auto!important}
.hf-header .hf-nav{order:1!important;margin-left:auto!important;gap:22px!important}
.hf-header .hf-actions{order:2!important;margin-left:22px!important;gap:18px!important}
.hf-header .hf-menu{order:3!important}

.hf-logo img{height:70px!important;width:auto!important;max-width:100px!important}
.hf-nav a,.hf-actions a{font-size:12px!important;line-height:1.4!important;letter-spacing:0!important;font-weight:500!important}
.hf-nav a{padding:6px 0!important}

/* ---------------------------------------------------------------------------
   2. TIENDA â€” rejilla 4/2 con los huecos reales, fotos sobre blanco
   --------------------------------------------------------------------------- */
.hf-shop-shell{padding:0 20px 80px!important}
.hf-shop-toolbar{margin:0!important;min-height:52px!important;display:flex!important;align-items:center!important}
.hf-filter-toggle{
  width:auto!important;min-width:0!important;height:auto!important;min-height:44px!important;
  padding:0!important;border:0!important;background:transparent!important;
  justify-content:flex-start!important;gap:6px!important;
}
.hf-filter-toggle:hover,.hf-filter-toggle:focus-visible,
.hf-filter-toggle[aria-expanded="true"]{background:transparent!important;border:0!important}
.hf-filter-toggle svg{width:12px!important;height:12px!important;flex:0 0 12px}
.hf-filter-toggle span:after{content:'FILTRAR +'!important}
.hf-filter-toggle[aria-expanded="true"] span:after{content:'FILTRAR -'!important}

.hf-shop-grid{gap:40px 20px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
.hf-shop-card{background:#e5e5e5!important}
.hf-shop-card img{background:transparent!important;object-fit:contain!important;aspect-ratio:4/5!important;filter:brightness(1.10)!important}
.hf-shop-card-info{padding:10px 0 0!important}
.hf-shop-card-title{font-size:12px!important;line-height:1.3!important;letter-spacing:0!important;font-weight:500!important}
.hf-shop-card-price{font-size:12px!important;line-height:1.3!important;margin-top:2px!important;letter-spacing:0!important;font-weight:400!important;color:#000!important}
.hf-shop-card:hover .hf-shop-card-title,
.hf-shop-card:focus-visible .hf-shop-card-title{text-decoration:none!important;color:#757575!important}

/* la pagina, en blanco: Blocksy pinta #fafbfc por defecto y se nota con las
   tarjetas #e5e5e5; Stussy usa blanco puro */
body.post-type-archive-product,body.tax-product_cat,body.single-product,
body.post-type-archive-product .site-main,body.tax-product_cat .site-main,
body.single-product .site-main{background:#fff!important}

/* ---------------------------------------------------------------------------
   3. PÃGINAS EDITORIALES â€” etiquetas de 12px y filetes de 1px
   --------------------------------------------------------------------------- */
.hf-editorial-shell{padding:0 20px 80px!important}
.hf-editorial-head{
  display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  gap:12px!important;padding:20px 0 12px!important;
  border-bottom:1px solid #000!important;
}
.hf-editorial-head h1{
  grid-column:auto!important;grid-row:auto!important;
  margin:0!important;font-size:var(--hf-fs)!important;line-height:1.4!important;
  letter-spacing:0!important;font-weight:500!important;text-transform:uppercase!important;
}
.hf-editorial-head .hf-index,.hf-editorial-head .hf-meta{font-size:var(--hf-fs)!important;line-height:1.4!important}

.hf-news-feed{border-bottom:0!important}
.hf-news-item{border-bottom:1px solid #000!important}
.hf-news-link{
  grid-template-columns:120px minmax(0,1fr) 24px!important;gap:20px!important;
  min-height:0!important;padding:16px 0!important;align-items:baseline!important;
}
.hf-news-link h2{
  margin:0!important;font-size:20px!important;line-height:1.2!important;
  letter-spacing:0!important;font-weight:500!important;text-transform:uppercase!important;
}
.hf-news-date{font-size:var(--hf-fs)!important;line-height:1.4!important}
.hf-news-arrow{font-size:14px!important}
.hf-news-link:hover h2{text-decoration:none!important;color:#757575!important}

.hf-post-body h2{font-size:16px!important;line-height:1.3!important;letter-spacing:0!important;margin:24px 0 8px!important}
.hf-post-body h3{font-size:13px!important;line-height:1.4!important;letter-spacing:0!important;margin:20px 0 6px!important}
.hf-post-body blockquote p{font-size:14px!important;line-height:1.5!important}

/* Nosotros */
.hf-about-top{border-bottom:1px solid #000!important;padding:20px 0 12px!important}
.hf-about-top h1{font-size:var(--hf-fs)!important;line-height:1.4!important;letter-spacing:0!important}
.hf-about-hero{border-bottom:1px solid #000!important}
.hf-about-lead{font-size:22px!important;line-height:1.25!important;letter-spacing:0!important;font-weight:500!important;margin-top:22px!important}
.hf-about-code{border-left:1px solid #000!important}
.hf-about-footer{border-bottom:1px solid #000!important;font-size:var(--hf-fs)!important}
.hf-about-image,.hf-about-grey{background:#f5f5f5!important}

/* ---------------------------------------------------------------------------
   4. FICHA DE PRODUCTO
   --------------------------------------------------------------------------- */
.hf-product{padding:0 20px 80px!important}
.hf-product-info .product_title{
  font-size:14px!important;line-height:1.3!important;letter-spacing:0!important;
  font-weight:500!important;margin:0 0 8px!important;
}
.hf-product-info .price{font-size:12px!important;line-height:1.4!important;margin:0 0 18px!important}
.hf-carousel{background:#e5e5e5!important}.hf-carousel-slide{background:transparent!important}.hf-carousel-image{background:transparent!important;filter:brightness(1.10)!important}
.hf-carousel-count{font-size:10px!important;background:#fff!important;padding:4px 6px!important;border:1px solid #000!important}
.hf-product-accordions{border-top:1px solid #000!important}
.hf-product-accordions details{border-bottom:1px solid #000!important}
.hf-product-accordions summary{font-size:12px!important;letter-spacing:0!important}
.hf-product-accordions details>div p{font-size:12px!important;line-height:1.5!important}

/* ---------------------------------------------------------------------------
   5. BOLSA / CUENTA â€” fuera la cabecera negra, filetes de 1px
   --------------------------------------------------------------------------- */
.hf-cart-content table.shop_table thead{background:transparent!important;color:#000!important;border-bottom:1px solid #000!important}
.hf-cart-content table.shop_table th{color:#000!important;font-size:var(--hf-fs)!important;line-height:1.4!important}
.hf-cart-content .cart_totals table.shop_table{border-top:1px solid #000!important}
.hf-cart-content .cart_totals h2{font-size:14px!important;letter-spacing:0!important}
.hf-cart-content table.shop_table{font-size:12px!important}
.hf-account-page .hf-account-content{border:1px solid #000!important}
.hf-account-page .woocommerce-MyAccount-navigation{border-right:1px solid #000!important}
.hf-cart-content .product-thumbnail img{background:#fff!important}

/* ---------------------------------------------------------------------------
   5b. PORTADA â€” foto a sangre, casi toda la pantalla, como Stussy
   --------------------------------------------------------------------------- */
.hf-home-hero{
  width:auto!important;max-width:none!important;margin:0 20px!important;
  height:86vh!important;min-height:520px!important;max-height:900px!important;
  background:#f5f5f5!important;overflow:hidden!important;
}
.hf-home-hero img{
  width:100%!important;height:100%!important;max-height:none!important;
  object-fit:cover!important;object-position:center 22%!important;
  background:transparent!important;
}
@media(max-width:820px){
  .hf-home-hero{margin:0!important;height:78vh!important;min-height:440px!important;max-height:none!important}
}
/* ---------------------------------------------------------------------------
   6. MÃ“VIL â€” cabecera 64px, rejilla a sangre con 5px de hueco
   --------------------------------------------------------------------------- */
@media(max-width:820px){
  .hf-header{
    min-height:64px!important;height:64px!important;
    padding:0 12px!important;gap:0!important;
  }
  .hf-logo img{height:44px!important;max-width:64px!important}
  .hf-header .hf-actions{margin-left:auto!important;gap:2px!important}

  .hf-shop-shell{padding:0 0 80px!important}
  .hf-shop-toolbar{padding:0 10px!important;min-height:48px!important}
  .hf-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:5px!important;row-gap:40px!important}
  .hf-shop-card-info{padding:8px 6px 0!important}
  .hf-shop-card-title,.hf-shop-card-price{font-size:12px!important;line-height:1.25!important}

  .hf-editorial-shell{padding:0 12px 80px!important}
  .hf-editorial-head{padding:14px 0 10px!important}
  .hf-news-link{grid-template-columns:76px minmax(0,1fr) 18px!important;gap:10px!important;padding:14px 0!important}
  .hf-news-link h2{font-size:16px!important}
  .hf-post-body h2{font-size:15px!important}
  .hf-about-lead{font-size:18px!important;margin-top:18px!important}
  .hf-product{padding:0 0 80px!important}
  .hf-product-info{padding:16px 12px 0!important}
  .hf-product-info .product_title{font-size:14px!important}
}
@media(max-width:1200px){
  .hf-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:5px!important;row-gap:40px!important}
}
/* tablet: paso de 3 columnas, como el md:grid-cols-3 de Stussy (va despues de
   la regla de 2 columnas, si no la pisa) */
@media(min-width:821px) and (max-width:1200px){
  .hf-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:12px!important}
}

/* ============================================================================
   v4.6 â€” FICHA DE PRODUCTO AL ESTILO DE STUSSY
   Medido sobre la ficha real de stussy.com (Â«8 Ball Tee - Faded BlackÂ»).

   La ficha de Hartefakto tenia la foto a sangre completa (100vw, 4:5) y toda la
   informacion debajo, en una columna estrecha. La de Stussy es otra cosa:

     Â· escritorio: DOS columnas, la foto ocupa 45vw a la izquierda y la ficha va
       a la derecha, separadas por 50px;
     Â· la ficha es pegajosa (sticky), mide como mucho 325px y arranca 45px por
       debajo del borde superior;
     Â· la galeria se APILA en vertical -todas las fotos una debajo de otra-, sin
       flechas ni contador; el movil conserva el pase tactil;
     Â· titulo y precio a 12px; las etiquetas COLOR / TALLA a 10px y en gris;
     Â· colores y tallas son TEXTO, no cajas: la opcion elegida se SUBRAYA y la
       agotada se tacha y pasa a gris. Es el gesto mas reconocible de Stussy;
     Â· el boton de compra va a todo el ancho y mide 35px de alto;
     Â· los acordeones llevan filete de 1px y el signo pasa de + a - al abrir.

   PRECEDENCIA: el CSS adicional del Personalizador (Apariencia > Personalizar >
   CSS adicional) usa selectores Â«body.single-product ...Â» con !important para
   forzar la foto a sangre. Estas reglas llevan un Â«htmlÂ» delante, asi que ganan
   por especificidad y NO hace falta vaciar ese CSS adicional. Si algun dia lo
   vacias, estas reglas siguen valiendo exactamente igual.
   ============================================================================ */

/* ---------------------------------------------------------------------------
   1. ESCRITORIO â€” dos columnas con la ficha pegajosa
   --------------------------------------------------------------------------- */
@media(min-width:821px){
  /* overflow-x:hidden en <html>/<body> crea una caja de desplazamiento interna
     que anula position:sticky. Â«clipÂ» recorta igual pero sin crear scrollport. */
  html{overflow-x:clip!important}
  html body{overflow-x:clip!important}
  /* Sin overflow-x en .hf-product: si un ancestro recorta el eje X, el eje Y
     pasa a Â«autoÂ» y se crea una caja de desplazamiento; entonces
     position:sticky se pega a esa caja y ya no a la ventana (el efecto se
     pierde). Por eso aqui se devuelve a Â«visibleÂ» solo en escritorio. */
  html body.single-product .hf-product{padding:0 20px 90px!important;overflow:visible!important}
  html body.single-product .hf-product-grid{
    display:grid!important;
    grid-template-columns:minmax(0,45vw) minmax(0,1fr)!important;
    column-gap:50px!important;row-gap:0!important;align-items:start!important;
  }
  html body.single-product .hf-product-gallery{
    grid-column:1!important;width:100%!important;max-width:100%!important;min-width:0!important;
    margin:0!important;position:static!important;left:auto!important;transform:none!important;
    background:transparent!important;overflow:visible!important;
  }
  html body.single-product .hf-product-info{
    grid-column:2!important;position:sticky!important;top:20px!important;
    width:100%!important;max-width:325px!important;margin:0!important;
    padding:45px 0 60px!important;
  }
  /* la galeria se apila: cada foto debajo de la anterior. Se neutralizan una a
     una las propiedades que el CSS adicional usa para el pase tactil (flex,
     scroll-snap, overflow): si sobreviven, el apilado no se ve. */
  html body.single-product .hf-carousel{
    overflow:visible!important;background:#e5e5e5!important;
    touch-action:auto!important;overscroll-behavior-x:auto!important;
  }
  html body.single-product .hf-carousel-track{
    display:block!important;width:100%!important;max-width:100%!important;
    flex-direction:row!important;flex-wrap:nowrap!important;
    overflow:visible!important;scroll-snap-type:none!important;
    scroll-snap-stop:normal!important;scroll-behavior:auto!important;
    touch-action:auto!important;overscroll-behavior-x:auto!important;
    transform:none!important;transition:none!important;will-change:auto!important;
  }
  html body.single-product .hf-carousel-slide{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
    flex:0 0 auto!important;margin:10px 0 0!important;
    /* las fotos de Hartefakto son cuadradas (500x500): en escritorio el marco
       tambien lo es, si no quedarian franjas grises arriba y abajo */
    aspect-ratio:1/1!important;background:#e5e5e5!important;
    overflow:hidden!important;scroll-snap-align:none!important;scroll-snap-stop:normal!important;
  }
  html body.single-product .hf-carousel-slide:first-child{margin-top:0!important}
  html body.single-product .hf-carousel-image{
    display:block!important;width:100%!important;max-width:100%!important;
    height:100%!important;max-height:100%!important;min-height:0!important;
    object-fit:contain!important;
    /* #d0d0d0 es el gris cocido en el PNG; con brightness(1.1) queda #e5e5e5,
       igual que el fondo del marco (208 x 1.1 = 229) */
    background:#d0d0d0!important;
  }
  html body.single-product .hf-carousel-arrow,
  html body.single-product .hf-carousel-prev,
  html body.single-product .hf-carousel-next,
  html body.single-product .hf-carousel-count{display:none!important}
  /* cantidad y boton de compra */
  html body.single-product .hf-product-info .quantity{
    display:inline-flex!important;align-items:center!important;
    height:35px!important;width:104px!important;margin:0 0 12px!important;
    border:1px solid #000!important;background:#fff!important;
  }
  html body.single-product .hf-product-info .quantity input.qty{
    width:56px!important;height:33px!important;border:0!important;background:transparent!important;
    text-align:center!important;font-size:12px!important;font-weight:500!important;
  }
  html body.single-product .hf-product-info .single_add_to_cart_button{width:100%!important;max-width:100%!important;height:50px!important;min-height:50px!important;padding:0 18px!important;font-size:11px!important;font-weight:900!important;letter-spacing:.13em!important}
  html body.single-product .hf-product-info form.cart:not(.variations_form):not(.grouped_form),
  html body.single-product .hf-product-info .woocommerce-variation-add-to-cart,
  html body.single-product .hf-product-info .single_variation_wrap .variations_button{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    gap:0!important;margin:0!important;padding:0!important;border:0!important;
    box-shadow:none!important;background:transparent!important;
  }
  html body.single-product .hf-product-info .woocommerce-variation{max-width:100%!important}
}

/* ---------------------------------------------------------------------------
   2. TITULO Y PRECIO â€” 12px, como en Stussy
   --------------------------------------------------------------------------- */
html body.single-product .hf-product-info .product_title{
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.4!important;letter-spacing:0!important;
  font-weight:500!important;text-transform:uppercase!important;margin:0 0 8px!important;
}
html body.single-product .hf-product-info .price{
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.4!important;letter-spacing:0!important;
  font-weight:500!important;margin:0 0 16px!important;
}
html body.single-product .hf-product-info .price *{
  font-size:12px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:0!important;margin:0!important;
}

/* ---------------------------------------------------------------------------
   3. COLOR Y TALLA â€” texto subrayado, no cajas con borde
   --------------------------------------------------------------------------- */
html body.single-product .hf-product-info .variations{
  display:block!important;width:100%!important;max-width:100%!important;
  border:0!important;border-collapse:collapse!important;margin:0!important;
}
html body.single-product .hf-product-info .variations tbody,
html body.single-product .hf-product-info .variations tr,
html body.single-product .hf-product-info .variations th,
html body.single-product .hf-product-info .variations td{
  display:block!important;width:100%!important;max-width:100%!important;
  padding:0!important;border:0!important;text-align:left!important;background:transparent!important;
}
html body.single-product .hf-product-info .variations tr+tr .label{padding-top:8px!important}
html body.single-product .hf-product-info .variations label{
  display:block!important;font-family:var(--hf-font)!important;
  font-size:10px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:0!important;color:#757575!important;text-transform:uppercase!important;
}
html body.single-product .hf-product-info .variations td.value{padding:2px 0 0!important}
html body.single-product .hf-product-info .hf-variation-buttons{
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;
  margin:0 0 8px!important;padding:0!important;
}
html body.single-product .hf-product-info .hf-variation-button{
  width:auto!important;min-width:0!important;height:auto!important;
  padding:8px 12px!important;margin:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;color:#000!important;box-shadow:none!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.4!important;
  font-weight:500!important;letter-spacing:0!important;text-transform:uppercase!important;
  text-decoration:none!important;cursor:pointer!important;
}
html body.single-product .hf-product-info .hf-variation-button:hover,
html body.single-product .hf-product-info .hf-variation-button:focus-visible{
  background:transparent!important;color:#757575!important;
}
html body.single-product .hf-product-info .hf-variation-button.is-selected{
  background:transparent!important;color:#000!important;
  text-decoration:underline!important;text-underline-offset:.28em!important;
  text-decoration-thickness:1px!important;
}
html body.single-product .hf-product-info .hf-variation-button.is-disabled,
html body.single-product .hf-product-info .hf-variation-button[disabled]{
  background:transparent!important;color:#757575!important;opacity:1!important;
  text-decoration:line-through!important;text-underline-offset:.28em!important;
  text-decoration-thickness:1px!important;cursor:not-allowed!important;
}
html body.single-product .hf-product-info .reset_variations{
  font-family:var(--hf-font)!important;font-size:10px!important;
  color:#757575!important;letter-spacing:0!important;
}

/* ---------------------------------------------------------------------------
   4. AVISO DE TALLA Y LINEA DE CONFIANZA
   --------------------------------------------------------------------------- */
html body.single-product .hf-atc-hint{
  font-family:var(--hf-font)!important;
  font-size:10px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:0!important;color:#757575!important;text-transform:uppercase!important;
  margin:8px 0 0!important;
}
html body.single-product .hf-atc-hint.is-alert{
  background:#000!important;color:#fff!important;padding:8px 10px!important;
}
html body.single-product .hf-trust{
  border-top:1px solid #000!important;border-bottom:0!important;
  margin:20px 0 0!important;padding:12px 0 0!important;gap:4px!important;
  font-family:var(--hf-font)!important;
  font-size:10px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:0!important;color:#757575!important;text-transform:uppercase!important;
}

/* ---------------------------------------------------------------------------
   5. ACORDEONES â€” filete de 1px y el signo que pasa de + a -
   --------------------------------------------------------------------------- */
html body.single-product .hf-product-info .hf-product-accordions{border-top:0!important;margin:28px 0 0!important}
html body.single-product .hf-product-info .hf-product-accordions details{
  border-top:1px solid #000!important;border-bottom:0!important;
}
html body.single-product .hf-product-info .hf-product-accordions summary{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:5px!important;padding:11px 0!important;list-style:none!important;cursor:pointer!important;
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:0!important;color:#000!important;text-transform:uppercase!important;
}
html body.single-product .hf-product-info .hf-product-accordions summary::-webkit-details-marker{display:none!important}
html body.single-product .hf-product-info .hf-product-accordions summary:hover{color:#757575!important}
html body.single-product .hf-product-info .hf-product-accordions summary span{font-size:0!important;line-height:1!important}
html body.single-product .hf-product-info .hf-product-accordions summary span::before{
  content:'+'!important;font-size:12px!important;line-height:1!important;
}
html body.single-product .hf-product-info .hf-product-accordions details[open] summary span::before{
  content:'-'!important;
}
html body.single-product .hf-product-info .hf-product-accordions details>div{
  padding:0 0 16px!important;
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.55!important;letter-spacing:0!important;
  color:#000!important;text-transform:none!important;
}
html body.single-product .hf-product-info .hf-product-accordions details>div p{
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.55!important;letter-spacing:0!important;
  margin:0 0 10px!important;text-transform:none!important;
}
html body.single-product .hf-product-info .hf-product-accordions details>div p:last-child{margin-bottom:0!important}
html body.single-product .hf-product-info .hf-product-accordions .hf-product-description ul{
  margin:0 0 12px!important;padding:0!important;list-style:none!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-product-description li{
  position:relative!important;padding:0 0 3px 11px!important;
  font-size:12px!important;line-height:1.55!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-product-description li::before{
  content:'-'!important;position:absolute!important;left:0!important;top:0!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-attributes{
  display:flex!important;flex-direction:column!important;gap:2px!important;margin:0 0 12px!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-attributes div{
  display:flex!important;gap:6px!important;font-size:12px!important;line-height:1.55!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-attributes dt{
  margin:0!important;color:#757575!important;font-weight:500!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-attributes dd{margin:0!important}
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table table{
  font-family:var(--hf-font)!important;font-size:10px!important;letter-spacing:0!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table th,
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table td{
  border-bottom:1px solid #e5e5e5!important;padding:7px 4px!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table th{
  color:#757575!important;font-weight:500!important;
}

/* ---------------------------------------------------------------------------
   6. MOVIL â€” el pase tactil se queda; solo se afina el contador
   --------------------------------------------------------------------------- */
@media(max-width:820px){
  /* El CSS adicional convierte el contador en una barra de 2px y le aÃ±ade un
     ::before. Aqui se fuerza de nuevo a texto suelto, sin caja ni barra. */
  html body.single-product .hf-carousel-count{
    display:block!important;
    left:auto!important;right:12px!important;top:auto!important;bottom:10px!important;
    width:auto!important;min-width:0!important;height:auto!important;
    min-height:0!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    background:transparent!important;color:#000!important;
    font-family:var(--hf-font)!important;font-size:10px!important;line-height:1!important;
    letter-spacing:0!important;text-transform:none!important;overflow:visible!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  html body.single-product .hf-carousel-count::before{
    content:none!important;display:none!important;
  }
  /* El CSS adicional recorta el relleno inferior a 40px, y entonces la barra de
     compra fija tapa los acordeones. Se devuelve a 112px. */
  html body.single-product .hf-product-info{padding-bottom:72px!important}
  html body.single-product .hf-product-info .product_title{font-size:12px!important}
}
/* FIN â€” FICHA DE PRODUCTO v4.6 */

/* ============================================================================
   v4.7 â€” BARRA LATERAL IZQUIERDA, CANTIDAD A LA VISTA, BOLSA Y CHECKOUT
   ----------------------------------------------------------------------------
   Tres encargos del 19/10/2026:

   1. BARRA LATERAL (escritorio, >=1025px). La cabecera horizontal se convierte
      en una columna fija de 76px pegada al borde izquierdo: logo arriba, menu
      en vertical en el centro, buscador y bolsa abajo. El contenido se desplaza
      a la derecha. NO hace falta tocar header.php: la barra se construye con
      CSS sobre la cabecera que ya existe (.hf-logo, .hf-nav, .hf-actions).

   2. CANTIDAD A LA VISTA. Blocksy pinta el numero de la cantidad con
      Â«padding-inline = tamaÃ±o de la flecha + separacionÂ» por CADA lado. En la
      ficha el campo medÃ­a 56px de ancho con 28px de relleno a cada lado: caja
      de contenido 0px, el digito quedaba recortado y no se veia. En la bolsa el
      relleno era 0 pero las flechas caian encima del numero. Aqui el relleno
      vuelve a 0, el campo ocupa todo el ancho de su caja (el digito se centra,
      lejos de las flechas) y las flechas se pegan a los bordes.

   3. BOLSA Y CHECKOUT. Maquetacion editorial: filetes de 1px, etiquetas de
      10px en gris, precios mono, boton negro a todo lo ancho y resumen pegajoso
      a la derecha. De paso se arregla el checkout de Blocksy, que dejaba los
      campos de facturacion con ancho 0 (invisibles) y la bolsa sin cabecera.
   ============================================================================ */

/* ---------------------------------------------------------------------------
   V4.8.1  CABECERA ARRIBA Y CENTRADA (sustituye la barra lateral de la 4.7.1)
   ---------------------------------------------------------------------------
   La barra de 76px se retira: la cabecera vuelve a ocupar el ancho completo
   arriba, en negro y con el logo blanco, y su contenido se reparte en tres
   columnas (menu | logo | iconos) para que el logo quede EXACTAMENTE al medio.
   --------------------------------------------------------------------------- */
:root{--hf-rail:0px}
html body{padding-left:0!important}

@media(min-width:821px){
  html body .hf-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    align-items:center!important;
    width:100%!important;max-width:none!important;
    height:81px!important;min-height:81px!important;
    padding:0 24px!important;margin:0!important;gap:0!important;
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
    background:var(--hf-header-bg)!important;color:var(--hf-header-fg)!important;
    border:0!important;transform:none!important;z-index:900!important;
  }
  html body .hf-header .hf-menu{display:none!important}

  /* menu a la izquierda */
  html body .hf-header .hf-nav{
    grid-column:1!important;order:1!important;justify-self:start!important;
    display:flex!important;flex-direction:row!important;align-items:center!important;
    gap:22px!important;width:auto!important;margin:0!important;
  }
  html body .hf-header .hf-nav a{
    writing-mode:horizontal-tb!important;
    padding:6px 0!important;margin:0!important;
    font-family:var(--hf-font)!important;font-size:11px!important;line-height:1!important;
    font-weight:500!important;letter-spacing:.07em!important;
    color:var(--hf-header-fg)!important;text-transform:uppercase!important;text-decoration:none!important;
  }
  html body .hf-header .hf-nav a:hover,
  html body .hf-header .hf-nav a:focus-visible{color:var(--hf-grey-500)!important}

  /* logo al medio */
  html body .hf-header .hf-logo{
    grid-column:2!important;order:2!important;justify-self:center!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    margin:0!important;width:auto!important;
  }
  html body .hf-header .hf-logo img{
    width:auto!important;height:59.5px!important;max-width:130px!important;
    object-fit:contain!important;filter:var(--hf-logo-filter)!important;
  }

  /* buscador y bolsa a la derecha */
  html body .hf-header .hf-actions{
    grid-column:3!important;order:3!important;justify-self:end!important;
    display:flex!important;flex-direction:row!important;align-items:center!important;
    gap:14px!important;margin:0!important;width:auto!important;
  }
  html body .hf-header .hf-icon-button{width:40px!important;height:40px!important;color:var(--hf-header-fg)!important}
  html body .hf-header .hf-icon-button svg{width:19px!important;height:19px!important}

  /* el buscador se abre justo debajo de la barra */
  html body .hf-search-panel{
    position:fixed!important;top:81px!important;left:0!important;right:0!important;
    width:auto!important;padding:14px 24px!important;z-index:899!important;
  }
  /* la portada ocupa todo el ancho */
  html body .hf-home-hero{width:100%!important;max-width:100%!important;margin:0!important}
}

/* ---------------------------------------------------------------------------
   V4.7.2  CANTIDAD: el numero a la vista (ficha y bolsa, escritorio y movil)
   --------------------------------------------------------------------------- */
html body .quantity input.input-text.qty{
  padding:0!important;text-indent:0!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  height:100%!important;min-height:0!important;
  color:#000!important;-webkit-text-fill-color:#000!important;opacity:1!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  line-height:1!important;text-align:center!important;
  appearance:textfield!important;-moz-appearance:textfield!important;
}
html body .quantity input.input-text.qty::-webkit-outer-spin-button,
html body .quantity input.input-text.qty::-webkit-inner-spin-button{
  appearance:none!important;-webkit-appearance:none!important;margin:0!important;
}
/* flechas finas, pegadas a los bordes: no pisan el digito */
html body .quantity .ct-increase,
html body .quantity .ct-decrease{
  top:50%!important;transform:translateY(-50%)!important;
  width:24px!important;height:24px!important;min-width:24px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:transparent!important;border:0!important;border-radius:0!important;color:#000!important;
}
html body .quantity .ct-decrease{left:4px!important;right:auto!important}
html body .quantity .ct-increase{left:auto!important;right:4px!important}
html body .quantity .ct-increase svg,
html body .quantity .ct-decrease svg{width:9px!important;height:9px!important;color:#000!important}
html body .quantity .ct-increase:hover,
html body .quantity .ct-decrease:hover,
html body .quantity .ct-increase:hover svg,
html body .quantity .ct-decrease:hover svg{color:#757575!important}

/* ficha de producto */
html body.single-product .hf-product-info .quantity{
  width:104px!important;max-width:104px!important;
}
html body.single-product .hf-product-info .quantity input.input-text.qty{
  width:100%!important;padding:0!important;
}
/* bolsa (solo la tabla de la bolsa: el mini-carrito del panel usa .quantity
   como etiqueta de texto y no debe heredar la caja) */
html body.woocommerce-cart .woocommerce-cart-form .quantity{
  width:92px!important;height:38px!important;
  background:#fff!important;border:1px solid #000!important;position:relative!important;
}
html body.woocommerce-cart .woocommerce-cart-form .quantity input.input-text.qty{width:100%!important;height:36px!important}

/* el panel del carrito muestra la cantidad como etiqueta, sin caja */
html body.woocommerce-cart .hf-cart-drawer .quantity{
  border:0!important;background:transparent!important;
  height:auto!important;min-height:0!important;width:auto!important;padding:0!important;
}

/* ---------------------------------------------------------------------------
   V4.7.3  FICHA: columna de informacion mas ancha, pegada al lado derecho
   --------------------------------------------------------------------------- */
@media(min-width:1025px){
  html body.single-product .hf-product{
    max-width:1440px!important;margin:0 auto!important;
    padding:0 26px 90px!important;overflow:visible!important;
  }
  html body.single-product .hf-product-grid{
    grid-template-columns:minmax(0,1fr) 380px!important;column-gap:60px!important;
  }
  html body.single-product .hf-product-info{max-width:none!important;width:100%!important}
}

/* ---------------------------------------------------------------------------
   V4.7.4  BOLSA: cabecera editorial, articulos a la izquierda, resumen a la derecha
   --------------------------------------------------------------------------- */
/* el aviso Â«... se ha anadido a tu carrito. Ver carritoÂ» sobra dentro de la bolsa */
html body.woocommerce-cart .woocommerce-message{display:none!important}
.hf-cart-head,.hf-checkout-head{padding:26px 22px 14px!important}
.hf-cart-head h1,.hf-checkout-head h1{font-size:14px!important;letter-spacing:.08em!important}

@media(min-width:821px){
  html body.woocommerce-cart .ct-woocommerce-cart-form{
    display:grid!important;grid-template-columns:minmax(0,1fr) 320px!important;
    column-gap:60px!important;row-gap:0!important;align-items:start!important;width:100%!important;
  }
  html body.woocommerce-cart .woocommerce-cart-form{
    grid-column:1!important;width:100%!important;min-width:0!important;margin:0!important;
  }
  html body.woocommerce-cart .cart_totals{
    grid-column:2!important;float:none!important;
    position:sticky!important;top:20px!important;
    width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
    background:transparent!important;
  }
}

/* tabla de articulos */
html body.woocommerce-cart .shop_table.cart{
  width:100%!important;border:0!important;border-collapse:collapse!important;border-radius:0!important;
  background:transparent!important;
}
html body.woocommerce-cart .shop_table.cart thead tr{border:0!important;background:transparent!important}
html body.woocommerce-cart .shop_table.cart thead th{
  border:0!important;border-bottom:1px solid #000!important;
  padding:0 14px 10px 0!important;background:transparent!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;text-align:left!important;
}
html body.woocommerce-cart .shop_table.cart tbody tr{
  border:0!important;border-top:1px solid #e5e5e5!important;background:transparent!important;
}
html body.woocommerce-cart .shop_table.cart tbody td{
  border:0!important;padding:22px 14px 22px 0!important;background:transparent!important;
  color:#000!important;vertical-align:middle!important;
  font-family:var(--hf-font)!important;font-size:12px!important;
}
html body.woocommerce-cart .shop_table.cart .product-thumbnail{width:104px!important}
html body.woocommerce-cart .shop_table.cart .product-thumbnail img{
  width:88px!important;height:110px!important;object-fit:contain!important;
  background:#d0d0d0!important;filter:brightness(1.1)!important;border-radius:0!important;
}
html body.woocommerce-cart .shop_table.cart .product-name a{
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  letter-spacing:0!important;color:#000!important;text-transform:uppercase!important;text-decoration:none!important;
}
html body.woocommerce-cart .shop_table.cart .product-name a:hover{color:#757575!important}
html body.woocommerce-cart .shop_table.cart .product-name dl.variation,
html body.woocommerce-cart .shop_table.cart .product-name dl.variation dt,
html body.woocommerce-cart .shop_table.cart .product-name dl.variation dd{
  margin:6px 0 0!important;padding:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.4!important;
  color:#757575!important;text-transform:uppercase!important;
}
html body.woocommerce-cart .shop_table.cart .product-name dl.variation p{margin:0!important}
html body.woocommerce-cart .shop_table.cart .product-price{display:none!important}
html body.woocommerce-cart .shop_table.cart .product-subtotal{
  text-align:right!important;font-size:12px!important;font-weight:500!important;white-space:nowrap!important;
}
html body.woocommerce-cart .shop_table.cart .product-remove{width:34px!important;text-align:right!important}
html body.woocommerce-cart .shop_table.cart .product-remove a{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:24px!important;height:24px!important;font-size:15px!important;line-height:1!important;
  color:#757575!important;background:transparent!important;
}
html body.woocommerce-cart .shop_table.cart .product-remove a:hover{color:#000!important}

/* resumen */
html body.woocommerce-cart .cart_totals h2{
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;margin:0 0 12px!important;
}
html body.woocommerce-cart .cart_totals table.shop_table{
  width:100%!important;border:0!important;border-top:1px solid #000!important;
  border-collapse:collapse!important;background:transparent!important;
}
html body.woocommerce-cart .cart_totals table.shop_table th,
html body.woocommerce-cart .cart_totals table.shop_table td{
  border:0!important;border-bottom:1px solid #e5e5e5!important;
  padding:12px 0!important;background:transparent!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.02em!important;text-transform:uppercase!important;text-align:left!important;
}
html body.woocommerce-cart .cart_totals table.shop_table td{text-align:right!important}
html body.woocommerce-cart .cart_totals table.shop_table tr:last-child th,
html body.woocommerce-cart .cart_totals table.shop_table tr:last-child td{border-bottom:0!important}
html body.woocommerce-cart .cart_totals .order-total th,
html body.woocommerce-cart .cart_totals .order-total td{
  padding-top:18px!important;font-size:14px!important;font-weight:700!important;border-bottom:1px solid #000!important;
}
html body.woocommerce-cart .cart_totals .ct-shipping-heading{
  font-family:var(--hf-font)!important;font-size:10px!important;color:#757575!important;
  text-transform:uppercase!important;letter-spacing:.04em!important;margin:0 0 2px!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-destination{
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.5!important;
  color:#757575!important;text-align:left!important;margin:6px 0 0!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-calculator{
  text-align:left!important;font-size:10px!important;
}
html body.woocommerce-cart .cart_totals .shipping-calculator-button{
  font-family:var(--hf-font)!important;font-size:10px!important;color:#757575!important;
  text-decoration:underline!important;text-underline-offset:.25em!important;cursor:pointer!important;
}
html body.woocommerce-cart .cart_totals .shipping-calculator-form input,
html body.woocommerce-cart .cart_totals .shipping-calculator-form select,
html body.woocommerce-cart .cart_totals .shipping-calculator-form button{
  font-family:var(--hf-font)!important;font-size:11px!important;border-radius:0!important;
}
html body.woocommerce-cart .coupon,
html body.woocommerce-cart .actions{display:none!important}

/* boton de compra */
html body.woocommerce-cart .wc-proceed-to-checkout{
  margin:18px 0 0!important;padding:0!important;border:0!important;background:transparent!important;
}
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-height:52px!important;margin:0!important;padding:0 18px!important;
  background:#000!important;color:#fff!important;border:0!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-align:center!important;
}
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:#1c1c1c!important}

/* ---------------------------------------------------------------------------
   V4.7.5  CHECKOUT: formulario a la izquierda, pedido pegajoso a la derecha
   --------------------------------------------------------------------------- */
@media(min-width:821px){
  html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{
    display:grid!important;grid-template-columns:minmax(0,1fr) 380px!important;
    column-gap:60px!important;row-gap:0!important;align-items:start!important;width:100%!important;
  }
  html body.woocommerce-checkout .ct-customer-details{
    grid-column:1!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;
  }
  html body.woocommerce-checkout .ct-order-review{
    grid-column:2!important;position:sticky!important;top:20px!important;
    width:100%!important;min-width:0!important;
  }
}
/* Blocksy reparte los campos en columnas de 0px: se deshace */
html body.woocommerce-checkout .col2-set,
html body.woocommerce-checkout .col-1,
html body.woocommerce-checkout .col-2{
  display:block!important;float:none!important;width:100%!important;max-width:100%!important;
  min-width:0!important;margin:0!important;padding:0!important;
}
html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
html body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
html body.woocommerce-checkout .woocommerce-account-fields{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:24px!important;row-gap:16px!important;width:100%!important;
}
html body.woocommerce-checkout .form-row-wide,
html body.woocommerce-checkout .form-row.form-row-wide,
html body.woocommerce-checkout .woocommerce-account-fields .form-row{grid-column:1/-1!important}
html body.woocommerce-checkout .form-row{
  float:none!important;width:auto!important;margin:0!important;padding:0!important;
}
html body.woocommerce-checkout h3{
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;color:#000!important;
  margin:36px 0 18px!important;padding:14px 0 0!important;border-top:1px solid #000!important;
}
html body.woocommerce-checkout .woocommerce-billing-fields h3,
html body.woocommerce-checkout #order_review_heading{
  margin-top:0!important;padding-top:0!important;border-top:0!important;
}
html body.woocommerce-checkout #order_review_heading{margin-bottom:14px!important}
html body.woocommerce-checkout label{
  display:block!important;margin:0 0 6px!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.04em!important;color:#000!important;text-transform:uppercase!important;
}
html body.woocommerce-checkout .required{color:#757575!important;text-decoration:none!important}
html body.woocommerce-checkout input.input-text,
html body.woocommerce-checkout select,
html body.woocommerce-checkout textarea{
  width:100%!important;min-height:46px!important;
  border:0!important;border-bottom:1px solid #000!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
  padding:10px 0!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:13px!important;font-weight:400!important;
  text-transform:none!important;letter-spacing:0!important;
}
html body.woocommerce-checkout textarea{min-height:100px!important}
html body.woocommerce-checkout .select2-container{
  width:100%!important;
}
/* Select2 esconde el <select> nativo con .select2-hidden-accessible: si la
   regla de arriba le pone width:100% se convierte en una caja de 1425px fuera
   del formulario y saca una barra horizontal. Se le devuelve su tamaÃ±o de 1px. */
html body.woocommerce-checkout select.select2-hidden-accessible{
  width:1px!important;height:1px!important;min-height:0!important;
  margin:-1px!important;padding:0!important;border:0!important;
  position:absolute!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;
}
html body.woocommerce-checkout .select2-container .select2-selection--single{
  height:46px!important;border:0!important;border-bottom:1px solid #000!important;
  border-radius:0!important;background:transparent!important;
}
html body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:44px!important;padding:0!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:13px!important;
}
html body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px!important}
html body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
html body.woocommerce-checkout .woocommerce-form__label-for-checkbox span{
  font-family:var(--hf-font)!important;font-size:11px!important;text-transform:none!important;
  letter-spacing:0!important;color:#000!important;
}
html body.woocommerce-checkout .woocommerce-form__input-checkbox{
  width:13px!important;height:13px!important;min-height:0!important;margin:0 8px 0 0!important;
  border:1px solid #000!important;background:#fff!important;accent-color:#000!important;
}

/* resumen del pedido */
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table{
  width:100%!important;border:0!important;border-collapse:collapse!important;
  border-top:1px solid #000!important;background:transparent!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th{
  border:0!important;border-bottom:1px solid #000!important;padding:12px 0!important;
  background:transparent!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;text-align:left!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot th,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot td{
  border:0!important;border-bottom:1px solid #e5e5e5!important;padding:13px 0!important;
  background:transparent!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  text-transform:uppercase!important;text-align:left!important;vertical-align:top!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td.product-total,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot td{text-align:right!important}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot tr:last-child th,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot tr:last-child td{border-bottom:0!important}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table .order-total th,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table .order-total td{
  padding-top:18px!important;font-size:14px!important;font-weight:700!important;
}

/* pago */
html body.woocommerce-checkout #payment{
  background:transparent!important;border:0!important;border-radius:0!important;
}
html body.woocommerce-checkout #payment ul.payment_methods{
  list-style:none!important;margin:0 0 18px!important;padding:14px 0!important;
  border:0!important;border-top:1px solid #000!important;border-bottom:1px solid #000!important;
  background:transparent!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li{
  list-style:none!important;margin:0 0 12px!important;padding:0!important;border:0!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li:last-child{margin-bottom:0!important}
html body.woocommerce-checkout #payment ul.payment_methods li label{
  display:inline!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.03em!important;text-transform:uppercase!important;color:#000!important;cursor:pointer!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{
  width:13px!important;height:13px!important;min-height:0!important;margin:0 9px 0 0!important;
  border:1px solid #000!important;background:#fff!important;accent-color:#000!important;vertical-align:middle!important;
}
html body.woocommerce-checkout #payment div.payment_box{
  margin:12px 0 0!important;padding:14px 16px!important;
  background:#f4f4f4!important;border:0!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.55!important;
  color:#000!important;text-transform:none!important;
}
html body.woocommerce-checkout #payment div.payment_box::before{display:none!important}
html body.woocommerce-checkout #payment .place-order{padding:0!important;margin:0!important}
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
html body.woocommerce-checkout .woocommerce-privacy-policy-text,
html body.woocommerce-checkout .woocommerce-privacy-policy-text p{
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.55!important;
  color:#757575!important;text-transform:none!important;
}
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin:0 0 14px!important}
html body.woocommerce-checkout #place_order{
  width:100%!important;min-height:52px!important;margin:0!important;
  border:0!important;border-radius:0!important;background:#000!important;color:#fff!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;cursor:pointer!important;
}
html body.woocommerce-checkout #place_order:hover{background:#1c1c1c!important}

/* avisos de cupon / acceso, de bloque a linea */
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  margin:0 0 20px!important;padding:14px 0!important;
  background:transparent!important;border:0!important;border-top:1px solid #000!important;
  border-bottom:1px solid #000!important;border-radius:0!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:10px!important;letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none!important}
html body.woocommerce-checkout .woocommerce-form-login,
html body.woocommerce-checkout .woocommerce-form-coupon{
  border:0!important;border-radius:0!important;padding:0 0 10px!important;margin:0 0 22px!important;
  background:transparent!important;
}
html body.woocommerce-checkout .woocommerce-form-login .button,
html body.woocommerce-checkout .woocommerce-form-coupon .button{
  min-height:46px!important;border:1px solid #000!important;border-radius:0!important;
  background:#000!important;color:#fff!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
}

/* ---------------------------------------------------------------------------
   V4.7.6  MOVIL â€” bolsa y checkout en una columna, con las mismas reglas
   --------------------------------------------------------------------------- */
@media(max-width:820px){
  .hf-cart-head,.hf-checkout-head{padding:18px 22px 10px!important}

  /* -------------------------------------------------------------------
     BOLSA EN MOVIL â€” foto | nombre | [cantidad Ã— precio âŒ«]
     Blocksy mete la cantidad, el precio y el borrado en un mismo bloque
     (.product-mobile-actions) dentro de una celda de 60px: la caja de la
     cantidad se quedaba en 2px y no se veia el numero. Aqui ese bloque pasa
     a su propia fila, a lo ancho, y la caja de cantidad conserva sus 92px.
     ------------------------------------------------------------------- */
  html body.woocommerce-cart .ct-woocommerce-cart-form{column-gap:0!important}
  html body.woocommerce-cart .shop_table.cart tr.cart_item{
    grid-template-columns:84px minmax(0,1fr)!important;
    gap:10px!important;padding:16px 0!important;align-items:start!important;
  }
  html body.woocommerce-cart .shop_table.cart tbody td{padding:0!important;border:0!important}
  html body.woocommerce-cart .shop_table.cart .product-thumbnail{grid-column:1!important;grid-row:1 / span 3!important;width:84px!important;max-width:84px!important}
  html body.woocommerce-cart .shop_table.cart .product-thumbnail img{width:84px!important;height:105px!important}
  html body.woocommerce-cart .shop_table.cart .product-name{grid-column:2!important;grid-row:1!important}
  html body.woocommerce-cart .shop_table.cart .product-quantity{display:none!important}
  html body.woocommerce-cart .shop_table.cart .product-price,
  html body.woocommerce-cart .shop_table.cart .product-subtotal{display:none!important}
  html body.woocommerce-cart .shop_table.cart .product-mobile-actions{
    grid-column:2!important;grid-row:2!important;
    display:flex!important;flex-wrap:wrap!important;
    align-items:center!important;justify-content:flex-start!important;
    gap:10px!important;width:auto!important;min-width:0!important;
  }
  html body.woocommerce-cart .shop_table.cart .product-mobile-actions .quantity{
    flex:0 0 92px!important;width:92px!important;min-width:92px!important;
  }
  html body.woocommerce-cart .shop_table.cart .product-mobile-actions .ct-product-multiply-symbol{
    font-size:11px!important;color:#757575!important;
  }
  html body.woocommerce-cart .shop_table.cart .product-mobile-actions .woocommerce-Price-amount{
    font-size:12px!important;font-weight:500!important;
  }
  html body.woocommerce-cart .shop_table.cart .product-mobile-actions .remove{
    margin-left:auto!important;display:inline-flex!important;
    align-items:center!important;justify-content:center!important;
    width:22px!important;height:22px!important;color:#757575!important;
  }
  html body.woocommerce-cart .cart_totals{position:static!important;margin:26px 0 0!important}
  html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{column-gap:0!important}
  html body.woocommerce-checkout .ct-order-review{position:static!important;margin:30px 0 0!important}
  html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
/* ---------------------------------------------------------------------------
   V4.8.2  TIENDA: CATEGORIAS EN COLUMNA A LA IZQUIERDA
   ---------------------------------------------------------------------------
   La lista que antes vivia escondida en el panel FILTROS pasa a una columna
   fija a la izquierda (escritorio). La rejilla de productos ocupa el resto.
   En movil la columna se convierte en una fila de chips deslizable.
   --------------------------------------------------------------------------- */
html body.post-type-archive-product .hf-shop-shell,
html body.tax-product_cat .hf-shop-shell{
  position:static!important;
  padding:26px 26px 90px!important;
  overflow:visible!important;
}
@media(min-width:1025px){
  html body .hf-shop-layout{
    display:grid!important;
    grid-template-columns:186px minmax(0,1fr)!important;
    column-gap:48px!important;
    align-items:start!important;
    width:100%!important;
  }
  html body .hf-shop-cats{
    position:sticky!important;top:24px!important;
    padding:2px 0 0!important;margin:0!important;
    align-self:start!important;
  }
}
html body .hf-shop-cats-title{
  margin:0 0 16px!important;padding:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1!important;
  font-weight:500!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;color:#757575!important;
}
html body .hf-shop-cats-list{
  list-style:none!important;margin:0!important;padding:0!important;
  display:flex!important;flex-direction:column!important;gap:11px!important;
}
html body .hf-shop-cats-list a{
  display:block!important;padding:0!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.3!important;
  font-weight:500!important;letter-spacing:.06em!important;
  text-transform:uppercase!important;text-decoration:none!important;color:#000!important;
  transition:color .18s ease!important;
}
html body .hf-shop-cats-list a:hover,
html body .hf-shop-cats-list a:focus-visible{color:#757575!important}
html body .hf-shop-cats-list a.is-active{
  text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important;
}
html body .hf-shop-main{position:relative!important;min-width:0!important}
/* la rejilla mide el ancho de su columna, no el de la ventana */
html body .hf-shop-main .hf-shop-grid{width:100%!important;max-width:100%!important}

/* el disparador de orden vuelve al flujo, arriba a la derecha de la rejilla */
html body.post-type-archive-product .hf-shop-main .hf-shop-toolbar{
  position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  height:auto!important;min-height:0!important;
  margin:0 0 18px!important;padding:0!important;
  display:flex!important;justify-content:flex-end!important;align-items:center!important;
  pointer-events:auto!important;z-index:20!important;
}
html body .hf-filter-trigger-v25{
  display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;
  gap:8px!important;width:auto!important;height:34px!important;min-height:0!important;
  padding:0 13px!important;margin:0!important;
  background:#fff!important;color:#000!important;border:1px solid #000!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;line-height:1!important;cursor:pointer!important;
}
html body .hf-filter-trigger-v25:hover,
html body .hf-filter-trigger-v25[aria-expanded="true"]{background:#000!important;color:#fff!important}
html body .hf-filter-trigger-v25 svg{width:15px!important;height:15px!important;flex:0 0 15px!important}
html body .hf-filter-panel-v25{
  position:absolute!important;right:0!important;top:calc(100% + 8px)!important;left:auto!important;
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  min-width:190px!important;padding:8px!important;margin:0!important;
  background:#fff!important;border:1px solid #000!important;border-radius:0!important;
  box-shadow:0 10px 30px rgba(0,0,0,.12)!important;z-index:30!important;
}
html body .hf-filter-panel-v25[hidden]{display:none!important}
html body .hf-filter-panel-v25 .hf-filter-link{
  display:block!important;width:100%!important;min-height:34px!important;line-height:34px!important;
  padding:0 10px!important;margin:0!important;text-align:left!important;
  background:transparent!important;color:#000!important;border:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;
}
html body .hf-filter-panel-v25 .hf-filter-link:hover,
html body .hf-filter-panel-v25 .hf-filter-link.is-active{background:#000!important;color:#fff!important}
html body .hf-filter-panel-v25 .hf-filter-divider{
  display:block!important;width:100%!important;height:1px!important;
  background:#e5e5e5!important;margin:6px 0!important;
}
/* el panel lo rellena el script del filtro (WOOF): se le da forma editorial */
html body .hf-filter-panel-v25{
  max-height:calc(100vh - 150px)!important;overflow-y:auto!important;
}
html body .hf-filter-drawer-title{
  margin:0 0 8px!important;padding:2px 8px 10px!important;
  border-bottom:1px solid #e5e5e5!important;
  font-size:10px!important;line-height:1!important;font-weight:500!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#757575!important;
}
html body .hf-filter-section-label{
  padding:10px 8px 4px!important;
  font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#757575!important;
}
html body .hf-filter-sort{display:flex!important;flex-direction:column!important}
html body .hf-filter-sort a{
  display:block!important;min-height:32px!important;line-height:32px!important;padding:0 8px!important;
  font-size:10px!important;font-weight:500!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;text-decoration:none!important;color:#000!important;
}
html body .hf-filter-sort a:hover{background:#000!important;color:#fff!important}
html body .hf-filter-panel-v25 .woof{
  width:auto!important;max-width:none!important;padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
html body .hf-filter-panel-v25 .woof_submit_search_form,
html body .hf-filter-panel-v25 .woof_reset_search_form,
html body .hf-filter-panel-v25 .woof_button{
  height:32px!important;min-height:0!important;padding:0 12px!important;
  background:#000!important;color:#fff!important;border:1px solid #000!important;border-radius:0!important;
  font-size:10px!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
html body .hf-filter-panel-v25 .woof_reset_search_form{background:#fff!important;color:#000!important}
html body .hf-filter-panel-v25 .hf-v26-color-block{margin:8px 0 2px!important}
html body .hf-filter-panel-v25 .hf-v26-color-block h4{
  margin:0 0 6px!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;color:#757575!important;
}
html body .hf-filter-panel-v25 .hf-v26-color-list{display:flex!important;flex-wrap:wrap!important;gap:6px 12px!important}
html body .hf-filter-panel-v25 .hf-v26-color-option{
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  font-size:10px!important;letter-spacing:.06em!important;text-transform:uppercase!important;cursor:pointer!important;
}

/* --- movil / tablet: la columna pasa a fila de chips --- */
@media(max-width:1024px){
  html body.post-type-archive-product .hf-shop-shell,
  html body.tax-product_cat .hf-shop-shell{padding:16px 14px 90px!important}
  html body .hf-shop-layout{display:block!important}
  html body .hf-shop-cats{margin:0 0 18px!important;padding:0!important}
  html body .hf-shop-cats-title{margin:0 0 10px!important;font-size:9px!important}
  html body .hf-shop-cats-list{
    flex-direction:row!important;flex-wrap:nowrap!important;gap:6px!important;
    overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;
    padding-bottom:4px!important;scrollbar-width:none!important;
  }
  html body .hf-shop-cats-list::-webkit-scrollbar{display:none!important}
  html body .hf-shop-cats-list li{flex:0 0 auto!important}
  html body .hf-shop-cats-list a{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    height:32px!important;padding:0 12px!important;
    border:1px solid #000!important;border-radius:0!important;
    font-size:10px!important;letter-spacing:.06em!important;text-decoration:none!important;
  }
  html body .hf-shop-cats-list a.is-active{background:#000!important;color:#fff!important;text-decoration:none!important}
  html body.post-type-archive-product .hf-shop-main .hf-shop-toolbar{
    margin:0 0 14px!important;justify-content:flex-end!important;
  }
}

/* ---------------------------------------------------------------------------
   V4.8.3  TARJETAS: el titulo y el precio fuera del fondo plomo
   ---------------------------------------------------------------------------
   El gris queda solo detras de la foto (que ya trae #d0d0d0 y se aclara con
   brightness). La ficha de texto va sobre blanco.
   --------------------------------------------------------------------------- */
html body .hf-shop-card{background:#fff!important}
html body .hf-shop-card-info{background:#fff!important;padding:10px 0 0!important}
html body .hf-shop-card-title{color:#000!important}

/* ---------------------------------------------------------------------------
   V4.8.4  PRODUCTOS SUGERIDOS: los botones igual que el CTA de la ficha
   --------------------------------------------------------------------------- */
html body .related .products .button,
html body .up-sells .products .button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:38px!important;min-height:0!important;
  padding:0 10px!important;margin:10px 0 0!important;
  background:#000!important;color:#fff!important;
  border:1px solid #000!important;border-radius:0!important;box-shadow:none!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  text-decoration:none!important;text-shadow:none!important;
  transition:background-color .18s ease,border-color .18s ease!important;
}
html body .related .products .button:hover,
html body .related .products .button:focus-visible,
html body .up-sells .products .button:hover,
html body .up-sells .products .button:focus-visible{
  background:#757575!important;border-color:#757575!important;color:#fff!important;
}
html body .related .products .button::after,
html body .up-sells .products .button::after{display:none!important;content:none!important}
html body .related .ct-module-title,
html body .up-sells .ct-module-title{
  margin:0 0 18px!important;padding:16px 0 0!important;
  border-top:1px solid #000!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.3!important;
  font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
/* ===========================================================================
   V4.9  AFINADOS: sugeridos, tienda, bolsa y deslizable
   =========================================================================== */

/* --- V4.9.1  SUGERIDOS: foto 4:5 sobre #d0d0d0 y ficha como la tienda ------ */
html body .related .products figure,
html body .up-sells .products figure{margin:0 0 6px!important}
html body .related .products figure a,
html body .up-sells .products figure a{
  display:block!important;position:relative!important;
  width:100%!important;aspect-ratio:4/5!important;
  background:#d0d0d0!important;overflow:hidden!important;
}
html body .related .products figure img,
html body .up-sells .products figure img{
  display:block!important;width:100%!important;height:100%!important;
  aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;
  background:#d0d0d0!important;filter:none!important;border-radius:0!important;
}
html body .related .products .woocommerce-loop-product__title,
html body .up-sells .products .woocommerce-loop-product__title{
  margin:0!important;padding:0!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.3!important;
  font-weight:600!important;letter-spacing:0!important;text-transform:uppercase!important;color:#000!important;
}
html body :not(#hf-sweep-a):not(#hf-sweep-b) .related .products .woocommerce-loop-product__title,
html body :not(#hf-sweep-a):not(#hf-sweep-b) .up-sells .products .woocommerce-loop-product__title{
  font-weight:600!important;
}
html body .related .products .woocommerce-loop-product__title a,
html body .up-sells .products .woocommerce-loop-product__title a{
  color:#000!important;text-decoration:none!important;
}
html body .related .products .price,
html body .up-sells .products .price{
  display:block!important;margin:2px 0 0!important;
  font-family:var(--hf-font)!important;font-size:0!important;font-weight:500!important;
  line-height:1.3!important;letter-spacing:0!important;color:#000!important;
}
/* el Â«Desde:Â» es un nodo de texto: se apaga y solo queda la cifra */
html body .related .products .price .amount,
html body .up-sells .products .price .amount{font-size:12px!important}
html body .related .products .entry-meta,
html body .up-sells .products .entry-meta,
html body .related .products .ct-woo-card-actions,
html body .up-sells .products .ct-woo-card-actions{display:none!important}

/* --- V4.9.2  TIENDA: menos aire foto/titulo y un punto mas de peso --------- */
html body .hf-shop-card-info{padding-top:6px!important}
html body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-shop-card-title{font-weight:600!important}

/* --- V4.9.3  BOLSA: cabecera limpia, atributos livianos y resumen alineado - */
html body.woocommerce-cart .hf-bolsa-page-head{display:none!important}
html body.woocommerce-cart .hf-bolsa-page-checkout{display:none!important}
html body.woocommerce-cart .hf-bolsa-page>p:has(>.hf-bolsa-page-checkout){display:none!important}

html body .hf-cart-head{
  display:flex!important;align-items:baseline!important;justify-content:flex-start!important;
  gap:0!important;padding:22px 22px 12px!important;border-bottom:1px solid #000!important;
}
html body .hf-cart-head h1{margin:0!important;font-size:14px!important;letter-spacing:.08em!important}

/* los atributos van en su propio renglon, con menos peso */
html body .hf-cart-attrs{
  display:block!important;margin-top:4px!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.4!important;
  font-weight:400!important;letter-spacing:.02em!important;color:#757575!important;
  text-transform:uppercase!important;
}
html body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-attrs{font-weight:400!important}

/* cantidad: un solo juego de botones, sin caja (â€” 1 +) */
html body.woocommerce-cart .product-quantity .quantity .ct-increase,
html body.woocommerce-cart .product-quantity .quantity .ct-decrease{display:none!important}
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity{
  display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  width:auto!important;height:26px!important;min-height:0!important;
  padding:0!important;background:transparent!important;border:0!important;position:relative!important;
}
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity .hf-qty-minus,
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity .hf-qty-plus{
  position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:20px!important;min-width:20px!important;height:22px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;
  font-family:var(--hf-font)!important;font-size:14px!important;font-weight:400!important;line-height:1!important;
  color:#000!important;cursor:pointer!important;
}
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity .hf-qty-minus:hover,
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity .hf-qty-plus:hover{color:#757575!important}
html body.woocommerce-cart .woocommerce-cart-form .product-quantity .quantity input.input-text.qty{
  width:28px!important;min-width:28px!important;height:22px!important;
  font-size:12px!important;font-weight:500!important;
}

/* envio: metodo a la izquierda y precio pegado al borde derecho del resumen */
html body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td{text-align:left!important}
html body.woocommerce-cart .cart_totals .ct-shipping-heading{margin:0 0 6px!important}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-methods{
  margin:0!important;padding:0!important;list-style:none!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li{
  display:flex!important;align-items:baseline!important;gap:7px!important;
  margin:0 0 3px!important;padding:0!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-methods input{
  flex:0 0 auto!important;margin:0!important;accent-color:#000!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-methods label{
  flex:1 1 auto!important;display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  gap:10px!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.02em!important;text-transform:uppercase!important;color:#000!important;
}
html body.woocommerce-cart .cart_totals .woocommerce-shipping-methods label .amount{white-space:nowrap!important}

/* --- V4.9.4  DESLIZABLE: ficha completa, cantidad y compra ----------------- */
html body .hf-cart-drawer{display:flex!important;flex-direction:column!important}
html body .hf-cart-drawer-head{
  height:56px!important;flex:0 0 auto!important;padding:0 22px!important;
  border-bottom:1px solid #e5e5e5!important;
}
html body .hf-cart-drawer-head strong{
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:600!important;letter-spacing:.08em!important;
}
html body .hf-cart-drawer-body{
  flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;padding:0!important;
  display:flex!important;flex-direction:column!important;
}
html body .hf-cart-drawer .widget_shopping_cart_content{
  display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;
  padding:0 22px!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart{
  flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;
  margin:0!important;padding:0!important;list-style:none!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item{
  position:relative!important;display:grid!important;
  grid-template-columns:78px minmax(0,1fr)!important;gap:14px!important;align-items:start!important;
  min-height:0!important;margin:0!important;padding:16px 22px 16px 0!important;
  border:0!important;border-bottom:1px solid #e5e5e5!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item .ct-media-container{
  display:block!important;width:78px!important;height:98px!important;
  background:#d0d0d0!important;overflow:hidden!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item img{
  position:static!important;display:block!important;
  width:78px!important;height:98px!important;
  object-fit:contain!important;background:#d0d0d0!important;filter:none!important;border-radius:0!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item .product-data{
  grid-column:2!important;display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item a.product-title{
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.35!important;
  font-weight:500!important;letter-spacing:.01em!important;text-transform:uppercase!important;color:#000!important;
}
html body .hf-cart-drawer .hf-bag-price{
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.3!important;
  font-weight:400!important;letter-spacing:0!important;color:#000!important;
}
html body .hf-cart-drawer .hf-bag-qty{display:flex!important;align-items:center!important;gap:0!important;margin-top:6px!important}
html body .hf-cart-drawer .hf-bag-step{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:22px!important;height:22px!important;padding:0!important;margin:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  font-family:var(--hf-font)!important;font-size:14px!important;font-weight:400!important;line-height:1!important;
  color:#000!important;cursor:pointer!important;
}
html body .hf-cart-drawer .hf-bag-step:hover{color:#757575!important}
html body .hf-cart-drawer .hf-bag-n{
  min-width:20px!important;text-align:center!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;line-height:1!important;
}
body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-drawer-head strong{font-weight:600!important}
body .hf-cart-drawer:not(#hf-sweep-a):not(#hf-sweep-b) .hf-bag-price,
body .hf-cart-drawer:not(#hf-sweep-a):not(#hf-sweep-b) .hf-bag-step{font-weight:400!important}
html body .hf-cart-drawer .woocommerce-mini-cart-item .remove{
  position:absolute!important;right:0!important;top:14px!important;left:auto!important;
  width:18px!important;height:18px!important;margin:0!important;padding:0!important;
  color:#757575!important;background:transparent!important;
}
html body .hf-cart-drawer .remove svg{width:9px!important;height:9px!important}

html body .hf-cart-drawer .woocommerce-mini-cart__total{
  flex:0 0 auto!important;display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:12px!important;
  margin:0!important;padding:14px 0!important;border-top:1px solid #000!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart__total .amount{font-size:12px!important;white-space:nowrap!important}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons{
  display:block!important;flex:0 0 auto!important;margin:0!important;padding:0 0 18px!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons .button:not(.checkout){display:none!important}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons .checkout{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:48px!important;margin:0!important;padding:0 14px!important;
  background:#000!important;border:1px solid #000!important;border-radius:0!important;
  color:#fff!important;font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons .checkout:hover{
  background:#757575!important;border-color:#757575!important;color:#fff!important;
}

/* bolsa vacia dentro del deslizable */
html body .hf-cart-drawer .cart-empty{
  margin:18px 0 0!important;padding:0!important;border:0!important;background:transparent!important;
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.5!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:#757575!important;
}
html body .hf-cart-drawer .cart-empty a{color:#000!important;text-decoration:underline!important;text-underline-offset:2px!important}
html body .hf-cart-drawer .return-to-shop{margin:14px 0 0!important}
html body .hf-cart-drawer .return-to-shop .button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:44px!important;padding:0 14px!important;
  background:#000!important;border:1px solid #000!important;border-radius:0!important;color:#fff!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:500!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;
}

@media(min-width:821px){
  html body .hf-cart-drawer{width:min(430px,94vw)!important}
}
@media(max-width:820px){
  html body .hf-cart-drawer-head{padding:0 18px!important}
  html body .hf-cart-drawer .widget_shopping_cart_content{padding:0 18px!important}
  html body .hf-cart-drawer .woocommerce-mini-cart-item{padding-right:20px!important}
  html body .hf-cart-drawer .woocommerce-mini-cart__buttons{padding-bottom:16px!important}
}
/* ============================================================================
   V4.10 â€” FICHA CON CATEGORIAS, BOLSA SIN FILETES, CHECKOUT Y LOGO
   Solo estos puntos: el resto de la piel queda igual que en v4.9.
   ============================================================================ */

/* --- V4.10.1  FICHA: rail de categorias fijo, fotos centradas, 12px -------- */
html body.single-product .hf-product-cats{display:none!important}

@media(min-width:821px){
  html body.single-product .hf-product{
    display:grid!important;
    grid-template-columns:clamp(120px,13vw,186px) minmax(0,1fr)!important;
    column-gap:clamp(22px,3vw,48px)!important;
    align-items:start!important;
  }
  html body.single-product .hf-product-cats{
    display:block!important;grid-column:1!important;align-self:start!important;
    position:sticky!important;top:24px!important;
    margin:0!important;padding:2px 0 0!important;
  }
  /* en la ficha la lista es vertical tambien entre 821 y 1024 (la tienda la
     convierte en chips; aqui se recupera la columna) */
  html body.single-product .hf-shop-cats-title{margin:0 0 16px!important;font-size:10px!important}
  html body.single-product .hf-shop-cats-list{
    flex-direction:column!important;flex-wrap:nowrap!important;gap:11px!important;
    overflow:visible!important;white-space:normal!important;padding-bottom:0!important;
  }
  html body.single-product .hf-shop-cats-list a{
    display:block!important;height:auto!important;padding:0!important;border:0!important;
    font-size:11px!important;background:transparent!important;color:#000!important;
  }
  html body.single-product .hf-shop-cats-list a.is-active{
    background:transparent!important;color:#000!important;
  }
  html body.single-product .hf-product-grid{grid-column:2!important}
  html body.single-product .hf-product-gallery{
    width:100%!important;max-width:620px!important;
    margin-left:auto!important;margin-right:auto!important;
  }
  /* 12px reales entre foto y foto */
  html body.single-product .hf-carousel-slide{margin:12px 0 0!important}
  html body.single-product .hf-carousel-slide:first-child{margin-top:0!important}
}
@media(min-width:821px) and (max-width:1024px){
  html body.single-product .hf-product-grid{
    grid-template-columns:minmax(0,1fr) minmax(280px,325px)!important;
    column-gap:clamp(26px,3.6vw,44px)!important;
  }
}
@media(min-width:1025px){
  html body.single-product .hf-product-grid{
    grid-template-columns:minmax(0,1fr) 380px!important;
    column-gap:60px!important;
  }
}

/* nombre del producto: un punto mas de peso */
html body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .product_title{font-weight:700!important}

/* Â«Ver bolsaÂ» tras anexar: misma altura que el boton ANEXADO */
html body.single-product .hf-product-info .added_to_cart{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  height:35px!important;min-height:35px!important;max-height:35px!important;
  padding:0 12px!important;margin:0!important;
  border:1px solid #000!important;border-radius:0!important;background:#fff!important;
  color:#000!important;font-family:var(--hf-font)!important;font-size:12px!important;
  font-weight:500!important;line-height:1!important;letter-spacing:0!important;
  text-transform:uppercase!important;text-decoration:none!important;
}

/* --- V4.10.2  BOLSA: sin cabecera y sin filetes horizontales --------------- */
html body.woocommerce-cart .hf-cart-head{display:none!important}
html body.woocommerce-cart .shop_table.cart thead th{border-bottom:0!important}
html body.woocommerce-cart .shop_table.cart tbody tr{border-top:0!important}
html body.woocommerce-cart .cart_totals table.shop_table{border-top:0!important}
html body.woocommerce-cart .cart_totals table.shop_table tr{border-top:0!important;border-bottom:0!important}
html body.woocommerce-cart .cart_totals table.shop_table th,
html body.woocommerce-cart .cart_totals table.shop_table td{border-bottom:0!important}
html body.woocommerce-cart .cart_totals .order-total th,
html body.woocommerce-cart .cart_totals .order-total td{border-bottom:0!important}
/* el rotulo de la tabla arranca donde arranca el nombre, no donde la foto */
html body.woocommerce-cart .shop_table.cart thead th.product-name{padding-left:104px!important}

/* --- V4.10.3  CHECKOUT: foto en el resumen y variantes livianas ------------ */
html body.woocommerce-checkout .hf-checkout-head{display:none!important}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  position:relative!important;height:86px!important;padding-left:62px!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th.product-name{
  padding-left:62px!important;
}
html body.woocommerce-checkout .hf-checkout-thumb{
  position:absolute!important;left:0!important;top:13px!important;display:block!important;
  width:48px!important;height:60px!important;background:#d0d0d0!important;overflow:hidden!important;
}
html body.woocommerce-checkout .hf-checkout-thumb img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:contain!important;background:#d0d0d0!important;
}
html body.woocommerce-checkout .hf-checkout-attrs{
  display:block!important;margin-top:3px!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.4!important;
  font-weight:400!important;letter-spacing:.02em!important;color:#757575!important;
  text-transform:uppercase!important;
}
html body :not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-attrs{font-weight:400!important}
html body.woocommerce-checkout #payment div.payment_box p{
  margin:0!important;font-family:var(--hf-font)!important;font-size:10px!important;
  line-height:1.55!important;font-weight:400!important;letter-spacing:.02em!important;
  color:#757575!important;text-transform:none!important;
}

/* --- V4.11  FILTROS: boton y desplegable con una sola tipografia ----------- */
/* Una sola voz dentro del panel: 10 px, peso 500, versalitas y Helvetica,
   exactamente como el boton FILTROS. */
html body #hf-filter-panel-v25,
html body #hf-filter-panel-v25 *{
  font-family:var(--hf-font)!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body #hf-filter-panel-v25 strong,
html body #hf-filter-panel-v25 b{font-weight:500!important}

/* rotulos: el mismo gris que FILTROS / ORDENAR */
html body #hf-filter-panel-v25 .hf-filter-drawer-title,
html body #hf-filter-panel-v25 .hf-filter-section-label,
html body #hf-filter-panel-v25 .woof_container h4,
html body #hf-filter-panel-v25 .hf-v26-color-block h4{color:#757575!important}
html body #hf-filter-panel-v25 .woof_container h4{margin:12px 0 6px!important;line-height:1.3!important}

/* todo el contenido arranca en la misma vertical que los rotulos */
html body #hf-filter-panel-v25 .woof_container_inner,
html body #hf-filter-panel-v25 .woof_submit_search_form_container{padding:0 8px!important}

/* categorias: el selector de WOOF media 0 px de ancho */
html body #hf-filter-panel-v25 .chosen-container{width:100%!important}
html body #hf-filter-panel-v25 a.chosen-single{
  height:32px!important;line-height:30px!important;padding:0 26px 0 8px!important;
  background:#fff!important;border:1px solid #000!important;border-radius:0!important;
  color:#000!important;box-shadow:none!important;
}
html body #hf-filter-panel-v25 .chosen-container .chosen-drop{border:1px solid #000!important;border-radius:0!important;box-shadow:none!important}
html body #hf-filter-panel-v25 .chosen-results li{padding:6px 8px!important;line-height:1.2!important;color:#000!important}
html body #hf-filter-panel-v25 .chosen-results li.highlighted{background:#000!important;color:#fff!important}
html body #hf-filter-panel-v25 .chosen-search input[type="text"]{border:1px solid #000!important;border-radius:0!important;padding:4px 8px!important}

/* tallas: la casilla azul de WOOF pasa al blanco y negro del resto */
html body #hf-filter-panel-v25 .iradio_square-blue{
  width:16px!important;height:16px!important;margin:0 6px 0 0!important;vertical-align:middle!important;
  background-image:none!important;background-color:#fff!important;
  border:1px solid #000!important;border-radius:0!important;
}
html body #hf-filter-panel-v25 .iradio_square-blue.checked{background-color:#000!important}
html body #hf-filter-panel-v25 .iradio_square-blue.checked:after{
  content:""!important;position:absolute!important;left:5px!important;top:2px!important;
  width:4px!important;height:8px!important;
  border:solid #fff!important;border-width:0 1px 1px 0!important;transform:rotate(45deg)!important;
}
html body #hf-filter-panel-v25 .woof_radio_label{
  margin:0 0 7.5px 5px!important;padding:4px 0!important;
  line-height:16px!important;vertical-align:middle!important;color:#000!important;
}

/* precio: las burbujas del slider dejan el azul por el negro */
html body #hf-filter-panel-v25 .irs-from,
html body #hf-filter-panel-v25 .irs-to,
html body #hf-filter-panel-v25 .irs-single{background:#000!important;color:#fff!important}
html body #hf-filter-panel-v25 .irs-min,
html body #hf-filter-panel-v25 .irs-max{background:#f2f2f2!important;color:#757575!important}
html body #hf-filter-panel-v25 .irs-bar{background:#000!important}
html body #hf-filter-panel-v25 .irs-line{background:#e5e5e5!important}
html body #hf-filter-panel-v25 .irs-handle{border-color:#000!important}
html body #hf-filter-panel-v25 .irs-grid-text{color:#9a9a9a!important}
html body #hf-filter-panel-v25 .irs-grid-pol{background:#e5e5e5!important}

/* aplicar filtros: misma altura y misma caja que el disparador */
html body #hf-filter-panel-v25 .woof_submit_search_form{
  width:100%!important;height:34px!important;
  border:1px solid #000!important;border-radius:0!important;
}

/* --- V4.12  MOVIL Y PORTADA ------------------------------------------------ */

/* 1. PORTADA: la foto llena la pantalla, sin franjas claras arriba ni abajo --- */
html body.home{background:#000!important}
html body.home .hf-home-hero{
  width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important;
  height:calc(100vh - 81px)!important;
  height:calc(100svh - 81px)!important;
  min-height:360px!important;max-height:none!important;
  background:#000!important;overflow:hidden!important;line-height:0!important;
}
html body.home .hf-home-hero img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center 22%!important;
  background:#000!important;
}

@media(max-width:820px){
  /* 2. TIENDA MOVIL: se ve de frente los productos (sin la fila de categorias) */
  html body.post-type-archive-product .hf-shop-cats,
  html body.tax-product_cat .hf-shop-cats{display:none!important}

  /* portada en el movil: cabecera de 64 px */
  html body.home .hf-home-hero{
    height:calc(100vh - 64px)!important;
    height:calc(100svh - 64px)!important;
    min-height:320px!important;
  }
  html body.home .hf-home-hero img{object-position:center 18%!important}

  /* 3. TIENDA MOVIL: FILTROS flotando abajo al centro (solo en la tienda) --- */
  html body.post-type-archive-product .hf-shop-main .hf-shop-toolbar,
  html body.tax-product_cat .hf-shop-main .hf-shop-toolbar{
    position:fixed!important;left:50%!important;right:auto!important;
    top:auto!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;
    transform:translateX(-50%)!important;z-index:10050!important;
    margin:0!important;padding:0!important;height:auto!important;min-height:0!important;
    display:flex!important;justify-content:center!important;
  }
  html body.post-type-archive-product .hf-filter-trigger-v25,
  html body.tax-product_cat .hf-filter-trigger-v25{
    height:38px!important;padding:0 16px!important;
    box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
  }
  /* el panel sube desde el boton y nunca se sale de la pantalla */
  html body .hf-filter-panel-v25{
    position:absolute!important;left:50%!important;right:auto!important;
    top:auto!important;bottom:calc(100% + 10px)!important;
    transform:translateX(-50%)!important;
    width:min(92vw,520px)!important;max-width:92vw!important;
    max-height:62vh!important;overflow-y:auto!important;
  }
  /* aire al final para que el boton no tape el ultimo producto */
  html body.post-type-archive-product .hf-shop-shell,
  html body.tax-product_cat .hf-shop-shell{padding-bottom:120px!important}
}

/* --- V4.13  BOLSA, MARGENES, LOGO MOVIL, FOTOS 4:5 ------------------------ */

/* 1. BOLSA: CANTIDAD y SUBTOTAL caen sobre su columna --------------------- */
html body.woocommerce-cart .shop_table.cart thead th.product-quantity{text-align:center!important}
html body.woocommerce-cart .shop_table.cart thead th.product-subtotal{text-align:right!important}

/* 2. TIENDA: la misma caja y el mismo margen que la ficha ----------------- */
@media(min-width:821px){
  html body.post-type-archive-product .hf-shop-shell,
  html body.tax-product_cat .hf-shop-shell{
    width:min(calc(90vw - 4px),1290px)!important;
    max-width:1290px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
}
@media(min-width:1025px){
  html body.post-type-archive-product .hf-shop-shell,
  html body.tax-product_cat .hf-shop-shell{
    padding-left:26px!important;
    padding-right:26px!important;
  }
}

/* 3. MOVIL: cabecera en tres zonas, sin elementos superpuestos ------------ */
@media(max-width:820px){
  html body .hf-header{
    display:grid!important;
    grid-template-columns:minmax(40px,1fr) auto minmax(40px,1fr)!important;
    align-items:center!important;
    column-gap:8px!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    padding:0 12px!important;margin:0!important;
    overflow:visible!important;
  }
  html body .hf-header .hf-menu{
    display:flex!important;grid-column:1!important;grid-row:1!important;
    justify-self:start!important;align-items:center!important;justify-content:center!important;
    width:40px!important;height:40px!important;margin:0!important;padding:0!important;
    position:static!important;transform:none!important;
  }
  html body .hf-header .hf-nav{display:none!important}
  html body .hf-header .hf-logo{
    position:static!important;grid-column:2!important;grid-row:1!important;
    justify-self:center!important;align-self:center!important;
    display:flex!important;width:auto!important;max-width:100%!important;
    margin:0!important;transform:none!important;z-index:auto!important;
  }
  html body .hf-header .hf-logo img{width:auto!important;height:44px!important;max-width:64px!important}
  html body .hf-header .hf-actions{
    grid-column:3!important;grid-row:1!important;justify-self:end!important;
    display:flex!important;align-items:center!important;justify-content:flex-end!important;
    width:auto!important;margin:0!important;gap:2px!important;
  }
  html body .hf-header .hf-icon-button{flex:0 0 38px!important;width:38px!important;height:40px!important}
}

/* 4. FOTOS: marco 4:5 con relleno #d0d0d0 (tienda y ficha) ---------------- */
html body .hf-shop-card img{
  aspect-ratio:4/5!important;
  object-fit:contain!important;
  background:#d0d0d0!important;
  filter:none!important;
}
html body .hf-carousel,
html body .hf-carousel-slide{background:#d0d0d0!important}
html body .hf-carousel-image{
  object-fit:contain!important;
  background:#d0d0d0!important;
  filter:none!important;
}
@media(min-width:821px){
  html body.single-product .hf-carousel,
  html body.single-product .hf-carousel-slide{background:#d0d0d0!important}
  html body.single-product .hf-carousel-slide{aspect-ratio:4/5!important}
  html body.single-product .hf-carousel-image{background:#d0d0d0!important;filter:none!important}
}

/* --- V4.14  FICHA: RAIZ DE CATEGORIAS, FOTO MOVIL; CHECKOUT: RESUMEN ----- */

/* 1. FICHA: el rail de categorias arranca a la misma altura que en la tienda */
@media(min-width:821px){
  html body.single-product .hf-product-cats{padding-top:18px!important}
}
@media(min-width:1025px){
  html body.single-product .hf-product-cats{padding-top:28px!important}
}

/* 2. FICHA MOVIL: foto a todo el ancho, sin franjas blancas laterales ------ */
@media(max-width:820px){
  html body.single-product .ct-container-full > article{
    width:100%!important;max-width:100%!important;
    margin-left:0!important;margin-right:0!important;
  }
  html body.single-product .hf-product{
    width:100%!important;max-width:100%!important;
    padding:0 0 80px!important;overflow:visible!important;
  }
  html body.single-product .hf-product-gallery,
  html body.single-product .hf-carousel,
  html body.single-product .hf-carousel-track,
  html body.single-product .hf-carousel-slide{
    width:100%!important;max-width:100%!important;
    margin-left:0!important;margin-right:0!important;
  }
}

/* 3. CHECKOUT: resumen Â«TU SELECCIONÂ» legible y columnas equilibradas ----- */
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td.product-name{
  position:relative!important;
  padding:13px 46px 13px 62px!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th.product-name{
  padding-left:62px!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table td.product-name .product-quantity{
  position:absolute!important;right:0!important;top:13px!important;
  display:block!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:400!important;
  line-height:1.4!important;letter-spacing:.02em!important;color:#757575!important;
  white-space:nowrap!important;
}
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td.product-total{
  padding-left:10px!important;white-space:nowrap!important;
}
@media(min-width:821px){
  html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{
    grid-template-columns:minmax(0,1fr) minmax(0,460px)!important;
    column-gap:clamp(32px,4vw,56px)!important;
    max-width:960px!important;
    margin-left:auto!important;margin-right:auto!important;
  }
}
html body.woocommerce-checkout .ct-order-review{padding:0!important}

/* --- V4.15  FICHA: ZOOM Y VARIANTES; TIENDA: RAIL Y FILTROS; CHECKOUT ----- */

/* 1. FICHA: zoom suave al pasar el raton (escritorio) ---------------------- */
@media(min-width:821px){
  html body.single-product .hf-carousel-slide{overflow:hidden!important}
  html body.single-product .hf-carousel-slide .hf-carousel-image{
    transition:transform .7s cubic-bezier(.22,.61,.36,1)!important;
    transform-origin:50% 50%!important;
  }
  html body.single-product .hf-carousel-slide:hover .hf-carousel-image{transform:scale(1.055)!important}
  /* 2. El hueco de 12px entre fotos se ve blanco (antes era gris y parecia
        que las fotos estaban pegadas) */
  html body.single-product .hf-carousel{background:transparent!important}
}

/* 3. TIENDA: columna de categorias mas estrecha y tarjetas mas grandes ----- */
@media(min-width:1025px){
  html body .hf-shop-layout{
    grid-template-columns:clamp(104px,9vw,134px) minmax(0,1fr)!important;
    column-gap:clamp(22px,2.2vw,32px)!important;
  }
  html body.single-product .hf-product{
    grid-template-columns:clamp(104px,9vw,134px) minmax(0,1fr)!important;
    column-gap:clamp(22px,2.2vw,32px)!important;
  }
}

/* 4. FILTROS: al centro de la rejilla, translucido y sin filtro de color ---- */
@media(min-width:1025px){
  html body.post-type-archive-product .hf-shop-main .hf-shop-toolbar,
  html body.tax-product_cat .hf-shop-main .hf-shop-toolbar{justify-content:center!important}
  html body .hf-filter-trigger-v25{
    background:rgba(255,255,255,.55)!important;
    border-color:rgba(0,0,0,.25)!important;
    color:rgba(0,0,0,.78)!important;
    -webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;
  }
}
html body #hf-filter-panel-v25 .woof_container_pa_color{display:none!important}

/* 5. RELACIONADOS: el bloque queda sin titulo ------------------------------ */
html body.single-product .related .ct-module-title{display:none!important}

/* 6. CHECKOUT: sin bordes, mas limpio -------------------------------------- */
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot th,
html body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot td{
  border:0!important;
}
html body.woocommerce-checkout #payment ul.payment_methods{border:0!important;padding:0 0 13px!important}
html body.woocommerce-checkout #payment div.payment_box{background:transparent!important;padding:10px 0 0!important}

/* 7. CHECKOUT MOVIL: barra negra a sangre, sin franjas blancas laterales ---- */
@media(max-width:820px){
  html body.woocommerce-checkout #place_order{
    left:0!important;right:0!important;bottom:0!important;
    width:100%!important;
    min-height:calc(58px + env(safe-area-inset-bottom))!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
    box-shadow:none!important;
  }
}

/* --- V4.16  TALLAS EN FILA, FICHA SIN CANTIDAD, DESLIZABLE, CHECKOUT, PORTADA */

/* 1. FILTROS: las tallas van en fila, como chips (menos alto) --------------- */
html body #hf-filter-panel-v25 .woof_container_pa_talla .woof_list_radio{
  display:flex!important;flex-wrap:wrap!important;align-items:center!important;
  gap:6px!important;margin:4px 0 2px!important;padding:0!important;list-style:none!important;
}
html body #hf-filter-panel-v25 .woof_container_pa_talla .woof_list_radio>li{
  display:inline-flex!important;align-items:center!important;
  width:auto!important;min-width:0!important;margin:0!important;padding:0!important;float:none!important;
}
html body #hf-filter-panel-v25 .woof_container_pa_talla .woof_list_radio>li>div{display:none!important}
html body #hf-filter-panel-v25 .woof_container_pa_talla label.woof_radio_label{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  height:28px!important;min-width:36px!important;padding:0 9px!important;margin:0!important;
  border:1px solid #000!important;border-radius:0!important;background:#fff!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.06em!important;line-height:1!important;text-transform:uppercase!important;
  color:#000!important;cursor:pointer!important;
}
html body #hf-filter-panel-v25 .woof_container_pa_talla .woof_list_radio>li:hover label.woof_radio_label,
html body #hf-filter-panel-v25 .woof_container_pa_talla .woof_list_radio>li:has(input:checked) label.woof_radio_label{
  background:#000!important;color:#fff!important;
}

/* 2. FICHA: fuera la caja de cantidad; ANEXAR HARTEFAKTO a todo el ancho ---- */
html body.single-product .hf-product-info .quantity{display:none!important}
html body.single-product .hf-product-info form.cart,
html body.single-product .hf-product-info .woocommerce-variation-add-to-cart,
html body.single-product .hf-product-info .single_variation_wrap .variations_button{width:100%!important}
html body.single-product .hf-product-info .single_add_to_cart_button{
  flex:1 1 100%!important;width:100%!important;min-width:0!important;
}

/* 3. DESLIZABLE: finalizar compra a sangre y pegado al borde inferior ------- */
html body .hf-cart-drawer .widget_shopping_cart_content{padding:0!important}
html body .hf-cart-drawer .woocommerce-mini-cart-item{padding-left:22px!important;padding-right:22px!important}
html body .hf-cart-drawer .woocommerce-mini-cart__total{padding-left:22px!important;padding-right:22px!important}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons{padding:0!important;margin:0!important}
html body .hf-cart-drawer .cart-empty,
html body .hf-cart-drawer .return-to-shop{padding-left:22px!important;padding-right:22px!important}
html body .hf-cart-drawer .woocommerce-mini-cart__buttons .checkout{
  width:100%!important;
  height:calc(52px + env(safe-area-inset-bottom))!important;
  min-height:calc(52px + env(safe-area-inset-bottom))!important;
  padding:0 14px env(safe-area-inset-bottom)!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}

/* 4. CHECKOUT: fuera el borde del cuadro TU SELECCION ---------------------- */
html body.woocommerce-checkout .ct-order-review{border:0!important;box-shadow:none!important}

/* 5. CHECKOUT: notas del pedido a todo el ancho ---------------------------- */
html body.woocommerce-checkout .woocommerce-additional-fields .form-row,
html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper .form-row{
  grid-column:1/-1!important;width:100%!important;max-width:none!important;
}
html body.woocommerce-checkout #order_comments{
  width:100%!important;min-width:0!important;min-height:120px!important;resize:vertical!important;
}

/* 6. CHECKOUT: envio y totales alineados y limpios ------------------------- */
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals td{
  padding:12px 0!important;text-align:left!important;
}
html body.woocommerce-checkout .ct-shipping-heading{
  margin:0 0 7px!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;color:#000!important;
}
html body.woocommerce-checkout #shipping_method{
  display:block!important;margin:0!important;padding:0!important;list-style:none!important;
}
html body.woocommerce-checkout #shipping_method li{
  display:flex!important;align-items:center!important;gap:8px!important;
  margin:0 0 3px!important;padding:0!important;text-align:left!important;
}
html body.woocommerce-checkout #shipping_method li:last-child{margin-bottom:0!important}
html body.woocommerce-checkout #shipping_method input.shipping_method{
  -webkit-appearance:none!important;appearance:none!important;
  width:10px!important;height:10px!important;min-width:10px!important;min-height:10px!important;
  margin:0!important;padding:0!important;flex:0 0 auto!important;
  border:1px solid #000!important;border-radius:50%!important;background:#fff!important;
  position:relative!important;top:0!important;
}
html body.woocommerce-checkout #shipping_method input.shipping_method:checked{
  background:#000!important;box-shadow:inset 0 0 0 2px #fff!important;
}
html body.woocommerce-checkout #shipping_method label{
  display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  flex:1 1 auto!important;gap:12px!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:400!important;
  letter-spacing:.01em!important;text-transform:uppercase!important;color:#000!important;
  cursor:pointer!important;
}
html body.woocommerce-checkout #shipping_method label .amount{white-space:nowrap!important}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  padding-top:16px!important;
}

/* 7. PORTADA ESCRITORIO: foto completa, centrada, 85% y relleno #d0d0d0 ---- */
@media(min-width:821px){
  html body.home .hf-home-hero{
    height:auto!important;min-height:0!important;max-height:none!important;
    background:#d0d0d0!important;
    display:flex!important;align-items:flex-start!important;justify-content:center!important;
    overflow:hidden!important;line-height:0!important;
  }
  html body.home .hf-home-hero img{
    display:block!important;
    width:85%!important;max-width:85%!important;
    height:auto!important;max-height:none!important;
    object-fit:contain!important;object-position:center top!important;
    background:#d0d0d0!important;margin:0 auto!important;
  }
}

/* FIN — v4.16 */


/* ---------------------------------------------------------------------------
   V4.17 — HOME CONVERSION (21 oct 2026)
   Bajo el hero, siempre sobre blanco y con filete de 1px:
   1. Barra NUEVO EN LA TIENDA + VER TODO, y rejilla de los 8 ultimos productos
      (misma rejilla y tarjetas de la tienda: de esto no hay CSS nuevo).
   2. Categorias como chips (borde 1px, hover negro).
   3. Teaser de NEWS con la ultima nota publicada.
   4. Mandato editorial y CTA VER LA TIENDA COMPLETA.
   El hero no cambia (sigue siendo el de la 4.16: 85% sobre #d0d0d0).

   Para revertir: borra desde aqui hasta FIN — v4.17.
   --------------------------------------------------------------------------- */
html body.home{background:#fff!important}
html body.home .hf-home{background:#fff!important;min-height:0!important}

html body.home .hf-home-sec{padding:0 20px}

html body.home .hf-home-bar{
  display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  gap:24px!important;padding:16px 0 12px!important;margin:12px 0 0!important;
  border-top:1px solid #000!important;
}
html body.home .hf-home-bar-title{font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.4!important;font-weight:600!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:#000!important}
html body.home .hf-home-bar-link{font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.4!important;font-weight:400!important;letter-spacing:.02em!important;text-transform:uppercase!important;color:#000!important;text-decoration:none!important;white-space:nowrap!important}
html body.home .hf-home-bar-link:hover,
html body.home .hf-home-bar-link:focus-visible{color:#757575!important}

/* 1. destacados: la rejilla de la tienda, con su propio aire */
html body.home .hf-home-grid{padding:14px 0 40px!important;gap:40px 20px!important}
html body.home .hf-shop-card:hover .hf-shop-card-title{text-decoration:underline!important;text-underline-offset:2px!important}

/* 2. categorias en chips: tamaño exacto del chip movil de la tienda (32px) */
html body.home .hf-home-cats{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;
  padding:0 0 6px!important;
}
html body.home .hf-home-cats a{
  display:inline-flex!important;align-items:center!important;height:32px!important;
  padding:0 14px!important;border:1px solid #000!important;border-radius:0!important;
  background:#fff!important;color:#000!important;
  font-family:var(--hf-font)!important;font-size:11px!important;line-height:1!important;
  font-weight:500!important;letter-spacing:.06em!important;text-transform:uppercase!important;
  text-decoration:none!important;
  transition:background .25s cubic-bezier(.215,.61,.355,1),color .25s cubic-bezier(.215,.61,.355,1)!important;
}
html body.home .hf-home-cats a:hover,
html body.home .hf-home-cats a:focus-visible{background:#000!important;color:#fff!important}

/* 3. teaser de NEWS: una sola nota, con fecha y LEER */
html body.home .hf-home-news-item{
  display:grid!important;grid-template-columns:82px minmax(0,1fr) auto!important;
  gap:18px!important;align-items:baseline!important;
  padding:18px 0 20px!important;margin:0!important;
  text-decoration:none!important;border-bottom:1px solid #e5e5e5!important;
}
html body.home .hf-home-news-date{font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.4!important;font-weight:400!important;letter-spacing:.08em!important;color:#757575!important;white-space:nowrap!important}
html body.home .hf-home-news-title{font-family:var(--hf-font)!important;font-size:17px!important;line-height:1.35!important;font-weight:500!important;color:#000!important}
html body.home .hf-home-news-cta{font-family:var(--hf-font)!important;font-size:11px!important;line-height:1.4!important;font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#000!important;white-space:nowrap!important}
html body.home .hf-home-news-item:hover .hf-home-news-title,
html body.home .hf-home-news-item:hover .hf-home-news-cta{color:#757575!important}

/* 4. mandato editorial (caja baja, una linea, como el OG del sitio) */
html body.home .hf-home-motto{margin:18px 0 0!important;padding:0!important;font-family:var(--hf-font)!important;font-size:13px!important;line-height:1.6!important;color:#000!important}
html body.home .hf-home-motto a{color:#000!important;text-decoration:underline!important;text-underline-offset:2px!important}
html body.home .hf-home-motto a:hover{color:#757575!important}

/* CTA final: el boton negro de 45px de la piel Stussy, a todo el ancho */
html body.home .hf-home-cta{margin:0!important;padding:6px 20px 64px!important}
html body.home .hf-home-cta a{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:45px!important;border:1px solid #000!important;border-radius:0!important;
  background:#000!important;color:#fff!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1!important;
  font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  text-decoration:none!important;
  transition:background .25s cubic-bezier(.215,.61,.355,1)!important;
}
html body.home .hf-home-cta a:hover,
html body.home .hf-home-cta a:focus-visible{background:#757575!important;color:#fff!important}

/* movil: los mismos margenes de la tienda (6px) y rejilla 2 col con 5px */
@media(max-width:820px){
  html body.home .hf-home-sec{padding:0 6px}
  html body.home .hf-home-grid{column-gap:5px!important;row-gap:40px!important;padding:12px 0 34px!important}
  html body.home .hf-home-bar{padding:14px 0 10px!important}
  html body.home .hf-home-news-item{grid-template-columns:1fr!important;gap:4px!important;padding:16px 0 18px!important}
  html body.home .hf-home-news-date{font-size:10px!important}
  html body.home .hf-home-news-title{font-size:15px!important;line-height:1.4!important}
  html body.home .hf-home-news-cta{font-size:10px!important}
  html body.home .hf-home-cta{padding:6px 14px calc(48px + env(safe-area-inset-bottom))!important}
}

/* --- FIN — v4.17 --- */

/* V4.18.5 — CHECKOUT BRUTALISTA: ancho, jerarquia y resumen responsive ----- */
html body.woocommerce-checkout > .hf-header{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  left:auto!important;transform:none!important;margin:0!important;
}
html body.woocommerce-checkout .hf-checkout-page,
html body.woocommerce-checkout .hf-checkout-shell,
html body.woocommerce-checkout .hf-checkout-content{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  min-width:0!important;margin:0!important;
}
html body.woocommerce-checkout .hf-checkout-shell{
  padding:clamp(18px,3vw,40px) clamp(18px,4vw,56px) 96px!important;
}
html body.woocommerce-checkout .hf-checkout-content{
  max-width:1280px!important;margin:0 auto!important;
}
html body.woocommerce-checkout .woocommerce{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  min-width:0!important;margin:0 auto!important;padding:0!important;
}
html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{
  box-sizing:border-box!important;width:100%!important;max-width:1200px!important;
  min-width:0!important;margin:0 auto!important;
}
@media(min-width:821px){
  html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,440px)!important;
    align-items:start!important;column-gap:clamp(40px,5vw,76px)!important;row-gap:0!important;
  }
  html body.woocommerce-checkout .ct-customer-details{grid-column:1!important;min-width:0!important}
  html body.woocommerce-checkout .ct-order-review{
    grid-column:2!important;position:sticky!important;top:24px!important;
    min-width:0!important;margin:0!important;padding:0!important;
  }
}
html body.woocommerce-checkout .col2-set,
html body.woocommerce-checkout .col-1,
html body.woocommerce-checkout .col-2{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  min-width:0!important;margin:0!important;padding:0!important;float:none!important;
}
html body.woocommerce-checkout .woocommerce-billing-fields h3,
html body.woocommerce-checkout .woocommerce-shipping-fields h3,
html body.woocommerce-checkout .woocommerce-additional-fields h3,
html body.woocommerce-checkout .ct-order-review h3,
html body.woocommerce-checkout #order_review_heading{
  margin:0 0 18px!important;padding:0 0 12px!important;border:0!important;
  border-bottom:2px solid #000!important;font-family:var(--hf-font)!important;
  font-size:12px!important;font-weight:600!important;line-height:1.25!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#000!important;
}
html body.woocommerce-checkout .form-row{box-sizing:border-box!important;width:100%!important;min-width:0!important;margin:0 0 18px!important;padding:0!important;float:none!important}
html body.woocommerce-checkout .form-row label{
  margin:0 0 7px!important;font-family:var(--hf-font)!important;font-size:10px!important;
  font-weight:500!important;line-height:1.3!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;color:#555!important;
}
html body.woocommerce-checkout .form-row input.input-text,
html body.woocommerce-checkout .form-row select,
html body.woocommerce-checkout .form-row textarea,
html body.woocommerce-checkout .select2-container .select2-selection--single{
  box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:46px!important;
  padding:10px 0!important;border:0!important;border-bottom:1px solid #888!important;
  border-radius:0!important;background:#fff!important;box-shadow:none!important;
  font-family:var(--hf-font)!important;font-size:14px!important;font-weight:400!important;
  line-height:1.4!important;letter-spacing:0!important;color:#000!important;
}
html body.woocommerce-checkout .form-row input.input-text:focus,
html body.woocommerce-checkout .form-row select:focus,
html body.woocommerce-checkout .form-row textarea:focus,
html body.woocommerce-checkout .select2-container--focus .select2-selection--single,
html body.woocommerce-checkout .select2-container--open .select2-selection--single{border-bottom:2px solid #000!important;outline:0!important}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  table-layout:fixed!important;border:0!important;border-top:2px solid #000!important;
  border-collapse:collapse!important;margin:0!important;background:#fff!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table thead{display:none!important}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  box-sizing:border-box!important;min-width:0!important;padding:12px 0!important;
  border:0!important;border-bottom:1px solid #e5e5e5!important;
  background:transparent!important;vertical-align:middle!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.4!important;
  font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:#000!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  position:relative!important;width:70%!important;padding:12px 34px 12px 58px!important;
  text-align:left!important;overflow-wrap:anywhere!important;word-break:normal!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name > a,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name > span:not(.hf-checkout-thumb){
  position:static!important;float:none!important;transform:none!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name > a{
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;
  line-height:1.35!important;letter-spacing:.015em!important;color:#000!important;text-decoration:none!important;
}
html body.woocommerce-checkout .hf-checkout-thumb{
  position:absolute!important;left:0!important;top:50%!important;display:block!important;
  width:42px!important;height:52px!important;margin:0!important;overflow:hidden!important;
  background:#e5e5e5!important;transform:translateY(-50%)!important;
}
html body.woocommerce-checkout .hf-checkout-thumb img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;
  margin:0!important;object-fit:contain!important;object-position:center!important;background:transparent!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
  position:absolute!important;top:50%!important;right:0!important;display:block!important;
  margin:0!important;padding:0!important;font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:400!important;line-height:1!important;color:#777!important;
  white-space:nowrap!important;transform:translateY(-50%)!important;
}
html body.woocommerce-checkout .hf-checkout-attrs{
  display:block!important;margin:4px 0 0!important;font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:400!important;line-height:1.35!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:#777!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  width:30%!important;text-align:right!important;white-space:nowrap!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-subtotal th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th{
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:600!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-align:left!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td{
  padding-top:17px!important;border-top:2px solid #000!important;border-bottom:0!important;font-weight:600!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td .amount{font-size:17px!important;font-weight:600!important}
html body.woocommerce-checkout tr.woocommerce-shipping-totals td{
  display:grid!important;grid-template-columns:minmax(100px,.42fr) minmax(0,1fr)!important;
  align-items:start!important;gap:12px!important;padding:12px 0!important;overflow:visible!important;
}
html body.woocommerce-checkout tr.woocommerce-shipping-totals .ct-shipping-heading{
  float:none!important;width:auto!important;margin:2px 0 0!important;font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:600!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;white-space:normal!important;
}
html body.woocommerce-checkout tr.woocommerce-shipping-totals ul#shipping_method{
  float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
}
html body.woocommerce-checkout tr.woocommerce-shipping-totals ul#shipping_method li{
  display:flex!important;align-items:flex-start!important;gap:8px!important;margin:0 0 8px!important;
}
html body.woocommerce-checkout tr.woocommerce-shipping-totals ul#shipping_method label{
  display:flex!important;flex:1 1 auto!important;justify-content:space-between!important;gap:8px!important;
  min-width:0!important;margin:0!important;font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:400!important;line-height:1.4!important;
  letter-spacing:.025em!important;text-transform:uppercase!important;color:#333!important;
}
html body.woocommerce-checkout #payment{width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;background:transparent!important;border:0!important}
html body.woocommerce-checkout #payment ul.payment_methods{
  display:grid!important;gap:0!important;margin:16px 0 18px!important;padding:0!important;
  border:0!important;border-top:2px solid #000!important;background:transparent!important;list-style:none!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  box-sizing:border-box!important;display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;
  align-items:start!important;gap:8px!important;width:100%!important;min-width:0!important;
  margin:0!important;padding:14px 0!important;border:0!important;border-bottom:1px solid #bbb!important;
  border-radius:0!important;background:transparent!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]{
  position:static!important;grid-column:1!important;grid-row:1!important;appearance:auto!important;
  -webkit-appearance:auto!important;width:14px!important;height:14px!important;min-width:14px!important;
  min-height:14px!important;margin:1px 0 0!important;padding:0!important;accent-color:#000!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
  position:static!important;grid-column:2!important;grid-row:1!important;display:flex!important;
  align-items:center!important;flex-wrap:wrap!important;gap:8px!important;min-width:0!important;
  max-width:100%!important;margin:0!important;padding:0!important;font-family:var(--hf-font)!important;
  font-size:11px!important;font-weight:500!important;line-height:1.4!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;overflow-wrap:anywhere!important;color:#000!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::before{display:none!important;content:none!important}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::after{max-width:100%!important;margin-left:auto!important}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > .payment_box{
  grid-column:1/-1!important;min-width:0!important;max-width:100%!important;margin:8px 0 0!important;
  /* 4.19.17: sin padding lateral. Tercera capa legada que repetia la sangria
     12/24px; el padding general (12px 0 0 26px) y la regla QR ya la definen. */
  border:0!important;border-top:1px solid #e5e5e5!important;
  border-radius:0!important;background:transparent!important;overflow-wrap:anywhere!important;
}
html body.woocommerce-checkout #payment .place-order{margin:0!important;padding:0!important}
html body.woocommerce-checkout #place_order{
  box-sizing:border-box!important;width:100%!important;min-height:52px!important;padding:14px 18px!important;
  border:1px solid #000!important;border-radius:0!important;background:#000!important;color:#fff!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;
  line-height:1.2!important;letter-spacing:.12em!important;text-transform:uppercase!important;
}

@media(max-width:820px){
  html body.woocommerce-checkout > .hf-header{width:100%!important;max-width:100%!important;padding-right:12px!important;padding-left:12px!important}
  html body.woocommerce-checkout .hf-checkout-shell{padding:20px 16px calc(86px + env(safe-area-inset-bottom))!important}
  html body.woocommerce-checkout form.checkout.ct-woocommerce-checkout{display:block!important;width:100%!important;max-width:100%!important}
  html body.woocommerce-checkout .ct-customer-details,
  html body.woocommerce-checkout .ct-order-review{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;position:static!important}
  html body.woocommerce-checkout .ct-order-review{margin-top:30px!important}
  html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-account-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;width:100%!important}
  html body.woocommerce-checkout .form-row,
  html body.woocommerce-checkout .form-row-first,
  html body.woocommerce-checkout .form-row-last{grid-column:1/-1!important;width:100%!important;max-width:100%!important}
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{width:68%!important;padding:12px 28px 12px 50px!important;font-size:11px!important}
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name > a{font-size:11px!important}
  html body.woocommerce-checkout .hf-checkout-thumb{width:36px!important;height:46px!important}
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{font-size:9px!important}
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total,
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{width:32%!important;font-size:11px!important}
  html body.woocommerce-checkout tr.woocommerce-shipping-totals td{grid-template-columns:minmax(0,1fr)!important;gap:7px!important}
  html body.woocommerce-checkout tr.woocommerce-shipping-totals ul#shipping_method label{font-size:10px!important}
  html body.woocommerce-checkout .woocommerce-privacy-policy-text,
  html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{font-size:10px!important;line-height:1.55!important}
  html body.woocommerce-checkout #place_order{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:100000!important;
    width:100%!important;max-width:100%!important;min-height:calc(58px + env(safe-area-inset-bottom))!important;
    padding:14px 16px calc(14px + env(safe-area-inset-bottom))!important;
  }
}

/* FIN — V4.18.5 CHECKOUT */
/* V4.17.1 — HERO DE UNA PANTALLA, FOTO ENTERA (21 oct 2026, pedido de Jose M.): el marco conserva el 85% con relleno #d0d0d0 de la 4.16, pero la altura ya no rebasa la pantalla y la foto se ve COMPLETA (contain): el ancho lo fija la proporcion de la foto. */ @media(min-width:821px){html body.home .hf-home-hero{width:85%!important;height:calc(100svh - 81px)!important;min-height:520px!important;max-height:none!important;background:#d0d0d0!important;align-items:center!important;justify-content:center!important}html body.home .hf-home-hero img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center top!important;background:transparent!important}} /* FIN — v4.17.1 */

/* ===========================================================================
   V4.17.2 — PORTADA EDITORIAL, FILTROS ABAJO, RELACIONADOS, PRECIOS Y
   BARRA DE ENVÍO GRATIS (solo en el cajón de la bolsa)
   =========================================================================== */

/* B. PORTADA: composición editorial a dos columnas (escritorio) ------------ */
@media(min-width:821px){
  html body.home .hf-home-hero{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)!important;
    align-items:stretch!important;justify-content:stretch!important;
     width:100%!important;max-width:100%!important;box-sizing:border-box!important;
    height:calc(100svh - 81px)!important;min-height:460px!important;max-height:none!important;
    margin:0!important;padding:0!important;
    background:#000!important;overflow:hidden!important;line-height:normal!important;
  }
  html body.home .hf-hero-copy{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
    justify-content:flex-end!important;
    height:100%!important;min-width:0!important;
    padding:44px 40px 42px!important;background:#000!important;color:#fff!important;
    text-align:left!important;
  }
  html body.home .hf-hero-kicker{
    display:block!important;margin:0 0 auto!important;padding:0!important;
    font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.2!important;
    font-weight:500!important;letter-spacing:.22em!important;text-transform:uppercase!important;
    color:#8c8c8c!important;
  }
  html body.home .hf-hero-claim{
    display:block!important;margin:0!important;padding:0!important;
    font-family:var(--hf-font)!important;
    font-size:clamp(34px,4.4vw,68px)!important;line-height:.92!important;
    font-weight:700!important;letter-spacing:-.035em!important;text-transform:uppercase!important;
    color:#fff!important;
  }
  html body.home .hf-hero-cta{
    display:inline-flex!important;align-items:center!important;gap:10px!important;
    margin:30px 0 0!important;padding:0 0 5px!important;
    border-bottom:1px solid #fff!important;
    font-family:var(--hf-font)!important;font-size:10px!important;line-height:1!important;
    font-weight:500!important;letter-spacing:.16em!important;text-transform:uppercase!important;
    color:#fff!important;
  }
  html body.home .hf-home-hero:hover .hf-hero-cta{color:#bdbdbd!important;border-color:#bdbdbd!important}
  html body.home .hf-hero-media{
    display:block!important;position:relative!important;overflow:hidden!important;
    width:100%!important;height:100%!important;min-width:0!important;background:#000!important;
  }
  html body.home .hf-home-hero img{
    display:block!important;
    width:100%!important;max-width:100%!important;
    height:100%!important;max-height:none!important;
    object-fit:cover!important;object-position:center 18%!important;
    background:#000!important;margin:0!important;
    transition:transform .8s var(--hf-ease)!important;
  }
  html body.home .hf-home-hero:hover img{transform:scale(1.015)!important}
}
/* móvil: la foto sigue a sangre; la composición tipográfica no se muestra */
@media(max-width:820px){
  html body.home .hf-hero-copy{display:none!important}
  html body.home .hf-hero-media{
    display:block!important;width:100%!important;height:100%!important;
    overflow:hidden!important;background:#000!important;
  }
  html body.home .hf-home-hero{
    display:block!important;height:calc(100svh - 81px)!important;min-height:420px!important;
    background:#000!important;overflow:hidden!important;
  }
  html body.home .hf-home-hero img{
    width:100%!important;max-width:none!important;height:100%!important;
    object-fit:cover!important;object-position:center 18%!important;
  }
}

/* C. FILTROS: abajo, al centro, en escritorio ------------------------------ */
@media(min-width:821px){
  html body.post-type-archive-product .hf-shop-main .hf-shop-toolbar,
  html body.tax-product_cat .hf-shop-main .hf-shop-toolbar{
    position:fixed!important;left:50%!important;right:auto!important;top:auto!important;
    bottom:calc(22px + env(safe-area-inset-bottom))!important;
    transform:translateX(-50%)!important;
    z-index:10050!important;margin:0!important;padding:0!important;
    height:auto!important;min-height:0!important;
    display:flex!important;justify-content:center!important;align-items:center!important;
    pointer-events:auto!important;
  }
  html body.post-type-archive-product .hf-filter-trigger-v25,
  html body.tax-product_cat .hf-filter-trigger-v25{
    height:40px!important;min-height:40px!important;padding:0 20px!important;
    background:#fff!important;color:#000!important;border:1px solid #000!important;
    border-radius:0!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    font-size:10px!important;letter-spacing:.14em!important;
  }
  html body.post-type-archive-product .hf-filter-trigger-v25:hover,
  html body.post-type-archive-product .hf-filter-trigger-v25[aria-expanded="true"],
  html body.tax-product_cat .hf-filter-trigger-v25:hover,
  html body.tax-product_cat .hf-filter-trigger-v25[aria-expanded="true"]{background:#000!important;color:#fff!important}
  html body .hf-filter-panel-v25{
    left:50%!important;right:auto!important;top:auto!important;
    bottom:calc(100% + 10px)!important;transform:translateX(-50%)!important;
    width:min(92vw,520px)!important;max-width:92vw!important;
    max-height:60vh!important;overflow-y:auto!important;
  }
  html body.post-type-archive-product .hf-shop-shell,
  html body.tax-product_cat .hf-shop-shell{padding-bottom:140px!important}
}

/* D. VER BOLSA: el enlace de WooCommerce ya no desplaza la línea de confianza */
html body.single-product .hf-product-info a.added_to_cart{display:none!important}

/* E. PRECIOS: sin "Desde:" (el filtro de PHP ya lo quita) ------------------ */
html body .price .from{display:none!important}

/* F. RELACIONADOS: dos filas de cuatro, también en móvil ------------------- */
html body.single-product .related.ct-hidden-sm.ct-hidden-md{display:block!important}
html body.single-product .related{
  box-sizing:border-box!important;width:min(calc(100% - 52px),1440px)!important;max-width:1440px!important;
  margin:38px auto 0!important;padding:38px 0 0!important;float:none!important;clear:both!important;
}
html body.single-product .related ul.products{
  display:grid!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px 14px!important;margin:0 auto!important;padding:0!important;list-style:none!important;
}
html body.single-product .related ul.products li.product{
  width:auto!important;max-width:none!important;margin:0!important;float:none!important;clear:none!important;
}
@media(max-width:1024px){
  html body.single-product .related{width:calc(100% - 32px)!important;margin-inline:auto!important}
  html body.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px 10px!important}
}

/* G. BARRA DE ENVÍO GRATIS (bolsa deslizable y página de la bolsa) --------- */
html body .hf-shipgo{
  margin:0!important;padding:14px 0 13px!important;
  border-top:1px solid #e5e5e5!important;font-family:var(--hf-font)!important;
}
html body .hf-shipgo-msg{
  margin:0 0 9px!important;font-family:var(--hf-font)!important;
  font-size:10px!important;line-height:1.4!important;font-weight:500!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:#000!important;
}
html body .hf-shipgo-track{
  position:relative!important;display:block!important;width:100%!important;height:2px!important;
  background:#d0d0d0!important;overflow:hidden!important;border-radius:0!important;
}
html body .hf-shipgo-fill{
  display:block!important;height:100%!important;width:0;background:#000!important;
  transition:width .4s ease!important;border-radius:0!important;
}
html body .hf-shipgo.is-done .hf-shipgo-msg{font-weight:600!important}
html body #hf-cart-drawer .hf-shipgo{
  padding:13px 16px!important;background:#fff!important;border-top:1px solid #000!important;
}

/* H. TIENDA: recorrido horizontal de imágenes al pasar el cursor ----------- */
html body .hf-shop-card .hf-card-media{
  display:block!important;position:relative!important;width:100%!important;
  aspect-ratio:4/5!important;overflow:hidden!important;background:#d0d0d0!important;
}
html body .hf-shop-card .hf-card-track{
  display:flex!important;width:100%!important;height:100%!important;
  transition:transform .45s cubic-bezier(.215,.61,.355,1)!important;
  will-change:transform!important;
}
html body .hf-shop-card .hf-card-track img{
  flex:0 0 100%!important;width:100%!important;height:100%!important;
  aspect-ratio:auto!important;object-fit:contain!important;background:#d0d0d0!important;
  filter:none!important;display:block!important;
}

/* I. FICHA: el carrusel se desliza con suavidad ---------------------------- */
html body.single-product .hf-carousel-track{
  transition:transform .45s cubic-bezier(.215,.61,.355,1)!important;
}

/* ===========================================================================
   V4.18 - CAJON (contador sobre el subtotal, pie fijo), FICHA (IR A LA BOLSA),
   MENU MOVIL (cerrar) y CHECKOUT PERU (campos, resumen y pago)
   (23 oct 2026)
   =========================================================================== */

/* A. CAJON: el contador de envio vive arriba del subtotal ------------------ */
html body #hf-cart-drawer .hf-shipgo{
  margin:4px 0 0!important;padding:12px 0 0!important;
  border-top:1px solid #e5e5e5!important;background:#fff!important;
}
html body #hf-cart-drawer .woocommerce-mini-cart__total{
  margin:0 0 6px!important;padding-top:10px!important;border-top:0!important;
}
html body #hf-cart-drawer .hf-drawer-bag{
  display:block!important;margin:0!important;padding:14px 14px!important;
  background:#fff!important;color:#000!important;border-top:1px solid #000!important;
  text-align:center!important;text-decoration:none!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.14em!important;text-transform:uppercase!important;
}
html body #hf-cart-drawer .hf-cart-drawer-checkout{
  display:block!important;margin:0!important;padding:16px 14px!important;
  background:#000!important;color:#fff!important;text-align:center!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:600!important;
  line-height:1!important;letter-spacing:.14em!important;text-transform:uppercase!important;
}

/* B. FICHA: "IR A LA BOLSA" tras anexar (mismo ancho, menos jerarquia) ----- */
html body.single-product .hf-product-info a.added_to_cart{
  display:flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 100%!important;width:100%!important;
  height:35px!important;min-height:35px!important;max-height:35px!important;
  margin:8px 0 0!important;padding:0 12px!important;
  background:#fff!important;color:#000!important;
  border:1px solid #000!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.14em!important;text-transform:uppercase!important;
  text-decoration:none!important;
}
html body.single-product .hf-product-info a.added_to_cart:hover{
  background:#000!important;color:#fff!important;
}

/* C. FICHA: el precio de la variacion no se duplica ------------------------ */
html body.single-product form.variations_form .woocommerce-variation-price{
  display:none!important;
}

/* D. MENU MOVIL: cerrar arriba a la derecha y con estilo ------------------- */
@media(max-width:820px){
  html body #hf-mobile .hf-mobile-top{
    position:relative!important;align-items:flex-start!important;
    margin-bottom:24px!important;padding-right:46px!important;
  }
  html body #hf-mobile .hf-mobile-close{
    position:absolute!important;top:0!important;right:0!important;
    width:34px!important;height:34px!important;min-width:34px!important;
    padding:0!important;border:1px solid #000!important;border-radius:50%!important;
    background:#fff!important;color:transparent!important;font-size:0!important;
    line-height:1!important;overflow:hidden!important;
  }
  html body #hf-mobile .hf-mobile-close::before{
    content:'\00d7';display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;height:100%!important;color:#000!important;
    font-family:var(--hf-font)!important;font-size:20px!important;font-weight:300!important;line-height:1!important;
  }
}

/* E. CHECKOUT PERU --------------------------------------------------------- */
/* El prefijo :not(#hf-sweep-a):not(#hf-sweep-b) aporta dos IDs tecnicos para
   ganar a las reglas globales de peso 500 y a las del tema, sin tocar el HTML. */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-billing-fields h3,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-additional-fields h3,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-order-review h3{
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#000!important;
  margin:0 0 14px!important;padding:0 0 10px!important;border-bottom:1px solid #000!important;
}

/* E.1 etiquetas */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row label{
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:600!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;color:#000!important;
  margin:0 0 6px!important;line-height:1.2!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row .required{
  color:#000!important;text-decoration:none!important;font-weight:600!important;
}

/* E.2 cajas de los campos */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row{
  margin:0 0 14px!important;padding:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row input.input-text,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row textarea{
  width:100%!important;min-height:44px!important;height:auto!important;
  margin:0!important;padding:11px 12px!important;
  background:#fff!important;border:1px solid #e5e5e5!important;border-radius:4px!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.3!important;color:#000!important;
  box-shadow:none!important;outline:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row textarea{
  min-height:96px!important;resize:vertical!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row input.input-text:focus,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select:focus,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row textarea:focus{
  border-color:#000!important;
}

/* selects con buscador (departamento / pais) */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container{
  width:100%!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container .select2-selection--single{
  display:flex!important;align-items:center!important;
  width:100%!important;height:44px!important;min-height:44px!important;
  margin:0!important;padding:0 12px!important;
  background:#fff!important;border:1px solid #e5e5e5!important;border-radius:4px!important;
  font-family:var(--hf-font)!important;box-shadow:none!important;outline:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container .select2-selection__rendered{
  padding:0!important;margin:0!important;line-height:42px!important;
  font-family:var(--hf-font)!important;font-size:12px!important;color:#000!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container .select2-selection__arrow{
  height:42px!important;right:8px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container--focus .select2-selection--single,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-container--open .select2-selection--single{
  border-color:#000!important;
}

/* codigo postal: opcional y fuera de la vista */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #billing_postcode_field,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #shipping_postcode_field{
  display:none!important;
}

/* E.3 resumen del pedido */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table{
  width:100%!important;margin:0!important;border:0!important;border-collapse:collapse!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table thead{
  display:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table th,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table td{
  border:0!important;padding:9px 0!important;vertical-align:top!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.02em!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-total{
  text-align:right!important;font-family:var(--hf-font)!important;font-size:12px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-attrs{
  display:block!important;margin-top:3px!important;
  font-family:var(--hf-font)!important;font-size:9px!important;font-weight:400!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;color:#8a8a8a!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .product-quantity{
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:400!important;
  color:#8a8a8a!important;letter-spacing:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-thumb{
  display:inline-block!important;vertical-align:middle!important;margin-left:8px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-thumb img{
  width:38px!important;height:48px!important;object-fit:contain!important;background:#d0d0d0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.cart-subtotal th,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.order-total th{
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;color:#000!important;text-align:left!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.cart-subtotal td,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.order-total td{
  text-align:right!important;font-family:var(--hf-font)!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.cart-subtotal td .amount{
  font-size:13px!important;font-weight:500!important;color:#000!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.order-total th,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.order-total td{
  border-top:1px solid #000!important;padding-top:14px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.order-total td .amount{
  font-size:20px!important;font-weight:700!important;letter-spacing:-.01em!important;color:#000!important;
}

/* envio: etiqueta a la izquierda, importe al margen derecho real de la tabla */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals td{
  padding:8px 0!important;overflow:hidden!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals .ct-shipping-heading{
  float:left!important;width:38%!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;color:#000!important;white-space:nowrap!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method{
  float:right!important;clear:none!important;width:62%!important;margin:0!important;padding:0!important;
  list-style:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li{margin:0!important}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method label{
  display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  gap:12px!important;width:100%!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:9px!important;font-weight:500!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:#8a8a8a!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method label .amount{
  font-size:13px!important;font-weight:500!important;color:#000!important;letter-spacing:0!important;white-space:nowrap!important;
}

/* E.4 metodos de pago */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods{
  list-style:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method{
  position:relative!important;margin:0 0 10px!important;padding:14px 16px!important;
  background:#fff!important;border:1px solid #e5e5e5!important;border-radius:6px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > label{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;
  margin:0!important;padding:0 0 0 26px!important;cursor:pointer!important;
  font-family:var(--hf-font)!important;font-size:11px!important;font-weight:600!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;color:#000!important;line-height:1.3!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > label img{
  display:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > label::before{
  content:""!important;position:absolute!important;left:16px!important;top:17px!important;
  width:14px!important;height:14px!important;min-width:14px!important;
  margin:0!important;border:1px solid #000!important;border-radius:50%!important;
  background:#fff!important;box-shadow:none!important;transform:none!important;transition:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > input[type="radio"]:first-child:checked + label::before{
  background:#000!important;border-color:#000!important;box-shadow:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.payment_method_micuentawebstd > label::after{
  content:'VISA / MASTERCARD'!important;margin-left:auto!important;padding:5px 8px!important;
  border:1px solid #000!important;border-radius:3px!important;
  font-family:var(--hf-font)!important;font-size:8px!important;font-weight:600!important;
  letter-spacing:.08em!important;line-height:1!important;color:#000!important;white-space:nowrap!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > div.payment_box{
  /* 4.19.17: sin padding lateral propio. El padding general (12px 0 0 26px)
     lo fija la regla V4.19.12; esta capa heredada solo aporta borde y
     tipografia. Antes imponia 26px a la izquierda y 0 a la derecha y, por su
     especificidad :not(#id), anulaba la regla QR centrada. */
  margin:12px 0 0!important;
  background:transparent!important;border:0!important;border-top:1px solid #e5e5e5!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.5!important;color:#666!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.payment_method_micuentawebstd > div.payment_box p{
  margin:0!important;font-family:var(--hf-font)!important;font-size:9px!important;line-height:1.5!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:#666!important;
}

/* E.5 boton de compra */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment .place-order{
  padding:0!important;margin:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
  width:100%!important;min-height:48px!important;padding:14px 16px!important;
  background:#000!important;color:#fff!important;border:1px solid #000!important;border-radius:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:600!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
}
html body #hf-cart-drawer .hf-cart-drawer-checkout{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-height:52px!important;height:52px!important;padding:0 18px!important;
  color:#fff!important;background:#000!important;font:900 11px/1 "Arial Black",Arial,sans-serif!important;
  letter-spacing:.13em!important;text-align:center!important;text-transform:uppercase!important;
}
html body.woocommerce-cart .hf-cart-content .wc-proceed-to-checkout,
html body.woocommerce-cart .hf-cart-content .wc-proceed-to-checkout a.checkout-button{
  box-sizing:border-box!important;visibility:visible!important;opacity:1!important;clip:auto!important;
}
html body.woocommerce-cart .hf-cart-content .wc-proceed-to-checkout a.checkout-button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  position:relative!important;inset:auto!important;transform:none!important;
  width:100%!important;max-width:100%!important;height:50px!important;min-height:50px!important;
  margin:0!important;padding:0 18px!important;border:1px solid #000!important;border-radius:0!important;
  box-shadow:none!important;background:#000!important;color:#fff!important;
  font:900 11px/1 "Arial Black",Arial,sans-serif!important;letter-spacing:.13em!important;
  text-align:center!important;text-decoration:none!important;text-transform:uppercase!important;
}
html body.woocommerce-checkout #main-container,
html body.woocommerce-checkout #main,
html body.woocommerce-checkout #primary,
html body.woocommerce-checkout #content,
html body.woocommerce-checkout .site-main,
html body.woocommerce-checkout .ct-container,
html body.woocommerce-checkout .ct-container-full,
html body.woocommerce-checkout .hf-checkout-shell,
html body.woocommerce-checkout .hf-checkout-content,
html body.woocommerce-checkout .ct-order-review,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-checkout form.checkout,
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout #payment .place-order,
html body.woocommerce-cart #main-container,
html body.woocommerce-cart #main,
html body.woocommerce-cart .site-main,
html body.woocommerce-cart .hf-page-shell,
html body.woocommerce-cart .hf-cart-content,
html body.woocommerce-cart .woocommerce,
html body.single-product .hf-product,
html body.single-product .hf-product-grid,
html body.single-product .hf-product-info,
html body.single-product form.cart{
  transform:none!important;perspective:none!important;filter:none!important;contain:none!important;overflow:visible!important;
}
html body.woocommerce-checkout{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;padding:0!important;overflow-x:clip!important;
}
html body.woocommerce-checkout .hf-checkout-page,
html body.woocommerce-checkout .hf-checkout-shell,
html body.woocommerce-checkout .hf-checkout-content{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  margin-inline:auto!important;
}

/* V4.18.5 — reglas finales checkout (priman sobre bloques heredados) ------ */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) > .hf-header{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  left:auto!important;transform:none!important;margin:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-shell{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:clamp(18px,3vw,40px) clamp(18px,4vw,56px) 96px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-content{
  box-sizing:border-box!important;width:100%!important;max-width:1280px!important;min-width:0!important;margin:0 auto!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0 auto!important;padding:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) form.checkout.ct-woocommerce-checkout{
  box-sizing:border-box!important;width:100%!important;max-width:1200px!important;min-width:0!important;margin:0 auto!important;
}
@media(min-width:821px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) form.checkout.ct-woocommerce-checkout{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,440px)!important;
    align-items:start!important;column-gap:clamp(40px,5vw,76px)!important;row-gap:0!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-customer-details{grid-column:1!important;min-width:0!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-order-review{
    grid-column:2!important;position:sticky!important;top:24px!important;min-width:0!important;margin:0!important;padding:0!important;
  }
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
  position:relative!important;width:70%!important;height:auto!important;min-height:72px!important;
  padding:12px 38px 12px 58px!important;text-align:left!important;overflow-wrap:anywhere!important;word-break:normal!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name > a{
  position:static!important;display:inline!important;float:none!important;transform:none!important;
  font-family:var(--hf-font)!important;font-size:12px!important;font-weight:500!important;line-height:1.35!important;
  letter-spacing:.015em!important;text-transform:none!important;color:#000!important;text-decoration:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-thumb{
  position:absolute!important;left:0!important;top:50%!important;display:block!important;float:none!important;
  width:42px!important;height:52px!important;margin:0!important;padding:0!important;overflow:hidden!important;
  background:#e5e5e5!important;transform:translateY(-50%)!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-thumb img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;
  object-fit:contain!important;object-position:center!important;background:transparent!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .product-quantity{
  position:absolute!important;top:50%!important;right:0!important;display:block!important;margin:0!important;padding:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:400!important;line-height:1!important;color:#777!important;
  white-space:nowrap!important;transform:translateY(-50%)!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals td{
  display:grid!important;grid-template-columns:minmax(100px,.42fr) minmax(0,1fr)!important;align-items:start!important;
  gap:12px!important;padding:12px 0!important;overflow:visible!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals .ct-shipping-heading{
  float:none!important;width:auto!important;margin:2px 0 0!important;white-space:normal!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method{
  display:block!important;float:none!important;clear:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li{
  display:flex!important;align-items:flex-start!important;gap:8px!important;margin:0 0 8px!important;padding:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method{
  box-sizing:border-box!important;display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;
  align-items:start!important;gap:8px!important;width:100%!important;min-width:0!important;margin:0!important;padding:14px 0!important;
  border:0!important;border-bottom:1px solid #bbb!important;border-radius:0!important;background:transparent!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > input[type="radio"]{
  position:static!important;grid-column:1!important;grid-row:1!important;display:block!important;appearance:auto!important;
  -webkit-appearance:auto!important;width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;
  margin:1px 0 0!important;padding:0!important;accent-color:#000!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > label{
  position:static!important;grid-column:2!important;grid-row:1!important;display:flex!important;align-items:center!important;
  flex-wrap:wrap!important;gap:8px!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;
  line-height:1.4!important;letter-spacing:.06em!important;overflow-wrap:anywhere!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > label::before{
  display:none!important;content:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > .payment_box{
  grid-column:1/-1!important;min-width:0!important;max-width:100%!important;margin:8px 0 0!important;
  /* 4.19.17: la sangria lateral la define la capa general; este bloque ya no
     duplica el padding asimetrico 12/24px que desplazaba el QR. */
  border:0!important;border-top:1px solid #e5e5e5!important;
  border-radius:0!important;background:transparent!important;overflow-wrap:anywhere!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) > .hf-header{padding-right:12px!important;padding-left:12px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-shell{padding:20px 16px calc(86px + env(safe-area-inset-bottom))!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) form.checkout.ct-woocommerce-checkout{display:block!important;width:100%!important;max-width:100%!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-customer-details,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-order-review{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;position:static!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-order-review{margin-top:30px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-shipping-fields__field-wrapper,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-additional-fields__field-wrapper,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-account-fields{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row-first,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row-last{grid-column:1/-1!important;width:100%!important;max-width:100%!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
    width:68%!important;min-height:64px!important;padding:10px 30px 10px 48px!important;font-size:11px!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name > a{font-size:11px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-thumb{width:34px!important;height:44px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .product-quantity{font-size:9px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table td.product-total,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tfoot td{width:32%!important;font-size:11px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals td{grid-template-columns:minmax(0,1fr)!important;gap:7px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:100000!important;
    width:100%!important;max-width:100%!important;min-height:calc(58px + env(safe-area-inset-bottom))!important;
    padding:14px 16px calc(14px + env(safe-area-inset-bottom))!important;
  }
}
/* V4.19.0 — Portada editorial, seguimiento y ajustes finales --------------- */
.hf-home-hero{position:relative!important;isolation:isolate!important}
.hf-home-hero:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.12) 60%,transparent);pointer-events:none}
.hf-home-hero .hf-hero-copy{z-index:1!important;max-width:min(650px,62vw)!important;gap:18px!important}
.hf-home-hero .hf-hero-claim{max-width:10ch!important;font-size:clamp(42px,8vw,124px)!important;line-height:.88!important;letter-spacing:-.075em!important}
.hf-home-hero .hf-hero-description{display:block!important;max-width:38ch!important;font:500 clamp(15px,1.4vw,20px)/1.45 var(--hf-font,Arial,sans-serif)!important;letter-spacing:0!important;text-transform:none!important}
.hf-home-editorial{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:clamp(28px,7vw,110px);padding:clamp(32px,6vw,88px) clamp(20px,5vw,76px);border-bottom:1px solid #000;background:#f2f2f0}
.hf-home-editorial-index{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:100%;font:500 11px/1.3 var(--hf-font,Arial,sans-serif);letter-spacing:.08em;text-transform:uppercase}
.hf-home-editorial-index span:last-child{color:#777}
.hf-home-editorial-copy{max-width:760px}
.hf-home-editorial-copy h2{margin:0 0 20px;font:600 clamp(27px,5.2vw,72px)/.95 var(--hf-font,Arial,sans-serif);letter-spacing:-.055em;text-transform:uppercase}
.hf-home-editorial-copy p{max-width:38ch;margin:0 0 18px;font:400 clamp(16px,1.55vw,22px)/1.45 var(--hf-font,Arial,sans-serif)}
.hf-home-editorial-copy .hf-home-manifesto{margin-top:34px;color:#565656;font-size:14px;line-height:1.55}
.hf-home-editorial-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.hf-home-editorial-links a,.hf-home-about>a{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:44px;padding:0 14px;border:1px solid #000;font:600 11px/1 var(--hf-font,Arial,sans-serif);letter-spacing:.08em;text-transform:uppercase}
.hf-home-editorial-links a:first-child{background:#000;color:#fff}
.hf-home-editorial-links a:hover,.hf-home-about>a:hover{background:#000;color:#fff}
.hf-home-books{margin-top:clamp(34px,6vw,76px)}
.hf-home-books-intro{max-width:38ch;margin:8px 0 20px;color:#555;font:400 14px/1.5 var(--hf-font,Arial,sans-serif)}
.hf-home-grid,.hf-books-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(12px,2vw,28px)!important}
.hf-home-grid .hf-shop-card img,.hf-books-grid .hf-shop-card img,.hf-shop-grid .hf-shop-card img{aspect-ratio:4/5!important;background:#d0d0d0!important;object-fit:contain!important;filter:none!important}
.hf-shop-grid .hf-shop-card{min-width:0!important;background:transparent!important}
.hf-shop-grid .hf-shop-card-info{padding:10px 0 0!important}
.hf-shop-grid .hf-shop-card-title{font-family:var(--hf-font,Arial,sans-serif)!important;font-size:12px!important;font-weight:500!important;line-height:1.25!important;overflow-wrap:anywhere}
.hf-shop-grid .hf-shop-card-price{font-family:var(--hf-font,Arial,sans-serif)!important;font-size:12px!important;font-weight:400!important;line-height:1.25!important}
.hf-home-about{display:grid;grid-template-columns:minmax(130px,.45fr) minmax(0,1fr) auto;align-items:center;gap:22px;margin-top:clamp(36px,6vw,80px);padding:24px 0;border-top:1px solid #000;border-bottom:1px solid #000}
.hf-home-about>p{max-width:34ch;margin:0;font:400 clamp(16px,2vw,24px)/1.3 var(--hf-font,Arial,sans-serif)}
.hf-home-about>a{white-space:nowrap}
.hf-home-motto{font-family:var(--hf-font,Arial,sans-serif)!important}
.hf-cart-drawer>.hf-cart-drawer-checkout{display:flex!important;align-items:center;justify-content:center;flex:0 0 auto}
html body #hf-cart-drawer .hf-drawer-bag{display:none!important}
html body #hf-cart-drawer .woocommerce-mini-cart-item img{aspect-ratio:4/5!important;object-fit:contain!important;background:#d0d0d0!important}
html body.woocommerce-checkout .hf-checkout-thumb{background:#d0d0d0!important}
html body.woocommerce-checkout .hf-checkout-thumb img{aspect-ratio:4/5!important;background:#d0d0d0!important;object-fit:contain!important}

.hf-tracking-page{width:100%;max-width:none!important;margin:0!important}
.hf-tracking-editorial{width:min(1120px,100%);margin:0 auto;padding:clamp(32px,7vw,92px) clamp(18px,5vw,68px) 100px}
.hf-tracking-heading{padding:0 0 clamp(26px,5vw,54px);border-bottom:2px solid #000}
.hf-tracking-heading>span{font:500 10px/1.3 var(--hf-font,Arial,sans-serif);letter-spacing:.12em}
.hf-tracking-heading h1{margin:18px 0 14px;font:600 clamp(40px,8vw,94px)/.9 var(--hf-font,Arial,sans-serif);letter-spacing:-.065em}
.hf-tracking-heading>p{max-width:48ch;margin:0;color:#555;font:400 15px/1.5 var(--hf-font,Arial,sans-serif)}
.hf-tracking-content{width:min(660px,100%);margin:clamp(28px,5vw,56px) 0 0 auto}
html body .hf-tracking-page .hfm-tracking{padding:0!important;border:0!important;background:transparent!important;color:#000!important;font-family:var(--hf-font,Arial,sans-serif)!important}
html body .hf-tracking-page .hfm-tracking__form{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;margin:0!important;padding:24px!important;border:1px solid #c9c9c9!important;background:#f7f7f5!important}
html body .hf-tracking-page .hfm-tracking__form label{display:block!important;min-width:0!important;font:500 10px/1.4 var(--hf-font,Arial,sans-serif)!important;letter-spacing:.06em!important;text-transform:uppercase!important}
html body .hf-tracking-page .hfm-tracking__form input{display:block!important;width:100%!important;min-width:0!important;height:48px!important;margin:8px 0 0!important;padding:0 12px!important;border:1px solid #aaa!important;border-radius:0!important;background:#fff!important;font:400 15px/1.3 var(--hf-font,Arial,sans-serif)!important;letter-spacing:0!important}
html body .hf-tracking-page .hfm-tracking__form button{grid-column:1/-1!important;width:100%!important;min-height:48px!important;margin:0!important;border:1px solid #000!important;border-radius:0!important;background:#000!important;color:#fff!important;font:600 11px/1 var(--hf-font,Arial,sans-serif)!important;letter-spacing:.08em!important;text-transform:uppercase!important}
html body .hf-tracking-page .hfm-tracking__message{margin:18px 0 0!important;padding:14px 16px!important;border-left:2px solid #000!important;background:#efefed!important;font:400 13px/1.5 var(--hf-font,Arial,sans-serif)!important}
html body .hf-tracking-page .hfm-tracking__result{margin-top:24px!important;padding:24px!important;border:1px solid #d8d8d5!important;border-top:2px solid #000!important;background:#fff!important;font-family:var(--hf-font,Arial,sans-serif)!important}
html body .hf-tracking-page .hfm-tracking__result h2{margin:0 0 16px!important;font:600 22px/1.15 var(--hf-font,Arial,sans-serif)!important;letter-spacing:-.02em!important}
html body .hf-tracking-page .hfm-tracking__result dl{margin:0!important}
html body .hf-tracking-page .hfm-tracking__result dl>div{display:grid!important;grid-template-columns:minmax(120px,.55fr) minmax(0,1fr)!important;gap:14px!important;padding:13px 0!important;border-top:1px solid #e1e1df!important}
html body .hf-tracking-page .hfm-tracking__result dt{font:500 10px/1.4 var(--hf-font,Arial,sans-serif)!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#666!important}
html body .hf-tracking-page .hfm-tracking__result dd{min-width:0!important;margin:0!important;overflow-wrap:anywhere!important;font:400 14px/1.45 var(--hf-font,Arial,sans-serif)!important}
html body .hf-tracking-page .hfm-tracking__result a{color:#000!important;text-decoration:underline!important;text-underline-offset:3px!important}
html body .hf-tracking-page .hfm-tracking__result h3{margin:24px 0 0;padding-top:18px;border-top:1px solid #d8d8d5;font:600 11px/1.2 var(--hf-font,Arial,sans-serif);letter-spacing:.09em;text-transform:uppercase}
html body .hf-tracking-page .hfm-tracking__history{position:relative;margin:0;padding:8px 0 0;list-style:none}
html body .hf-tracking-page .hfm-tracking__history:before{position:absolute;top:16px;bottom:18px;left:5px;width:1px;background:#d8d8d5;content:""}
html body .hf-tracking-page .hfm-tracking__history li{position:relative;padding:14px 0 14px 24px;border-top:1px solid #e1e1df;font:400 13px/1.5 var(--hf-font,Arial,sans-serif)!important}
html body .hf-tracking-page .hfm-tracking__history li:before{position:absolute;top:19px;left:0;width:10px;height:10px;border:1px solid #000;border-radius:50%;background:#fff;content:""}
html body .hf-tracking-page .hfm-tracking__history li:first-child:before{background:#000}
.hf-tracking-privacy,.hf-tracking-unavailable{margin:16px 0 0;color:#666;font:400 11px/1.5 var(--hf-font,Arial,sans-serif)}

@media (min-width:821px) and (max-width:1100px){
  .hf-home-editorial{grid-template-columns:minmax(130px,.6fr) minmax(0,1.4fr);gap:32px;padding-right:28px;padding-left:28px}
  .hf-home-grid,.hf-books-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:820px){
  .hf-home-hero{min-height:min(76svh,760px)!important}
  .hf-home-hero:after{background:linear-gradient(0deg,rgba(0,0,0,.66),rgba(0,0,0,.08) 82%)}
  html body.home .hf-home-hero .hf-hero-copy{display:none!important}
  html body.home .hf-home-hero .hf-hero-media{display:block!important;width:100%!important;height:100%!important}
  .hf-home-hero .hf-hero-claim{max-width:9ch!important;font-size:clamp(43px,12vw,82px)!important}
  .hf-home-hero .hf-hero-description{max-width:34ch!important;font-size:15px!important;line-height:1.4!important}
  .hf-home-editorial{grid-template-columns:1fr;gap:24px;padding:30px 16px 38px}
  .hf-home-editorial-index{min-height:0;flex-direction:row;align-items:center}
  .hf-home-editorial-index span:last-child{font-size:9px}
  .hf-home-editorial-copy h2{max-width:12ch;margin-bottom:16px;font-size:clamp(34px,10vw,58px)}
  .hf-home-editorial-copy p{font-size:16px}
  .hf-home-editorial-copy .hf-home-manifesto{margin-top:24px;font-size:13px}
  .hf-home-editorial-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}
  .hf-home-editorial-links a{min-width:0;gap:8px;padding:0 10px;font-size:10px}
  .hf-home-grid,.hf-books-grid{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px!important;row-gap:26px!important}
  .hf-home-sec{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding-right:18px!important;padding-left:18px!important}
  .hf-home-grid .hf-shop-card img,.hf-books-grid .hf-shop-card img{aspect-ratio:4/5!important}
  .hf-home-books-intro{font-size:13px}
  .hf-home-about{grid-template-columns:1fr auto;gap:12px;margin-top:36px;padding:18px 0}
  .hf-home-about>.hf-home-bar-title{grid-column:1/-1}
  .hf-home-about>p{font-size:17px}
  .hf-home-about>a{min-height:40px;gap:8px;padding:0 9px;font-size:9px}
  .hf-tracking-editorial{padding:34px 16px calc(80px + env(safe-area-inset-bottom))}
  .hf-tracking-heading h1{font-size:clamp(42px,13vw,68px)}
  .hf-tracking-content{margin-top:28px}
  html body .hf-tracking-page .hfm-tracking__form{grid-template-columns:1fr!important;gap:14px!important;padding:16px!important}
  html body .hf-tracking-page .hfm-tracking__form button{grid-column:1!important}
  html body .hf-tracking-page .hfm-tracking__result{padding:16px!important}
  html body .hf-tracking-page .hfm-tracking__result dl>div{grid-template-columns:1fr!important;gap:4px!important}
}
html body.single-product .hf-product-gallery .hf-carousel-image{aspect-ratio:4/5!important;background:#d0d0d0!important;object-fit:contain!important}
/* FIN — V4.19.0 */

/* V4.19.2 — botones de compra, header, bolsa y checkout */
html body .hf-cart-drawer .woocommerce-mini-cart__buttons,
html body #hf-cart-drawer .woocommerce-mini-cart__buttons,
html body .hf-cart-drawer .woocommerce-mini-cart__buttons .checkout{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
html body [class*="anexar" i]:not(.single_add_to_cart_button),
html body [aria-label*="anexar" i]:not(.single_add_to_cart_button),
html body [title*="anexar" i]:not(.single_add_to_cart_button){
  display:none!important;visibility:hidden!important;
}

html body.single-product form.cart .single_add_to_cart_button,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
html body.woocommerce-checkout #place_order{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;max-width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;
  margin:0!important;padding:0 18px!important;border:1px solid #000!important;border-radius:0!important;box-shadow:none!important;
  background:#000!important;color:#fff!important;font:900 11px/1 "Arial Black",Arial,sans-serif!important;
  letter-spacing:.13em!important;text-align:center!important;text-transform:uppercase!important;text-decoration:none!important;
  cursor:pointer!important;opacity:1!important;pointer-events:auto!important;
}
html body.single-product form.cart .single_add_to_cart_button:hover,
html body.single-product form.cart .single_add_to_cart_button:focus,
html body.single-product form.cart .single_add_to_cart_button:active,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active,
html body.woocommerce-checkout #place_order:hover,
html body.woocommerce-checkout #place_order:focus,
html body.woocommerce-checkout #place_order:active,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button[disabled],
html body.single-product form.cart .single_add_to_cart_button.disabled,
html body.single-product form.cart .single_add_to_cart_button.is-needs-size,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.disabled,
html body.woocommerce-checkout #place_order:disabled,
html body.woocommerce-checkout #place_order[disabled],
html body.woocommerce-checkout #place_order.disabled{
  background:#000!important;border-color:#000!important;color:#fff!important;opacity:1!important;pointer-events:auto!important;
}

@media(min-width:821px){
  html body.single-product form.cart .single_add_to_cart_button,
  html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  html body.woocommerce-checkout #place_order{height:50px!important;min-height:50px!important;max-height:50px!important}
}
@media(max-width:820px){
  html body.single-product .hf-product-info{padding-bottom:72px!important}
  html body.woocommerce-cart .woocommerce,
  html body.woocommerce-checkout .woocommerce{padding-bottom:80px!important}
  html body.single-product form.cart .single_add_to_cart_button,
  html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  html body.woocommerce-checkout #place_order{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:100000!important;
    width:auto!important;max-width:none!important;height:52px!important;min-height:52px!important;max-height:52px!important;
    margin:0!important;padding:0 18px!important;
  }
  html body.woocommerce-cart .wc-proceed-to-checkout{
    position:static!important;inset:auto!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;
    border:0!important;background:transparent!important;
  }
}
/* FIN — V4.19.3 BOTONES */
html,body{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow-x:clip!important}
html body .hf-header,
html body.woocommerce-checkout>.hf-header,
html body.woocommerce-cart>.hf-header,
html body.single-product>.hf-header{
  box-sizing:border-box!important;position:relative!important;inset-inline:auto!important;left:auto!important;right:auto!important;
  transform:none!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;
}
html body .hf-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;overflow:visible!important}
html body .hf-header .hf-nav,html body .hf-header .hf-actions{min-width:0!important}
html body.woocommerce-checkout #main-container,
html body.woocommerce-checkout #main,
html body.woocommerce-checkout #primary,
html body.woocommerce-checkout #content,
html body.woocommerce-checkout .site-main,
html body.woocommerce-checkout .ct-container,
html body.woocommerce-checkout .ct-container-full,
html body.woocommerce-checkout .hf-checkout-shell,
html body.woocommerce-checkout .hf-checkout-content,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-checkout form.checkout{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:auto!important;
}
html body.woocommerce-checkout [class*="hfm-market" i],
html body.woocommerce-checkout [id*="hfm-market" i],
html body.woocommerce-checkout [data-hfm-market],
html body.woocommerce-checkout [class*="market-selector" i],
html body.woocommerce-checkout [id*="market-selector" i],
html body.woocommerce-cart [class*="hfm-market" i],
html body.woocommerce-cart [id*="hfm-market" i],
html body.woocommerce-cart [data-hfm-market],
html body.woocommerce-cart [class*="market-selector" i],
html body.woocommerce-cart [id*="market-selector" i],
html body.single-product [class*="hfm-market" i],
html body.single-product [id*="hfm-market" i],
html body.single-product [data-hfm-market],
html body.single-product [class*="market-selector" i],
html body.single-product [id*="market-selector" i]{display:none!important;visibility:hidden!important}

html body.woocommerce-cart .wc-proceed-to-checkout{display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;transform:none!important}
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout #payment .place-order{display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
html body.woocommerce-checkout #place_order{display:flex!important;visibility:visible!important;opacity:1!important;clip:auto!important;transform:none!important}
@media(max-width:820px){
  html body.woocommerce-cart .wc-proceed-to-checkout{position:static!important;inset:auto!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{position:fixed!important;inset-inline:0!important;bottom:0!important;z-index:100000!important;width:auto!important;max-width:none!important}
  html body.woocommerce-checkout #payment .place-order{padding-bottom:0!important}
  html body.woocommerce-checkout #place_order{position:fixed!important;inset-inline:0!important;bottom:0!important;width:auto!important;max-width:none!important;z-index:100000!important}
  html body.single-product form.cart .single_add_to_cart_button{position:fixed!important;inset-inline:0!important;bottom:0!important;width:auto!important;max-width:none!important;z-index:100000!important}
}

/* V4.19.3 — checkout: mantener el header en el flujo y al ancho de su padre */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b)>.hf-header{
  box-sizing:border-box!important;display:grid!important;position:relative!important;inset:auto!important;
  left:auto!important;right:auto!important;transform:none!important;width:100%!important;max-width:100%!important;
  min-width:0!important;margin:0!important;padding-inline:clamp(12px,2vw,24px)!important;
}

/* V4.19.8 — portada a ancho de contenedor y sin desplazamiento lateral ------ */
html body.home{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
html body.home #main.site-main.hf-home{
  display:block!important;position:relative!important;box-sizing:border-box!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:0!important;inset-inline:auto!important;transform:none!important;
}
html body.home .hf-home-hero{
  position:relative!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin-inline:0!important;inset-inline:auto!important;transform:none!important;
}
html body.home .hf-home-sec,
html body.home .hf-home-editorial,
html body.home .hf-home-books,
html body.home .hf-home-about,
html body.home .hf-home-cta{
  box-sizing:border-box!important;max-width:100%!important;min-width:0!important;
}

/* V4.19.4 — contador verde, sin enlaces “Ver bolsa” ni franjas blancas */
html body .hf-header .hf-actions .hf-bag-trigger{position:relative!important;overflow:visible!important}
html body .hf-header .hf-actions .hf-bag-trigger [data-hf-cart-count]{
  position:absolute!important;top:1px!important;right:0!important;z-index:5!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:17px!important;height:17px!important;padding:0 4px!important;
  border:1px solid #000!important;border-radius:50%!important;background:#198b45!important;color:#fff!important;
  font:700 9px/1 Arial,sans-serif!important;letter-spacing:0!important;
}
html body .hf-header .hf-actions .hf-bag-trigger [data-hf-cart-count].is-empty,
html body .hf-header .hf-actions .hf-bag-trigger [data-hf-cart-count]:empty{display:none!important}
html body .hf-header .hf-actions .hf-bag-trigger .hf-bag-notice{display:none!important}
html body .hf-header .hf-actions .hf-bag-trigger.is-added .hf-bag-notice{
  position:absolute!important;top:calc(100% + 2px)!important;right:0!important;z-index:5!important;
  display:block!important;padding:5px 7px!important;background:#198b45!important;color:#fff!important;
  font:700 8px/1 Arial,sans-serif!important;letter-spacing:.06em!important;white-space:nowrap!important;
}
html body #hf-cart-drawer .hf-drawer-bag,
html body #hf-cart-drawer a.added_to_cart,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info a.added_to_cart,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .woocommerce-message a.wc-forward{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-content .wc-proceed-to-checkout{
  display:block!important;visibility:visible!important;opacity:1!important;position:static!important;
  width:100%!important;max-width:none!important;margin:18px 0 0!important;padding:0!important;
  overflow:visible!important;
}
html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-content .wc-proceed-to-checkout a.checkout-button{
  display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;transform:none!important;
  width:100%!important;max-width:100%!important;min-height:50px!important;height:50px!important;
  background:#000!important;color:#fff!important;border:1px solid #000!important;
}
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .single_variation_wrap .woocommerce-variation-add-to-cart,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .single_variation_wrap .variations_button,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info form.cart:not(.variations_form):not(.grouped_form){
  position:static!important;inset:auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;overflow:visible!important;
}
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info{padding-bottom:72px!important}
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info a.added_to_cart,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .woocommerce-message a.wc-forward,
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .added_to_cart.wc-forward,
html body #hf-cart-drawer .hf-drawer-bag,
html body #hf-cart-drawer a.added_to_cart{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment #place_order{
  display:flex!important;visibility:visible!important;opacity:1!important;clip:auto!important;transform:none!important;
}
@media(max-width:820px){
  html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .single_variation_wrap .woocommerce-variation-add-to-cart,
  html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .single_variation_wrap .variations_button,
  html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info form.cart:not(.variations_form):not(.grouped_form){
    position:static!important;inset:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;
    padding:0!important;margin:0!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment #place_order{
    position:fixed!important;inset-inline:0!important;top:auto!important;bottom:0!important;z-index:100000!important;
    width:auto!important;max-width:none!important;height:52px!important;min-height:52px!important;max-height:52px!important;
  }
  html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-content .wc-proceed-to-checkout{
    position:static!important;width:100%!important;margin:18px 0 0!important;
  }
  html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-content .wc-proceed-to-checkout a.checkout-button{
    position:fixed!important;inset-inline:0!important;top:auto!important;bottom:0!important;z-index:100000!important;
    width:auto!important;max-width:none!important;height:52px!important;min-height:52px!important;
  }
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #main-container,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #main,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #primary,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #content,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .site-main,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-container,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-container-full,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-shell,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-checkout-content,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) form.checkout{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:auto!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment .place-order{
  display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  position:relative!important;inset-inline:auto!important;bottom:auto!important;z-index:100000!important;
  width:100%!important;max-width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;
  margin:0!important;padding:0 18px!important;border:1px solid #000!important;border-radius:0!important;box-shadow:none!important;
  background:#000!important;color:#fff!important;font:900 11px/1 "Arial Black",Arial,sans-serif!important;
  letter-spacing:.13em!important;text-align:center!important;text-transform:uppercase!important;text-decoration:none!important;
  opacity:1!important;visibility:visible!important;clip:auto!important;transform:none!important;pointer-events:auto!important;
}
html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) form.cart .single_add_to_cart_button,
html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .wc-proceed-to-checkout a.checkout-button{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;max-width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;
  margin:0!important;padding:0 18px!important;border:1px solid #000!important;border-radius:0!important;box-shadow:none!important;
  background:#000!important;color:#fff!important;font:900 11px/1 "Arial Black",Arial,sans-serif!important;
  letter-spacing:.13em!important;text-align:center!important;text-transform:uppercase!important;text-decoration:none!important;
  opacity:1!important;cursor:pointer!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b)>.hf-header{padding-inline:12px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order,
  html body.woocommerce-cart:not(#hf-sweep-a):not(#hf-sweep-b) .wc-proceed-to-checkout a.checkout-button,
  html body.single-product:not(#hf-sweep-a):not(#hf-sweep-b) form.cart .single_add_to_cart_button{
    box-sizing:border-box!important;position:fixed!important;left:0!important;right:0!important;inset-inline:0!important;
    top:auto!important;bottom:0!important;z-index:100000!important;display:flex!important;
    width:100%!important;max-width:100%!important;height:52px!important;min-height:52px!important;max-height:52px!important;
    margin:0!important;padding:0 18px!important;transform:none!important;
  }
  html body.woocommerce-checkout #payment .place-order{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
  html body.woocommerce-cart .hf-cart-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))!important}
  html body.woocommerce-checkout .hf-checkout-shell{padding-bottom:calc(86px + env(safe-area-inset-bottom))!important}
}

/* V4.19.9 — ancho base único, checkout contenido y relacionados centrados --- */
html{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  margin:0!important;padding:0!important;overflow-x:clip!important;
}
html body{
  display:block!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0 auto!important;padding:0!important;overflow-x:clip!important;
}
html body>.hf-header{
  display:grid!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0 auto!important;left:auto!important;right:auto!important;
  transform:none!important;
}
html body.woocommerce-checkout>#main.hf-checkout-page{
  display:block!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0 auto!important;padding:0!important;transform:none!important;
}
html body.woocommerce-checkout .hf-checkout-shell{
  box-sizing:border-box!important;width:100%!important;max-width:1440px!important;
  min-width:0!important;margin:0 auto!important;
}
html body.woocommerce-checkout .hf-checkout-content{
  box-sizing:border-box!important;width:100%!important;max-width:1280px!important;
  min-width:0!important;margin:0 auto!important;
}
html body.single-product .related{
  position:relative!important;left:auto!important;right:auto!important;transform:none!important;
}

/* V4.19.11 — CTA de checkout fijo al viewport, sin panel blanco ------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment .place-order{
  position:static!important;display:block!important;box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
  border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
  position:fixed!important;left:50%!important;right:auto!important;
  bottom:12px!important;z-index:100000!important;transform:translateX(-50%)!important;
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:520px!important;max-width:calc(100% - 32px)!important;
  height:52px!important;min-height:52px!important;max-height:52px!important;
  margin:0!important;padding:0 18px!important;overflow:visible!important;
  border:1px solid #000!important;border-radius:0!important;box-shadow:none!important;
  background:#000!important;color:#fff!important;opacity:1!important;visibility:visible!important;
  clip:auto!important;pointer-events:auto!important;
  font:900 11px/1 "Arial Black",Arial,sans-serif!important;letter-spacing:.13em!important;
  text-align:center!important;text-decoration:none!important;text-transform:uppercase!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
    bottom:calc(10px + env(safe-area-inset-bottom))!important;
  }
}

/* V4.19.12 — portada sin copy flotante; checkout contenido y pagos legibles -- */
@media(max-width:820px){
  html body.home .hf-home-hero .hf-hero-copy{display:none!important}
}
html body.woocommerce-checkout{
  width:100%!important;max-width:100%!important;min-width:0!important;
  overflow-x:hidden!important;overscroll-behavior-x:none!important;
}
html body.woocommerce-checkout #main.hf-checkout-page,
html body.woocommerce-checkout .hf-checkout-shell,
html body.woocommerce-checkout .hf-checkout-content,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-checkout form.checkout,
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.payment_methods li,
html body.woocommerce-checkout #payment .payment_box{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
}
html body.woocommerce-checkout .hf-checkout-shell{
  max-width:1120px!important;margin-inline:auto!important;
}
html body.woocommerce-checkout .hf-checkout-content{
  max-width:1040px!important;margin-inline:auto!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;
  align-items:start!important;column-gap:10px!important;row-gap:0!important;
  margin:0 0 10px!important;padding:14px!important;
  border:1px solid #dedbd7!important;border-radius:0!important;background:#fff!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]{
  grid-column:1!important;grid-row:1!important;margin:2px 0 0!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
  grid-column:2!important;grid-row:1!important;display:flex!important;flex-wrap:wrap!important;
  align-items:center!important;gap:7px!important;min-width:0!important;max-width:100%!important;
  margin:0!important;padding:0!important;font-family:var(--hf-font,Arial,sans-serif)!important;
  font-size:11px!important;font-weight:500!important;line-height:1.45!important;
  letter-spacing:.04em!important;overflow-wrap:anywhere!important;white-space:normal!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::before{
  content:none!important;display:none!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::after{
  max-width:100%!important;margin-left:auto!important;white-space:normal!important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > .payment_box{
  grid-column:1/-1!important;display:block!important;margin:12px 0 0!important;
  padding:12px 0 0 26px!important;border:0!important;border-top:1px solid #e5e2de!important;
  border-radius:0!important;background:transparent!important;color:#555!important;
  font-family:var(--hf-font,Arial,sans-serif)!important;font-size:11px!important;
  line-height:1.55!important;overflow-wrap:anywhere!important;word-break:normal!important;
}
html body.woocommerce-checkout #payment .payment_box :is(input,select,textarea,iframe,fieldset,table){
  box-sizing:border-box!important;max-width:100%!important;min-width:0!important;
}
html body.woocommerce-checkout #payment .place-order{
  width:100%!important;max-width:100%!important;min-width:0!important;
  background:transparent!important;box-shadow:none!important;
}
html body .hf-cart-drawer{
  width:100%!important;max-width:min(420px,100%)!important;
}
@media(max-width:820px){
  html body .hf-cart-drawer{max-width:100%!important}
  html body.woocommerce-checkout .hf-checkout-shell{
    width:100%!important;max-width:100%!important;padding-right:12px!important;padding-left:12px!important;
  }
  html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{padding:12px!important}
  /* 4.19.17: se retira el padding-left 24px del payment_box en movil. No
     llegaba a aplicarse por la regla heredada mas especifica, pero dejaba una
     segunda fuente de sangria lista para reaparecer. */
}

/* V4.19.13 — ajuste final: texto legal, peso tipográfico y ancho móvil */
html body.single-product form.cart .single_add_to_cart_button,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
html body.woocommerce-checkout #place_order,
html body #hf-cart-drawer .hf-cart-drawer-checkout{
  font-weight:900!important;
}

/* V4.19.14 — ficha de producto limpia, etiqueta inicial estable y detalles sin filetes */
html body.single-product .hf-product-info .hf-product-accordions{
  border:0!important;
  font-family:var(--hf-font,Arial,sans-serif)!important;
}
html body.single-product .hf-product-info .hf-product-accordions details,
html body.single-product .hf-product-info .hf-product-accordions details>div,
html body.single-product .hf-product-info .hf-product-accordions summary,
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table th,
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table td{
  border:0!important;
  font-family:var(--hf-font,Arial,sans-serif)!important;
}
html body.single-product .hf-product-info .hf-product-accordions summary{
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.4!important;
  letter-spacing:.06em!important;
}
html body.single-product .hf-product-info .hf-product-accordions details>div,
html body.single-product .hf-product-info .hf-product-accordions details>div p,
html body.single-product .hf-product-info .hf-product-accordions .hf-attributes,
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table table{
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.55!important;
}
html body.single-product .hf-product-info .hf-product-accordions .hf-size-table th{
  font-weight:700!important;
}
html body.single-product .hf-product-info .hf-atc-hint{
  margin:10px 0 0!important;
  padding:10px 12px!important;
  border:0!important;
  font:600 11px/1.45 var(--hf-font,Arial,sans-serif)!important;
}

/* V4.19.17 — caja QR centrada, sin sangria lateral heredada.
   Causa raiz: dos reglas legadas V4.18 con :not(#hf-sweep-a):not(#hf-sweep-b)
   imponian padding 12px 0 0 26px / 24px al .payment_box. Esa asimetria (26px
   a la izquierda, 0 a la derecha) desplazaba el bloque QR. Al retirar ese
   padding de las reglas legadas, esta regla (mas especifica que la general)
   vuelve a ganar y el bloque queda centrado. El padding interno del panel y
   del QR se conserva intacto. */
html body.woocommerce-checkout #payment ul.payment_methods li.payment_method_hfm_qr_pe > .payment_box{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-inline:auto!important;
  padding:12px 0 0!important;
}
html body .hf-shop-card-title,
html body .hf-shop-grid .hf-shop-card-title,
html body .hf-home-grid .hf-shop-card-title,
html body .hf-books-grid .hf-shop-card-title,
html body .related .woocommerce-loop-product__title,
html body.single-product .product_title{
  font-weight:700!important;
}
html body.woocommerce-checkout .woocommerce-privacy-policy-text,
html body.woocommerce-checkout .woocommerce-privacy-policy-text p,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 14px!important;
  padding:0!important;
  text-align:left!important;
  text-indent:0!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  font-size:12px!important;
  line-height:1.55!important;
}
html body.woocommerce-checkout .woocommerce-privacy-policy-text a,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{
  overflow-wrap:anywhere!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout #main.hf-checkout-page,
  html body.woocommerce-checkout .hf-checkout-shell,
  html body.woocommerce-checkout .hf-checkout-content,
  html body.woocommerce-checkout .woocommerce,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout #payment .place-order,
  html body.woocommerce-checkout .woocommerce-privacy-policy-text,
  html body.woocommerce-checkout .woocommerce-privacy-policy-text p,
  html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-inline:0!important;
  }
  html body.woocommerce-checkout .hf-checkout-shell{
    padding-inline:12px!important;
  }
  html body.woocommerce-checkout .hf-checkout-content{
    padding-inline:0!important;
  }
  html body.woocommerce-checkout .woocommerce-privacy-policy-text,
  html body.woocommerce-checkout .woocommerce-privacy-policy-text p{
    font-size:12px!important;
    line-height:1.55!important;
  }
}

/* ==========================================================================
   V4.19.18 - HOME EDITORIAL HARTEFAKTO
   --------------------------------------------------------------------------
   Se usa una capa nueva (.hf-home-v2 / .hf-v2-*) para no encadenar overrides
   sobre la portada anterior. La identidad se mantiene: mismo isologo, misma
   paleta negro/blanco/gris y los mismos textos de boton. El unico cambio de
   estructura es la portada: hero a sangre con CTA visible tambien en movil,
   carta editorial, producto, manifiesto, libros, categorias, news y cierre.
   ========================================================================== */
html body.home .hf-home.hf-home-v2{
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:0!important;
  background:#fff!important;color:#000!important;
  overflow:clip!important;
}
html body.home .hf-home-v2 *,
html body.home .hf-home-v2 *:before,
html body.home .hf-home-v2 *:after{box-sizing:border-box!important}
html body.home .hf-home-v2 img{max-width:100%}
html body.home .hf-home-v2 a{text-decoration:none!important}
html body.home .hf-home-v2 p,
html body.home .hf-home-v2 h2,
html body.home .hf-home-v2 h3{margin-top:0}

html body.home .hf-v2-eyebrow{
  margin:0 0 12px!important;
  font-family:var(--hf-font)!important;
  font-size:9px!important;line-height:1.3!important;font-weight:600!important;
  letter-spacing:.2em!important;text-transform:uppercase!important;color:#666!important;
}
html body.home .hf-v2-eyebrow--light{color:rgba(255,255,255,.64)!important}

/* Botones: misma logica que los botones negros de la tienda (rectos, altos,
   texto en mayusculas), con variantes para fondo claro y fondo fotografico. */
html body.home .hf-v2-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:10px!important;min-height:50px!important;padding:0 22px!important;
  border:1px solid #000!important;border-radius:0!important;
  background:#fff!important;color:#000!important;
  font-family:var(--hf-font)!important;
  font-size:11px!important;line-height:1!important;font-weight:700!important;
  letter-spacing:.13em!important;text-transform:uppercase!important;text-decoration:none!important;
  cursor:pointer!important;
  transition:background .25s ease,color .25s ease,border-color .25s ease!important;
}
html body.home .hf-v2-btn>span{display:inline-block;font-size:14px;line-height:1;transition:transform .25s ease}
html body.home .hf-v2-btn:hover>span,
html body.home .hf-v2-btn:focus-visible>span{transform:translateX(3px)}
html body.home .hf-v2-btn--solid{background:#000!important;color:#fff!important;border-color:#000!important}
html body.home .hf-v2-btn--solid:hover,
html body.home .hf-v2-btn--solid:focus-visible{background:#fff!important;color:#000!important}
html body.home .hf-v2-btn--ghost{background:transparent!important;color:#000!important;border-color:#000!important}
html body.home .hf-v2-btn--ghost:hover,
html body.home .hf-v2-btn--ghost:focus-visible{background:#000!important;color:#fff!important}
html body.home .hf-v2-btn--light{background:#fff!important;color:#000!important;border-color:#fff!important}
html body.home .hf-v2-btn--light:hover,
html body.home .hf-v2-btn--light:focus-visible{background:transparent!important;color:#fff!important;border-color:#fff!important}
html body.home .hf-v2-btn--ghost-light{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.72)!important}
html body.home .hf-v2-btn--ghost-light:hover,
html body.home .hf-v2-btn--ghost-light:focus-visible{background:#fff!important;color:#000!important;border-color:#fff!important}
html body.home .hf-v2-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:30px!important}
html body.home .hf-v2-actions--center{justify-content:center!important}
html body.home .hf-v2-actions--single{margin-top:26px!important}

/* A. HERO A SANGRE --------------------------------------------------------- */
html body.home .hf-v2-hero{
  position:relative!important;display:block!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  height:calc(100svh - 72px)!important;min-height:620px!important;max-height:980px!important;
  margin:0!important;padding:0!important;
  background:#000!important;overflow:hidden!important;isolation:isolate!important;
}
html body.home .hf-v2-hero-img{
  position:absolute!important;inset:0!important;z-index:0!important;
  display:block!important;width:100%!important;max-width:none!important;
  height:100%!important;max-height:none!important;margin:0!important;
  object-fit:cover!important;object-position:center 28%!important;
  background:#000!important;
}
html body.home .hf-v2-hero-veil{
  position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.04) 34%,rgba(0,0,0,.18) 58%,rgba(0,0,0,.8) 100%),
    linear-gradient(90deg,rgba(0,0,0,.36) 0%,rgba(0,0,0,.06) 52%,transparent 78%)!important;
}
html body.home .hf-v2-hero-inner{
  position:absolute!important;inset:0!important;z-index:2!important;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;
  padding:clamp(24px,4vw,64px)!important;color:#fff!important;
}
html body.home .hf-v2-hero-copy{width:100%!important;max-width:min(980px,100%)!important}
html body.home .hf-v2-hero-title{
  display:flex!important;flex-direction:column!important;
  margin:0!important;padding:0!important;
  max-width:14ch!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(44px,7.2vw,118px)!important;line-height:.86!important;
  font-weight:700!important;letter-spacing:-.07em!important;
  text-transform:uppercase!important;color:#fff!important;
  text-shadow:0 2px 28px rgba(0,0,0,.32);
  text-wrap:balance;
}
html body.home .hf-v2-hero-text{
  max-width:38ch!important;margin:24px 0 0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(15px,1.4vw,19px)!important;line-height:1.5!important;font-weight:400!important;
  color:rgba(255,255,255,.9)!important;
}

/* B. CINTA EN MOVIMIENTO --------------------------------------------------- */
html body.home .hf-v2-ticker{
  position:relative!important;display:flex!important;align-items:center!important;
  width:100%!important;height:42px!important;overflow:hidden!important;
  border-top:1px solid #262626!important;border-bottom:1px solid #262626!important;
  background:#000!important;color:#fff!important;
}
html body.home .hf-v2-ticker-track{
  display:flex!important;align-items:center!important;width:max-content!important;
  animation:hf-v2-marquee 34s linear infinite!important;
  will-change:transform;
}
html body.home .hf-v2-ticker span{
  display:inline-flex!important;align-items:center!important;
  padding:0 26px!important;white-space:nowrap!important;
  font-family:var(--hf-font)!important;
  font-size:9px!important;line-height:1!important;font-weight:500!important;
  letter-spacing:.2em!important;text-transform:uppercase!important;color:#fff!important;
}
html body.home .hf-v2-ticker span:after{
  content:"";display:inline-block!important;width:4px;height:4px;margin-left:52px;
  border-radius:50%;background:#fff;opacity:.55;
}
@keyframes hf-v2-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){
  html body.home .hf-v2-ticker-track{animation:none!important}
}

/* C. CARTA EDITORIAL ------------------------------------------------------- */
html body.home .hf-v2-letter{
  width:100%!important;margin:0 auto!important;
  padding:clamp(72px,10vw,150px) clamp(20px,5vw,72px)!important;
  text-align:center!important;background:#fff!important;
}
html body.home .hf-v2-letter-title{
  margin:0 auto!important;max-width:1000px!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(38px,6.8vw,100px)!important;line-height:.88!important;
  font-weight:700!important;letter-spacing:-.065em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body.home .hf-v2-letter-lede{
  max-width:32ch!important;margin:30px auto 0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(18px,2.1vw,27px)!important;line-height:1.35!important;font-weight:500!important;
  color:#111!important;
}

/* D. SECCIONES, CABECERAS Y CARRILES --------------------------------------- */
html body.home .hf-v2-section{
  width:100%!important;
  padding:clamp(56px,8vw,110px) clamp(18px,4.5vw,64px)!important;
  background:#fff!important;
}
html body.home .hf-v2-section--books{
  background:#f2f2f0!important;
  border-top:1px solid #000!important;border-bottom:1px solid #000!important;
}
html body.home .hf-v2-books-layout{
  display:grid!important;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr)!important;
  gap:clamp(28px,5vw,72px)!important;align-items:start!important;
}
html body.home .hf-v2-books-intro{
  align-self:start!important;
  padding:clamp(22px,3vw,38px)!important;
  border:0!important;background:#000!important;color:#fff!important;
}
html body.home .hf-v2-books-intro .hf-v2-eyebrow{color:rgba(255,255,255,.62)!important}
html body.home .hf-v2-books-title{
  max-width:10ch!important;margin:0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(36px,4.6vw,68px)!important;line-height:.9!important;
  font-weight:700!important;letter-spacing:-.055em!important;
  text-transform:uppercase!important;color:#fff!important;
}
html body.home .hf-v2-books-note{
  max-width:32ch!important;margin:22px 0 26px!important;
  font-family:var(--hf-font)!important;
  font-size:14px!important;line-height:1.6!important;color:#bdbdbd!important;
}
html body.home .hf-v2-books-intro .hf-v2-link{color:#fff!important;border-color:#fff!important}
html body.home .hf-v2-books-intro .hf-v2-link:hover{color:#bdbdbd!important;border-color:#bdbdbd!important}
html body.home .hf-v2-card--book .hf-v2-card-media{
  aspect-ratio:4/5!important;
  padding:0!important;
  border:2px solid #000!important;background:#d0d0d0!important;
  box-shadow:8px 8px 0 #000!important;
  transition:box-shadow .25s ease,transform .25s ease!important;
}
html body.home .hf-v2-card--book .hf-v2-card-media img{
  object-fit:contain!important;background:#d0d0d0!important;
}
html body.home .hf-v2-card--book .hf-v2-card-index{
  top:8px!important;left:8px!important;background:#000!important;color:#fff!important;
}
html body.home .hf-v2-card--book .hf-v2-card-body{padding-top:14px!important}
html body.home .hf-v2-card--book .hf-v2-card-title{font-size:13px!important;line-height:1.35!important}
html body.home .hf-v2-card--book .hf-v2-card-price{font-size:11px!important;color:#555!important}
html body.home .hf-v2-card--book:hover .hf-v2-card-media,
html body.home .hf-v2-card--book:focus-visible .hf-v2-card-media{
  transform:translate(-2px,-2px)!important;
  box-shadow:10px 10px 0 #000!important;
}
html body.home .hf-v2-section-head{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
  gap:24px!important;margin:0 0 30px!important;padding:14px 0 0!important;
  border-top:1px solid #000!important;
}
html body.home .hf-v2-section-title{
  margin:0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(28px,4.2vw,56px)!important;line-height:.95!important;
  font-weight:700!important;letter-spacing:-.045em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body.home .hf-v2-link{
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;gap:7px!important;
  padding:0 0 4px!important;border-bottom:1px solid #000!important;
  font-family:var(--hf-font)!important;
  font-size:10px!important;line-height:1!important;font-weight:600!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#000!important;
}
html body.home .hf-v2-link span{font-size:12px;line-height:1}
html body.home .hf-v2-link:hover{color:#666!important;border-color:#666!important}
html body.home .hf-v2-section-intro{
  max-width:52ch!important;margin:-10px 0 28px!important;
  font-family:var(--hf-font)!important;
  font-size:13px!important;line-height:1.6!important;color:#555!important;
}

html body.home .hf-v2-rail{
  display:grid!important;grid-auto-flow:column!important;grid-auto-columns:78%!important;
  gap:12px!important;width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;padding:0 0 6px!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none!important;
}
html body.home .hf-v2-rail::-webkit-scrollbar{display:none}
html body.home .hf-v2-card{
  display:flex!important;flex-direction:column!important;
  min-width:0!important;max-width:100%!important;
  color:#000!important;scroll-snap-align:start!important;
}
html body.home .hf-v2-card-media{
  position:relative!important;display:block!important;
  width:100%!important;aspect-ratio:4/5!important;overflow:hidden!important;
  background:#d0d0d0!important;
}
html body.home .hf-v2-card-media img{
  display:block!important;width:100%!important;max-width:none!important;
  height:100%!important;max-height:none!important;margin:0!important;
  object-fit:contain!important;object-position:center!important;
  transition:transform .6s cubic-bezier(.215,.61,.355,1)!important;
}
html body.home .hf-v2-card-index{
  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-width:24px!important;height:20px!important;padding:0 5px!important;
  background:#fff!important;color:#000!important;
  font-family:var(--hf-font)!important;
  font-size:8px!important;line-height:1!important;font-weight:600!important;letter-spacing:.1em!important;
}
html body.home .hf-v2-card-body{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  column-gap:10px!important;align-items:start!important;
  padding:11px 0 0!important;
}
html body.home .hf-v2-card-title{
  grid-column:1!important;
  font-family:var(--hf-font)!important;
  font-size:11px!important;line-height:1.3!important;font-weight:600!important;
  letter-spacing:.02em!important;text-transform:uppercase!important;color:#000!important;
  overflow-wrap:anywhere!important;
}
html body.home .hf-v2-card-price{
  grid-column:2!important;text-align:right!important;white-space:nowrap!important;
  font-family:var(--hf-font)!important;
  font-size:11px!important;line-height:1.3!important;font-weight:400!important;color:#000!important;
}
html body.home .hf-v2-card:hover .hf-v2-card-media img,
html body.home .hf-v2-card:focus-visible .hf-v2-card-media img{transform:scale(1.035)!important}
html body.home .hf-v2-card:hover .hf-v2-card-title,
html body.home .hf-v2-card:focus-visible .hf-v2-card-title{text-decoration:underline!important;text-underline-offset:3px}

/* E. MANIFIESTO ------------------------------------------------------------ */
html body.home .hf-v2-manifesto{
  width:100%!important;
  padding:clamp(72px,10vw,150px) clamp(20px,5vw,72px)!important;
  background:#000!important;color:#fff!important;
}
html body.home .hf-v2-manifesto h2{
  max-width:18ch!important;margin:0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(36px,7.4vw,118px)!important;line-height:.86!important;
  font-weight:700!important;letter-spacing:-.075em!important;
  text-transform:uppercase!important;color:#fff!important;
}
html body.home .hf-v2-manifesto>p:not(.hf-v2-eyebrow){
  max-width:42ch!important;margin:28px 0 0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(13px,1.25vw,16px)!important;line-height:1.65!important;color:#bdbdbd!important;
}

/* F. CATEGORIAS COMO INDICE ------------------------------------------------ */
html body.home .hf-v2-cat-list{
  display:block!important;width:100%!important;margin:0!important;padding:0!important;
  border-top:1px solid #000!important;
}
html body.home .hf-v2-cat-row{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;gap:12px!important;
  width:100%!important;padding:clamp(13px,1.8vw,20px) 10px!important;
  border-bottom:1px solid #000!important;
  color:#000!important;background:#fff!important;
  transition:background .22s ease,color .22s ease,padding .22s ease!important;
}
html body.home .hf-v2-cat-name{
  font-family:var(--hf-font)!important;
  font-size:clamp(21px,3.2vw,44px)!important;line-height:1!important;
  font-weight:500!important;letter-spacing:-.03em!important;text-transform:uppercase!important;
}
html body.home .hf-v2-cat-arrow{
  font-family:var(--hf-font)!important;
  font-size:clamp(17px,2.2vw,30px)!important;line-height:1!important;font-weight:400!important;
  transition:transform .22s ease!important;
}
html body.home .hf-v2-cat-row:hover,
html body.home .hf-v2-cat-row:focus-visible{
  padding-left:22px!important;padding-right:22px!important;
  background:#000!important;color:#fff!important;
}
html body.home .hf-v2-cat-row:hover .hf-v2-cat-arrow,
html body.home .hf-v2-cat-row:focus-visible .hf-v2-cat-arrow{transform:translateX(7px)!important}

/* G. NEWS ------------------------------------------------------------------ */
html body.home .hf-v2-news-row{
  display:grid!important;grid-template-columns:82px minmax(0,1fr) auto!important;
  align-items:baseline!important;gap:22px!important;
  width:100%!important;padding:24px 0 26px!important;
  border-top:1px solid #000!important;border-bottom:1px solid #000!important;
  color:#000!important;
}
html body.home .hf-v2-news-date{
  font-family:var(--hf-font)!important;
  font-size:9px!important;line-height:1.4!important;font-weight:500!important;letter-spacing:.14em!important;color:#777!important;
}
html body.home .hf-v2-news-title{
  font-family:var(--hf-font)!important;
  font-size:clamp(20px,3vw,38px)!important;line-height:1.08!important;
  font-weight:500!important;letter-spacing:-.025em!important;color:#000!important;
}
html body.home .hf-v2-news-cta{
  font-family:var(--hf-font)!important;
  font-size:9px!important;line-height:1.3!important;font-weight:700!important;letter-spacing:.14em!important;
  text-transform:uppercase!important;color:#000!important;white-space:nowrap!important;
}
html body.home .hf-v2-news-row:hover .hf-v2-news-title{text-decoration:underline!important;text-underline-offset:4px}

/* H. NOSOTROS Y CIERRE ----------------------------------------------------- */
html body.home .hf-v2-about{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;gap:32px!important;
  width:100%!important;
  padding:clamp(56px,8vw,110px) clamp(18px,4.5vw,64px)!important;
  background:#f2f2f0!important;
  border-top:1px solid #000!important;
}
html body.home .hf-v2-about h2{
  max-width:12ch!important;margin:0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(38px,6vw,86px)!important;line-height:.9!important;
  font-weight:700!important;letter-spacing:-.06em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body.home .hf-v2-about-copy>p:not(.hf-v2-eyebrow){
  max-width:44ch!important;margin:20px 0 0!important;
  font-family:var(--hf-font)!important;
  font-size:13px!important;line-height:1.65!important;color:#555!important;
}
html body.home .hf-v2-final{
  width:100%!important;margin:0!important;padding:0!important;background:#000!important;
}
html body.home .hf-v2-final>a{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;gap:18px!important;
  width:100%!important;
  padding:clamp(44px,7vw,90px) clamp(18px,4.5vw,64px)!important;
  border-top:1px solid #262626!important;
  background:#000!important;color:#fff!important;
  transition:background .3s ease,color .3s ease!important;
}
html body.home .hf-v2-final .hf-v2-eyebrow{grid-column:1/-1!important;margin-bottom:0!important}
html body.home .hf-v2-final-title{
  font-family:var(--hf-font)!important;
  font-size:clamp(34px,6.6vw,96px)!important;line-height:.88!important;
  font-weight:700!important;letter-spacing:-.06em!important;text-transform:uppercase!important;
}
html body.home .hf-v2-final-arrow{
  font-family:var(--hf-font)!important;
  font-size:clamp(42px,7.5vw,108px)!important;line-height:.8!important;font-weight:400!important;
  transition:transform .3s ease!important;
}
html body.home .hf-v2-final>a:hover,
html body.home .hf-v2-final>a:focus-visible{background:#fff!important;color:#000!important}
html body.home .hf-v2-final>a:hover .hf-v2-final-arrow,
html body.home .hf-v2-final>a:focus-visible .hf-v2-final-arrow{transform:translateX(10px)!important}

/* I. ESCRITORIO: rejilla de 4 en lugar de carril --------------------------- */
@media(min-width:821px){
  html body.home .hf-v2-rail{
    grid-auto-flow:row!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-columns:auto!important;gap:clamp(16px,2vw,28px)!important;
    overflow:visible!important;padding-bottom:0!important;
  }
  html body.home .hf-v2-rail--books{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.home .hf-v2-books-intro{position:sticky!important;top:24px!important}
}

/* J. MOVIL: hero con copy y CTA, carriles horizontales --------------------- */
@media(max-width:820px){
  html body.home .hf-v2-hero{
    height:calc(100svh - 64px)!important;min-height:560px!important;max-height:780px!important;
  }
  html body.home .hf-v2-hero-img{object-position:center 24%!important}
  html body.home .hf-v2-hero-veil{
    background:linear-gradient(180deg,rgba(0,0,0,.22) 0%,rgba(0,0,0,.02) 28%,rgba(0,0,0,.22) 52%,rgba(0,0,0,.84) 100%)!important;
  }
  html body.home .hf-v2-hero-inner{padding:18px 16px 20px!important}
  html body.home .hf-v2-hero-title{
    max-width:100%!important;
    font-size:clamp(33px,9.2vw,52px)!important;line-height:.9!important;letter-spacing:-.055em!important;
  }
  html body.home .hf-v2-hero-text{
    max-width:34ch!important;margin-top:16px!important;
    font-size:15px!important;line-height:1.5!important;
  }
  html body.home .hf-v2-actions{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;
    width:100%!important;margin-top:22px!important;
  }
  html body.home .hf-v2-actions--single{grid-template-columns:1fr!important}
  html body.home .hf-v2-hero .hf-v2-actions--single{margin-bottom:44px!important}
  html body.home .hf-v2-btn{
    width:100%!important;min-height:46px!important;padding:0 10px!important;
    gap:7px!important;font-size:10px!important;letter-spacing:.09em!important;
  }
  html body.home .hf-v2-btn>span{font-size:12px}
  html body.home .hf-v2-ticker{height:36px!important}
  html body.home .hf-v2-ticker span{padding:0 18px!important;font-size:8px!important;letter-spacing:.15em!important}
  html body.home .hf-v2-ticker span:after{margin-left:36px}
  html body.home .hf-v2-letter{padding:64px 18px 72px!important}
  html body.home .hf-v2-letter-title{font-size:clamp(34px,10vw,56px)!important;line-height:.9!important}
  html body.home .hf-v2-letter-lede{max-width:30ch!important;margin-top:24px!important;font-size:18px!important}
  html body.home .hf-v2-section{padding:56px 16px!important}
  html body.home .hf-v2-section-head{gap:10px 12px!important;margin-bottom:22px!important;padding-top:12px!important;flex-wrap:wrap!important}
  html body.home .hf-v2-section-head>div{min-width:0!important;flex:1 1 auto!important}
  html body.home .hf-v2-section-title{font-size:clamp(25px,7.4vw,38px)!important}
  html body.home .hf-v2-link{font-size:8.5px!important;letter-spacing:.08em!important}
  html body.home .hf-v2-rail{grid-auto-columns:78%!important;gap:10px!important}
  html body.home .hf-v2-rail--books{grid-auto-columns:72%!important}
  html body.home .hf-v2-card-title{font-size:11px!important;line-height:1.35!important}
  html body.home .hf-v2-card-price{font-size:11px!important}
  html body.home .hf-v2-books-layout{grid-template-columns:1fr!important;gap:26px!important}
  html body.home .hf-v2-books-intro{padding:20px 18px!important}
  html body.home .hf-v2-books-title{font-size:clamp(32px,9vw,48px)!important}
  html body.home .hf-v2-books-note{margin:16px 0 20px!important;font-size:14px!important;line-height:1.55!important}
  html body.home .hf-v2-card--book .hf-v2-card-media{box-shadow:5px 5px 0 #000!important}
  html body.home .hf-v2-card--book .hf-v2-card-title{font-size:12px!important}
  html body.home .hf-v2-manifesto{padding:64px 18px 72px!important}
  html body.home .hf-v2-manifesto h2{font-size:clamp(31px,9.2vw,52px)!important;line-height:.9!important}
  html body.home .hf-v2-manifesto>p:not(.hf-v2-eyebrow){margin-top:22px!important;font-size:14px!important}
  html body.home .hf-v2-cat-row{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:16px 4px!important}
  html body.home .hf-v2-cat-name{font-size:21px!important}
  html body.home .hf-v2-cat-arrow{font-size:18px!important}
  html body.home .hf-v2-news-row{
    grid-template-columns:minmax(0,1fr) auto!important;gap:6px 10px!important;padding:18px 0 20px!important;
  }
  html body.home .hf-v2-news-date{grid-column:1!important;grid-row:1!important}
  html body.home .hf-v2-news-cta{grid-column:2!important;grid-row:1!important}
  html body.home .hf-v2-news-title{grid-column:1/-1!important;grid-row:2!important;font-size:21px!important}
  html body.home .hf-v2-about{
    grid-template-columns:1fr!important;align-items:start!important;gap:24px!important;
    padding:56px 16px!important;
  }
  html body.home .hf-v2-about h2{font-size:clamp(34px,10vw,56px)!important}
  html body.home .hf-v2-about .hf-v2-btn{width:100%!important}
  html body.home .hf-v2-final>a{padding:44px 16px 36px!important;gap:10px!important}
  html body.home .hf-v2-final-title{font-size:clamp(29px,8.4vw,46px)!important;line-height:.92!important}
  html body.home .hf-v2-final-arrow{font-size:38px!important}
}

@media(max-width:370px){
  html body.home .hf-v2-hero-title{font-size:31px!important}
  html body.home .hf-v2-btn{font-size:8.5px!important;padding:0 7px!important}
  html body.home .hf-v2-letter-title{font-size:31px!important}
  html body.home .hf-v2-section-title{font-size:23px!important}
  html body.home .hf-v2-cat-name{font-size:19px!important}
  html body.home .hf-v2-final-title{font-size:27px!important}
}
/* FIN - V4.19.18 HOME */

/* V4.19.18 - contador de envio gratis dentro de la bolsa:
   antes el texto arrancaba en el borde izquierdo porque la caja tenia
   padding:12px 0 0. Se alinea con las lineas del carrito (22px escritorio,
   18px movil) y se le da un fondo suave para separarlo del subtotal. */
html body #hf-cart-drawer .hf-shipgo{
  margin:8px 0 0!important;
  padding:14px 22px 13px!important;
  border-top:1px solid #e5e5e5!important;
  border-bottom:1px solid #e5e5e5!important;
  background:#f7f7f5!important;
}
html body #hf-cart-drawer .hf-shipgo-msg{
  margin:0 0 10px!important;
  font-size:10px!important;line-height:1.5!important;
  letter-spacing:.05em!important;color:#000!important;
}
html body #hf-cart-drawer .hf-shipgo-track{height:3px!important;background:#d0d0d0!important}
html body #hf-cart-drawer .hf-shipgo-fill{background:#000!important}
@media(max-width:820px){
  html body #hf-cart-drawer .hf-shipgo{padding:14px 18px 13px!important}
}

/* ==========================================================================
   V4.19.19 - AJUSTES MOVILES, CHECKOUT POR PAIS Y FOOTER
   ========================================================================== */

/* A. Franja blanca lateral del checkout movil.
   Causa: en navegadores Android que reservan una barra de scroll clasica, el
   documento mide el ancho del viewport menos el canal de la barra; el body y
   la cabecera se quedan 10-17 px antes del borde y ese canal se pinta blanco.
   Ademas, el cajon de la bolsa usaba width:100vw (incluye la barra) y creaba
   un desborde horizontal de ese mismo ancho. Se corrige el desborde y se
   oculta la barra solo en movil, donde el scroll es tactil. */
@media(max-width:820px){
  html{
    overflow-y:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    scrollbar-gutter:auto!important;
  }
  html::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
  html body.woocommerce-checkout,
  html body.woocommerce-checkout #page,
  html body.woocommerce-checkout .site,
  html body.woocommerce-checkout #main.hf-checkout-page,
  html body.woocommerce-checkout .hf-checkout-shell,
  html body.woocommerce-checkout .hf-checkout-content{
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin-left:0!important;margin-right:0!important;
  }
}

/* B. Checkout movil: campos y desplegables legibles ------------------------ */
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row label{
    font-size:10.5px!important;line-height:1.3!important;
    letter-spacing:.08em!important;margin-bottom:7px!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row input.input-text,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row textarea,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select,
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .select2-selection{
    box-sizing:border-box!important;
    width:100%!important;min-height:52px!important;height:auto!important;
    padding:12px 14px!important;
    border:1px solid #cfcfcf!important;border-radius:0!important;
    background-color:#fff!important;color:#111!important;
    font-family:var(--hf-font)!important;font-size:15px!important;
    line-height:1.35!important;letter-spacing:0!important;
    text-transform:none!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select{
    padding-right:14px!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select option{
    font-size:15px!important;text-transform:none!important;letter-spacing:0!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row textarea{min-height:92px!important}
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row .required{color:#000!important}
}

/* C. Drawer de menu movil: negro, X arriba y categorias -------------------- */
@media(max-width:820px){
  html body #hf-mobile{
    display:flex!important;flex-direction:column!important;
    background:#000!important;color:#fff!important;
    padding:0!important;overflow:hidden!important;
  }
  html body #hf-mobile .hf-mobile-top{
    position:relative!important;flex:0 0 auto!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    min-height:78px!important;margin:0!important;padding:16px 18px!important;
    border-bottom:1px solid #333!important;
  }
  html body #hf-mobile .hf-mobile-logo{
    height:36px!important;width:auto!important;max-width:120px!important;
    filter:invert(1) grayscale(1)!important;
  }
  html body #hf-mobile .hf-mobile-close{
    position:static!important;flex:0 0 44px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:44px!important;height:44px!important;min-width:44px!important;
    margin:0!important;padding:0!important;overflow:visible!important;
    border:1px solid rgba(255,255,255,.72)!important;border-radius:50%!important;
    background:transparent!important;color:#fff!important;
    font-family:var(--hf-font)!important;font-size:24px!important;font-weight:300!important;line-height:1!important;
  }
  html body #hf-mobile .hf-mobile-close::before{content:none!important;display:none!important}
  html body #hf-mobile .hf-mobile-close:active{background:#fff!important;color:#000!important}
  html body #hf-mobile .hf-mobile-scroll{
    flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;
    padding:22px 18px calc(34px + env(safe-area-inset-bottom))!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch;
  }
  html body #hf-mobile .hf-mobile-links{display:block!important}
  html body #hf-mobile .hf-mobile-links a{
    display:block!important;padding:15px 0!important;
    border-bottom:1px solid #333!important;
    color:#fff!important;font-family:var(--hf-font)!important;
    font-size:clamp(28px,8.6vw,40px)!important;font-weight:700!important;
    line-height:1!important;letter-spacing:-.03em!important;text-transform:uppercase!important;
  }
  html body #hf-mobile .hf-mobile-links a:active{color:#bdbdbd!important}
  html body #hf-mobile .hf-mobile-cats{
    margin-top:34px!important;padding-top:18px!important;border-top:1px solid #333!important;
  }
  html body #hf-mobile .hf-mobile-cats-title{
    display:block!important;margin:0 0 10px!important;
    color:#888!important;font-family:var(--hf-font)!important;
    font-size:9px!important;font-weight:600!important;line-height:1.2!important;
    letter-spacing:.2em!important;text-transform:uppercase!important;
  }
  html body #hf-mobile .hf-mobile-cats-grid{
    display:grid!important;grid-template-columns:1fr 1fr!important;column-gap:20px!important;
  }
  html body #hf-mobile .hf-mobile-cats-grid a{
    display:block!important;padding:11px 0!important;
    border-bottom:1px solid #333!important;color:#fff!important;
    font-family:var(--hf-font)!important;
    font-size:11px!important;font-weight:500!important;line-height:1.3!important;
    letter-spacing:.08em!important;text-transform:uppercase!important;
  }
  html body #hf-mobile .hf-mobile-cats-grid a:active{color:#bdbdbd!important}
}

/* D. Contador de envio y subtotal del drawer de bolsa ---------------------- */
html body #hf-cart-drawer .hf-shipgo{
  border-bottom:0!important;
}
html body #hf-cart-drawer .woocommerce-mini-cart__total{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:14px!important;box-sizing:border-box!important;
  width:100%!important;min-height:54px!important;
  margin:0!important;padding:13px 22px!important;
  border-top:1px solid #e5e5e5!important;border-bottom:0!important;
  background:#fff!important;color:#000!important;
  font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:600!important;line-height:1.3!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;
}
html body #hf-cart-drawer .woocommerce-mini-cart__total strong{font-weight:600!important}
html body #hf-cart-drawer .woocommerce-mini-cart__total .amount{
  margin-left:auto!important;text-align:right!important;white-space:nowrap!important;
  font-family:var(--hf-font)!important;
  font-size:12px!important;font-weight:600!important;line-height:1.3!important;
  letter-spacing:0!important;text-transform:none!important;
}
@media(max-width:820px){
  html body #hf-cart-drawer .woocommerce-mini-cart__total{padding:13px 18px!important}
}

/* E. Hero de escritorio: composicion partida y foto entera ------------------ */
@media(min-width:821px){
  html body.home .hf-v2-hero{
    display:grid!important;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    align-items:stretch!important;
    height:calc(100svh - 72px)!important;min-height:620px!important;max-height:1000px!important;
    background:#000!important;overflow:hidden!important;
  }
  html body.home .hf-v2-hero-img{
    position:relative!important;inset:auto!important;
    grid-column:2!important;grid-row:1!important;
    display:block!important;width:100%!important;height:100%!important;
    max-width:none!important;max-height:none!important;
    object-fit:contain!important;object-position:center center!important;
    background:#d0d0d0!important;
  }
  html body.home .hf-v2-hero-veil{display:none!important}
  html body.home .hf-v2-hero-inner{
    position:relative!important;inset:auto!important;
    grid-column:1!important;grid-row:1!important;
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
    justify-content:flex-end!important;
    padding:clamp(32px,4.5vw,72px)!important;
    background:#000!important;color:#fff!important;
  }
  html body.home .hf-v2-hero-title{
    max-width:16ch!important;
    font-size:clamp(38px,4.6vw,76px)!important;line-height:.9!important;
  }
  html body.home .hf-v2-hero-text{max-width:34ch!important;font-size:clamp(14px,1.2vw,17px)!important}
  html body.home .hf-v2-actions--single{margin-top:28px!important;margin-bottom:0!important}
}

/* F. Footer editorial: solo escritorio -------------------------------------- */
html body .hf-footer{
  display:block!important;clear:both!important;
  width:100%!important;background:#000!important;color:#fff!important;
  border-top:1px solid #333!important;
}
html body .hf-footer-main{
  display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)!important;
  gap:clamp(36px,6vw,90px)!important;
  padding:clamp(42px,6vw,80px) clamp(20px,4.5vw,64px) clamp(32px,4vw,54px)!important;
}
html body .hf-footer-brand{min-width:0!important}
html body .hf-footer-logo{display:inline-block!important;line-height:0!important}
html body .hf-footer-logo img{
  display:block!important;width:auto!important;height:56px!important;max-width:180px!important;
  filter:invert(1) grayscale(1)!important;
}
html body .hf-footer-slogan{
  max-width:none!important;margin:26px 0 0!important;
  font-family:var(--hf-font)!important;
  font-size:clamp(30px,3.4vw,52px)!important;line-height:.92!important;
  font-weight:700!important;letter-spacing:-.055em!important;
  text-transform:uppercase!important;color:#fff!important;
}
html body .hf-footer-cols{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;align-content:start!important;
}
html body .hf-footer-col{
  display:flex!important;flex-direction:column!important;gap:10px!important;
  padding-top:14px!important;border-top:1px solid #333!important;min-width:0!important;
}
html body .hf-footer-col>span{
  color:#777!important;font-family:var(--hf-font)!important;
  font-size:8px!important;font-weight:600!important;line-height:1.2!important;
  letter-spacing:.18em!important;text-transform:uppercase!important;
}
html body .hf-footer-col a{
  color:#fff!important;font-family:var(--hf-font)!important;
  font-size:10px!important;font-weight:500!important;line-height:1.35!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:none!important;
}
html body .hf-footer-col a:hover,
html body .hf-footer-col a:focus-visible{color:#bdbdbd!important}
html body .hf-footer-col--social a{font-size:11px!important;letter-spacing:.1em!important}
html body .hf-footer-col--social a small{
  display:block!important;margin-top:3px!important;
  color:#777!important;font-size:8px!important;font-weight:400!important;
  letter-spacing:.1em!important;text-transform:lowercase!important;
}
html body .hf-footer-bottom{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:18px!important;padding:16px clamp(20px,4.5vw,64px)!important;
  border-top:1px solid #333!important;
  color:#777!important;font-family:var(--hf-font)!important;
  font-size:8px!important;font-weight:500!important;line-height:1.3!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;
}
@media(max-width:820px){
  html body .hf-footer{display:none!important}
}

/* G. Textos moviles: un poco mas de aire y tamano -------------------------- */
@media(max-width:820px){
  html body.home .hf-v2-about-copy>p:not(.hf-v2-eyebrow){font-size:14px!important;line-height:1.6!important;color:#444!important}
  html body.home .hf-v2-final .hf-v2-eyebrow{display:none!important}
}

/* H. El codigo postal vuelve a mostrarse: es un campo pedido para todos los
   paises y estaba oculto por una regla anterior con dos IDs tecnicos. */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #billing_postcode_field,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #shipping_postcode_field{
  display:block!important;width:100%!important;max-width:100%!important;
}
/* FIN - V4.19.19 */

/* ==========================================================================
   V4.19.20 - CHECKOUT DESKTOP, MINIATURAS, LIBROS Y AJUSTES FINOS
   ========================================================================== */

/* A. El boton de compra deja de flotar sobre el resumen en escritorio. */
@media(min-width:821px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #place_order{
    position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
    width:100%!important;max-width:100%!important;
    height:52px!important;min-height:52px!important;max-height:52px!important;
    margin:18px 0 0!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment .place-order{
    padding:18px 0 0!important;
    border-top:1px solid #e5e5e5!important;
  }
}

/* B. Miniaturas del resumen del checkout: 4:5 y fondo #d0d0d0. */
html body.woocommerce-checkout .hf-checkout-thumb{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:44px!important;height:55px!important;min-width:44px!important;
  aspect-ratio:4/5!important;
  margin:0 10px 0 0!important;padding:0!important;
  overflow:hidden!important;vertical-align:middle!important;
  background:#d0d0d0!important;
}
html body.woocommerce-checkout .hf-checkout-thumb img{
  display:block!important;
  width:100%!important;height:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;
  object-fit:contain!important;object-position:center!important;
  background:#d0d0d0!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout .hf-checkout-thumb{width:40px!important;height:50px!important;min-width:40px!important}
}

/* C. Mas aire en las lineas del resumen y en los bordes del checkout. */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table th,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table td{
  padding-top:15px!important;padding-bottom:15px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table td.product-name{
  padding-left:14px!important;
  font-weight:600!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .ct-order-review{
  padding-top:22px!important;padding-bottom:22px!important;
}

/* D. Home: mas espacio en las lineas y nombres de producto con mas peso. */
html body.home .hf-v2-section-head{
  padding-top:20px!important;margin-bottom:34px!important;
}
html body.home .hf-v2-card-body{padding-top:14px!important}
html body.home .hf-v2-card-title{
  font-weight:700!important;font-size:12px!important;line-height:1.35!important;
}
html body.home .hf-v2-card-price{font-size:11px!important}
html body.home .hf-v2-btn{
  justify-content:center!important;text-align:center!important;
}
html body.home .hf-v2-books-intro{padding:clamp(24px,3.2vw,42px)!important}

/* E. Libros: 6 en escritorio, 4 en movil. */
@media(min-width:821px){
  html body.home .hf-v2-rail--books{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  html body.home .hf-v2-rail--books{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-flow:row!important;grid-auto-columns:auto!important;
    gap:12px!important;overflow:visible!important;padding-bottom:0!important;
  }
  html body.home .hf-v2-card--book:nth-child(n+5){display:none!important}
  html body.home .hf-v2-card-title{font-size:12px!important}
}

/* F. X minimalista del menu movil. */
@media(max-width:820px){
  html body #hf-mobile .hf-mobile-close{
    flex:0 0 36px!important;
    width:36px!important;height:36px!important;min-width:36px!important;
    padding:0!important;
    border:0!important;border-radius:0!important;
    background:transparent!important;color:#fff!important;
    font-size:26px!important;font-weight:300!important;line-height:1!important;
  }
  html body #hf-mobile .hf-mobile-close:active{background:transparent!important;color:#bdbdbd!important}
}
/* FIN - V4.19.20 */

/* ==========================================================================
   V4.19.21 - FOOTER ELEGANTE, LIBROS, TIPOGRAFIA Y PRODUCTO
   ========================================================================== */

/* A. Footer compacto: eslogan pequeno, navegacion e iconos. */
html body .hf-footer-main{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:clamp(22px,3.5vw,56px)!important;
  padding:26px clamp(20px,4.5vw,64px)!important;
}
html body .hf-footer-brand{
  display:flex!important;align-items:center!important;gap:18px!important;min-width:0!important;
}
html body .hf-footer-logo img{
  height:34px!important;max-width:120px!important;width:auto!important;
  filter:invert(1) grayscale(1)!important;
}
html body .hf-footer-slogan{
  max-width:none!important;margin:0!important;
  color:#bdbdbd!important;font-family:var(--hf-font)!important;
  font-size:11px!important;line-height:1.4!important;
  font-weight:500!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
html body .hf-footer-nav{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:22px!important;
}
html body .hf-footer-nav a{
  color:#fff!important;font-family:var(--hf-font)!important;
  font-size:9px!important;font-weight:500!important;line-height:1.3!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;text-decoration:none!important;
}
html body .hf-footer-nav a:hover,
html body .hf-footer-nav a:focus-visible{color:#bdbdbd!important}
html body .hf-footer-social{display:flex!important;align-items:center!important;gap:10px!important}
html body .hf-footer-social a{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:36px!important;height:36px!important;min-width:36px!important;
  border:1px solid #3a3a3a!important;border-radius:50%!important;
  color:#fff!important;background:transparent!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease!important;
}
html body .hf-footer-social a:hover,
html body .hf-footer-social a:focus-visible{
  background:#fff!important;color:#000!important;border-color:#fff!important;
}
html body .hf-footer-social svg{display:block!important;width:17px!important;height:17px!important}
html body .hf-footer-bottom{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:18px!important;padding:12px clamp(20px,4.5vw,64px)!important;
  border-top:1px solid #333!important;color:#777!important;
  font-family:var(--hf-font)!important;font-size:8px!important;font-weight:500!important;
  line-height:1.3!important;letter-spacing:.14em!important;text-transform:uppercase!important;
}
@media(max-width:1100px) and (min-width:821px){
  html body .hf-footer-main{grid-template-columns:minmax(0,1fr) auto!important;row-gap:16px!important}
  html body .hf-footer-nav{grid-column:1/-1!important;order:3!important}
}

/* B. Textos de la home en minuscula real, sin transformacion. */
html body.home .hf-v2-letter-lede,
html body.home .hf-v2-books-note{text-transform:none!important;}

/* C. Nombres de productos mas pedidos con mas peso. */
html body.home .hf-v2-card-title{font-weight:800!important;}

/* D. Producto: menos aire entre color y talla. */
html body.single-product .hf-product-info .variations td{
  padding-top:2px!important;padding-bottom:2px!important;
}
html body.single-product .hf-product-info .variations{
  margin-bottom:8px!important;border-spacing:0!important;
}
html body.single-product .hf-product-info .variations .label{padding-right:8px!important}
html body.single-product .hf-product-info .hf-variation-buttons{margin:0 0 7px!important}
html body.single-product .hf-product-info .variations tr + tr td{padding-top:2px!important}

/* E. El CTA final ya no lleva flecha; el titulo ocupa el ancho. */
html body.home .hf-v2-final>a{grid-template-columns:minmax(0,1fr)!important}
html body.home .hf-v2-final-title{max-width:100%!important}
/* FIN - V4.19.21 */

/* ==========================================================================
   V4.19.22 - BOLSA, CHECKOUT, PRECIOS Y NOTAS
   ========================================================================== */

/* A. Bolsa: nombre fuerte, variante debajo y precio despues. */
html body .hf-cart-drawer .woocommerce-mini-cart-item a.product-title{
  font-size:12px!important;line-height:1.25!important;font-weight:800!important;
  letter-spacing:-.005em!important;
}
html body .hf-cart-drawer .hf-cart-attrs{
  display:block!important;margin-top:3px!important;
  font-size:9.5px!important;line-height:1.35!important;font-weight:400!important;
  letter-spacing:.03em!important;color:#777!important;text-transform:uppercase!important;
}
html body .hf-cart-drawer .hf-bag-price{
  font-size:11px!important;font-weight:400!important;line-height:1.3!important;
}
html body .hf-cart-drawer .product-data{gap:2px!important}
html body .hf-cart-drawer .hf-bag-qty{margin-top:5px!important}
html body .hf-cart-drawer .woocommerce-mini-cart-item{
  padding-right:46px!important;
}
html body .hf-cart-drawer .woocommerce-mini-cart-item .remove{
  right:22px!important;top:14px!important;
  width:28px!important;height:28px!important;
  color:#000!important;
}
html body .hf-cart-drawer .remove svg{width:11px!important;height:11px!important}
@media(max-width:820px){
  html body .hf-cart-drawer .woocommerce-mini-cart-item{padding-right:50px!important}
  html body .hf-cart-drawer .woocommerce-mini-cart-item .remove{right:18px!important}
}

/* B. Home: precio sin negrita; el nombre sigue fuerte. */
html body.home .hf-v2-card-price,
html body.home .hf-v2-card-price .amount{
  font-weight:400!important;
}
html body.home .hf-v2-card-title{font-size:12.5px!important;font-weight:800!important}

/* C. Checkout: jerarquia de bolsa, mas aire y miniaturas 4:5. */
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  width:72%!important;
  padding:18px 32px 18px 66px!important;
  font-size:12px!important;font-weight:800!important;line-height:1.25!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name > a{
  display:block!important;
  font-size:12px!important;line-height:1.25!important;font-weight:800!important;
  letter-spacing:0!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .hf-checkout-attrs{
  display:block!important;margin-top:3px!important;
  font-size:9.5px!important;line-height:1.35!important;font-weight:400!important;
  letter-spacing:.03em!important;color:#777!important;text-transform:uppercase!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
  position:static!important;display:block!important;
  margin:4px 0 0!important;padding:0!important;
  font-size:9px!important;line-height:1.2!important;font-weight:400!important;
  color:#999!important;text-align:left!important;transform:none!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
  width:28%!important;padding-top:20px!important;vertical-align:top!important;
  font-size:12px!important;font-weight:500!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .hf-checkout-thumb{
  position:absolute!important;left:0!important;top:18px!important;
  width:48px!important;height:60px!important;min-width:48px!important;
  margin:0!important;padding:0!important;
  aspect-ratio:4/5!important;overflow:hidden!important;
  background:#d0d0d0!important;transform:none!important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .hf-checkout-thumb img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;
  object-fit:contain!important;object-position:center!important;
  background:#d0d0d0!important;
}

/* D. Fuera el punto negro que dejaba el radio en el centro del pago. */
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]::before,
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]::after{
  display:none!important;content:none!important;background:transparent!important;
}
html body.woocommerce-checkout #payment div.payment_box::before,
html body.woocommerce-checkout #payment div.payment_box::after{
  display:none!important;content:none!important;
}

/* E. Libros: muro de 6 columnas por 2 filas en escritorio. */
@media(min-width:1101px){
  html body.home .hf-v2-books-layout{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
  html body.home .hf-v2-books-intro{
    position:static!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) auto!important;
    align-items:end!important;gap:24px!important;
    padding:26px 30px!important;
  }
  html body.home .hf-v2-books-title{margin:0!important}
  html body.home .hf-v2-books-note{margin:0!important;max-width:42ch!important}
  html body.home .hf-v2-books-intro .hf-v2-link{justify-self:end!important;margin:0!important}
  html body.home .hf-v2-rail--books{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:12px!important;
  }
}
@media(min-width:821px) and (max-width:1100px){
  html body.home .hf-v2-books-layout{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  html body.home .hf-v2-books-intro{position:static!important}
  html body.home .hf-v2-rail--books{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
}

/* F. NOTAS: archivo editorial contemporaneo. */html body .hf-notes-shell{
  width:100%;max-width:1440px;margin:0 auto;
  padding:0 clamp(18px,4vw,64px) calc(76px + env(safe-area-inset-bottom))!important;
}
html body .hf-notes-head{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;gap:10px 24px!important;
  padding:clamp(32px,5vw,64px) 0 22px!important;
  border-bottom:2px solid #000!important;
}
html body .hf-notes-kicker{
  grid-column:1/-1!important;
  font-family:var(--hf-font)!important;font-size:9px!important;font-weight:500!important;
  letter-spacing:.18em!important;text-transform:uppercase!important;color:#777!important;
}
html body .hf-notes-head h1{
  grid-column:1/-1!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:clamp(58px,11vw,150px)!important;
  font-weight:800!important;line-height:.82!important;letter-spacing:-.075em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body .hf-notes-intro{
  grid-column:1/-1!important;max-width:44ch!important;margin:4px 0 0 auto!important;
  font-family:var(--hf-font)!important;font-size:13px!important;line-height:1.55!important;
  color:#555!important;text-align:right!important;text-transform:none!important;letter-spacing:0!important;
}
html body .hf-notes-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(22px,3vw,42px)!important;
  padding:clamp(26px,4vw,48px) 0 0!important;
}
html body .hf-note-card{min-width:0!important}
html body .hf-note-media{
  display:block!important;aspect-ratio:4/3!important;
  background:#d0d0d0!important;overflow:hidden!important;
  border:1px solid #000!important;
}
html body .hf-note-media img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center!important;
  filter:grayscale(100%)!important;
  transition:transform .5s var(--hf-ease)!important;
}
html body .hf-note-card:hover .hf-note-media img{transform:scale(1.035)!important}
html body .hf-note-media-fallback{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:100%!important;
  font-family:var(--hf-font)!important;font-size:10px!important;line-height:1.1!important;
  font-weight:600!important;letter-spacing:.16em!important;text-align:center!important;
  color:#000!important;
}
html body .hf-note-copy{padding:14px 0 0!important}
html body .hf-note-meta{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  padding:9px 0 0!important;border-top:1px solid #e5e5e5!important;
  font-family:var(--hf-font)!important;font-size:8.5px!important;font-weight:500!important;
  line-height:1.3!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#777!important;
}
html body .hf-note-copy h2{
  margin:12px 0 0!important;
  font-family:var(--hf-font)!important;font-size:clamp(19px,1.8vw,27px)!important;
  font-weight:700!important;line-height:1.02!important;letter-spacing:-.035em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body .hf-note-copy h2 a{color:inherit!important;text-decoration:none!important}
html body .hf-note-card:hover .hf-note-copy h2 a{
  text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important;
}
html body .hf-note-excerpt{
  margin:10px 0 0!important;
  font-family:var(--hf-font)!important;font-size:12px!important;line-height:1.55!important;
  color:#555!important;text-transform:none!important;letter-spacing:0!important;
}
html body .hf-note-link{
  display:inline-block!important;margin:12px 0 0!important;
  font-family:var(--hf-font)!important;font-size:8.5px!important;font-weight:600!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#000!important;
  text-decoration:underline!important;text-underline-offset:3px!important;
}
html body .hf-note-link:hover{color:#777!important}
html body .hf-notes-pagination{
  display:flex!important;justify-content:center!important;gap:10px!important;
  margin:40px 0 0!important;font-family:var(--hf-font)!important;font-size:10px!important;
}
html body .hf-notes-pagination .page-numbers{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:32px!important;height:32px!important;padding:0 8px!important;
  border:1px solid #000!important;color:#000!important;text-decoration:none!important;
}
html body .hf-notes-pagination .page-numbers.current,
html body .hf-notes-pagination .page-numbers:hover{background:#000!important;color:#fff!important}
html body .hf-notes-empty{
  grid-column:1/-1!important;margin:0!important;padding:40px 0!important;
  font-family:var(--hf-font)!important;font-size:11px!important;color:#777!important;
  text-transform:uppercase!important;letter-spacing:.12em!important;
}

/* F. NOTA INDIVIDUAL: portada, titular y lectura comoda. */
html body .hf-note-single .hf-post-shell{max-width:1240px!important;margin:0 auto!important;padding-bottom:80px!important}
html body .hf-post-hero{
  max-width:1100px!important;margin:0 auto!important;
  padding:clamp(26px,4vw,52px) 0 0!important;
}
html body .hf-post-kicker{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;
  padding:0 0 12px!important;border-bottom:1px solid #000!important;
  font-family:var(--hf-font)!important;font-size:9px!important;font-weight:500!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#777!important;
}
html body .hf-post-hero h1{
  max-width:20ch!important;margin:24px 0 0!important;
  font-family:var(--hf-font)!important;font-size:clamp(38px,6.4vw,92px)!important;
  font-weight:800!important;line-height:.88!important;letter-spacing:-.06em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body .hf-post-deck{
  max-width:60ch!important;margin:18px 0 0!important;
  font-family:var(--hf-font)!important;font-size:16px!important;line-height:1.55!important;
  color:#444!important;text-transform:none!important;letter-spacing:0!important;
}
html body .hf-post-byline{
  display:flex!important;align-items:center!important;gap:20px!important;flex-wrap:wrap!important;
  margin:18px 0 0!important;
  font-family:var(--hf-font)!important;font-size:8.5px!important;font-weight:500!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#777!important;
}
html body .hf-post-hero-media{
  margin:clamp(24px,4vw,42px) 0 0!important;
  aspect-ratio:16/9!important;background:#d0d0d0!important;overflow:hidden!important;
  border:1px solid #000!important;
}
html body .hf-post-hero-media img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center!important;
  filter:grayscale(100%)!important;
}
html body .hf-note-single .hf-post-body{
  max-width:720px!important;margin:0 auto!important;padding:clamp(34px,5vw,58px) 0 0!important;
}
html body .hf-note-single .hf-post-body p,
html body .hf-note-single .hf-post-body li{
  font-family:var(--hf-font)!important;font-size:16px!important;line-height:1.75!important;
  color:#222!important;
}
html body .hf-note-single .hf-post-body p{margin:0 0 1.25em!important}
html body .hf-note-single .hf-post-body h2{
  margin:1.6em 0 .55em!important;
  font-family:var(--hf-font)!important;font-size:clamp(24px,3vw,40px)!important;
  font-weight:800!important;line-height:.96!important;letter-spacing:-.045em!important;
  text-transform:uppercase!important;color:#000!important;
}
html body .hf-note-single .hf-post-body h3{
  margin:1.5em 0 .5em!important;
  font-family:var(--hf-font)!important;font-size:14px!important;font-weight:700!important;
  line-height:1.25!important;letter-spacing:.02em!important;text-transform:uppercase!important;
}
html body .hf-note-single .hf-post-body a{
  color:#000!important;text-decoration:underline!important;text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}
html body .hf-note-single .hf-post-body a:hover{background:#000!important;color:#fff!important;text-decoration:none!important}
html body .hf-note-single .hf-post-body blockquote{
  margin:1.8em 0!important;padding:4px 0 4px 22px!important;border-left:5px solid #000!important;
  font-family:var(--hf-font)!important;font-size:clamp(19px,2.4vw,28px)!important;
  font-weight:700!important;line-height:1.1!important;letter-spacing:-.03em!important;
  text-transform:uppercase!important;
}
html body .hf-note-single .hf-post-body blockquote p{
  margin:0!important;font:inherit!important;color:inherit!important;
}
html body .hf-note-single .hf-post-body img{filter:grayscale(100%)!important}
html body .hf-note-single .hf-post-body figure{margin:1.7em 0!important}
html body .hf-note-single .hf-post-body figcaption{
  margin-top:8px!important;font-family:var(--hf-font)!important;font-size:9px!important;
  line-height:1.4!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#777!important;
}
html body .hf-note-single .hf-post-foot{
  max-width:720px!important;margin:34px auto 0!important;
  border-top:1px solid #000!important;
}
html body .hf-note-single .hf-post-nav{
  max-width:720px!important;margin:18px auto 0!important;
  font-family:var(--hf-font)!important;font-size:9px!important;letter-spacing:.06em!important;
}

@media(max-width:1100px){
  html body .hf-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:820px){
  html body .hf-notes-head{grid-template-columns:1fr!important;padding-top:28px!important}
  html body .hf-notes-head h1{font-size:clamp(52px,16vw,92px)!important}
  html body .hf-notes-intro{margin:8px 0 0!important;text-align:left!important;font-size:12px!important}
  html body .hf-notes-grid{grid-template-columns:1fr!important;gap:26px!important;padding-top:24px!important}
  html body .hf-note-media{aspect-ratio:4/3!important}
  html body .hf-note-copy h2{font-size:23px!important}
  html body .hf-post-hero h1{font-size:clamp(34px,10vw,58px)!important}
  html body .hf-post-deck{font-size:15px!important}
  html body .hf-post-hero-media{aspect-ratio:4/3!important}
  html body .hf-note-single .hf-post-body p,
  html body .hf-note-single .hf-post-body li{font-size:15px!important;line-height:1.7!important}
}
/* ============================================================================
   V4.19.24 — NOTAS: archivo sin miniaturas + lectura editorial
   Sólo /news/ y las entradas individuales. No toca tienda, bolsa ni checkout.
   ============================================================================ */

@font-face{
  font-family:'HF Archivo';
  src:url('fonts/archivo-latin.woff2') format('woff2');
  font-style:normal;font-weight:400 800;font-stretch:75% 100%;font-display:swap;
}
@font-face{
  font-family:'HF Newsreader';
  src:url('fonts/newsreader-latin.woff2') format('woff2');
  font-style:normal;font-weight:400 600;font-display:swap;
}
@font-face{
  font-family:'HF Newsreader';
  src:url('fonts/newsreader-italic-latin.woff2') format('woff2');
  font-style:italic;font-weight:400 500;font-display:swap;
}

html body.hf-news-context{
  --hf-paper:#f2efe7;
  --hf-paper-soft:#e9e4d8;
  --hf-paper-card:#faf8f2;
  --hf-ink:#181613;
  --hf-muted:#6e675c;
  --hf-rule:#d2ccbf;
  --hf-accent:#8c2f22;
  --hf-display:'HF Archivo','Helvetica Neue',Helvetica,Arial,sans-serif;
  --hf-serif:'HF Newsreader',Georgia,'Times New Roman',serif;
  background:var(--hf-paper)!important;
  color:var(--hf-ink)!important;
  font-family:var(--hf-display)!important;
  font-size:15px!important;
  line-height:1.55!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
html body.hf-news-context #main,
html body.hf-news-context .site-main{background:var(--hf-paper)!important;color:var(--hf-ink)!important}
html body.hf-news-context ::selection{background:var(--hf-ink)!important;color:var(--hf-paper)!important}

/* La familia tipográfica del tema se impone a todo con dos :not(#id). Estas
   reglas repiten esa precedencia para que el serif no sea pisado. */
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b),
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) *{
  font-family:var(--hf-display)!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-head h1,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-intro,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-feature-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-feature-deck,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-row-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-row-excerpt,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-deck,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body *,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-card-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-card-desc,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-nav-title{
  font-family:var(--hf-serif)!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body *{
  font-weight:400!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-feature-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-row-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-news-head h1{
  font-weight:500!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body h2,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body h2 *,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body blockquote,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body blockquote *,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-card-title,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body strong,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body b{
  font-weight:600!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body > h3,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body h2:before,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body figcaption,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-sources li,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-sources a,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-cta,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-block p,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-flag,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-kicker,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-price,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-cta,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-media--empty,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .wc-block-components-product-price,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .wp-block-button__link{
  font-family:var(--hf-display)!important;
}

html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body > h3,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-cta,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-flag,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-kicker,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-price,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-product-card-cta,
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body .hf-sources li{
  font-weight:500!important;
}
html body.hf-news-context :not(#hf-sweep-a):not(#hf-sweep-b) .hf-article-body code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  font-weight:400!important;
}

/* --------------------------------------------------------------------------
   ARCHIVO
   -------------------------------------------------------------------------- */
body.hf-news-context .hf-news-shell{
  width:100%!important;max-width:1320px!important;
  margin:0 auto!important;
  padding:0 clamp(20px,4.2vw,60px) calc(104px + env(safe-area-inset-bottom))!important;
  color:var(--hf-ink)!important;
}
body.hf-news-context .hf-news-head{
  padding:clamp(40px,6vw,82px) 0 0!important;
  border-bottom:1px solid var(--hf-ink)!important;
}
body.hf-news-context .hf-news-head-top{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-news-head-main{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,360px)!important;
  align-items:end!important;gap:clamp(24px,5vw,72px)!important;
  padding:clamp(20px,3.4vw,38px) 0 clamp(26px,3.8vw,42px)!important;
}
body.hf-news-context .hf-news-head h1{
  margin:0!important;font-size:clamp(58px,9.2vw,124px)!important;
  line-height:.82!important;letter-spacing:-.058em!important;color:var(--hf-ink)!important;
  text-transform:none!important;
}
body.hf-news-context .hf-news-head-dot{color:var(--hf-accent)!important}
body.hf-news-context .hf-news-intro{
  max-width:39ch!important;margin:0 0 6px!important;
  font-size:clamp(16px,1.45vw,20px)!important;line-height:1.5!important;
  color:#4d473e!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-news-list{padding:0!important}

/* Nota destacada */
body.hf-news-context .hf-news-feature{
  grid-column:1/-1!important;
  display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;
  gap:clamp(24px,5vw,72px)!important;
  padding:clamp(30px,4.2vw,50px) 0 clamp(34px,4.4vw,54px)!important;
  border-bottom:1px solid var(--hf-ink)!important;
}
body.hf-news-context .hf-news-feature-meta{
  align-self:start!important;padding-top:14px!important;border-top:1px solid var(--hf-ink)!important;
}
body.hf-news-context .hf-news-feature-num{
  display:block!important;font-family:var(--hf-display)!important;font-size:34px!important;
  font-weight:400!important;line-height:1!important;letter-spacing:-.04em!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-news-feature-meta-lines{
  display:flex!important;flex-direction:column!important;gap:7px!important;margin-top:18px!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.35!important;letter-spacing:.11em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-news-feature-copy{min-width:0!important}
body.hf-news-context .hf-news-feature-title{
  max-width:22ch!important;margin:0!important;
  font-size:clamp(31px,4.2vw,58px)!important;line-height:1.04!important;
  letter-spacing:-.028em!important;text-transform:none!important;color:var(--hf-ink)!important;
}
body.hf-news-context .hf-news-feature-title a{color:inherit!important;text-decoration:none!important}
body.hf-news-context .hf-news-feature-title a:hover{
  color:var(--hf-accent)!important;text-decoration:none!important;
}
body.hf-news-context .hf-news-feature-deck{
  max-width:54ch!important;margin:18px 0 0!important;
  font-size:clamp(16px,1.35vw,19px)!important;line-height:1.55!important;
  color:#4d473e!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-news-feature-foot{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;
  gap:16px 24px!important;margin-top:24px!important;
}
body.hf-news-context .hf-news-more{
  display:inline-flex!important;align-items:center!important;gap:9px!important;
  padding:0 0 4px!important;border-bottom:1px solid var(--hf-accent)!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.2!important;letter-spacing:.15em!important;text-transform:uppercase!important;
  color:var(--hf-accent)!important;text-decoration:none!important;
}
body.hf-news-context .hf-news-more span{font-size:13px!important;line-height:1!important;letter-spacing:0!important}
body.hf-news-context .hf-news-more:hover{background:var(--hf-accent)!important;color:var(--hf-paper)!important;border-bottom-color:var(--hf-accent)!important}

/* Enlace de producto en el archivo (sin miniatura) */
body.hf-news-context .hf-news-product{
  display:inline-flex!important;align-items:center!important;gap:9px!important;
  max-width:100%!important;padding:7px 10px!important;
  border:1px solid var(--hf-rule)!important;background:transparent!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.25!important;letter-spacing:.07em!important;text-transform:uppercase!important;
  color:var(--hf-ink)!important;text-decoration:none!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
body.hf-news-context .hf-news-product-label{color:var(--hf-accent)!important;font-size:8px!important;letter-spacing:.14em!important}
body.hf-news-context .hf-news-product-name{
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  max-width:34ch!important;
}
body.hf-news-context .hf-news-product:hover{background:var(--hf-ink)!important;border-color:var(--hf-ink)!important;color:var(--hf-paper)!important}
body.hf-news-context .hf-news-product:hover .hf-news-product-label{color:var(--hf-paper)!important}

/* Índice de notas */
body.hf-news-context .hf-news-index,
body.hf-news-context .hf-news-list{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(34px,5vw,68px)!important;
}
body.hf-news-context .hf-news-row{
  display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;
  align-items:start!important;gap:12px!important;
  padding:26px 0 28px!important;border-bottom:1px solid var(--hf-rule)!important;
}
body.hf-news-context .hf-news-row-num{
  padding-top:4px!important;font-family:var(--hf-display)!important;font-size:9px!important;
  font-weight:500!important;line-height:1.4!important;letter-spacing:.12em!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-news-row-copy{min-width:0!important}
body.hf-news-context .hf-news-row-meta{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;
  margin:0 0 8px!important;font-family:var(--hf-display)!important;font-size:8.5px!important;
  font-weight:500!important;line-height:1.35!important;letter-spacing:.11em!important;
  text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-news-row-meta span+span:before{
  content:''!important;display:inline-block!important;width:14px!important;height:1px!important;
  margin:0 10px 3px 0!important;background:var(--hf-rule)!important;
}
body.hf-news-context .hf-news-row-title{
  margin:0!important;font-size:clamp(19px,1.65vw,24px)!important;line-height:1.16!important;
  letter-spacing:-.018em!important;text-transform:none!important;color:var(--hf-ink)!important;
}
body.hf-news-context .hf-news-row-title a{color:inherit!important;text-decoration:none!important}
body.hf-news-context .hf-news-row-title a:hover{color:var(--hf-accent)!important}
body.hf-news-context .hf-news-row-excerpt{
  margin:9px 0 0!important;font-size:14px!important;line-height:1.58!important;
  color:#5d564b!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-news-row .hf-news-product{margin-top:13px!important}

body.hf-news-context .hf-news-pagination.hf-notes-pagination{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;
  gap:6px!important;margin:44px 0 0!important;padding:22px 0 0!important;
  border-top:1px solid var(--hf-ink)!important;font-family:var(--hf-display)!important;
}
body.hf-news-context .hf-news-pagination .page-numbers{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:38px!important;height:38px!important;padding:0 10px!important;
  border:1px solid var(--hf-rule)!important;background:transparent!important;
  font-family:var(--hf-display)!important;font-size:10px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.04em!important;color:var(--hf-ink)!important;text-decoration:none!important;
}
body.hf-news-context .hf-news-pagination .page-numbers.current,
body.hf-news-context .hf-news-pagination .page-numbers:hover{
  background:var(--hf-ink)!important;border-color:var(--hf-ink)!important;color:var(--hf-paper)!important;
}
body.hf-news-context .hf-news-empty{
  margin:0!important;padding:52px 0!important;border-bottom:1px solid var(--hf-rule)!important;
  font-family:var(--hf-serif)!important;font-size:20px!important;color:var(--hf-muted)!important;
}

/* --------------------------------------------------------------------------
   NOTA INDIVIDUAL
   -------------------------------------------------------------------------- */
body.hf-news-context .hf-article{
  width:100%!important;max-width:1280px!important;margin:0 auto!important;
  padding:0 clamp(20px,4.2vw,60px) calc(112px + env(safe-area-inset-bottom))!important;
  color:var(--hf-ink)!important;
}
body.hf-news-context .hf-article-head{
  max-width:1100px!important;padding:clamp(30px,4.6vw,54px) 0 0!important;
}
body.hf-news-context .hf-article-topline{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:12px 18px!important;
  padding:0 0 14px!important;border-bottom:1px solid var(--hf-ink)!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-back{color:var(--hf-ink)!important;text-decoration:none!important}
body.hf-news-context .hf-article-back:hover{color:var(--hf-accent)!important}
body.hf-news-context .hf-article-category{color:var(--hf-accent)!important}
body.hf-news-context .hf-article-topline time{margin-left:auto!important}
body.hf-news-context .hf-article-title{
  max-width:21ch!important;margin:clamp(22px,3vw,34px) 0 0!important;
  font-size:clamp(35px,5vw,72px)!important;line-height:1.02!important;
  letter-spacing:-.032em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-article-deck{
  max-width:54ch!important;margin:20px 0 0!important;
  font-size:clamp(18px,1.55vw,22px)!important;line-height:1.5!important;
  color:#484239!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-article-meta{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:10px 22px!important;
  margin:24px 0 clamp(30px,4vw,48px)!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-meta span+span:before{
  content:''!important;display:inline-block!important;width:18px!important;height:1px!important;
  margin:0 18px 3px 0!important;background:var(--hf-rule)!important;
}
body.hf-news-context .hf-article-layout{
  display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;
  gap:clamp(34px,6vw,96px)!important;
  padding-top:34px!important;border-top:1px solid var(--hf-rule)!important;
}
body.hf-news-context .hf-article-rail{
  position:sticky!important;top:28px!important;align-self:start!important;
  display:flex!important;flex-direction:column!important;gap:0!important;
  font-family:var(--hf-display)!important;
}
body.hf-news-context .hf-article-rail-label{
  padding-bottom:12px!important;border-bottom:1px solid var(--hf-ink)!important;
  font-size:9px!important;font-weight:500!important;line-height:1.4!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-article-rail-block{
  display:flex!important;flex-direction:column!important;gap:4px!important;
  padding:14px 0!important;border-bottom:1px solid var(--hf-rule)!important;
}
body.hf-news-context .hf-article-rail-kicker{
  font-size:8px!important;font-weight:500!important;line-height:1.4!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-rail-value{
  font-size:11px!important;font-weight:500!important;line-height:1.35!important;
  letter-spacing:.02em!important;text-transform:uppercase!important;color:var(--hf-ink)!important;
}
body.hf-news-context .hf-article-rail-back{
  margin-top:22px!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.06em!important;text-transform:uppercase!important;
  color:var(--hf-ink)!important;text-decoration:none!important;border-bottom:1px solid var(--hf-ink)!important;
  padding-bottom:2px!important;align-self:flex-start!important;
}
body.hf-news-context .hf-article-rail-back:hover{color:var(--hf-accent)!important;border-color:var(--hf-accent)!important}
body.hf-news-context .hf-article-main{min-width:0!important;max-width:760px!important}
body.hf-news-context .hf-article-figure{
  margin:0 0 2.2em!important;background:var(--hf-paper-soft)!important;overflow:hidden!important;
}
body.hf-news-context .hf-article-figure img{
  display:block!important;width:100%!important;height:auto!important;
  filter:grayscale(100%)!important;
}

/* Cuerpo de lectura */
body.hf-news-context .hf-article-body{
  counter-reset:hf-section!important;
  max-width:66ch!important;color:#28231d!important;
  font-size:18px!important;line-height:1.72!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body > p,
body.hf-news-context .hf-article-body > ul,
body.hf-news-context .hf-article-body > ol,
body.hf-news-context .hf-article-body > figure{margin:0 0 1.35em!important}
body.hf-news-context .hf-article-body p{
  margin:0 0 1.35em!important;font-size:18px!important;line-height:1.72!important;color:#28231d!important;
}
body.hf-news-context .hf-article-body .hf-post-lead{
  margin:0 0 1.5em!important;font-size:22px!important;line-height:1.48!important;
  font-weight:400!important;letter-spacing:-.008em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body h2{
  counter-increment:hf-section!important;
  margin:2.15em 0 .62em!important;font-size:clamp(26px,2.25vw,32px)!important;
  line-height:1.12!important;letter-spacing:-.022em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body h2:before{
  content:counter(hf-section,decimal-leading-zero)!important;
  display:block!important;margin:0 0 10px!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.16em!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-article-body > h3{
  margin:2.1em 0 .7em!important;
  font-family:var(--hf-display)!important;font-size:10px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-body h2:first-child,
body.hf-news-context .hf-article-body > h3:first-child,
body.hf-news-context .hf-article-body p:first-child{margin-top:0!important}
body.hf-news-context .hf-article-body a{
  color:var(--hf-ink)!important;text-decoration:underline!important;text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;text-decoration-color:var(--hf-rule)!important;
  transition:color .18s ease,text-decoration-color .18s ease;
}
body.hf-news-context .hf-article-body a:hover{
  color:var(--hf-accent)!important;text-decoration-color:var(--hf-accent)!important;background:transparent!important;
}
body.hf-news-context .hf-article-body strong,
body.hf-news-context .hf-article-body b{color:var(--hf-ink)!important}
body.hf-news-context .hf-article-body em,
body.hf-news-context .hf-article-body i{font-style:italic!important}
body.hf-news-context .hf-article-body blockquote{
  margin:2.2em 0!important;padding:4px 0 4px 24px!important;
  border-left:2px solid var(--hf-accent)!important;
  font-style:italic!important;font-size:clamp(21px,2vw,28px)!important;
  line-height:1.3!important;letter-spacing:-.01em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body blockquote p{
  margin:0!important;font:inherit!important;color:inherit!important;
}
body.hf-news-context .hf-article-body ul,
body.hf-news-context .hf-article-body ol{margin:0 0 1.35em!important;padding-left:1.2em!important}
body.hf-news-context .hf-article-body li{margin:0 0 .45em!important;font-size:18px!important;line-height:1.72!important}
body.hf-news-context .hf-article-body img{display:block!important;width:100%!important;height:auto!important;filter:grayscale(100%)!important}
body.hf-news-context .hf-article-body figure{margin:2em 0!important}
body.hf-news-context .hf-article-body figcaption,
body.hf-news-context .hf-article-body .wp-element-caption{
  margin-top:8px!important;font-family:var(--hf-display)!important;font-size:9px!important;
  line-height:1.5!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-body hr{
  border:0!important;border-top:1px solid var(--hf-ink)!important;margin:2.9em 0!important;
}
body.hf-news-context .hf-article-body code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  font-size:13px!important;background:var(--hf-paper-soft)!important;padding:1px 5px!important;
}
body.hf-news-context .hf-article-body .hf-guide{
  margin:2.3em 0!important;padding:22px 24px!important;
  border:1px solid var(--hf-rule)!important;background:var(--hf-paper-card)!important;
}
body.hf-news-context .hf-article-body .hf-guide h3{margin-top:0!important}
body.hf-news-context .hf-article-body .hf-sources{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px 30px!important;margin:1.6em 0 0!important;padding:0!important;list-style:none!important;
}
body.hf-news-context .hf-article-body .hf-sources li{
  position:relative!important;margin:0!important;padding-left:20px!important;
  font-family:var(--hf-display)!important;font-size:11px!important;line-height:1.5!important;
  letter-spacing:0!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-body .hf-sources li:before{
  content:'—'!important;position:absolute!important;left:0!important;top:0!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-article-body .hf-sources a{color:var(--hf-ink)!important}
body.hf-news-context .hf-article-body .hf-cta{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:0!important;margin:0 0 4px!important;padding:15px 24px!important;
  background:var(--hf-ink)!important;border:1px solid var(--hf-ink)!important;color:var(--hf-paper)!important;
  font-family:var(--hf-display)!important;font-size:10px!important;font-weight:500!important;
  line-height:1.2!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  text-decoration:none!important;
}
body.hf-news-context .hf-article-body .hf-cta:hover{
  background:var(--hf-accent)!important;border-color:var(--hf-accent)!important;color:var(--hf-paper)!important;
}

/* Fallback: si el producto no existe, el bloque antiguo sigue viéndose bien. */
body.hf-news-context .hf-article-body .hf-product-block{
  margin:2.4em 0!important;padding:22px 24px!important;
  border:1px solid var(--hf-ink)!important;background:var(--hf-paper-card)!important;
}
body.hf-news-context .hf-article-body .hf-product-block p{
  margin:0!important;font-family:var(--hf-display)!important;font-size:11px!important;
  line-height:1.5!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body .hf-product-block p:first-child{
  margin-bottom:7px!important;font-size:9px!important;letter-spacing:.14em!important;
  text-transform:uppercase!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-article-body .hf-product-block a{text-decoration:none!important}

/* Bloques nativos de WooCommerce dentro de una nota. */
body.hf-news-context .hf-article-body .wp-block-woocommerce-product,
body.hf-news-context .hf-article-body .wc-block-grid{
  margin:2.4em 0!important;padding:22px!important;
  border:1px solid var(--hf-rule)!important;background:var(--hf-paper-card)!important;
}
body.hf-news-context .hf-article-body .wc-block-components-product-name,
body.hf-news-context .hf-article-body .wp-block-woocommerce-product .woocommerce-loop-product__title{
  font-family:var(--hf-serif)!important;font-size:20px!important;font-weight:600!important;
  line-height:1.2!important;letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-article-body .wc-block-components-product-price,
body.hf-news-context .hf-article-body .wp-block-woocommerce-product .price{
  font-family:var(--hf-display)!important;font-size:12px!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-body .wp-block-button__link{
  border-radius:0!important;background:var(--hf-ink)!important;color:var(--hf-paper)!important;
  font-family:var(--hf-display)!important;font-size:10px!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;text-decoration:none!important;
}

/* Tarjeta de producto vinculada */
body.hf-news-context .hf-product-card{
  display:grid!important;grid-template-columns:200px minmax(0,1fr)!important;
  align-items:start!important;
  margin:2.5em 0!important;border:1px solid var(--hf-ink)!important;
  background:#d0d0d0!important;overflow:hidden!important;
}
body.hf-news-context .hf-product-card-media{
  display:block!important;position:relative!important;
  width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;
  aspect-ratio:4/5!important;align-self:start!important;
  padding:10px!important;border-right:1px solid var(--hf-rule)!important;
  background:#d0d0d0!important;overflow:hidden!important;
  text-decoration:none!important;
}
body.hf-news-context .hf-product-card-media img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center!important;
  filter:grayscale(100%)!important;background:#d0d0d0!important;
}
body.hf-news-context .hf-product-card-media--empty{
  display:flex!important;align-items:center!important;justify-content:center!important;
  text-decoration:none!important;
}
body.hf-news-context .hf-product-card-media--empty span{
  display:block!important;
  font-family:var(--hf-display)!important;font-size:30px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:-.05em!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-product-card-copy{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  align-self:stretch!important;min-height:100%!important;
  padding:22px 24px 20px!important;min-width:0!important;
  background:var(--hf-paper-card)!important;
}
body.hf-news-context .hf-product-card-flag{
  display:inline-flex!important;align-items:center!important;
  margin:0 0 13px!important;padding:4px 7px!important;
  background:var(--hf-ink)!important;color:var(--hf-paper)!important;
  font-family:var(--hf-display)!important;font-size:8px!important;font-weight:500!important;
  line-height:1!important;letter-spacing:.13em!important;text-transform:uppercase!important;
}
body.hf-news-context .hf-product-card-kicker{
  margin:0 0 7px!important;
  font-family:var(--hf-display)!important;font-size:8.5px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-product-card-title{
  margin:0 0 9px!important;font-size:clamp(20px,1.8vw,25px)!important;
  line-height:1.16!important;letter-spacing:-.015em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-product-card-title a{color:inherit!important;text-decoration:none!important}
body.hf-news-context .hf-product-card-title a:hover{color:var(--hf-accent)!important}
body.hf-news-context .hf-product-card-desc{
  max-width:46ch!important;margin:0 0 16px!important;
  font-size:13px!important;line-height:1.52!important;color:var(--hf-muted)!important;
  letter-spacing:0!important;text-transform:none!important;
}
body.hf-news-context .hf-product-card-buy{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
  gap:16px!important;width:100%!important;margin-top:auto!important;
  padding-top:13px!important;border-top:1px solid var(--hf-rule)!important;
}
body.hf-news-context .hf-product-card-price{
  font-family:var(--hf-display)!important;font-size:13px!important;font-weight:500!important;
  line-height:1.3!important;letter-spacing:.01em!important;color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-product-card-price del{color:var(--hf-muted)!important;font-weight:400!important}
body.hf-news-context .hf-product-card-cta{
  display:inline-flex!important;align-items:center!important;gap:7px!important;
  padding:0 0 3px!important;border-bottom:1px solid var(--hf-ink)!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.2!important;letter-spacing:.11em!important;text-transform:uppercase!important;
  color:var(--hf-ink)!important;text-decoration:none!important;white-space:nowrap!important;
}
body.hf-news-context .hf-product-card-cta span{font-size:12px!important;line-height:1!important}
body.hf-news-context .hf-product-card-cta:hover{color:var(--hf-accent)!important;border-color:var(--hf-accent)!important}

/* Pie y navegación de la nota */
body.hf-news-context .hf-article-foot{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
  gap:18px 28px!important;margin-top:54px!important;padding-top:16px!important;
  border-top:1px solid var(--hf-ink)!important;
}
body.hf-news-context .hf-article-tags{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px 14px!important;
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--hf-muted)!important;
}
body.hf-news-context .hf-article-tags a{
  color:var(--hf-ink)!important;text-decoration:none!important;border-bottom:1px solid var(--hf-rule)!important;
  padding-bottom:2px!important;
}
body.hf-news-context .hf-article-tags a:hover{color:var(--hf-accent)!important;border-color:var(--hf-accent)!important}
body.hf-news-context .hf-article-foot-back{
  font-family:var(--hf-display)!important;font-size:9px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  color:var(--hf-ink)!important;text-decoration:none!important;border-bottom:1px solid var(--hf-ink)!important;
  padding-bottom:2px!important;white-space:nowrap!important;
}
body.hf-news-context .hf-article-foot-back:hover{color:var(--hf-accent)!important;border-color:var(--hf-accent)!important}
body.hf-news-context .hf-article-nav{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1px!important;margin-top:22px!important;background:var(--hf-ink)!important;
  border:1px solid var(--hf-ink)!important;
}
body.hf-news-context .hf-article-nav-item{
  display:flex!important;flex-direction:column!important;gap:9px!important;
  min-height:116px!important;padding:19px 20px!important;
  background:var(--hf-paper)!important;color:var(--hf-ink)!important;text-decoration:none!important;
}
body.hf-news-context .hf-article-nav-item--next{align-items:flex-end!important;text-align:right!important}
body.hf-news-context .hf-article-nav-kicker{
  font-family:var(--hf-display)!important;font-size:8.5px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--hf-accent)!important;
}
body.hf-news-context .hf-article-nav-title{
  font-size:17px!important;line-height:1.22!important;letter-spacing:-.01em!important;
  color:var(--hf-ink)!important;text-transform:none!important;
}
body.hf-news-context .hf-article-nav-item:hover{background:var(--hf-paper-soft)!important}
body.hf-news-context .hf-article-nav-item:hover .hf-article-nav-title{color:var(--hf-accent)!important}

/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */
@media(max-width:900px){
  html body.hf-news-context{font-size:14px!important}
  body.hf-news-context .hf-news-shell,
  body.hf-news-context .hf-article{padding-left:20px!important;padding-right:20px!important}

  body.hf-news-context .hf-news-head-main{
    grid-template-columns:1fr!important;align-items:start!important;
    gap:14px!important;padding:20px 0 24px!important;
  }
  body.hf-news-context .hf-news-head h1{font-size:clamp(48px,12vw,64px)!important;line-height:.84!important}
  body.hf-news-context .hf-news-intro{max-width:42ch!important;font-size:15px!important;margin:0!important}

  body.hf-news-context .hf-news-feature{
    grid-template-columns:1fr!important;gap:18px!important;
    padding:26px 0 30px!important;
  }
  body.hf-news-context .hf-news-feature-meta{
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;
    padding-top:0!important;border-top:0!important;
  }
  body.hf-news-context .hf-news-feature-num{font-size:22px!important}
  body.hf-news-context .hf-news-feature-meta-lines{
    flex-direction:row!important;align-items:center!important;gap:12px!important;margin-top:0!important;
  }
  body.hf-news-context .hf-news-feature-title{
    max-width:none!important;font-size:clamp(23px,6vw,27px)!important;line-height:1.14!important;
  }
  body.hf-news-context .hf-news-feature-deck{font-size:15px!important;margin-top:14px!important;line-height:1.55!important}
  body.hf-news-context .hf-news-feature-foot{gap:14px 20px!important;margin-top:20px!important}

  body.hf-news-context .hf-news-list{grid-template-columns:1fr!important;column-gap:0!important}
  body.hf-news-context .hf-news-row{padding:22px 0 24px!important;gap:10px!important}
  body.hf-news-context .hf-news-row-title{font-size:19px!important;line-height:1.18!important}
  body.hf-news-context .hf-news-row-excerpt{font-size:14px!important;line-height:1.55!important}
  body.hf-news-context .hf-news-product{font-size:8.5px!important;padding:7px 9px!important}
  body.hf-news-context .hf-news-product-name{max-width:38ch!important}

  body.hf-news-context .hf-article-head{padding-top:26px!important}
  body.hf-news-context .hf-article-title{
    max-width:none!important;margin-top:20px!important;
    font-size:clamp(28px,7.7vw,34px)!important;line-height:1.1!important;letter-spacing:-.022em!important;
  }
  body.hf-news-context .hf-article-deck{font-size:16.5px!important;line-height:1.52!important;margin-top:15px!important}
  body.hf-news-context .hf-article-meta{margin:20px 0 26px!important;font-size:8.5px!important}
  body.hf-news-context .hf-article-layout{grid-template-columns:1fr!important;gap:0!important;padding-top:24px!important}
  body.hf-news-context .hf-article-rail{display:none!important}
  body.hf-news-context .hf-article-main{max-width:none!important}
  body.hf-news-context .hf-article-body{max-width:none!important;font-size:17px!important;line-height:1.7!important}
  body.hf-news-context .hf-article-body p,
  body.hf-news-context .hf-article-body li{font-size:17px!important;line-height:1.7!important}
  body.hf-news-context .hf-article-body .hf-post-lead{font-size:19px!important;line-height:1.55!important}
  body.hf-news-context .hf-article-body h2{font-size:25px!important;line-height:1.14!important;margin-top:2em!important}
  body.hf-news-context .hf-article-body blockquote{font-size:21px!important;line-height:1.34!important;padding-left:18px!important}
  body.hf-news-context .hf-article-body .hf-sources{grid-template-columns:1fr!important;gap:8px!important}

  body.hf-news-context .hf-product-card{grid-template-columns:104px minmax(0,1fr)!important;margin:2.2em 0!important}
  body.hf-news-context .hf-product-card-media{padding:7px!important}
  body.hf-news-context .hf-product-card-copy{padding:15px 15px 14px!important}
  body.hf-news-context .hf-product-card-flag{margin-bottom:9px!important;padding:3px 6px!important;font-size:7px!important}
  body.hf-news-context .hf-product-card-kicker{font-size:7.5px!important;margin-bottom:5px!important}
  body.hf-news-context .hf-product-card-title{font-size:18px!important;line-height:1.16!important;margin-bottom:6px!important}
  body.hf-news-context .hf-product-card-desc{display:none!important}
  body.hf-news-context .hf-product-card-buy{padding-top:10px!important;gap:10px!important;align-items:center!important}
  body.hf-news-context .hf-product-card-price{font-size:11px!important}
  body.hf-news-context .hf-product-card-cta{font-size:8px!important}

  body.hf-news-context .hf-article-foot{flex-direction:column!important;align-items:flex-start!important;gap:14px!important;margin-top:40px!important}
  body.hf-news-context .hf-article-nav{grid-template-columns:1fr!important}
  body.hf-news-context .hf-article-nav-item{min-height:0!important;padding:17px 18px!important}
  body.hf-news-context .hf-article-nav-item--next{align-items:flex-start!important;text-align:left!important}
}

@media(max-width:480px){
  body.hf-news-context .hf-news-head{padding-top:34px!important}
  body.hf-news-context .hf-news-head-top{font-size:8px!important;gap:14px!important}
  body.hf-news-context .hf-news-head h1{font-size:46px!important}
  body.hf-news-context .hf-news-intro{font-size:14px!important}
  body.hf-news-context .hf-news-feature-title{font-size:23px!important}
  body.hf-news-context .hf-news-row-title{font-size:18px!important}
  body.hf-news-context .hf-news-row-num{font-size:8px!important}
  body.hf-news-context .hf-article-title{font-size:27px!important}
  body.hf-news-context .hf-article-body,.hf-article-body p,.hf-article-body li{font-size:16.5px!important}
  body.hf-news-context .hf-article-body .hf-post-lead{font-size:18.5px!important}
  body.hf-news-context .hf-product-card{grid-template-columns:86px minmax(0,1fr)!important}
  body.hf-news-context .hf-product-card-media{padding:6px!important}
  body.hf-news-context .hf-product-card-title{font-size:17px!important}
  body.hf-news-context .hf-product-card-price{font-size:10px!important}
}
/* FIN - V4.19.24 */

/* ============================================================================
   V4.19.26 — PORTADA, NOMBRES DE PRODUCTO, RESUMEN DEL CHECKOUT Y QR
   ============================================================================ */

/* A. PORTADA DE ESCRITORIO --------------------------------------------------
   Antes: mitad izquierda negra vacia + foto pequeña con franjas #d0d0d0.
   Ahora: la foto ocupa el 46% del ancho, recortada 4:5 (sin franjas grises) y
   el panel negro se ordena con un rotulo pequeño arriba. */
@media(min-width:821px){
  html body.home .hf-v2-hero{
    grid-template-columns:minmax(0,1fr) minmax(0,46%)!important;
    background:#0b0b0b!important;
  }
  html body.home .hf-v2-hero-img{
    object-fit:cover!important;
    object-position:center 14%!important;
    background:#0b0b0b!important;
    border-left:1px solid #1c1c1c!important;
  }
  html body.home .hf-v2-hero-inner{
    justify-content:space-between!important;
    background:#0b0b0b!important;
    padding:clamp(30px,3.6vw,56px)!important;
  }
  html body.home .hf-v2-hero-inner::before{
    content:"01 — COLECCIÓN";
    display:block;
    font:600 10px/1 var(--hf-font,Arial,sans-serif);
    letter-spacing:.2em;
    color:#8a8a8a;
    text-transform:uppercase;
  }
  html body.home .hf-v2-hero-title{
    max-width:12ch!important;
    font-size:clamp(46px,5.4vw,90px)!important;
    line-height:.88!important;
  }
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-hero-title{
    font-weight:700!important;
  }
  html body.home .hf-v2-hero-text{max-width:32ch!important;margin-top:20px!important}
  html body.home .hf-v2-actions--single{margin-top:24px!important}
}

/* B. NOMBRES DE PRODUCTO: un solo peso en toda la tienda -------------------
   Home (mas pedidos), tienda y relacionados comparten 12px / 600. */
html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-card-title{
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  text-transform:uppercase!important;
}
html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-card--book .hf-v2-card-title{font-weight:600!important}
@media(max-width:820px){
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-card-title{font-size:12px!important;font-weight:600!important}
}

/* C. MINIATURAS DE "TU SELECCIÓN": 4:5 real y relleno #d0d0d0 ------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item .hf-checkout-thumb{
  position:static!important;
  float:left!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:48px!important;height:60px!important;min-width:48px!important;
  aspect-ratio:4/5!important;
  margin:0 12px 2px 0!important;padding:0!important;
  overflow:hidden!important;
  background:#d0d0d0!important;
  border:0!important;
  transform:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item .hf-checkout-thumb img{
  display:block!important;
  width:100%!important;height:100%!important;
  aspect-ratio:4/5!important;
  object-fit:contain!important;object-position:center!important;
  background:#d0d0d0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
  padding:12px 12px 12px 10px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name::after{
  content:""!important;display:block!important;clear:both!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item .hf-checkout-thumb{
    width:44px!important;height:55px!important;min-width:44px!important;margin-right:10px!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
    padding:10px 10px 10px 8px!important;
  }
}

/* D. ENVÍO: se ve cual esta elegido y se puede elegir --------------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li{
  cursor:pointer!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method input.shipping_method{
  position:absolute!important;width:1px!important;height:1px!important;
  margin:-1px!important;padding:0!important;border:0!important;
  overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;
  white-space:nowrap!important;opacity:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method label{
  cursor:pointer!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:10px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method label::before{
  content:""!important;
  order:-1;
  flex:0 0 12px!important;
  width:12px!important;height:12px!important;
  border:1px solid #000!important;border-radius:50%!important;
  background:#fff!important;
  box-sizing:border-box!important;
  margin-right:2px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li.is-checked label::before{
  background:#000!important;
  box-shadow:inset 0 0 0 3px #fff!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li.is-checked label{
  color:#000!important;font-weight:600!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) tr.woocommerce-shipping-totals ul#shipping_method li.is-checked label .amount{
  font-weight:700!important;
}

/* F. SELECTS OCULTOS DE SELECT2: 1px --------------------------------------
   El tema les da width:100% con dos IDs en movil y eso abre 16px de scroll
   horizontal en el checkout. Se les devuelve el tamaño con el que Select2
   los esconde. */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .form-row select.select2-hidden-accessible,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) select.select2-hidden-accessible{
  width:1px!important;height:1px!important;min-height:0!important;
  margin:-1px!important;padding:0!important;border:0!important;
  position:absolute!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;
}

/* G. QR: deslizable, un panel a la vez ------------------------------------ */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .payment_method_hfm_qr_pe .hf-qr{
  margin:0!important;padding:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-viewport{
  overflow:hidden!important;
  border:1px solid #e5e5e5!important;
  background:#fff!important;
  touch-action:pan-y!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-track{
  display:flex!important;align-items:flex-start!important;
  transition:transform .28s cubic-bezier(.22,.61,.36,1)!important;
  will-change:transform;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide{
  flex:0 0 100%!important;min-width:100%!important;
  box-sizing:border-box!important;
  padding:16px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide .hfm-payment-instructions__qr-wrap{
  margin:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide .hfm-payment-instructions__qr{
  display:block!important;
  width:auto!important;max-width:220px!important;max-height:220px!important;
  margin:0 auto!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide .hfm-payment-instructions__qr-caption,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide .hfm-payment-instructions__merchant-note,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-slide .hfm-payment-instructions__notice{
  margin:0 0 10px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-bar{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:12px!important;margin:10px 0 0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-nav{
  display:flex!important;align-items:center!important;gap:8px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-arrow{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:34px!important;height:34px!important;padding:0!important;
  border:1px solid #000!important;background:#fff!important;color:#000!important;
  font:600 13px/1 var(--hf-font,Arial,sans-serif)!important;
  cursor:pointer!important;border-radius:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-arrow:disabled{
  border-color:#e5e5e5!important;color:#d0d0d0!important;cursor:default!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-dots{
  display:flex!important;align-items:center!important;gap:6px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-dots i{
  display:block!important;width:6px!important;height:6px!important;border-radius:50%!important;
  background:#d0d0d0!important;cursor:pointer!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-dots i.on{background:#000!important}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .hf-qr-step{
  font:500 10px/1 var(--hf-font,Arial,sans-serif)!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;color:#8a8a8a!important;
}

/* FIN - V4.19.26 */

/* ============================================================================
   V4.19.27 — HERO EN PAPEL, NOMBRES UNIFICADOS Y CHECKOUT OPERATIVO
   ============================================================================ */

/* --------------------------------------------------------------------------
   A. HOME — HERO EN PAPEL, FOTO A SANGRE Y RÓTULOS EDITORIALES
   -------------------------------------------------------------------------- */
html body.home .hf-v2-hero-copy{width:100%!important;max-width:100%!important}
html body.home .hf-v2-hero-top,
html body.home .hf-v2-hero-bottom{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:18px!important;
  font-family:var(--hf-font)!important;font-size:8.5px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.15em!important;text-transform:uppercase!important;
  color:#6e675c!important;
}
html body.home .hf-v2-hero-top{padding:0 0 13px!important;border-bottom:1px solid #d5cfc2!important}
html body.home .hf-v2-hero-bottom{padding:13px 0 0!important;border-top:1px solid #d5cfc2!important}
html body.home .hf-v2-hero-main{padding:0!important}

@media(min-width:821px){
  html body.home .hf-v2-hero{
    display:grid!important;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    height:calc(100svh - 72px)!important;min-height:620px!important;max-height:860px!important;
    background:#f2efe7!important;overflow:hidden!important;
  }
  html body.home .hf-v2-hero-img{
    position:relative!important;inset:auto!important;
    grid-column:2!important;grid-row:1!important;
    display:block!important;width:100%!important;height:100%!important;
    max-width:none!important;max-height:none!important;
    object-fit:cover!important;object-position:center 24%!important;
    background:#d0d0d0!important;border-left:0!important;
    filter:saturate(.94) contrast(1.02)!important;
  }
  html body.home .hf-v2-hero-veil{display:none!important}
  html body.home .hf-v2-hero-inner{
    position:relative!important;inset:auto!important;
    grid-column:1!important;grid-row:1!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    justify-content:stretch!important;
    padding:clamp(34px,4vw,58px)!important;
    background:#f2efe7!important;color:#14110e!important;
    border-right:1px solid #d5cfc2!important;
  }
  html body.home .hf-v2-hero-copy{
    display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;
    height:100%!important;min-height:100%!important;
  }
  html body.home .hf-v2-hero-main{align-self:end!important;padding:clamp(26px,6vh,64px) 0 24px!important}
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-hero-title{
    max-width:14ch!important;margin:0!important;
    color:#14110e!important;
    font-size:clamp(38px,4.2vw,64px)!important;line-height:.93!important;
    font-weight:500!important;letter-spacing:-.058em!important;
    text-transform:uppercase!important;text-shadow:none!important;
  }
  html body.home .hf-v2-hero-text{
    max-width:31ch!important;margin:20px 0 0!important;
    color:#50493f!important;
    font-size:clamp(14px,1.1vw,17px)!important;line-height:1.5!important;
  }
  html body.home .hf-v2-hero .hf-v2-actions--single{margin-top:24px!important;margin-bottom:0!important}
}

@media(max-width:820px){
  html body.home .hf-v2-hero{
    display:grid!important;grid-template-columns:1fr!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    background:#f2efe7!important;overflow:visible!important;
  }
  html body.home .hf-v2-hero-img{
    position:relative!important;inset:auto!important;display:block!important;
    grid-row:1!important;width:100%!important;height:auto!important;max-width:none!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;object-position:center 22%!important;
    background:#d0d0d0!important;border:0!important;
    filter:saturate(.94) contrast(1.02)!important;
  }
  html body.home .hf-v2-hero-veil{display:none!important}
  html body.home .hf-v2-hero-inner{
    position:relative!important;inset:auto!important;display:block!important;
    grid-row:2!important;
    padding:26px 20px 32px!important;
    background:#f2efe7!important;color:#14110e!important;
  }
  html body.home .hf-v2-hero-copy{display:block!important}
  html body.home .hf-v2-hero-top{margin:0 0 20px!important}
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-hero-title{
    max-width:100%!important;margin:0!important;
    color:#14110e!important;
    font-size:clamp(31px,8.8vw,40px)!important;line-height:.95!important;
    font-weight:500!important;letter-spacing:-.05em!important;
    text-transform:uppercase!important;text-shadow:none!important;
  }
  html body.home .hf-v2-hero-text{
    max-width:34ch!important;margin:16px 0 0!important;
    color:#50493f!important;font-size:15px!important;line-height:1.5!important;
  }
  html body.home .hf-v2-hero .hf-v2-actions--single{margin:20px 0 0!important}
  html body.home .hf-v2-hero-bottom{margin-top:24px!important}
  html body.home .hf-v2-hero .hf-v2-btn{
    width:100%!important;justify-content:center!important;
    background:#000!important;color:#fff!important;border-color:#000!important;
  }
}

/* --------------------------------------------------------------------------
   B. NOMBRES DE PRODUCTO — 12 px / 600 EN TODA LA TIENDA
   -------------------------------------------------------------------------- */
html body:not(#hf-sweep-a):not(#hf-sweep-b) .hf-shop-card-title,
html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-card-title,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .related .products .woocommerce-loop-product__title,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .up-sells .products .woocommerce-loop-product__title,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table td.product-name > a,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name > a,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-cart .shop_table.cart .product-name a,
html body:not(#hf-sweep-a):not(#hf-sweep-b) .hf-cart-drawer .woocommerce-mini-cart-item a.product-title{
  font-family:var(--hf-font)!important;
  font-size:12px!important;line-height:1.3!important;
  font-weight:600!important;letter-spacing:0!important;
  text-transform:uppercase!important;color:#000!important;
}
html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-card--book .hf-v2-card-title{
  font-size:12px!important;font-weight:600!important;line-height:1.3!important;
}
html body:not(#hf-sweep-a):not(#hf-sweep-b) .hf-product-info .product_title{font-weight:600!important}

/* --------------------------------------------------------------------------
   C. ENVÍO: FILA COMPLETA, RADIO VISIBLE Y ESTADO SELECCIONADO REAL
   -------------------------------------------------------------------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals{
  display:block!important;width:100%!important;
  border-bottom:1px solid #e5e2de!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td{
  display:block!important;width:100%!important;max-width:100%!important;
  padding:0!important;border:0!important;text-align:left!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th{
  padding:8px 0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td{
  padding:0 0 12px!important;overflow:visible!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method{
  display:block!important;width:100%!important;max-width:100%!important;
  margin:0!important;padding:0!important;list-style:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li{
  display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;
  align-items:center!important;gap:10px!important;
  width:100%!important;margin:0 0 6px!important;padding:9px 11px!important;
  border:1px solid #dedbd7!important;background:#fff!important;
  cursor:pointer!important;overflow:visible!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li:last-child{margin-bottom:0!important}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li::before{
  content:""!important;display:block!important;
  width:14px!important;height:14px!important;min-width:14px!important;
  border:1px solid #000!important;border-radius:50%!important;
  background:#fff!important;box-shadow:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li.is-checked{
  border-color:#000!important;background:#f2efe7!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li.is-checked::before{
  background:#000!important;box-shadow:inset 0 0 0 3px #f2efe7!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li:focus-within{
  outline:2px solid #000!important;outline-offset:2px!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method label::before{
  display:none!important;content:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method input.shipping_method{
  position:absolute!important;
  width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;
  margin:-1px!important;padding:0!important;border:0!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;
  opacity:0!important;pointer-events:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method label{
  display:flex!important;align-items:baseline!important;justify-content:space-between!important;
  gap:14px!important;width:100%!important;min-width:0!important;margin:0!important;
  font-family:var(--hf-font)!important;font-size:10px!important;font-weight:500!important;
  line-height:1.4!important;letter-spacing:.01em!important;text-transform:uppercase!important;
  text-decoration:none!important;-webkit-text-decoration:none!important;
  color:#000!important;cursor:pointer!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method li:not(.is-checked) label{
  color:#777!important;font-weight:400!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals ul#shipping_method label .amount{
  white-space:nowrap!important;font-size:11px!important;font-weight:600!important;color:#000!important;
}

/* --------------------------------------------------------------------------
   D. PAGOS: SÓLO EL MÉTODO ELEGIDO MUESTRA SU CONTENIDO
   -------------------------------------------------------------------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method > .payment_box{
  display:none!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method.is-selected > .payment_box,
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method:has(> input[type="radio"]:checked) > .payment_box{
  display:block!important;
  animation:hf-pay-reveal .24s ease both!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method.is-selected{
  border-color:#000!important;background:#faf8f2!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) #payment ul.payment_methods li.wc_payment_method.is-selected > label{
  font-weight:600!important;
}
html body.woocommerce-checkout .hf-qr-viewport{max-width:100%!important}
@keyframes hf-pay-reveal{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:none}
}

/* --------------------------------------------------------------------------
   E. "TU SELECCIÓN": MINIATURA 4:5, FONDO #d0d0d0 Y NOMBRE CONSISTENTE
   -------------------------------------------------------------------------- */
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
  width:72%!important;
  padding:20px 30px 20px 86px!important;
  min-height:104px!important;vertical-align:middle!important;
  position:relative!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name .hf-checkout-thumb{
  position:absolute!important;left:0!important;top:50%!important;
  display:block!important;float:none!important;
  width:56px!important;height:70px!important;min-width:56px!important;min-height:70px!important;
  aspect-ratio:4/5!important;
  margin:0!important;padding:0!important;
  transform:translateY(-50%)!important;
  overflow:hidden!important;background:#d0d0d0!important;border:0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name .hf-checkout-thumb img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;
  aspect-ratio:4/5!important;
  margin:0!important;padding:0!important;
  object-fit:contain!important;object-position:center!important;
  background:#d0d0d0!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name > a{
  font-size:12px!important;line-height:1.3!important;font-weight:600!important;
  letter-spacing:0!important;text-transform:uppercase!important;
}
html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name::after{
  content:""!important;display:block!important;clear:both!important;
}
@media(max-width:820px){
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name{
    padding:16px 24px 16px 70px!important;min-height:88px!important;
  }
  html body.woocommerce-checkout:not(#hf-sweep-a):not(#hf-sweep-b) .woocommerce-checkout-review-order-table .cart_item td.product-name .hf-checkout-thumb{
    width:48px!important;height:60px!important;min-width:48px!important;min-height:60px!important;
  }
}

/* FIN - V4.19.27 */

/* ============================================================================
   V4.19.28 — HERO DE PORTADA: COMPOSICIÓN EDITORIAL SIN RÓTULOS
   Sólo la portada. No se toca el resto de la home ni otras secciones.
   ============================================================================ */
html body.home .hf-v2-hero-top,
html body.home .hf-v2-hero-bottom{display:none!important}
html body.home .hf-v2-hero-inner::before{display:none!important;content:none!important}

@media(min-width:821px){
  html body.home .hf-v2-hero{
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
    background:#f2efe7!important;
  }
  html body.home .hf-v2-hero-inner{
    justify-content:center!important;
    padding:clamp(44px,5vw,76px)!important;
    border-right:1px solid #d5cfc2!important;
  }
  html body.home .hf-v2-hero-copy{
    display:flex!important;align-items:center!important;
    height:100%!important;min-height:100%!important;
  }
  html body.home .hf-v2-hero-main{
    width:100%!important;max-width:520px!important;
    padding:0!important;align-self:center!important;
  }
  html body.home .hf-v2-hero-main::before{
    content:"";display:block!important;
    width:44px;height:1px;margin:0 0 clamp(24px,3vw,36px);
    background:#14110e;
  }
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-hero-title{
    max-width:10ch!important;margin:0!important;
    color:#14110e!important;
    font-size:clamp(44px,4.4vw,68px)!important;line-height:.94!important;
    font-weight:500!important;letter-spacing:-.055em!important;
    text-transform:uppercase!important;text-shadow:none!important;
  }
  html body.home .hf-v2-hero-text{
    max-width:31ch!important;margin:22px 0 0!important;
    color:#50493f!important;
    font-size:clamp(15px,1.1vw,17px)!important;line-height:1.55!important;
  }
  html body.home .hf-v2-hero .hf-v2-actions--single{margin-top:28px!important;margin-bottom:0!important}
}

@media(max-width:820px){
  html body.home .hf-v2-hero{
    grid-template-columns:1fr!important;
    background:#f2efe7!important;
  }
  html body.home .hf-v2-hero-img{
    grid-row:1!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;object-position:center 22%!important;
  }
  html body.home .hf-v2-hero-inner{
    grid-row:2!important;
    padding:30px 22px calc(36px + env(safe-area-inset-bottom))!important;
  }
  html body.home .hf-v2-hero-copy{display:block!important}
  html body.home .hf-v2-hero-main{padding:0!important}
  html body.home .hf-v2-hero-main::before{
    content:"";display:block!important;
    width:36px;height:1px;margin:0 0 22px;
    background:#14110e;
  }
  html body.home:not(#hf-sweep-a):not(#hf-sweep-b) .hf-v2-hero-title{
    max-width:100%!important;margin:0!important;
    color:#14110e!important;
    font-size:clamp(34px,9.4vw,42px)!important;line-height:.95!important;
    font-weight:500!important;letter-spacing:-.05em!important;
    text-transform:uppercase!important;text-shadow:none!important;
  }
  html body.home .hf-v2-hero-text{
    max-width:34ch!important;margin:18px 0 0!important;
    color:#50493f!important;
    font-size:15.5px!important;line-height:1.55!important;
  }
  html body.home .hf-v2-hero .hf-v2-actions--single{margin:24px 0 0!important}
  html body.home .hf-v2-hero .hf-v2-btn{
    width:100%!important;justify-content:center!important;
    background:#000!important;color:#fff!important;border-color:#000!important;
  }
}

/* FIN - V4.19.28 */
