/* FerreImpulso 4.5 · scoped original stylesheet for WooCommerce product pages and cart drawer.
   The layout follows customer-provided ATHENS references. Product prices are rendered by WooCommerce. */
:root{--fi45-blue:var(--fi3-blue,#0052c7);--fi45-ink:#25282e;--fi45-border:#e5e7eb;--fi45-muted:#697179}
/* Desktop: vertical thumbnails, framed product image and understated buying column. */
body.single-product .fi-product-shell{max-width:1190px!important;padding-top:30px!important}
body.single-product .fi3-single-top{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;gap:42px!important}
body.single-product .fi3-single-gallery{min-width:0;position:relative}
body.single-product .fi3-single-gallery .woocommerce-product-gallery{position:relative!important;min-height:320px}
body.single-product .fi3-single-gallery .woocommerce-product-gallery__wrapper{margin-left:0!important;max-width:none!important;padding:0!important}
body.single-product .fi3-single-gallery .woocommerce-product-gallery__image{display:grid!important;place-items:center;min-height:390px;border:1px solid var(--fi45-border)!important;border-radius:4px!important;background:#fff!important}
body.single-product .fi3-single-gallery .woocommerce-product-gallery__image img{width:100%;height:auto;max-height:525px;object-fit:contain}
body.single-product .fi3-single-gallery .flex-control-thumbs{position:absolute!important;left:0!important;top:0!important;margin:0!important;padding:0!important;width:68px!important;display:flex!important;flex-direction:column!important;gap:8px!important;list-style:none}
body.single-product .fi3-single-gallery .flex-control-thumbs li{width:68px!important;height:68px!important;float:none!important;flex:none!important;margin:0!important;border:1px solid #e0e3e7!important;border-radius:4px!important;overflow:hidden!important;background:#fff}
body.single-product .fi3-single-gallery .flex-control-thumbs li:has(.flex-active){border-color:var(--fi45-blue)!important}
body.single-product .fi3-single-gallery .flex-control-thumbs img{width:100%!important;height:100%!important;object-fit:contain!important;padding:3px!important;box-sizing:border-box!important}
body.single-product .fi3-single-summary{position:sticky;top:133px!important;align-self:start;min-width:0}
body.single-product .fi3-single-summary .fi3-single-brand{font-size:11px!important;text-transform:none!important;font-weight:500!important;letter-spacing:0!important;color:#7a7e84!important;margin-bottom:8px!important}
body.single-product .fi3-single-summary .product_title{font-size:clamp(21px,2.1vw,27px)!important;line-height:1.27!important;font-weight:600!important;color:#24272b!important;text-transform:none!important;margin:0 0 12px!important;letter-spacing:-.35px!important}
body.single-product .fi3-single-summary .price{border-top:1px solid #e5e5e5!important;padding:17px 0 0!important;margin:15px 0 8px!important;font-size:23px!important;font-weight:650!important;color:#24272b!important}
body.single-product .fi3-single-summary .price ins{color:#e02127!important;font-weight:650!important}
body.single-product .fi3-single-summary .price del{font-size:13px!important;color:#858585!important}
.fi45-stock-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:12px 0 14px;min-height:25px;border-bottom:1px solid #eee;padding-bottom:14px;color:var(--fi45-muted);font-size:11px}
.fi45-stock-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:20px;background:#e4f4e7;color:#236d3c;line-height:1.4;font-size:10px;font-weight:600}
.fi45-stock-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.fi45-stock-outofstock{background:#fce7e9;color:#a72b35}
.fi45-stock-onbackorder{background:#fff2df;color:#915913}
.fi45-product-code{color:#898e94}
body.single-product .fi3-single-summary form.cart{display:flex!important;align-items:center!important;gap:8px!important;margin:17px 0 16px!important}
body.single-product .fi3-single-summary .quantity{height:44px!important;margin:0!important}
body.single-product .fi3-single-summary .quantity .qty{height:43px!important;min-height:43px!important;max-width:84px!important;border-radius:3px!important;font-size:13px!important}
body.single-product .fi3-single-summary button.single_add_to_cart_button{height:44px!important;min-height:44px!important;box-shadow:none!important;font-size:12px!important;border-radius:3px!important;font-weight:600!important}
body.single-product .fi4-single-info{background:#eff5ff!important;border-radius:3px!important;margin-top:23px!important;box-shadow:none!important}
body.single-product .fi4-single-info strong{font-weight:600!important}
body.single-product .fi3-single-support{background:transparent!important;border:0!important;padding:0!important;gap:9px!important;margin:14px 0!important}
body.single-product .fi3-single-support>div{border:1px solid #e0e3e7!important;border-radius:3px!important;padding:12px!important;min-width:0!important}
body.single-product .fi3-single-support strong{font-weight:500!important}
body.single-product .fi4-under-gallery{margin-top:28px!important}
body.single-product .fi41-product-accordions{border-top:1px dashed #e3e5e8!important}
body.single-product .fi41-product-accordion{background:transparent!important}
body.single-product .fi41-product-accordion>summary{padding:15px 0!important;font-size:12px!important;min-height:30px;outline-offset:2px}
body.single-product .fi41-product-accordion>summary:hover strong{color:var(--fi45-blue)}
body.single-product .fi41-accordion-body{color:#60656c!important;font-size:12.5px!important;line-height:1.8!important}
body.single-product .fi3-single-extras .fi3-product-card{border-radius:4px!important}
/* Keep the sticky product bar narrow and unobtrusive like the reference. */
body.single-product .fi4-product-sticky{background:#fff!important;border-top:1px solid #e4e4e4!important;box-shadow:0 -5px 22px rgba(0,0,0,.055)!important;padding:8px max(16px,calc((100vw - 1190px)/2))!important;min-height:64px!important;box-sizing:border-box!important}
body.single-product .fi4-product-sticky>strong{font-weight:500!important;font-size:12px!important;max-width:35ch!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
body.single-product .fi4-product-sticky .fi4-sticky-price{font-weight:650!important;font-size:14px!important}
body.single-product .fi4-product-sticky .fi4-solid-link{min-height:41px!important;background:var(--fi45-blue)!important;border-radius:3px!important;font-weight:600!important}
body.single-product:has(.fi4-product-sticky) .fi3-mobile-buy{display:none!important}
/* Cart drawer: keep controls and totals legible while showing real WooCommerce values. */
.fi4-cart-backdrop:not([hidden]){background:rgba(0,0,0,.56)!important}
.fi4-cart-drawer{max-width:440px;background:#fff!important;box-shadow:-14px 0 35px rgba(0,0,0,.16)!important}
.fi4-cart-header{border-bottom:1px solid var(--fi45-border)!important;padding:14px 19px!important;min-height:62px!important}
.fi4-cart-header strong{font-weight:600!important}
.fi4-cart-line{padding:14px 0!important;border-bottom:1px solid #efefef!important}
.fi4-cart-line-info>a{font-size:12px!important;line-height:1.48!important;font-weight:500!important;display:block}
.fi4-cart-line-price{font-size:12px!important;font-weight:600!important;margin:8px 0!important}
.fi4-cart-controls{display:flex!important;align-items:center!important;gap:0!important;flex-wrap:wrap!important}
.fi4-cart-controls button[data-fi4-adjust]{width:32px!important;min-height:31px!important;border:1px solid #e0e0e0!important;border-radius:0!important;background:#fff!important;color:#34383c!important}
.fi4-cart-controls button[data-fi4-adjust]:disabled{opacity:.35;cursor:not-allowed}
.fi4-cart-controls>span{height:31px!important;min-width:33px!important;display:grid;place-items:center;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;font-size:12px}
.fi4-cart-controls button[data-fi4-remove]{margin-left:auto!important;border:0!important;color:#767676!important;text-decoration:underline!important;font-size:11px!important;background:transparent!important}
.fi4-cart-bottom{background:#fff!important;border-top:1px solid #e5e5e5!important;padding:15px 18px max(16px,env(safe-area-inset-bottom))!important}
.fi4-cart-subtotal{font-size:14px!important}
.fi4-cart-bottom .fi4-solid-link{min-height:44px!important;display:flex;align-items:center;justify-content:center;border-radius:3px!important}
.fi4-cart-drawer[aria-busy="true"] .fi4-cart-content{opacity:.6;pointer-events:none}
.fi4-cart-error{padding:11px;margin:10px 16px;border:1px solid #eb9d9d;background:#fff2f2;color:#9b2a2a;border-radius:4px;font-size:12px}
@media(max-width:900px){body.single-product .fi3-single-top{gap:25px!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}body.single-product .fi3-single-gallery .woocommerce-product-gallery__image{min-height:300px}}
@media(max-width:767px){
 body.single-product .fi-product-shell{width:calc(100% - 30px)!important;padding-top:14px!important}
 body.single-product .fi3-single-top{grid-template-columns:minmax(0,1fr)!important;gap:22px!important}
 body.single-product .fi3-single-summary{position:static!important}
 body.single-product .fi3-single-gallery{margin:0!important}
 body.single-product .fi3-single-gallery .woocommerce-product-gallery__wrapper{margin-left:0!important;max-width:none!important}
 body.single-product .fi3-single-gallery .woocommerce-product-gallery__image{min-height:280px!important}
 body.single-product .fi3-single-gallery .woocommerce-product-gallery__image img{max-height:365px!important}
 body.single-product .fi3-single-gallery .flex-control-thumbs{position:static!important;flex-direction:row!important;overflow-x:auto!important;gap:8px!important;width:100%!important;margin-top:10px!important;padding-bottom:4px!important}
 body.single-product .fi3-single-gallery .flex-control-thumbs li{width:65px!important;height:65px!important}
 body.single-product .fi4-under-gallery{margin-top:18px!important}
 body.single-product .fi3-single-summary .product_title{font-size:21px!important}
 body.single-product .fi3-single-summary .price{font-size:22px!important}
 body.single-product .fi4-product-sticky{bottom:64px!important;min-height:56px!important;padding:7px 10px!important;gap:6px!important}
 body.single-product .fi4-product-sticky>a img{width:38px!important;height:38px!important}
 body.single-product .fi4-product-sticky>strong{display:none!important}
 body.single-product .fi4-product-sticky .fi4-sticky-price{font-size:12px!important;min-width:0}
 body.single-product .fi41-sticky-buy-controls{gap:4px!important;min-width:0}
 body.single-product .fi41-sticky-buy-controls input[type=number]{width:43px!important;height:39px!important;font-size:12px!important}
 body.single-product .fi41-sticky-buy-controls .fi4-solid-link{padding:8px 9px!important;min-width:0!important;white-space:normal!important;max-width:132px!important;min-height:39px!important;font-size:11px!important}
 .fi4-cart-drawer{width:min(100vw,420px)!important;max-width:100vw!important}
}
@media(max-width:370px){body.single-product .fi4-product-sticky>a{display:none}body.single-product .fi4-product-sticky .fi4-sticky-price{font-size:11px!important}}
@media(prefers-reduced-motion:reduce){.fi4-cart-drawer,.fi4-product-sticky{transition:none!important}}
.fi45-sale-chip{display:inline-flex;align-items:center;vertical-align:middle;background:#e71925;color:#fff;font-size:10px;font-weight:650;line-height:1;padding:5px 8px;border-radius:15px;margin:1px 0 1px}
