/* FerreImpulso 4.6 DEV7. Visual parity pass for ATHENS-style composition.
   Independent CSS for WooCommerce; previous settings/checkout/Flow are preserved. */
:root { --fi46-line:#e2e3e5; --fi46-muted:#7b7d80; --fi46-ink:#282a2c; --fi46-blue:var(--fi4-blue,#0052c7); }
/* HERO: wide editorial photograph, text left, unobtrusive nav centred near the bottom. */
.fi3-home .fi3-hero-scene,
.fi3-home .fi3-hero-layout { height:480px!important; min-height:480px!important; }
.fi3-home .fi3-hero-layout { position:relative; z-index:2; }
.fi3-home .fi3-hero-copy { max-width:530px!important; width:min(49%,530px)!important; }
.fi3-home .fi3-hero-copy h1 { font-size:clamp(36px,3.55vw,50px)!important; line-height:1.12!important; letter-spacing:-1.5px!important; font-weight:600!important; }
.fi3-home .fi3-hero-copy p { font-size:16px!important; line-height:1.45!important; max-width:460px!important; }
.fi3-home .fi3-hero-cta { min-height:44px!important; padding:11px 23px!important; border-radius:3px!important; }
.fi3-home .fi3-hero-controls { bottom:21px!important; }
.fi3-home .fi3-dots [data-fi3-dot] { height:9px!important; width:9px!important; }
/* Four compact reassurance cards like reference, not a heavy promo row. */
.fi3-home .fi3-benefit-grid { min-height:82px!important; gap:18px!important; }
.fi3-home .fi3-benefit .fi3-icon { width:32px!important; height:32px!important; }
.fi3-home .fi3-benefit strong { font-size:13px!important; }
.fi3-home .fi3-benefit small { font-size:11px!important; }
/* Three photographic category panels, 1:2:1 desktop. */
.fi3-home .fi46-category-banners { margin-top:57px!important; margin-bottom:63px!important; }
.fi3-home .fi46-category-banners .fi4-banner-grid { grid-template-columns:minmax(0,1fr) minmax(0,2.05fr) minmax(0,1fr)!important; gap:15px!important; }
.fi3-home .fi46-category-banners .fi4-banner-tile { background-color:#182027!important; height:407px!important; min-width:0!important; background-position:center!important; background-size:cover!important; border-radius:4px!important; transition:filter .22s ease; }
.fi3-home .fi46-category-banners .fi4-banner-tile:hover { filter:brightness(1.065); }
.fi3-home .fi46-category-banners .fi4-banner-caption { padding:27px 27px 26px!important; position:relative; z-index:2; }
.fi3-home .fi46-category-banners .fi4-banner-caption h2 { color:#fff!important; line-height:1.2!important; font-size:21px!important; font-weight:600!important; margin-bottom:10px!important; }
.fi3-home .fi46-category-banners .fi4-banner-caption p { font-size:12px!important; line-height:1.48!important; max-width:410px!important; color:#fff!important; }
.fi3-home .fi46-category-banners .fi4-tile-label { top:0!important; left:24px!important; border-radius:0 0 3px 3px!important; }
.fi46-category-mobile-art { display:none; }
/* Section rhythm from reference: compact headings; plenty of air between distinct types of blocks. */
.fi3-home .fi3-section, .fi3-home .fi4-section { scroll-margin-top:135px; }
.fi3-home .fi3-heading, .fi3-home .fi42-deals-heading { margin-bottom:26px!important; }
.fi3-home .fi3-heading h2,.fi3-home .fi42-deals-heading h2 { color:#252729!important; font-size:22px!important; font-weight:500!important; }
.fi3-home .fi42-deals-tabs { flex-wrap:nowrap; overflow-x:auto; max-width:63%; padding-bottom:3px; }
.fi3-home .fi42-deals-tab { min-width:99px; height:56px!important; }
/* Uniform cards shared by home, archives and related products.
   Never alter the WooCommerce price HTML, and never append tax. */
.fi3-products-grid .fi3-product-card.fi-card,
.fi3-shop .fi3-product-card.fi-card { display:flex!important; flex-direction:column!important; min-width:0!important; border:1px solid var(--fi46-line)!important; border-radius:4px!important; background:#fff!important; box-shadow:0 1px 2px #00000007!important; transform:none!important; }
.fi3-products-grid .fi3-product-card.fi-card:hover,
.fi3-shop .fi3-product-card.fi-card:hover { border-color:#b8c9e2!important; box-shadow:0 6px 18px #0000000c!important; }
.fi3-product-photo>a { position:relative!important; display:grid!important; width:100%!important; height:100%!important; place-items:center!important; isolation:isolate; }
.fi3-product-photo>a .fi46-primary-img,
.fi3-product-photo>a .fi46-alt-img { display:grid!important; grid-area:1/1!important; width:100%!important; height:100%!important; min-width:0!important; place-items:center!important; }
.fi3-product-photo>a .fi46-primary-img img,
.fi3-product-photo>a .fi46-alt-img img { display:block!important; width:100%!important; height:100%!important; object-fit:contain!important; object-position:center!important; max-width:100%!important; }
.fi3-product-photo>a .fi46-alt-img { position:absolute!important; inset:0; opacity:0; pointer-events:none; transition:opacity .24s ease; }
/* Only switch for a mouse/trackpad; keep first photograph stable on touch. */
@media (hover:hover) and (pointer:fine) {
 .fi46-with-gallery .fi3-product-photo>a:hover .fi46-alt-img,
 .fi46-with-gallery .fi3-product-photo>a:focus-visible .fi46-alt-img { opacity:1; }
 .fi46-with-gallery .fi3-product-photo>a:hover .fi46-primary-img,
 .fi46-with-gallery .fi3-product-photo>a:focus-visible .fi46-primary-img { opacity:0; }
}
.fi3-product-photo .fi3-sale-badge { position:absolute; z-index:4; }
.fi3-product-info { display:flex!important; flex-direction:column!important; flex:1!important; min-width:0!important; }
.fi3-product-meta { color:var(--fi46-muted)!important; min-height:15px!important; font-weight:400!important; }
.fi3-product-name { color:var(--fi46-ink)!important; font-weight:400!important; letter-spacing:0!important; line-height:1.45!important; overflow-wrap:anywhere; }
.fi3-product-specs { color:#797b80!important; }
.fi3-product-bottom { margin-top:auto!important; }
.fi3-product-card .fi3-stock { border-radius:16px!important; }
.fi3-product-card .fi3-card-button { width:100%!important; max-width:100%!important; min-width:0!important; box-sizing:border-box!important; }
/* At wide desktop, reproduce five evenly sized cards for featured and popular blocks. */
@media(min-width:1180px) {
 .fi3-home .fi3-section-products .fi3-products-grid { grid-template-columns:repeat(5,minmax(0,1fr))!important; gap:10px!important; }
 .fi3-home .fi3-section-products .fi3-product-photo { height:230px!important; }
 .fi3-home .fi3-section-products .fi3-product-info { min-height:282px!important; }
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) { grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:12px!important; }
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-photo { height:195px!important; }
}
/* Catalog: photographic banner, thin filter column and ATHENS-aligned button sizes. */
.fi3-shop .fi3-archive-hero { min-height:156px!important; border-radius:4px!important; overflow:hidden; }
.fi3-shop .fi3-subcategory-strip { gap:12px!important; }
.fi3-shop .fi3-subcategory-photo { border:1px solid var(--fi46-line)!important; border-radius:4px!important; }
.fi3-shop .fi3-shop-toolbar { background:#f7f7f7!important; border:0!important; border-radius:2px!important; min-height:59px!important; }
.fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-info { min-height:279px!important; }
.fi3-shop .fi43-list-view .fi3-product-card .fi3-product-photo { min-height:190px!important; }
/* Visual density responsive for tablets. */
@media(min-width:768px) and (max-width:1179px) {
 .fi3-home .fi3-section-products .fi3-products-grid { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
 .fi3-home .fi3-hero-copy { width:57%!important; }
 .fi3-home .fi46-category-banners .fi4-banner-tile { height:320px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption { padding:20px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption h2 { font-size:19px!important; }
}
/* Mobile reference: compact category carousel, genuinely usable two-column cards and no side scrolling. */
@media(max-width:767px) {
 .fi3-home .fi3-hero-scene,.fi3-home .fi3-hero-layout { height:420px!important; min-height:420px!important; }
 .fi3-home .fi3-hero-copy { width:100%!important; max-width:350px!important; padding-inline:0!important; }
 .fi3-home .fi3-hero-copy h1 { font-size:32px!important; letter-spacing:-.7px!important; }
 .fi3-home .fi3-hero-copy p { font-size:13px!important; }
 .fi3-home .fi46-category-banners { margin-top:35px!important; margin-bottom:40px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:9px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-2 { grid-column:1/-1!important; grid-row:1!important; }
 .fi3-home .fi46-category-banners .fi4-banner-2 { height:245px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-1,.fi3-home .fi46-category-banners .fi4-banner-3 { height:196px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption { padding:15px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption h2 { font-size:16px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption p { display:none!important; }
 .fi3-home .fi46-category-banners .fi4-banner-caption .fi4-solid-link { font-size:10px!important; min-height:34px!important; padding:8px 12px!important; }
 .fi46-has-mobile-art .fi46-category-mobile-art { display:block; position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
 .fi46-has-mobile-art .fi4-banner-caption { z-index:2; }
 .fi3-home .fi42-deals-heading { display:flex; flex-wrap:wrap!important; gap:10px!important; }
 .fi3-home .fi42-deals-tabs { max-width:100%!important; width:100%!important; justify-content:flex-start!important; }
 .fi3-home .fi42-deals-tab { min-width:88px!important; width:95px!important; height:48px!important; }
 .fi3-home .fi3-section-products .fi3-products-grid,
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px!important; }
 .fi3-home .fi3-section-products .fi3-product-photo,
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-photo { height:160px!important; padding:9px 5px!important; }
 .fi3-home .fi3-section-products .fi3-product-info,
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-info { min-height:265px!important; padding:9px 9px 10px!important; }
 .fi3-product-name { font-size:12px!important; line-height:1.42!important; }
 .fi3-product-meta { font-size:10px!important; }
 .fi3-product-specs { font-size:10px!important; }
 .fi3-product-card .fi3-stock { font-size:9px!important; max-width:100%; }
 .fi3-product-card .fi3-card-button { min-height:39px!important; font-size:11px!important; white-space:normal!important; padding:6px 3px!important; }
 .fi3-shop .fi43-list-view .fi3-product-card { grid-template-columns:125px minmax(0,1fr)!important; }
 .fi3-shop .fi43-list-view .fi3-product-info { min-height:0!important; }
}
@media(max-width:375px) {
 .fi3-home .fi3-section-products .fi3-product-info,
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-info { padding:8px!important; }
 .fi3-home .fi3-section-products .fi3-product-photo,
 .fi3-shop .fi3-archive-grid:not(.fi43-list-view) .fi3-product-photo { height:145px!important; }
 .fi3-home .fi46-category-banners .fi4-banner-1,.fi3-home .fi46-category-banners .fi4-banner-3 { height:180px!important; }
}
@media(prefers-reduced-motion:reduce) {
 .fi46-with-gallery .fi46-alt-img,.fi46-with-gallery .fi46-primary-img,.fi46-category-banners .fi4-banner-tile { transition:none!important; }
}
