/* FerreImpulso 2.0.10.5. Scope changes to WooCommerce catalogue/product templates only. */
.fi-shop-shell .fi-shop-heading{overflow:hidden;min-width:0;background:linear-gradient(120deg,#edf6fc 0%,#fff 75%);position:relative}
.fi-shop-shell .fi-shop-heading h1{overflow-wrap:anywhere;line-height:1.03}
.fi-shop-shell .fi-shop-heading-mark{font-family:var(--hd);opacity:.25}
.fi-shop-shell .fi-xp-subcategories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px}
.fi-shop-shell .fi-xp-subcat{border:1px solid #dfe9f1;border-radius:14px;background:linear-gradient(130deg,#fff,#f4f8fc);display:flex;align-items:center;gap:9px;min-height:76px;padding:11px;color:#123250;text-decoration:none;box-shadow:0 3px 16px rgba(3,49,76,.04);font-weight:800;transition:transform .18s,border-color .18s,box-shadow .18s}
.fi-shop-shell .fi-xp-subcat:hover,.fi-shop-shell .fi-xp-subcat:focus-visible{transform:translateY(-2px);border-color:#0876ac;box-shadow:0 10px 24px rgba(3,49,76,.10)}
.fi-xp-subcat-img{width:50px;height:50px;border-radius:10px;background:white;display:grid;place-items:center;flex:0 0 50px;overflow:hidden}
.fi-xp-subcat-img img{width:100%;height:100%;object-fit:contain}
.fi-xp-subcat-name{font:800 17px/1.12 var(--hd);text-transform:uppercase;overflow-wrap:anywhere}
.fi-xp-subcat-arrow{margin-left:auto;font-size:17px;flex:none;color:#0876ac}
.fi-xp-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 20px;font-size:13px}
.fi-xp-active-filters strong{font-size:12px;color:#455e76}
.fi-xp-active-filters a{border-radius:50px;padding:7px 11px;background:#e7f3fb;color:#063b61;border:1px solid #c9e3f4;font-weight:700;text-decoration:none;max-width:100%;overflow-wrap:anywhere}
.fi-xp-active-filters a:hover{background:#d4ecfc}
.fi-xp-active-filters .fi-xp-clear-all{background:#fff;border-color:#dfe6ee;font-weight:600}
.fi-shop-results .fi-shop-products .fi-card{display:flex;flex-direction:column;min-width:0;min-height:100%;border-radius:16px;border:1px solid #e0e8ef;background:#fff;box-shadow:0 5px 18px rgba(4,42,73,.05);transition:box-shadow .18s,transform .18s}
.fi-shop-results .fi-shop-products .fi-card:hover{box-shadow:0 13px 30px rgba(4,42,73,.11);transform:translateY(-2px)}
.fi-shop-results .fi-shop-products .fi-card h3{line-height:1.13;overflow-wrap:anywhere}
.fi-shop-results .fi-shop-products .fi-card .fi-art{border-radius:10px;background:#fbfcfd}
.fi-shop-results .fi-shop-products .fi-card .fi-price{line-height:1.2;overflow-wrap:anywhere}
.fi-shop-results .fi-shop-products .fi-card .fi-btn{margin-top:auto}
.fi-shop-results .fi-shop-products .fi-card .fi-sku{font-size:11px}
.fi-xp-cols-4 .fi-shop-products{grid-template-columns:repeat(4,minmax(0,1fr))}
.fi-xp-tech{margin:20px 0 8px;border:1px solid #dbe8f2;border-radius:15px;overflow:hidden;background:#f9fcff}
.fi-xp-tech h2{font:900 26px/1.1 var(--hd);text-transform:uppercase;padding:17px 17px 11px;margin:0;color:#063b61}
.fi-xp-tech dl{margin:0;padding:0 17px 5px}
.fi-xp-tech dl>div{display:grid;grid-template-columns:44% 56%;gap:10px;padding:10px 0;border-top:1px solid #e5edf3;min-width:0}
.fi-xp-tech dt{color:#4c667d;font-size:13px;font-weight:600;overflow-wrap:anywhere}
.fi-xp-tech dd{color:#0c2942;font-size:13px;font-weight:800;margin:0;overflow-wrap:anywhere}
.fi-xp-tech p{margin:0;padding:10px 17px 15px;font-size:11px;line-height:1.5;color:#60778b}
.fi-xp-manual{display:flex;align-items:center;gap:12px;margin:15px 0;border:1px solid #a9d6f0;border-radius:12px;color:#063b61!important;background:#f3faff;padding:13px 15px;font-size:13px;font-weight:800;text-decoration:none}
.fi-xp-manual span{display:grid;place-items:center;flex:none;font-size:21px;color:#0876ac}
.fi-xp-manual:hover,.fi-xp-manual:focus-visible{background:#d9effd}
@media(max-width:1100px){
 .fi-xp-cols-4 .fi-shop-products{grid-template-columns:repeat(3,minmax(0,1fr))}
 .fi-shop-shell .fi-xp-subcategories{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .fi-shop-shell .fi-xp-subcategories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .fi-shop-shell .fi-xp-subcat{min-height:65px;padding:8px;gap:6px}
 .fi-xp-subcat-img{width:42px;height:42px;flex-basis:42px}
 .fi-xp-subcat-name{font-size:15px}
 .fi-shop-shell .fi-shop-heading{padding:24px 18px}
 .fi-shop-shell .fi-shop-heading-mark{display:none}
 .fi-shop-shell .fi-filter-details{position:static;margin-bottom:0}
 .fi-shop-shell .fi-filter-details summary{min-height:48px;align-items:center}
 .fi-shop-shell .fi-filter-details:not([open]) .fi-filter-form{display:none}
 .fi-shop-shell .fi-shop-sidebar{margin-bottom:10px}
 .fi-shop-shell .fi-shop-results .woocommerce-ordering{float:none;display:block}
 .fi-shop-shell .fi-shop-results .woocommerce-ordering select{max-width:100%;width:100%;font-size:16px;min-height:45px}
 .fi-shop-shell .fi-shop-products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fi-shop-shell.fi-shop-shell .fi-shop-products .fi-card{padding:20px 10px 13px}
 .fi-shop-shell .fi-shop-products .fi-card h3{font-size:18px;line-height:1.15;min-height:0;max-height:64px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-price{font-size:24px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-btn{font-size:12px;padding:11px 6px;line-height:1.25}
 .fi-xp-mobile-1 .fi-shop-products{grid-template-columns:minmax(0,1fr)}
 .fi-xp-mobile-1 .fi-shop-products .fi-card .fi-art{aspect-ratio:1/.65}
 .fi-xp-tech{margin:15px 0}
 .fi-xp-tech h2{font-size:24px}
 .fi-xp-mobile-buy{display:none!important}
 .fi-xp-mobile-buy.fi-xp-show{display:flex!important}
 .fi-xp-mobile-buy span{min-width:0;line-height:1.15}
 .fi-xp-mobile-buy .fi-btn{flex:none}
}
@media(max-width:380px){
 .fi-shop-shell .fi-shop-products .fi-card h3{font-size:16px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-price{font-size:22px}
 .fi-shop-shell .fi-xp-subcategories{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fi-xp-subcat-img{width:34px;height:34px;flex-basis:34px}
 .fi-xp-subcat-name{font-size:13px}
 .fi-xp-tech dl>div{grid-template-columns:40% 60%;gap:5px}
 .fi-xp-mobile-buy span{font-size:19px}
}
@media(min-width:761px){.fi-xp-mobile-buy{display:none!important}}
@media(prefers-reduced-motion:reduce){.fi-shop-shell .fi-xp-subcat,.fi-shop-results .fi-shop-products .fi-card{transition:none}}
/* Final readability pass for narrow phones and iOS input zoom. */
@media(max-width:760px){
 .fi-shop-shell .fi-shop-heading h1{font:900 clamp(30px,8.5vw,39px)/1.06 var(--hd);overflow-wrap:normal;word-break:normal;hyphens:auto}
 .fi-shop-shell .fi-shop-products .fi-card h3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:none;min-height:0;overflow:hidden;line-height:1.17}
 .fi-single-summary form.cart select,.fi-single-summary form.cart input,.fi-filter-form input[type=number],.fi-filter-form select{font-size:16px!important}
 .fi-xp-mobile-buy .fi-btn{text-decoration:none!important}
}
@media(max-width:359px){
 .fi-shop-shell .fi-xp-subcategories,.fi-shop-shell .fi-shop-products{grid-template-columns:minmax(0,1fr)}
 .fi-shop-shell .fi-xp-subcat{min-height:58px}
 .fi-shop-shell .fi-shop-products .fi-card{padding:20px 14px 16px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-art{aspect-ratio:1/.65}
 .fi-shop-shell .fi-shop-products .fi-card h3{font-size:19px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-price{font-size:27px}
 .fi-shop-shell .fi-shop-products .fi-card .fi-btn{font-size:14px}
 .fi-shop-shell .fi-shop-heading h1{font-size:29px}
}
